primevue 4.2.1 → 4.2.3

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 (141) hide show
  1. package/autocomplete/AutoComplete.vue +3 -2
  2. package/autocomplete/BaseAutoComplete.vue +4 -0
  3. package/autocomplete/index.d.ts +5 -0
  4. package/autocomplete/index.mjs +8 -2
  5. package/autocomplete/index.mjs.map +1 -1
  6. package/button/Button.vue +2 -2
  7. package/button/index.d.ts +1 -1
  8. package/button/index.mjs +7 -7
  9. package/button/index.mjs.map +1 -1
  10. package/buttongroup/style/index.mjs +1 -1
  11. package/buttongroup/style/index.mjs.map +1 -1
  12. package/checkbox/index.d.ts +5 -0
  13. package/colorpicker/ColorPicker.vue +1 -1
  14. package/colorpicker/index.mjs +1 -0
  15. package/colorpicker/index.mjs.map +1 -1
  16. package/confirmpopup/ConfirmPopup.vue +1 -1
  17. package/confirmpopup/index.mjs +1 -1
  18. package/confirmpopup/index.mjs.map +1 -1
  19. package/contextmenu/ContextMenuSub.vue +1 -2
  20. package/contextmenu/index.mjs +1 -2
  21. package/contextmenu/index.mjs.map +1 -1
  22. package/datatable/BodyCell.vue +2 -11
  23. package/datatable/DataTable.vue +3 -24
  24. package/datatable/FooterCell.vue +3 -12
  25. package/datatable/HeaderCell.vue +2 -11
  26. package/datatable/index.mjs +49 -98
  27. package/datatable/index.mjs.map +1 -1
  28. package/datatable/style/index.mjs +1 -1
  29. package/datatable/style/index.mjs.map +1 -1
  30. package/datepicker/DatePicker.vue +6 -1
  31. package/datepicker/index.mjs +5 -1
  32. package/datepicker/index.mjs.map +1 -1
  33. package/datepicker/style/index.mjs +1 -1
  34. package/datepicker/style/index.mjs.map +1 -1
  35. package/dock/DockSub.vue +2 -3
  36. package/dock/index.mjs +1 -2
  37. package/dock/index.mjs.map +1 -1
  38. package/drawer/Drawer.vue +4 -3
  39. package/drawer/index.d.ts +10 -1
  40. package/drawer/index.mjs +5 -2
  41. package/drawer/index.mjs.map +1 -1
  42. package/drawer/style/index.mjs +8 -3
  43. package/drawer/style/index.mjs.map +1 -1
  44. package/dynamicdialog/DynamicDialog.vue +1 -0
  45. package/dynamicdialog/index.mjs +1 -0
  46. package/dynamicdialog/index.mjs.map +1 -1
  47. package/editor/Editor.vue +1 -1
  48. package/editor/index.mjs +1 -1
  49. package/editor/index.mjs.map +1 -1
  50. package/imagecompare/ImageCompare.vue +3 -33
  51. package/imagecompare/index.mjs +3 -35
  52. package/imagecompare/index.mjs.map +1 -1
  53. package/imagecompare/style/index.mjs +1 -1
  54. package/imagecompare/style/index.mjs.map +1 -1
  55. package/inputgroup/style/index.mjs +1 -1
  56. package/inputgroup/style/index.mjs.map +1 -1
  57. package/inputnumber/InputNumber.vue +2 -1
  58. package/inputnumber/index.mjs +2 -1
  59. package/inputnumber/index.mjs.map +1 -1
  60. package/inputotp/InputOtp.vue +2 -1
  61. package/inputotp/index.mjs +2 -1
  62. package/inputotp/index.mjs.map +1 -1
  63. package/inputtext/index.d.ts +6 -6
  64. package/listbox/Listbox.vue +19 -15
  65. package/listbox/index.d.ts +4 -0
  66. package/listbox/index.mjs +21 -18
  67. package/listbox/index.mjs.map +1 -1
  68. package/megamenu/MegaMenuSub.vue +1 -2
  69. package/megamenu/index.d.ts +1 -1
  70. package/megamenu/index.mjs +1 -2
  71. package/megamenu/index.mjs.map +1 -1
  72. package/menu/Menuitem.vue +1 -2
  73. package/menu/index.mjs +1 -2
  74. package/menu/index.mjs.map +1 -1
  75. package/menubar/MenubarSub.vue +1 -2
  76. package/menubar/index.mjs +1 -2
  77. package/menubar/index.mjs.map +1 -1
  78. package/menubar/style/index.mjs +1 -1
  79. package/menubar/style/index.mjs.map +1 -1
  80. package/metergroup/index.d.ts +1 -1
  81. package/package.json +5 -5
  82. package/paginator/style/index.mjs +1 -1
  83. package/paginator/style/index.mjs.map +1 -1
  84. package/panelmenu/PanelMenu.vue +6 -3
  85. package/panelmenu/PanelMenuSub.vue +1 -2
  86. package/panelmenu/index.mjs +6 -4
  87. package/panelmenu/index.mjs.map +1 -1
  88. package/panelmenu/style/index.mjs +1 -1
  89. package/panelmenu/style/index.mjs.map +1 -1
  90. package/password/index.d.ts +1 -1
  91. package/scrollpanel/ScrollPanel.vue +4 -35
  92. package/scrollpanel/index.mjs +27 -57
  93. package/scrollpanel/index.mjs.map +1 -1
  94. package/scrollpanel/style/index.mjs +1 -1
  95. package/scrollpanel/style/index.mjs.map +1 -1
  96. package/select/Select.vue +2 -2
  97. package/select/index.mjs +2 -2
  98. package/select/index.mjs.map +1 -1
  99. package/slider/Slider.vue +15 -39
  100. package/slider/index.mjs +17 -51
  101. package/slider/index.mjs.map +1 -1
  102. package/splitter/Splitter.vue +3 -24
  103. package/splitter/index.mjs +21 -43
  104. package/splitter/index.mjs.map +1 -1
  105. package/step/Step.vue +2 -2
  106. package/step/index.mjs +2 -2
  107. package/step/index.mjs.map +1 -1
  108. package/tablist/TabList.vue +11 -43
  109. package/tablist/index.mjs +11 -42
  110. package/tablist/index.mjs.map +1 -1
  111. package/tabs/index.d.ts +3 -3
  112. package/textarea/Textarea.vue +14 -3
  113. package/textarea/index.d.ts +2 -3
  114. package/textarea/index.mjs +14 -3
  115. package/textarea/index.mjs.map +1 -1
  116. package/tieredmenu/TieredMenuSub.vue +1 -2
  117. package/tieredmenu/index.mjs +1 -2
  118. package/tieredmenu/index.mjs.map +1 -1
  119. package/timeline/style/index.mjs +1 -1
  120. package/timeline/style/index.mjs.map +1 -1
  121. package/togglebutton/ToggleButton.vue +1 -1
  122. package/togglebutton/index.mjs +1 -1
  123. package/togglebutton/index.mjs.map +1 -1
  124. package/tree/Tree.vue +1 -1
  125. package/tree/index.mjs +29 -23
  126. package/tree/index.mjs.map +1 -1
  127. package/tree/style/index.mjs +1 -1
  128. package/tree/style/index.mjs.map +1 -1
  129. package/treeselect/TreeSelect.vue +4 -3
  130. package/treeselect/index.mjs +9 -8
  131. package/treeselect/index.mjs.map +1 -1
  132. package/treetable/BodyCell.vue +2 -11
  133. package/treetable/FooterCell.vue +3 -12
  134. package/treetable/HeaderCell.vue +3 -12
  135. package/treetable/TreeTable.vue +3 -26
  136. package/treetable/index.mjs +24 -75
  137. package/treetable/index.mjs.map +1 -1
  138. package/treetable/style/index.mjs +1 -1
  139. package/treetable/style/index.mjs.map +1 -1
  140. package/umd/primevue.min.js +1 -1
  141. package/web-types.json +1 -1
@@ -2,7 +2,7 @@ import BaseStyle from '@primevue/core/base/style';
2
2
 
3
3
  var theme = function theme(_ref) {
4
4
  var dt = _ref.dt;
5
- return "\n.p-panelmenu {\n display: flex;\n flex-direction: column;\n gap: ".concat(dt('panelmenu.gap'), ";\n}\n\n.p-panelmenu-panel {\n background: ").concat(dt('panelmenu.panel.background'), ";\n border-width: ").concat(dt('panelmenu.panel.border.width'), ";\n border-style: solid;\n border-color: ").concat(dt('panelmenu.panel.border.color'), ";\n color: ").concat(dt('panelmenu.panel.color'), ";\n border-radius: ").concat(dt('panelmenu.panel.border.radius'), ";\n padding: ").concat(dt('panelmenu.panel.padding'), ";\n}\n\n.p-panelmenu-panel:first-child {\n border-width: ").concat(dt('panelmenu.panel.first.border.width'), ";\n border-start-start-radius: ").concat(dt('panelmenu.panel.first.top.border.radius'), ";\n border-start-end-radius: ").concat(dt('panelmenu.panel.first.top.border.radius'), ";\n}\n\n.p-panelmenu-panel:last-child {\n border-width: ").concat(dt('panelmenu.panel.last.border.width'), ";\n border-end-start-radius: ").concat(dt('panelmenu.panel.last.bottom.border.radius'), ";\n border-end-end-radius: ").concat(dt('panelmenu.panel.last.bottom.border.radius'), ";\n}\n\n.p-panelmenu-header {\n outline: 0 none;\n}\n\n.p-panelmenu-header-content {\n border-radius: ").concat(dt('panelmenu.item.border.radius'), ";\n transition: background ").concat(dt('panelmenu.transition.duration'), ", color ").concat(dt('panelmenu.transition.duration'), ", outline-color ").concat(dt('panelmenu.transition.duration'), ", box-shadow ").concat(dt('panelmenu.transition.duration'), ";\n outline-color: transparent;\n color: ").concat(dt('panelmenu.item.color'), ";\n}\n\n.p-panelmenu-header-link {\n display: flex;\n gap: ").concat(dt('panelmenu.item.gap'), ";\n padding: ").concat(dt('panelmenu.item.padding'), ";\n align-items: center;\n user-select: none;\n cursor: pointer;\n position: relative;\n text-decoration: none;\n color: inherit;\n}\n\n.p-panelmenu-header-icon,\n.p-panelmenu-item-icon {\n color: ").concat(dt('panelmenu.item.icon.color'), ";\n}\n\n.p-panelmenu-submenu-icon {\n color: ").concat(dt('panelmenu.submenu.icon.color'), ";\n}\n\n.p-panelmenu-header:not(.p-panelmenu-header-active) .p-panelmenu-submenu-icon:dir(rtl) {\n transform: rotate(-180deg);\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content {\n background: ").concat(dt('panelmenu.item.focus.background'), ";\n color: ").concat(dt('panelmenu.item.focus.color'), ";\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content .p-panelmenu-header-icon {\n color: ").concat(dt('panelmenu.item.icon.focus.color'), ";\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content .p-panelmenu-submenu-icon {\n color: ").concat(dt('panelmenu.submenu.icon.focus.color'), ";\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover {\n background: ").concat(dt('panelmenu.item.focus.background'), ";\n color: ").concat(dt('panelmenu.item.focus.color'), ";\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover .p-panelmenu-header-icon {\n color: ").concat(dt('panelmenu.item.icon.focus.color'), ";\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover .p-panelmenu-submenu-icon {\n color: ").concat(dt('panelmenu.submenu.icon.focus.color'), ";\n}\n\n.p-panelmenu-submenu {\n margin: 0;\n padding: 0 0 0 ").concat(dt('panelmenu.submenu.indent'), ";\n outline: 0;\n list-style: none;\n}\n\n.p-panelmenu-submenu:dir(rtl) {\n padding: 0 ").concat(dt('panelmenu.submenu.indent'), " 0 0;\n}\n\n.p-panelmenu-item-link {\n display: flex;\n gap: ").concat(dt('panelmenu.item.gap'), ";\n padding: ").concat(dt('panelmenu.item.padding'), ";\n align-items: center;\n user-select: none;\n cursor: pointer;\n text-decoration: none;\n color: inherit;\n position: relative;\n overflow: hidden;\n}\n\n.p-panelmenu-item-label {\n line-height: 1;\n}\n\n.p-panelmenu-item-content {\n border-radius: ").concat(dt('panelmenu.item.border.radius'), ";\n transition: background ").concat(dt('panelmenu.transition.duration'), ", color ").concat(dt('panelmenu.transition.duration'), ", outline-color ").concat(dt('panelmenu.transition.duration'), ", box-shadow ").concat(dt('panelmenu.transition.duration'), ";\n color: ").concat(dt('panelmenu.item.color'), ";\n outline-color: transparent;\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content {\n background: ").concat(dt('panelmenu.item.focus.background'), ";\n color: ").concat(dt('panelmenu.item.focus.color'), ";\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content .p-panelmenu-item-icon {\n color: ").concat(dt('panelmenu.item.focus.color'), ";\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content .p-panelmenu-submenu-icon {\n color: ").concat(dt('panelmenu.submenu.icon.focus.color'), ";\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover {\n background: ").concat(dt('panelmenu.item.focus.background'), ";\n color: ").concat(dt('panelmenu.item.focus.color'), ";\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover .p-panelmenu-item-icon {\n color: ").concat(dt('panelmenu.item.icon.focus.color'), ";\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover .p-panelmenu-submenu-icon {\n color: ").concat(dt('panelmenu.submenu.icon.focus.color'), ";\n}\n");
5
+ return "\n.p-panelmenu {\n display: flex;\n flex-direction: column;\n gap: ".concat(dt('panelmenu.gap'), ";\n}\n\n.p-panelmenu-panel {\n background: ").concat(dt('panelmenu.panel.background'), ";\n border-width: ").concat(dt('panelmenu.panel.border.width'), ";\n border-style: solid;\n border-color: ").concat(dt('panelmenu.panel.border.color'), ";\n color: ").concat(dt('panelmenu.panel.color'), ";\n border-radius: ").concat(dt('panelmenu.panel.border.radius'), ";\n padding: ").concat(dt('panelmenu.panel.padding'), ";\n}\n\n.p-panelmenu-panel:first-child {\n border-width: ").concat(dt('panelmenu.panel.first.border.width'), ";\n border-start-start-radius: ").concat(dt('panelmenu.panel.first.top.border.radius'), ";\n border-start-end-radius: ").concat(dt('panelmenu.panel.first.top.border.radius'), ";\n}\n\n.p-panelmenu-panel:last-child {\n border-width: ").concat(dt('panelmenu.panel.last.border.width'), ";\n border-end-start-radius: ").concat(dt('panelmenu.panel.last.bottom.border.radius'), ";\n border-end-end-radius: ").concat(dt('panelmenu.panel.last.bottom.border.radius'), ";\n}\n\n.p-panelmenu-header {\n outline: 0 none;\n}\n\n.p-panelmenu-header-content {\n border-radius: ").concat(dt('panelmenu.item.border.radius'), ";\n transition: background ").concat(dt('panelmenu.transition.duration'), ", color ").concat(dt('panelmenu.transition.duration'), ", outline-color ").concat(dt('panelmenu.transition.duration'), ", box-shadow ").concat(dt('panelmenu.transition.duration'), ";\n outline-color: transparent;\n color: ").concat(dt('panelmenu.item.color'), ";\n}\n\n.p-panelmenu-header-link {\n display: flex;\n gap: ").concat(dt('panelmenu.item.gap'), ";\n padding: ").concat(dt('panelmenu.item.padding'), ";\n align-items: center;\n user-select: none;\n cursor: pointer;\n position: relative;\n text-decoration: none;\n color: inherit;\n}\n\n.p-panelmenu-header-icon,\n.p-panelmenu-item-icon {\n color: ").concat(dt('panelmenu.item.icon.color'), ";\n}\n\n.p-panelmenu-submenu-icon {\n color: ").concat(dt('panelmenu.submenu.icon.color'), ";\n}\n\n.p-panelmenu-submenu-icon:dir(rtl) {\n transform: rotate(180deg);\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content {\n background: ").concat(dt('panelmenu.item.focus.background'), ";\n color: ").concat(dt('panelmenu.item.focus.color'), ";\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content .p-panelmenu-header-icon {\n color: ").concat(dt('panelmenu.item.icon.focus.color'), ";\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content .p-panelmenu-submenu-icon {\n color: ").concat(dt('panelmenu.submenu.icon.focus.color'), ";\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover {\n background: ").concat(dt('panelmenu.item.focus.background'), ";\n color: ").concat(dt('panelmenu.item.focus.color'), ";\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover .p-panelmenu-header-icon {\n color: ").concat(dt('panelmenu.item.icon.focus.color'), ";\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover .p-panelmenu-submenu-icon {\n color: ").concat(dt('panelmenu.submenu.icon.focus.color'), ";\n}\n\n.p-panelmenu-submenu {\n margin: 0;\n padding: 0 0 0 ").concat(dt('panelmenu.submenu.indent'), ";\n outline: 0;\n list-style: none;\n}\n\n.p-panelmenu-submenu:dir(rtl) {\n padding: 0 ").concat(dt('panelmenu.submenu.indent'), " 0 0;\n}\n\n.p-panelmenu-item-link {\n display: flex;\n gap: ").concat(dt('panelmenu.item.gap'), ";\n padding: ").concat(dt('panelmenu.item.padding'), ";\n align-items: center;\n user-select: none;\n cursor: pointer;\n text-decoration: none;\n color: inherit;\n position: relative;\n overflow: hidden;\n}\n\n.p-panelmenu-item-label {\n line-height: 1;\n}\n\n.p-panelmenu-item-content {\n border-radius: ").concat(dt('panelmenu.item.border.radius'), ";\n transition: background ").concat(dt('panelmenu.transition.duration'), ", color ").concat(dt('panelmenu.transition.duration'), ", outline-color ").concat(dt('panelmenu.transition.duration'), ", box-shadow ").concat(dt('panelmenu.transition.duration'), ";\n color: ").concat(dt('panelmenu.item.color'), ";\n outline-color: transparent;\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content {\n background: ").concat(dt('panelmenu.item.focus.background'), ";\n color: ").concat(dt('panelmenu.item.focus.color'), ";\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content .p-panelmenu-item-icon {\n color: ").concat(dt('panelmenu.item.focus.color'), ";\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content .p-panelmenu-submenu-icon {\n color: ").concat(dt('panelmenu.submenu.icon.focus.color'), ";\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover {\n background: ").concat(dt('panelmenu.item.focus.background'), ";\n color: ").concat(dt('panelmenu.item.focus.color'), ";\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover .p-panelmenu-item-icon {\n color: ").concat(dt('panelmenu.item.icon.focus.color'), ";\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover .p-panelmenu-submenu-icon {\n color: ").concat(dt('panelmenu.submenu.icon.focus.color'), ";\n}\n");
6
6
  };
7
7
  var classes = {
8
8
  root: 'p-panelmenu p-component',
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/panelmenu/style/PanelMenuStyle.js"],"sourcesContent":["import BaseStyle from '@primevue/core/base/style';\n\nconst theme = ({ dt }) => `\n.p-panelmenu {\n display: flex;\n flex-direction: column;\n gap: ${dt('panelmenu.gap')};\n}\n\n.p-panelmenu-panel {\n background: ${dt('panelmenu.panel.background')};\n border-width: ${dt('panelmenu.panel.border.width')};\n border-style: solid;\n border-color: ${dt('panelmenu.panel.border.color')};\n color: ${dt('panelmenu.panel.color')};\n border-radius: ${dt('panelmenu.panel.border.radius')};\n padding: ${dt('panelmenu.panel.padding')};\n}\n\n.p-panelmenu-panel:first-child {\n border-width: ${dt('panelmenu.panel.first.border.width')};\n border-start-start-radius: ${dt('panelmenu.panel.first.top.border.radius')};\n border-start-end-radius: ${dt('panelmenu.panel.first.top.border.radius')};\n}\n\n.p-panelmenu-panel:last-child {\n border-width: ${dt('panelmenu.panel.last.border.width')};\n border-end-start-radius: ${dt('panelmenu.panel.last.bottom.border.radius')};\n border-end-end-radius: ${dt('panelmenu.panel.last.bottom.border.radius')};\n}\n\n.p-panelmenu-header {\n outline: 0 none;\n}\n\n.p-panelmenu-header-content {\n border-radius: ${dt('panelmenu.item.border.radius')};\n transition: background ${dt('panelmenu.transition.duration')}, color ${dt('panelmenu.transition.duration')}, outline-color ${dt('panelmenu.transition.duration')}, box-shadow ${dt('panelmenu.transition.duration')};\n outline-color: transparent;\n color: ${dt('panelmenu.item.color')};\n}\n\n.p-panelmenu-header-link {\n display: flex;\n gap: ${dt('panelmenu.item.gap')};\n padding: ${dt('panelmenu.item.padding')};\n align-items: center;\n user-select: none;\n cursor: pointer;\n position: relative;\n text-decoration: none;\n color: inherit;\n}\n\n.p-panelmenu-header-icon,\n.p-panelmenu-item-icon {\n color: ${dt('panelmenu.item.icon.color')};\n}\n\n.p-panelmenu-submenu-icon {\n color: ${dt('panelmenu.submenu.icon.color')};\n}\n\n.p-panelmenu-header:not(.p-panelmenu-header-active) .p-panelmenu-submenu-icon:dir(rtl) {\n transform: rotate(-180deg);\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content {\n background: ${dt('panelmenu.item.focus.background')};\n color: ${dt('panelmenu.item.focus.color')};\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content .p-panelmenu-header-icon {\n color: ${dt('panelmenu.item.icon.focus.color')};\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content .p-panelmenu-submenu-icon {\n color: ${dt('panelmenu.submenu.icon.focus.color')};\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover {\n background: ${dt('panelmenu.item.focus.background')};\n color: ${dt('panelmenu.item.focus.color')};\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover .p-panelmenu-header-icon {\n color: ${dt('panelmenu.item.icon.focus.color')};\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover .p-panelmenu-submenu-icon {\n color: ${dt('panelmenu.submenu.icon.focus.color')};\n}\n\n.p-panelmenu-submenu {\n margin: 0;\n padding: 0 0 0 ${dt('panelmenu.submenu.indent')};\n outline: 0;\n list-style: none;\n}\n\n.p-panelmenu-submenu:dir(rtl) {\n padding: 0 ${dt('panelmenu.submenu.indent')} 0 0;\n}\n\n.p-panelmenu-item-link {\n display: flex;\n gap: ${dt('panelmenu.item.gap')};\n padding: ${dt('panelmenu.item.padding')};\n align-items: center;\n user-select: none;\n cursor: pointer;\n text-decoration: none;\n color: inherit;\n position: relative;\n overflow: hidden;\n}\n\n.p-panelmenu-item-label {\n line-height: 1;\n}\n\n.p-panelmenu-item-content {\n border-radius: ${dt('panelmenu.item.border.radius')};\n transition: background ${dt('panelmenu.transition.duration')}, color ${dt('panelmenu.transition.duration')}, outline-color ${dt('panelmenu.transition.duration')}, box-shadow ${dt('panelmenu.transition.duration')};\n color: ${dt('panelmenu.item.color')};\n outline-color: transparent;\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content {\n background: ${dt('panelmenu.item.focus.background')};\n color: ${dt('panelmenu.item.focus.color')};\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content .p-panelmenu-item-icon {\n color: ${dt('panelmenu.item.focus.color')};\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content .p-panelmenu-submenu-icon {\n color: ${dt('panelmenu.submenu.icon.focus.color')};\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover {\n background: ${dt('panelmenu.item.focus.background')};\n color: ${dt('panelmenu.item.focus.color')};\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover .p-panelmenu-item-icon {\n color: ${dt('panelmenu.item.icon.focus.color')};\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover .p-panelmenu-submenu-icon {\n color: ${dt('panelmenu.submenu.icon.focus.color')};\n}\n`;\n\nconst classes = {\n root: 'p-panelmenu p-component',\n panel: 'p-panelmenu-panel',\n header: ({ instance, item }) => [\n 'p-panelmenu-header',\n {\n 'p-panelmenu-header-active': instance.isItemActive(item) && !!item.items,\n 'p-disabled': instance.isItemDisabled(item)\n }\n ],\n headerContent: 'p-panelmenu-header-content',\n headerLink: 'p-panelmenu-header-link',\n headerIcon: 'p-panelmenu-header-icon',\n headerLabel: 'p-panelmenu-header-label',\n contentContainer: 'p-panelmenu-content-container',\n content: 'p-panelmenu-content',\n rootList: 'p-panelmenu-root-list',\n item: ({ instance, processedItem }) => [\n 'p-panelmenu-item',\n {\n 'p-focus': instance.isItemFocused(processedItem),\n 'p-disabled': instance.isItemDisabled(processedItem)\n }\n ],\n itemContent: 'p-panelmenu-item-content',\n itemLink: 'p-panelmenu-item-link',\n itemIcon: 'p-panelmenu-item-icon',\n itemLabel: 'p-panelmenu-item-label',\n submenuIcon: 'p-panelmenu-submenu-icon',\n submenu: 'p-panelmenu-submenu',\n separator: 'p-menuitem-separator'\n};\n\nexport default BaseStyle.extend({\n name: 'panelmenu',\n theme,\n classes\n});\n"],"names":["theme","_ref","dt","concat","classes","root","panel","header","_ref2","instance","item","isItemActive","items","isItemDisabled","headerContent","headerLink","headerIcon","headerLabel","contentContainer","content","rootList","_ref3","processedItem","isItemFocused","itemContent","itemLink","itemIcon","itemLabel","submenuIcon","submenu","separator","BaseStyle","extend","name"],"mappings":";;AAEA,IAAMA,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,EAAE,GAAAD,IAAA,CAAFC,EAAE;AAAA,EAAA,OAAA,8EAAA,CAAAC,MAAA,CAIRD,EAAE,CAAC,eAAe,CAAC,EAAAC,gDAAAA,CAAAA,CAAAA,MAAA,CAIZD,EAAE,CAAC,4BAA4B,CAAC,2BAAAC,MAAA,CAC9BD,EAAE,CAAC,8BAA8B,CAAC,EAAA,iDAAA,CAAA,CAAAC,MAAA,CAElCD,EAAE,CAAC,8BAA8B,CAAC,oBAAAC,MAAA,CACzCD,EAAE,CAAC,uBAAuB,CAAC,EAAA,wBAAA,CAAA,CAAAC,MAAA,CACnBD,EAAE,CAAC,+BAA+B,CAAC,EAAAC,kBAAAA,CAAAA,CAAAA,MAAA,CACzCD,EAAE,CAAC,yBAAyB,CAAC,kEAAAC,MAAA,CAIxBD,EAAE,CAAC,oCAAoC,CAAC,EAAA,oCAAA,CAAA,CAAAC,MAAA,CAC3BD,EAAE,CAAC,yCAAyC,CAAC,EAAAC,kCAAAA,CAAAA,CAAAA,MAAA,CAC/CD,EAAE,CAAC,yCAAyC,CAAC,EAAA,6DAAA,CAAA,CAAAC,MAAA,CAIxDD,EAAE,CAAC,mCAAmC,CAAC,EAAAC,kCAAAA,CAAAA,CAAAA,MAAA,CAC5BD,EAAE,CAAC,2CAA2C,CAAC,EAAA,gCAAA,CAAA,CAAAC,MAAA,CACjDD,EAAE,CAAC,2CAA2C,CAAC,EAAA,8GAAA,CAAA,CAAAC,MAAA,CAQvDD,EAAE,CAAC,8BAA8B,CAAC,EAAAC,gCAAAA,CAAAA,CAAAA,MAAA,CAC1BD,EAAE,CAAC,+BAA+B,CAAC,EAAA,UAAA,CAAA,CAAAC,MAAA,CAAWD,EAAE,CAAC,+BAA+B,CAAC,EAAAC,kBAAAA,CAAAA,CAAAA,MAAA,CAAmBD,EAAE,CAAC,+BAA+B,CAAC,mBAAAC,MAAA,CAAgBD,EAAE,CAAC,+BAA+B,CAAC,EAAAC,iDAAAA,CAAAA,CAAAA,MAAA,CAE1MD,EAAE,CAAC,sBAAsB,CAAC,EAAAC,mEAAAA,CAAAA,CAAAA,MAAA,CAK5BD,EAAE,CAAC,oBAAoB,CAAC,sBAAAC,MAAA,CACpBD,EAAE,CAAC,wBAAwB,CAAC,EAAAC,4NAAAA,CAAAA,CAAAA,MAAA,CAW9BD,EAAE,CAAC,2BAA2B,CAAC,sDAAAC,MAAA,CAI/BD,EAAE,CAAC,8BAA8B,CAAC,EAAA,4OAAA,CAAA,CAAAC,MAAA,CAQ7BD,EAAE,CAAC,iCAAiC,CAAC,oBAAAC,MAAA,CAC1CD,EAAE,CAAC,4BAA4B,CAAC,EAAA,gIAAA,CAAA,CAAAC,MAAA,CAIhCD,EAAE,CAAC,iCAAiC,CAAC,EAAA,iIAAA,CAAA,CAAAC,MAAA,CAIrCD,EAAE,CAAC,oCAAoC,CAAC,wGAAAC,MAAA,CAInCD,EAAE,CAAC,iCAAiC,CAAC,EAAA,gBAAA,CAAA,CAAAC,MAAA,CAC1CD,EAAE,CAAC,4BAA4B,CAAC,EAAAC,wHAAAA,CAAAA,CAAAA,MAAA,CAIhCD,EAAE,CAAC,iCAAiC,CAAC,EAAA,yHAAA,CAAA,CAAAC,MAAA,CAIrCD,EAAE,CAAC,oCAAoC,CAAC,EAAAC,qEAAAA,CAAAA,CAAAA,MAAA,CAKhCD,EAAE,CAAC,0BAA0B,CAAC,EAAAC,kGAAAA,CAAAA,CAAAA,MAAA,CAMlCD,EAAE,CAAC,0BAA0B,CAAC,EAAA,qEAAA,CAAA,CAAAC,MAAA,CAKpCD,EAAE,CAAC,oBAAoB,CAAC,EAAAC,kBAAAA,CAAAA,CAAAA,MAAA,CACpBD,EAAE,CAAC,wBAAwB,CAAC,EAAA,wRAAA,CAAA,CAAAC,MAAA,CAetBD,EAAE,CAAC,8BAA8B,CAAC,EAAAC,gCAAAA,CAAAA,CAAAA,MAAA,CAC1BD,EAAE,CAAC,+BAA+B,CAAC,cAAAC,MAAA,CAAWD,EAAE,CAAC,+BAA+B,CAAC,EAAA,kBAAA,CAAA,CAAAC,MAAA,CAAmBD,EAAE,CAAC,+BAA+B,CAAC,EAAAC,eAAAA,CAAAA,CAAAA,MAAA,CAAgBD,EAAE,CAAC,+BAA+B,CAAC,oBAAAC,MAAA,CAC1MD,EAAE,CAAC,sBAAsB,CAAC,EAAAC,oHAAAA,CAAAA,CAAAA,MAAA,CAKrBD,EAAE,CAAC,iCAAiC,CAAC,oBAAAC,MAAA,CAC1CD,EAAE,CAAC,4BAA4B,CAAC,EAAA,qGAAA,CAAA,CAAAC,MAAA,CAIhCD,EAAE,CAAC,4BAA4B,CAAC,4GAAAC,MAAA,CAIhCD,EAAE,CAAC,oCAAoC,CAAC,EAAA,kGAAA,CAAA,CAAAC,MAAA,CAInCD,EAAE,CAAC,iCAAiC,CAAC,EAAAC,gBAAAA,CAAAA,CAAAA,MAAA,CAC1CD,EAAE,CAAC,4BAA4B,CAAC,EAAA,oHAAA,CAAA,CAAAC,MAAA,CAIhCD,EAAE,CAAC,iCAAiC,CAAC,EAAAC,uHAAAA,CAAAA,CAAAA,MAAA,CAIrCD,EAAE,CAAC,oCAAoC,CAAC,EAAA,QAAA,CAAA;AAAA,CAEpD;AAED,IAAME,OAAO,GAAG;AACZC,EAAAA,IAAI,EAAE,yBAAyB;AAC/BC,EAAAA,KAAK,EAAE,mBAAmB;AAC1BC,EAAAA,MAAM,EAAE,SAARA,MAAMA,CAAAC,KAAA,EAAA;AAAA,IAAA,IAAKC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;MAAEC,IAAI,GAAAF,KAAA,CAAJE,IAAI;IAAA,OAAO,CAC5B,oBAAoB,EACpB;AACI,MAAA,2BAA2B,EAAED,QAAQ,CAACE,YAAY,CAACD,IAAI,CAAC,IAAI,CAAC,CAACA,IAAI,CAACE,KAAK;AACxE,MAAA,YAAY,EAAEH,QAAQ,CAACI,cAAc,CAACH,IAAI;AAC9C,KAAC,CACJ;AAAA,GAAA;AACDI,EAAAA,aAAa,EAAE,4BAA4B;AAC3CC,EAAAA,UAAU,EAAE,yBAAyB;AACrCC,EAAAA,UAAU,EAAE,yBAAyB;AACrCC,EAAAA,WAAW,EAAE,0BAA0B;AACvCC,EAAAA,gBAAgB,EAAE,+BAA+B;AACjDC,EAAAA,OAAO,EAAE,qBAAqB;AAC9BC,EAAAA,QAAQ,EAAE,uBAAuB;AACjCV,EAAAA,IAAI,EAAE,SAANA,IAAIA,CAAAW,KAAA,EAAA;AAAA,IAAA,IAAKZ,QAAQ,GAAAY,KAAA,CAARZ,QAAQ;MAAEa,aAAa,GAAAD,KAAA,CAAbC,aAAa;IAAA,OAAO,CACnC,kBAAkB,EAClB;AACI,MAAA,SAAS,EAAEb,QAAQ,CAACc,aAAa,CAACD,aAAa,CAAC;AAChD,MAAA,YAAY,EAAEb,QAAQ,CAACI,cAAc,CAACS,aAAa;AACvD,KAAC,CACJ;AAAA,GAAA;AACDE,EAAAA,WAAW,EAAE,0BAA0B;AACvCC,EAAAA,QAAQ,EAAE,uBAAuB;AACjCC,EAAAA,QAAQ,EAAE,uBAAuB;AACjCC,EAAAA,SAAS,EAAE,wBAAwB;AACnCC,EAAAA,WAAW,EAAE,0BAA0B;AACvCC,EAAAA,OAAO,EAAE,qBAAqB;AAC9BC,EAAAA,SAAS,EAAE;AACf,CAAC;AAED,qBAAeC,SAAS,CAACC,MAAM,CAAC;AAC5BC,EAAAA,IAAI,EAAE,WAAW;AACjBjC,EAAAA,KAAK,EAALA,KAAK;AACLI,EAAAA,OAAO,EAAPA;AACJ,CAAC,CAAC;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/panelmenu/style/PanelMenuStyle.js"],"sourcesContent":["import BaseStyle from '@primevue/core/base/style';\n\nconst theme = ({ dt }) => `\n.p-panelmenu {\n display: flex;\n flex-direction: column;\n gap: ${dt('panelmenu.gap')};\n}\n\n.p-panelmenu-panel {\n background: ${dt('panelmenu.panel.background')};\n border-width: ${dt('panelmenu.panel.border.width')};\n border-style: solid;\n border-color: ${dt('panelmenu.panel.border.color')};\n color: ${dt('panelmenu.panel.color')};\n border-radius: ${dt('panelmenu.panel.border.radius')};\n padding: ${dt('panelmenu.panel.padding')};\n}\n\n.p-panelmenu-panel:first-child {\n border-width: ${dt('panelmenu.panel.first.border.width')};\n border-start-start-radius: ${dt('panelmenu.panel.first.top.border.radius')};\n border-start-end-radius: ${dt('panelmenu.panel.first.top.border.radius')};\n}\n\n.p-panelmenu-panel:last-child {\n border-width: ${dt('panelmenu.panel.last.border.width')};\n border-end-start-radius: ${dt('panelmenu.panel.last.bottom.border.radius')};\n border-end-end-radius: ${dt('panelmenu.panel.last.bottom.border.radius')};\n}\n\n.p-panelmenu-header {\n outline: 0 none;\n}\n\n.p-panelmenu-header-content {\n border-radius: ${dt('panelmenu.item.border.radius')};\n transition: background ${dt('panelmenu.transition.duration')}, color ${dt('panelmenu.transition.duration')}, outline-color ${dt('panelmenu.transition.duration')}, box-shadow ${dt('panelmenu.transition.duration')};\n outline-color: transparent;\n color: ${dt('panelmenu.item.color')};\n}\n\n.p-panelmenu-header-link {\n display: flex;\n gap: ${dt('panelmenu.item.gap')};\n padding: ${dt('panelmenu.item.padding')};\n align-items: center;\n user-select: none;\n cursor: pointer;\n position: relative;\n text-decoration: none;\n color: inherit;\n}\n\n.p-panelmenu-header-icon,\n.p-panelmenu-item-icon {\n color: ${dt('panelmenu.item.icon.color')};\n}\n\n.p-panelmenu-submenu-icon {\n color: ${dt('panelmenu.submenu.icon.color')};\n}\n\n.p-panelmenu-submenu-icon:dir(rtl) {\n transform: rotate(180deg);\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content {\n background: ${dt('panelmenu.item.focus.background')};\n color: ${dt('panelmenu.item.focus.color')};\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content .p-panelmenu-header-icon {\n color: ${dt('panelmenu.item.icon.focus.color')};\n}\n\n.p-panelmenu-header:not(.p-disabled):focus-visible .p-panelmenu-header-content .p-panelmenu-submenu-icon {\n color: ${dt('panelmenu.submenu.icon.focus.color')};\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover {\n background: ${dt('panelmenu.item.focus.background')};\n color: ${dt('panelmenu.item.focus.color')};\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover .p-panelmenu-header-icon {\n color: ${dt('panelmenu.item.icon.focus.color')};\n}\n\n.p-panelmenu-header:not(.p-disabled) .p-panelmenu-header-content:hover .p-panelmenu-submenu-icon {\n color: ${dt('panelmenu.submenu.icon.focus.color')};\n}\n\n.p-panelmenu-submenu {\n margin: 0;\n padding: 0 0 0 ${dt('panelmenu.submenu.indent')};\n outline: 0;\n list-style: none;\n}\n\n.p-panelmenu-submenu:dir(rtl) {\n padding: 0 ${dt('panelmenu.submenu.indent')} 0 0;\n}\n\n.p-panelmenu-item-link {\n display: flex;\n gap: ${dt('panelmenu.item.gap')};\n padding: ${dt('panelmenu.item.padding')};\n align-items: center;\n user-select: none;\n cursor: pointer;\n text-decoration: none;\n color: inherit;\n position: relative;\n overflow: hidden;\n}\n\n.p-panelmenu-item-label {\n line-height: 1;\n}\n\n.p-panelmenu-item-content {\n border-radius: ${dt('panelmenu.item.border.radius')};\n transition: background ${dt('panelmenu.transition.duration')}, color ${dt('panelmenu.transition.duration')}, outline-color ${dt('panelmenu.transition.duration')}, box-shadow ${dt('panelmenu.transition.duration')};\n color: ${dt('panelmenu.item.color')};\n outline-color: transparent;\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content {\n background: ${dt('panelmenu.item.focus.background')};\n color: ${dt('panelmenu.item.focus.color')};\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content .p-panelmenu-item-icon {\n color: ${dt('panelmenu.item.focus.color')};\n}\n\n.p-panelmenu-item.p-focus > .p-panelmenu-item-content .p-panelmenu-submenu-icon {\n color: ${dt('panelmenu.submenu.icon.focus.color')};\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover {\n background: ${dt('panelmenu.item.focus.background')};\n color: ${dt('panelmenu.item.focus.color')};\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover .p-panelmenu-item-icon {\n color: ${dt('panelmenu.item.icon.focus.color')};\n}\n\n.p-panelmenu-item:not(.p-disabled) > .p-panelmenu-item-content:hover .p-panelmenu-submenu-icon {\n color: ${dt('panelmenu.submenu.icon.focus.color')};\n}\n`;\n\nconst classes = {\n root: 'p-panelmenu p-component',\n panel: 'p-panelmenu-panel',\n header: ({ instance, item }) => [\n 'p-panelmenu-header',\n {\n 'p-panelmenu-header-active': instance.isItemActive(item) && !!item.items,\n 'p-disabled': instance.isItemDisabled(item)\n }\n ],\n headerContent: 'p-panelmenu-header-content',\n headerLink: 'p-panelmenu-header-link',\n headerIcon: 'p-panelmenu-header-icon',\n headerLabel: 'p-panelmenu-header-label',\n contentContainer: 'p-panelmenu-content-container',\n content: 'p-panelmenu-content',\n rootList: 'p-panelmenu-root-list',\n item: ({ instance, processedItem }) => [\n 'p-panelmenu-item',\n {\n 'p-focus': instance.isItemFocused(processedItem),\n 'p-disabled': instance.isItemDisabled(processedItem)\n }\n ],\n itemContent: 'p-panelmenu-item-content',\n itemLink: 'p-panelmenu-item-link',\n itemIcon: 'p-panelmenu-item-icon',\n itemLabel: 'p-panelmenu-item-label',\n submenuIcon: 'p-panelmenu-submenu-icon',\n submenu: 'p-panelmenu-submenu',\n separator: 'p-menuitem-separator'\n};\n\nexport default BaseStyle.extend({\n name: 'panelmenu',\n theme,\n classes\n});\n"],"names":["theme","_ref","dt","concat","classes","root","panel","header","_ref2","instance","item","isItemActive","items","isItemDisabled","headerContent","headerLink","headerIcon","headerLabel","contentContainer","content","rootList","_ref3","processedItem","isItemFocused","itemContent","itemLink","itemIcon","itemLabel","submenuIcon","submenu","separator","BaseStyle","extend","name"],"mappings":"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"}
@@ -169,7 +169,7 @@ export interface PasswordMeterStateOptions {
169
169
  /**
170
170
  * Defines valid properties in Password component.
171
171
  */
172
- export interface PasswordProps extends InputHTMLAttributes {
172
+ export interface PasswordProps {
173
173
  /**
174
174
  * Value of the component.
175
175
  */
@@ -61,14 +61,12 @@ export default {
61
61
  lastPageY: null,
62
62
  timer: null,
63
63
  outsideClickListener: null,
64
- mutationObserver: null,
65
64
  data() {
66
65
  return {
67
66
  id: this.$attrs.id,
68
67
  orientation: 'vertical',
69
68
  lastScrollTop: 0,
70
- lastScrollLeft: 0,
71
- isRTL: false
69
+ lastScrollLeft: 0
72
70
  };
73
71
  },
74
72
  watch: {
@@ -82,9 +80,6 @@ export default {
82
80
  if (this.$el.offsetParent) {
83
81
  this.initialize();
84
82
  }
85
-
86
- this.updateDirection();
87
- this.observeDirectionChanges();
88
83
  },
89
84
  updated() {
90
85
  if (!this.initialized && this.$el.offsetParent) {
@@ -97,25 +92,8 @@ export default {
97
92
  if (this.frame) {
98
93
  window.cancelAnimationFrame(this.frame);
99
94
  }
100
-
101
- if (this.mutationObserver) {
102
- this.mutationObserver.disconnect();
103
- }
104
95
  },
105
96
  methods: {
106
- updateDirection() {
107
- this.isRTL = !!this.$el.closest('[dir="rtl"]');
108
- },
109
- observeDirectionChanges() {
110
- const targetNode = document.documentElement;
111
- const config = { attributes: true, attributeFilter: ['dir'] };
112
-
113
- this.mutationObserver = new MutationObserver(() => {
114
- this.updateDirection();
115
- });
116
-
117
- this.mutationObserver.observe(targetNode, config);
118
- },
119
97
  initialize() {
120
98
  this.moveBar();
121
99
  this.bindDocumentResizeListener();
@@ -160,11 +138,7 @@ export default {
160
138
  this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');
161
139
  !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-hidden');
162
140
 
163
- if (this.isRTL) {
164
- this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; right:' + (this.$refs.content.scrollLeft / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';
165
- } else {
166
- this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; left:' + (this.$refs.content.scrollLeft / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';
167
- }
141
+ this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; inset-inline-start:' + (Math.abs(this.$refs.content.scrollLeft) / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';
168
142
  }
169
143
  }
170
144
 
@@ -176,13 +150,8 @@ export default {
176
150
  this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');
177
151
  !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-hidden');
178
152
 
179
- if (this.isRTL) {
180
- this.$refs.yBar.style.cssText =
181
- 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px);left:' + right + 'px;';
182
- } else {
183
- this.$refs.yBar.style.cssText =
184
- 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px);right:' + right + 'px;';
185
- }
153
+ this.$refs.yBar.style.cssText =
154
+ 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px); inset-inline-end:' + right + 'px;';
186
155
  }
187
156
  }
188
157
  });
@@ -39,14 +39,12 @@ var script = {
39
39
  lastPageY: null,
40
40
  timer: null,
41
41
  outsideClickListener: null,
42
- mutationObserver: null,
43
42
  data: function data() {
44
43
  return {
45
44
  id: this.$attrs.id,
46
45
  orientation: 'vertical',
47
46
  lastScrollTop: 0,
48
- lastScrollLeft: 0,
49
- isRTL: false
47
+ lastScrollLeft: 0
50
48
  };
51
49
  },
52
50
  watch: {
@@ -59,8 +57,6 @@ var script = {
59
57
  if (this.$el.offsetParent) {
60
58
  this.initialize();
61
59
  }
62
- this.updateDirection();
63
- this.observeDirectionChanges();
64
60
  },
65
61
  updated: function updated() {
66
62
  if (!this.initialized && this.$el.offsetParent) {
@@ -72,26 +68,8 @@ var script = {
72
68
  if (this.frame) {
73
69
  window.cancelAnimationFrame(this.frame);
74
70
  }
75
- if (this.mutationObserver) {
76
- this.mutationObserver.disconnect();
77
- }
78
71
  },
79
72
  methods: {
80
- updateDirection: function updateDirection() {
81
- this.isRTL = !!this.$el.closest('[dir="rtl"]');
82
- },
83
- observeDirectionChanges: function observeDirectionChanges() {
84
- var _this = this;
85
- var targetNode = document.documentElement;
86
- var config = {
87
- attributes: true,
88
- attributeFilter: ['dir']
89
- };
90
- this.mutationObserver = new MutationObserver(function () {
91
- _this.updateDirection();
92
- });
93
- this.mutationObserver.observe(targetNode, config);
94
- },
95
73
  initialize: function initialize() {
96
74
  this.moveBar();
97
75
  this.bindDocumentResizeListener();
@@ -110,7 +88,7 @@ var script = {
110
88
  }
111
89
  },
112
90
  moveBar: function moveBar() {
113
- var _this2 = this;
91
+ var _this = this;
114
92
  if (this.$refs.content) {
115
93
  /* horizontal scroll */
116
94
  var totalWidth = this.$refs.content.scrollWidth;
@@ -124,32 +102,24 @@ var script = {
124
102
  var right = (this.$el.clientWidth - this.$refs.yBar.clientWidth) * -1;
125
103
  this.scrollYRatio = ownHeight / totalHeight;
126
104
  this.frame = this.requestAnimationFrame(function () {
127
- if (_this2.$refs.xBar) {
128
- if (_this2.scrollXRatio >= 1) {
129
- _this2.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'true');
130
- !_this2.isUnstyled && addClass(_this2.$refs.xBar, 'p-scrollpanel-hidden');
105
+ if (_this.$refs.xBar) {
106
+ if (_this.scrollXRatio >= 1) {
107
+ _this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'true');
108
+ !_this.isUnstyled && addClass(_this.$refs.xBar, 'p-scrollpanel-hidden');
131
109
  } else {
132
- _this2.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');
133
- !_this2.isUnstyled && removeClass(_this2.$refs.xBar, 'p-scrollpanel-hidden');
134
- if (_this2.isRTL) {
135
- _this2.$refs.xBar.style.cssText = 'width:' + Math.max(_this2.scrollXRatio * 100, 10) + '%; right:' + _this2.$refs.content.scrollLeft / totalWidth * 100 + '%;bottom:' + bottom + 'px;';
136
- } else {
137
- _this2.$refs.xBar.style.cssText = 'width:' + Math.max(_this2.scrollXRatio * 100, 10) + '%; left:' + _this2.$refs.content.scrollLeft / totalWidth * 100 + '%;bottom:' + bottom + 'px;';
138
- }
110
+ _this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');
111
+ !_this.isUnstyled && removeClass(_this.$refs.xBar, 'p-scrollpanel-hidden');
112
+ _this.$refs.xBar.style.cssText = 'width:' + Math.max(_this.scrollXRatio * 100, 10) + '%; inset-inline-start:' + Math.abs(_this.$refs.content.scrollLeft) / totalWidth * 100 + '%;bottom:' + bottom + 'px;';
139
113
  }
140
114
  }
141
- if (_this2.$refs.yBar) {
142
- if (_this2.scrollYRatio >= 1) {
143
- _this2.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'true');
144
- !_this2.isUnstyled && addClass(_this2.$refs.yBar, 'p-scrollpanel-hidden');
115
+ if (_this.$refs.yBar) {
116
+ if (_this.scrollYRatio >= 1) {
117
+ _this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'true');
118
+ !_this.isUnstyled && addClass(_this.$refs.yBar, 'p-scrollpanel-hidden');
145
119
  } else {
146
- _this2.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');
147
- !_this2.isUnstyled && removeClass(_this2.$refs.yBar, 'p-scrollpanel-hidden');
148
- if (_this2.isRTL) {
149
- _this2.$refs.yBar.style.cssText = 'height:' + Math.max(_this2.scrollYRatio * 100, 10) + '%; top: calc(' + _this2.$refs.content.scrollTop / totalHeight * 100 + '% - ' + _this2.$refs.xBar.clientHeight + 'px);left:' + right + 'px;';
150
- } else {
151
- _this2.$refs.yBar.style.cssText = 'height:' + Math.max(_this2.scrollYRatio * 100, 10) + '%; top: calc(' + _this2.$refs.content.scrollTop / totalHeight * 100 + '% - ' + _this2.$refs.xBar.clientHeight + 'px);right:' + right + 'px;';
152
- }
120
+ _this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');
121
+ !_this.isUnstyled && removeClass(_this.$refs.yBar, 'p-scrollpanel-hidden');
122
+ _this.$refs.yBar.style.cssText = 'height:' + Math.max(_this.scrollYRatio * 100, 10) + '%; top: calc(' + _this.$refs.content.scrollTop / totalHeight * 100 + '% - ' + _this.$refs.xBar.clientHeight + 'px); inset-inline-end:' + right + 'px;';
153
123
  }
154
124
  }
155
125
  });
@@ -240,10 +210,10 @@ var script = {
240
210
  this.moveBar();
241
211
  },
242
212
  setTimer: function setTimer(bar, step) {
243
- var _this3 = this;
213
+ var _this2 = this;
244
214
  this.clearTimer();
245
215
  this.timer = setTimeout(function () {
246
- _this3.repeat(bar, step);
216
+ _this2.repeat(bar, step);
247
217
  }, 40);
248
218
  },
249
219
  clearTimer: function clearTimer() {
@@ -262,19 +232,19 @@ var script = {
262
232
  }
263
233
  },
264
234
  onMouseMoveForXBar: function onMouseMoveForXBar(e) {
265
- var _this4 = this;
235
+ var _this3 = this;
266
236
  var deltaX = e.pageX - this.lastPageX;
267
237
  this.lastPageX = e.pageX;
268
238
  this.frame = this.requestAnimationFrame(function () {
269
- _this4.$refs.content.scrollLeft += deltaX / _this4.scrollXRatio;
239
+ _this3.$refs.content.scrollLeft += deltaX / _this3.scrollXRatio;
270
240
  });
271
241
  },
272
242
  onMouseMoveForYBar: function onMouseMoveForYBar(e) {
273
- var _this5 = this;
243
+ var _this4 = this;
274
244
  var deltaY = e.pageY - this.lastPageY;
275
245
  this.lastPageY = e.pageY;
276
246
  this.frame = this.requestAnimationFrame(function () {
277
- _this5.$refs.content.scrollTop += deltaY / _this5.scrollYRatio;
247
+ _this4.$refs.content.scrollTop += deltaY / _this4.scrollYRatio;
278
248
  });
279
249
  },
280
250
  onFocus: function onFocus(event) {
@@ -316,16 +286,16 @@ var script = {
316
286
  setTimeout(fn, 0);
317
287
  },
318
288
  bindDocumentMouseListeners: function bindDocumentMouseListeners() {
319
- var _this6 = this;
289
+ var _this5 = this;
320
290
  if (!this.documentMouseMoveListener) {
321
291
  this.documentMouseMoveListener = function (e) {
322
- _this6.onDocumentMouseMove(e);
292
+ _this5.onDocumentMouseMove(e);
323
293
  };
324
294
  document.addEventListener('mousemove', this.documentMouseMoveListener);
325
295
  }
326
296
  if (!this.documentMouseUpListener) {
327
297
  this.documentMouseUpListener = function (e) {
328
- _this6.onDocumentMouseUp(e);
298
+ _this5.onDocumentMouseUp(e);
329
299
  };
330
300
  document.addEventListener('mouseup', this.documentMouseUpListener);
331
301
  }
@@ -341,10 +311,10 @@ var script = {
341
311
  }
342
312
  },
343
313
  bindDocumentResizeListener: function bindDocumentResizeListener() {
344
- var _this7 = this;
314
+ var _this6 = this;
345
315
  if (!this.documentResizeListener) {
346
316
  this.documentResizeListener = function () {
347
- _this7.moveBar();
317
+ _this6.moveBar();
348
318
  };
349
319
  window.addEventListener('resize', this.documentResizeListener);
350
320
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/scrollpanel/BaseScrollPanel.vue","../../src/scrollpanel/ScrollPanel.vue","../../src/scrollpanel/ScrollPanel.vue?vue&type=template&id=34af76e6&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ScrollPanelStyle from 'primevue/scrollpanel/style';\n\nexport default {\n name: 'BaseScrollPanel',\n extends: BaseComponent,\n props: {\n step: {\n type: Number,\n default: 5\n }\n },\n style: ScrollPanelStyle,\n provide() {\n return {\n $pcScrollPanel: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('contentContainer')\" v-bind=\"ptm('contentContainer')\">\n <div ref=\"content\" :id=\"contentId\" :class=\"cx('content')\" @scroll=\"onScroll\" @mouseenter=\"moveBar\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n <div\n ref=\"xBar\"\n :class=\"cx('barx')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"horizontal\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollLeft\"\n @mousedown=\"onXBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n v-bind=\"ptm('barx')\"\n data-pc-group-section=\"bar\"\n ></div>\n <div\n ref=\"yBar\"\n :class=\"cx('bary')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"vertical\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollTop\"\n @mousedown=\"onYBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n v-bind=\"ptm('bary')\"\n data-pc-group-section=\"bar\"\n ></div>\n </div>\n</template>\n\n<script>\nimport { addClass, getHeight, removeClass } from '@primeuix/utils/dom';\nimport { UniqueComponentId } from '@primevue/core/utils';\nimport BaseScrollPanel from './BaseScrollPanel.vue';\n\nexport default {\n name: 'ScrollPanel',\n extends: BaseScrollPanel,\n inheritAttrs: false,\n initialized: false,\n documentResizeListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n frame: null,\n scrollXRatio: null,\n scrollYRatio: null,\n isXBarClicked: false,\n isYBarClicked: false,\n lastPageX: null,\n lastPageY: null,\n timer: null,\n outsideClickListener: null,\n mutationObserver: null,\n data() {\n return {\n id: this.$attrs.id,\n orientation: 'vertical',\n lastScrollTop: 0,\n lastScrollLeft: 0,\n isRTL: false\n };\n },\n watch: {\n '$attrs.id': function (newValue) {\n this.id = newValue || UniqueComponentId();\n }\n },\n mounted() {\n this.id = this.id || UniqueComponentId();\n\n if (this.$el.offsetParent) {\n this.initialize();\n }\n\n this.updateDirection();\n this.observeDirectionChanges();\n },\n updated() {\n if (!this.initialized && this.$el.offsetParent) {\n this.initialize();\n }\n },\n beforeUnmount() {\n this.unbindDocumentResizeListener();\n\n if (this.frame) {\n window.cancelAnimationFrame(this.frame);\n }\n\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n },\n methods: {\n updateDirection() {\n this.isRTL = !!this.$el.closest('[dir=\"rtl\"]');\n },\n observeDirectionChanges() {\n const targetNode = document.documentElement;\n const config = { attributes: true, attributeFilter: ['dir'] };\n\n this.mutationObserver = new MutationObserver(() => {\n this.updateDirection();\n });\n\n this.mutationObserver.observe(targetNode, config);\n },\n initialize() {\n this.moveBar();\n this.bindDocumentResizeListener();\n this.calculateContainerHeight();\n },\n calculateContainerHeight() {\n let containerStyles = getComputedStyle(this.$el),\n xBarStyles = getComputedStyle(this.$refs.xBar),\n pureContainerHeight = getHeight(this.$el) - parseInt(xBarStyles['height'], 10);\n\n if (containerStyles['max-height'] !== 'none' && pureContainerHeight === 0) {\n if (this.$refs.content.offsetHeight + parseInt(xBarStyles['height'], 10) > parseInt(containerStyles['max-height'], 10)) {\n this.$el.style.height = containerStyles['max-height'];\n } else {\n this.$el.style.height =\n this.$refs.content.offsetHeight + parseFloat(containerStyles.paddingTop) + parseFloat(containerStyles.paddingBottom) + parseFloat(containerStyles.borderTopWidth) + parseFloat(containerStyles.borderBottomWidth) + 'px';\n }\n }\n },\n moveBar() {\n if (this.$refs.content) {\n /* horizontal scroll */\n let totalWidth = this.$refs.content.scrollWidth;\n let ownWidth = this.$refs.content.clientWidth;\n let bottom = (this.$el.clientHeight - this.$refs.xBar.clientHeight) * -1;\n\n this.scrollXRatio = ownWidth / totalWidth;\n\n /* vertical scroll */\n let totalHeight = this.$refs.content.scrollHeight;\n let ownHeight = this.$refs.content.clientHeight;\n let right = (this.$el.clientWidth - this.$refs.yBar.clientWidth) * -1;\n\n this.scrollYRatio = ownHeight / totalHeight;\n\n this.frame = this.requestAnimationFrame(() => {\n if (this.$refs.xBar) {\n if (this.scrollXRatio >= 1) {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n\n if (this.isRTL) {\n this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; right:' + (this.$refs.content.scrollLeft / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';\n } else {\n this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; left:' + (this.$refs.content.scrollLeft / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';\n }\n }\n }\n\n if (this.$refs.yBar) {\n if (this.scrollYRatio >= 1) {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n\n if (this.isRTL) {\n this.$refs.yBar.style.cssText =\n 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px);left:' + right + 'px;';\n } else {\n this.$refs.yBar.style.cssText =\n 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px);right:' + right + 'px;';\n }\n }\n }\n });\n }\n },\n onYBarMouseDown(e) {\n this.isYBarClicked = true;\n this.$refs.yBar.focus();\n this.lastPageY = e.pageY;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onXBarMouseDown(e) {\n this.isXBarClicked = true;\n this.$refs.xBar.focus();\n this.lastPageX = e.pageX;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onScroll(event) {\n if (this.lastScrollLeft !== event.target.scrollLeft) {\n this.lastScrollLeft = event.target.scrollLeft;\n this.orientation = 'horizontal';\n } else if (this.lastScrollTop !== event.target.scrollTop) {\n this.lastScrollTop = event.target.scrollTop;\n this.orientation = 'vertical';\n }\n\n this.moveBar();\n },\n onKeyDown(event) {\n if (this.orientation === 'vertical') {\n switch (event.code) {\n case 'ArrowDown': {\n this.setTimer('scrollTop', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n this.setTimer('scrollTop', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowRight': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n } else if (this.orientation === 'horizontal') {\n switch (event.code) {\n case 'ArrowRight': {\n this.setTimer('scrollLeft', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.setTimer('scrollLeft', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown':\n\n case 'ArrowUp': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n },\n onKeyUp() {\n this.clearTimer();\n },\n repeat(bar, step) {\n this.$refs.content[bar] += step;\n this.moveBar();\n },\n setTimer(bar, step) {\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(bar, step);\n }, 40);\n },\n clearTimer() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n },\n onDocumentMouseMove(e) {\n if (this.isXBarClicked) {\n this.onMouseMoveForXBar(e);\n } else if (this.isYBarClicked) {\n this.onMouseMoveForYBar(e);\n } else {\n this.onMouseMoveForXBar(e);\n this.onMouseMoveForYBar(e);\n }\n },\n onMouseMoveForXBar(e) {\n let deltaX = e.pageX - this.lastPageX;\n\n this.lastPageX = e.pageX;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollLeft += deltaX / this.scrollXRatio;\n });\n },\n onMouseMoveForYBar(e) {\n let deltaY = e.pageY - this.lastPageY;\n\n this.lastPageY = e.pageY;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollTop += deltaY / this.scrollYRatio;\n });\n },\n onFocus(event) {\n if (this.$refs.xBar.isSameNode(event.target)) {\n this.orientation = 'horizontal';\n } else if (this.$refs.yBar.isSameNode(event.target)) {\n this.orientation = 'vertical';\n }\n },\n onBlur() {\n if (this.orientation === 'horizontal') {\n this.orientation = 'vertical';\n }\n },\n onDocumentMouseUp() {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n this.$refs.xBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(document.body, 'p-scrollpanel-grabbed');\n\n this.unbindDocumentMouseListeners();\n this.isXBarClicked = false;\n this.isYBarClicked = false;\n },\n requestAnimationFrame(f) {\n let frame = window.requestAnimationFrame || this.timeoutFrame;\n\n return frame(f);\n },\n refresh() {\n this.moveBar();\n },\n scrollTop(scrollTop) {\n let scrollableHeight = this.$refs.content.scrollHeight - this.$refs.content.clientHeight;\n\n scrollTop = scrollTop > scrollableHeight ? scrollableHeight : scrollTop > 0 ? scrollTop : 0;\n this.$refs.content.scrollTop = scrollTop;\n },\n timeoutFrame(fn) {\n setTimeout(fn, 0);\n },\n bindDocumentMouseListeners() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = (e) => {\n this.onDocumentMouseMove(e);\n };\n\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = (e) => {\n this.onDocumentMouseUp(e);\n };\n\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseListeners() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n bindDocumentResizeListener() {\n if (!this.documentResizeListener) {\n this.documentResizeListener = () => {\n this.moveBar();\n };\n\n window.addEventListener('resize', this.documentResizeListener);\n }\n },\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n },\n computed: {\n contentId() {\n return this.id + '_content';\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('contentContainer')\" v-bind=\"ptm('contentContainer')\">\n <div ref=\"content\" :id=\"contentId\" :class=\"cx('content')\" @scroll=\"onScroll\" @mouseenter=\"moveBar\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n <div\n ref=\"xBar\"\n :class=\"cx('barx')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"horizontal\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollLeft\"\n @mousedown=\"onXBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n v-bind=\"ptm('barx')\"\n data-pc-group-section=\"bar\"\n ></div>\n <div\n ref=\"yBar\"\n :class=\"cx('bary')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"vertical\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollTop\"\n @mousedown=\"onYBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n v-bind=\"ptm('bary')\"\n data-pc-group-section=\"bar\"\n ></div>\n </div>\n</template>\n\n<script>\nimport { addClass, getHeight, removeClass } from '@primeuix/utils/dom';\nimport { UniqueComponentId } from '@primevue/core/utils';\nimport BaseScrollPanel from './BaseScrollPanel.vue';\n\nexport default {\n name: 'ScrollPanel',\n extends: BaseScrollPanel,\n inheritAttrs: false,\n initialized: false,\n documentResizeListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n frame: null,\n scrollXRatio: null,\n scrollYRatio: null,\n isXBarClicked: false,\n isYBarClicked: false,\n lastPageX: null,\n lastPageY: null,\n timer: null,\n outsideClickListener: null,\n mutationObserver: null,\n data() {\n return {\n id: this.$attrs.id,\n orientation: 'vertical',\n lastScrollTop: 0,\n lastScrollLeft: 0,\n isRTL: false\n };\n },\n watch: {\n '$attrs.id': function (newValue) {\n this.id = newValue || UniqueComponentId();\n }\n },\n mounted() {\n this.id = this.id || UniqueComponentId();\n\n if (this.$el.offsetParent) {\n this.initialize();\n }\n\n this.updateDirection();\n this.observeDirectionChanges();\n },\n updated() {\n if (!this.initialized && this.$el.offsetParent) {\n this.initialize();\n }\n },\n beforeUnmount() {\n this.unbindDocumentResizeListener();\n\n if (this.frame) {\n window.cancelAnimationFrame(this.frame);\n }\n\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n },\n methods: {\n updateDirection() {\n this.isRTL = !!this.$el.closest('[dir=\"rtl\"]');\n },\n observeDirectionChanges() {\n const targetNode = document.documentElement;\n const config = { attributes: true, attributeFilter: ['dir'] };\n\n this.mutationObserver = new MutationObserver(() => {\n this.updateDirection();\n });\n\n this.mutationObserver.observe(targetNode, config);\n },\n initialize() {\n this.moveBar();\n this.bindDocumentResizeListener();\n this.calculateContainerHeight();\n },\n calculateContainerHeight() {\n let containerStyles = getComputedStyle(this.$el),\n xBarStyles = getComputedStyle(this.$refs.xBar),\n pureContainerHeight = getHeight(this.$el) - parseInt(xBarStyles['height'], 10);\n\n if (containerStyles['max-height'] !== 'none' && pureContainerHeight === 0) {\n if (this.$refs.content.offsetHeight + parseInt(xBarStyles['height'], 10) > parseInt(containerStyles['max-height'], 10)) {\n this.$el.style.height = containerStyles['max-height'];\n } else {\n this.$el.style.height =\n this.$refs.content.offsetHeight + parseFloat(containerStyles.paddingTop) + parseFloat(containerStyles.paddingBottom) + parseFloat(containerStyles.borderTopWidth) + parseFloat(containerStyles.borderBottomWidth) + 'px';\n }\n }\n },\n moveBar() {\n if (this.$refs.content) {\n /* horizontal scroll */\n let totalWidth = this.$refs.content.scrollWidth;\n let ownWidth = this.$refs.content.clientWidth;\n let bottom = (this.$el.clientHeight - this.$refs.xBar.clientHeight) * -1;\n\n this.scrollXRatio = ownWidth / totalWidth;\n\n /* vertical scroll */\n let totalHeight = this.$refs.content.scrollHeight;\n let ownHeight = this.$refs.content.clientHeight;\n let right = (this.$el.clientWidth - this.$refs.yBar.clientWidth) * -1;\n\n this.scrollYRatio = ownHeight / totalHeight;\n\n this.frame = this.requestAnimationFrame(() => {\n if (this.$refs.xBar) {\n if (this.scrollXRatio >= 1) {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n\n if (this.isRTL) {\n this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; right:' + (this.$refs.content.scrollLeft / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';\n } else {\n this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; left:' + (this.$refs.content.scrollLeft / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';\n }\n }\n }\n\n if (this.$refs.yBar) {\n if (this.scrollYRatio >= 1) {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n\n if (this.isRTL) {\n this.$refs.yBar.style.cssText =\n 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px);left:' + right + 'px;';\n } else {\n this.$refs.yBar.style.cssText =\n 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px);right:' + right + 'px;';\n }\n }\n }\n });\n }\n },\n onYBarMouseDown(e) {\n this.isYBarClicked = true;\n this.$refs.yBar.focus();\n this.lastPageY = e.pageY;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onXBarMouseDown(e) {\n this.isXBarClicked = true;\n this.$refs.xBar.focus();\n this.lastPageX = e.pageX;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onScroll(event) {\n if (this.lastScrollLeft !== event.target.scrollLeft) {\n this.lastScrollLeft = event.target.scrollLeft;\n this.orientation = 'horizontal';\n } else if (this.lastScrollTop !== event.target.scrollTop) {\n this.lastScrollTop = event.target.scrollTop;\n this.orientation = 'vertical';\n }\n\n this.moveBar();\n },\n onKeyDown(event) {\n if (this.orientation === 'vertical') {\n switch (event.code) {\n case 'ArrowDown': {\n this.setTimer('scrollTop', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n this.setTimer('scrollTop', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowRight': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n } else if (this.orientation === 'horizontal') {\n switch (event.code) {\n case 'ArrowRight': {\n this.setTimer('scrollLeft', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.setTimer('scrollLeft', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown':\n\n case 'ArrowUp': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n },\n onKeyUp() {\n this.clearTimer();\n },\n repeat(bar, step) {\n this.$refs.content[bar] += step;\n this.moveBar();\n },\n setTimer(bar, step) {\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(bar, step);\n }, 40);\n },\n clearTimer() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n },\n onDocumentMouseMove(e) {\n if (this.isXBarClicked) {\n this.onMouseMoveForXBar(e);\n } else if (this.isYBarClicked) {\n this.onMouseMoveForYBar(e);\n } else {\n this.onMouseMoveForXBar(e);\n this.onMouseMoveForYBar(e);\n }\n },\n onMouseMoveForXBar(e) {\n let deltaX = e.pageX - this.lastPageX;\n\n this.lastPageX = e.pageX;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollLeft += deltaX / this.scrollXRatio;\n });\n },\n onMouseMoveForYBar(e) {\n let deltaY = e.pageY - this.lastPageY;\n\n this.lastPageY = e.pageY;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollTop += deltaY / this.scrollYRatio;\n });\n },\n onFocus(event) {\n if (this.$refs.xBar.isSameNode(event.target)) {\n this.orientation = 'horizontal';\n } else if (this.$refs.yBar.isSameNode(event.target)) {\n this.orientation = 'vertical';\n }\n },\n onBlur() {\n if (this.orientation === 'horizontal') {\n this.orientation = 'vertical';\n }\n },\n onDocumentMouseUp() {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n this.$refs.xBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(document.body, 'p-scrollpanel-grabbed');\n\n this.unbindDocumentMouseListeners();\n this.isXBarClicked = false;\n this.isYBarClicked = false;\n },\n requestAnimationFrame(f) {\n let frame = window.requestAnimationFrame || this.timeoutFrame;\n\n return frame(f);\n },\n refresh() {\n this.moveBar();\n },\n scrollTop(scrollTop) {\n let scrollableHeight = this.$refs.content.scrollHeight - this.$refs.content.clientHeight;\n\n scrollTop = scrollTop > scrollableHeight ? scrollableHeight : scrollTop > 0 ? scrollTop : 0;\n this.$refs.content.scrollTop = scrollTop;\n },\n timeoutFrame(fn) {\n setTimeout(fn, 0);\n },\n bindDocumentMouseListeners() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = (e) => {\n this.onDocumentMouseMove(e);\n };\n\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = (e) => {\n this.onDocumentMouseUp(e);\n };\n\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseListeners() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n bindDocumentResizeListener() {\n if (!this.documentResizeListener) {\n this.documentResizeListener = () => {\n this.moveBar();\n };\n\n window.addEventListener('resize', this.documentResizeListener);\n }\n },\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n },\n computed: {\n contentId() {\n return this.id + '_content';\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","step","type","Number","style","ScrollPanelStyle","provide","$pcScrollPanel","$parentInstance","BaseScrollPanel","inheritAttrs","initialized","documentResizeListener","documentMouseMoveListener","documentMouseUpListener","frame","scrollXRatio","scrollYRatio","isXBarClicked","isYBarClicked","lastPageX","lastPageY","timer","outsideClickListener","mutationObserver","data","id","$attrs","orientation","lastScrollTop","lastScrollLeft","isRTL","watch","$attrsId","newValue","UniqueComponentId","mounted","$el","offsetParent","initialize","updateDirection","observeDirectionChanges","updated","beforeUnmount","unbindDocumentResizeListener","window","cancelAnimationFrame","disconnect","methods","closest","_this","targetNode","document","documentElement","config","attributes","attributeFilter","MutationObserver","observe","moveBar","bindDocumentResizeListener","calculateContainerHeight","containerStyles","getComputedStyle","xBarStyles","$refs","xBar","pureContainerHeight","getHeight","parseInt","content","offsetHeight","height","parseFloat","paddingTop","paddingBottom","borderTopWidth","borderBottomWidth","_this2","totalWidth","scrollWidth","ownWidth","clientWidth","bottom","clientHeight","totalHeight","scrollHeight","ownHeight","right","yBar","requestAnimationFrame","setAttribute","isUnstyled","addClass","removeClass","cssText","Math","max","scrollLeft","scrollTop","onYBarMouseDown","e","focus","pageY","body","bindDocumentMouseListeners","preventDefault","onXBarMouseDown","pageX","onScroll","event","target","onKeyDown","code","setTimer","onKeyUp","clearTimer","repeat","bar","_this3","setTimeout","clearTimeout","onDocumentMouseMove","onMouseMoveForXBar","onMouseMoveForYBar","_this4","deltaX","_this5","deltaY","onFocus","isSameNode","onBlur","onDocumentMouseUp","unbindDocumentMouseListeners","f","timeoutFrame","refresh","scrollableHeight","fn","_this6","addEventListener","removeEventListener","_this7","computed","contentId","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","_createElementVNode","ptm","ref","$options","apply","arguments","onMouseenter","_renderSlot","$slots","tabindex","role","$data","onMousedown","onKeydown","_cache","$event","onKeyup","_hoisted_2","_hoisted_3"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/scrollpanel/BaseScrollPanel.vue","../../src/scrollpanel/ScrollPanel.vue","../../src/scrollpanel/ScrollPanel.vue?vue&type=template&id=917733de&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ScrollPanelStyle from 'primevue/scrollpanel/style';\n\nexport default {\n name: 'BaseScrollPanel',\n extends: BaseComponent,\n props: {\n step: {\n type: Number,\n default: 5\n }\n },\n style: ScrollPanelStyle,\n provide() {\n return {\n $pcScrollPanel: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('contentContainer')\" v-bind=\"ptm('contentContainer')\">\n <div ref=\"content\" :id=\"contentId\" :class=\"cx('content')\" @scroll=\"onScroll\" @mouseenter=\"moveBar\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n <div\n ref=\"xBar\"\n :class=\"cx('barx')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"horizontal\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollLeft\"\n @mousedown=\"onXBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n v-bind=\"ptm('barx')\"\n data-pc-group-section=\"bar\"\n ></div>\n <div\n ref=\"yBar\"\n :class=\"cx('bary')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"vertical\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollTop\"\n @mousedown=\"onYBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n v-bind=\"ptm('bary')\"\n data-pc-group-section=\"bar\"\n ></div>\n </div>\n</template>\n\n<script>\nimport { addClass, getHeight, removeClass } from '@primeuix/utils/dom';\nimport { UniqueComponentId } from '@primevue/core/utils';\nimport BaseScrollPanel from './BaseScrollPanel.vue';\n\nexport default {\n name: 'ScrollPanel',\n extends: BaseScrollPanel,\n inheritAttrs: false,\n initialized: false,\n documentResizeListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n frame: null,\n scrollXRatio: null,\n scrollYRatio: null,\n isXBarClicked: false,\n isYBarClicked: false,\n lastPageX: null,\n lastPageY: null,\n timer: null,\n outsideClickListener: null,\n data() {\n return {\n id: this.$attrs.id,\n orientation: 'vertical',\n lastScrollTop: 0,\n lastScrollLeft: 0\n };\n },\n watch: {\n '$attrs.id': function (newValue) {\n this.id = newValue || UniqueComponentId();\n }\n },\n mounted() {\n this.id = this.id || UniqueComponentId();\n\n if (this.$el.offsetParent) {\n this.initialize();\n }\n },\n updated() {\n if (!this.initialized && this.$el.offsetParent) {\n this.initialize();\n }\n },\n beforeUnmount() {\n this.unbindDocumentResizeListener();\n\n if (this.frame) {\n window.cancelAnimationFrame(this.frame);\n }\n },\n methods: {\n initialize() {\n this.moveBar();\n this.bindDocumentResizeListener();\n this.calculateContainerHeight();\n },\n calculateContainerHeight() {\n let containerStyles = getComputedStyle(this.$el),\n xBarStyles = getComputedStyle(this.$refs.xBar),\n pureContainerHeight = getHeight(this.$el) - parseInt(xBarStyles['height'], 10);\n\n if (containerStyles['max-height'] !== 'none' && pureContainerHeight === 0) {\n if (this.$refs.content.offsetHeight + parseInt(xBarStyles['height'], 10) > parseInt(containerStyles['max-height'], 10)) {\n this.$el.style.height = containerStyles['max-height'];\n } else {\n this.$el.style.height =\n this.$refs.content.offsetHeight + parseFloat(containerStyles.paddingTop) + parseFloat(containerStyles.paddingBottom) + parseFloat(containerStyles.borderTopWidth) + parseFloat(containerStyles.borderBottomWidth) + 'px';\n }\n }\n },\n moveBar() {\n if (this.$refs.content) {\n /* horizontal scroll */\n let totalWidth = this.$refs.content.scrollWidth;\n let ownWidth = this.$refs.content.clientWidth;\n let bottom = (this.$el.clientHeight - this.$refs.xBar.clientHeight) * -1;\n\n this.scrollXRatio = ownWidth / totalWidth;\n\n /* vertical scroll */\n let totalHeight = this.$refs.content.scrollHeight;\n let ownHeight = this.$refs.content.clientHeight;\n let right = (this.$el.clientWidth - this.$refs.yBar.clientWidth) * -1;\n\n this.scrollYRatio = ownHeight / totalHeight;\n\n this.frame = this.requestAnimationFrame(() => {\n if (this.$refs.xBar) {\n if (this.scrollXRatio >= 1) {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n\n this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; inset-inline-start:' + (Math.abs(this.$refs.content.scrollLeft) / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';\n }\n }\n\n if (this.$refs.yBar) {\n if (this.scrollYRatio >= 1) {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n\n this.$refs.yBar.style.cssText =\n 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px); inset-inline-end:' + right + 'px;';\n }\n }\n });\n }\n },\n onYBarMouseDown(e) {\n this.isYBarClicked = true;\n this.$refs.yBar.focus();\n this.lastPageY = e.pageY;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onXBarMouseDown(e) {\n this.isXBarClicked = true;\n this.$refs.xBar.focus();\n this.lastPageX = e.pageX;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onScroll(event) {\n if (this.lastScrollLeft !== event.target.scrollLeft) {\n this.lastScrollLeft = event.target.scrollLeft;\n this.orientation = 'horizontal';\n } else if (this.lastScrollTop !== event.target.scrollTop) {\n this.lastScrollTop = event.target.scrollTop;\n this.orientation = 'vertical';\n }\n\n this.moveBar();\n },\n onKeyDown(event) {\n if (this.orientation === 'vertical') {\n switch (event.code) {\n case 'ArrowDown': {\n this.setTimer('scrollTop', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n this.setTimer('scrollTop', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowRight': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n } else if (this.orientation === 'horizontal') {\n switch (event.code) {\n case 'ArrowRight': {\n this.setTimer('scrollLeft', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.setTimer('scrollLeft', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown':\n\n case 'ArrowUp': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n },\n onKeyUp() {\n this.clearTimer();\n },\n repeat(bar, step) {\n this.$refs.content[bar] += step;\n this.moveBar();\n },\n setTimer(bar, step) {\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(bar, step);\n }, 40);\n },\n clearTimer() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n },\n onDocumentMouseMove(e) {\n if (this.isXBarClicked) {\n this.onMouseMoveForXBar(e);\n } else if (this.isYBarClicked) {\n this.onMouseMoveForYBar(e);\n } else {\n this.onMouseMoveForXBar(e);\n this.onMouseMoveForYBar(e);\n }\n },\n onMouseMoveForXBar(e) {\n let deltaX = e.pageX - this.lastPageX;\n\n this.lastPageX = e.pageX;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollLeft += deltaX / this.scrollXRatio;\n });\n },\n onMouseMoveForYBar(e) {\n let deltaY = e.pageY - this.lastPageY;\n\n this.lastPageY = e.pageY;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollTop += deltaY / this.scrollYRatio;\n });\n },\n onFocus(event) {\n if (this.$refs.xBar.isSameNode(event.target)) {\n this.orientation = 'horizontal';\n } else if (this.$refs.yBar.isSameNode(event.target)) {\n this.orientation = 'vertical';\n }\n },\n onBlur() {\n if (this.orientation === 'horizontal') {\n this.orientation = 'vertical';\n }\n },\n onDocumentMouseUp() {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n this.$refs.xBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(document.body, 'p-scrollpanel-grabbed');\n\n this.unbindDocumentMouseListeners();\n this.isXBarClicked = false;\n this.isYBarClicked = false;\n },\n requestAnimationFrame(f) {\n let frame = window.requestAnimationFrame || this.timeoutFrame;\n\n return frame(f);\n },\n refresh() {\n this.moveBar();\n },\n scrollTop(scrollTop) {\n let scrollableHeight = this.$refs.content.scrollHeight - this.$refs.content.clientHeight;\n\n scrollTop = scrollTop > scrollableHeight ? scrollableHeight : scrollTop > 0 ? scrollTop : 0;\n this.$refs.content.scrollTop = scrollTop;\n },\n timeoutFrame(fn) {\n setTimeout(fn, 0);\n },\n bindDocumentMouseListeners() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = (e) => {\n this.onDocumentMouseMove(e);\n };\n\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = (e) => {\n this.onDocumentMouseUp(e);\n };\n\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseListeners() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n bindDocumentResizeListener() {\n if (!this.documentResizeListener) {\n this.documentResizeListener = () => {\n this.moveBar();\n };\n\n window.addEventListener('resize', this.documentResizeListener);\n }\n },\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n },\n computed: {\n contentId() {\n return this.id + '_content';\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('contentContainer')\" v-bind=\"ptm('contentContainer')\">\n <div ref=\"content\" :id=\"contentId\" :class=\"cx('content')\" @scroll=\"onScroll\" @mouseenter=\"moveBar\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n <div\n ref=\"xBar\"\n :class=\"cx('barx')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"horizontal\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollLeft\"\n @mousedown=\"onXBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n v-bind=\"ptm('barx')\"\n data-pc-group-section=\"bar\"\n ></div>\n <div\n ref=\"yBar\"\n :class=\"cx('bary')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"vertical\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollTop\"\n @mousedown=\"onYBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n v-bind=\"ptm('bary')\"\n data-pc-group-section=\"bar\"\n ></div>\n </div>\n</template>\n\n<script>\nimport { addClass, getHeight, removeClass } from '@primeuix/utils/dom';\nimport { UniqueComponentId } from '@primevue/core/utils';\nimport BaseScrollPanel from './BaseScrollPanel.vue';\n\nexport default {\n name: 'ScrollPanel',\n extends: BaseScrollPanel,\n inheritAttrs: false,\n initialized: false,\n documentResizeListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n frame: null,\n scrollXRatio: null,\n scrollYRatio: null,\n isXBarClicked: false,\n isYBarClicked: false,\n lastPageX: null,\n lastPageY: null,\n timer: null,\n outsideClickListener: null,\n data() {\n return {\n id: this.$attrs.id,\n orientation: 'vertical',\n lastScrollTop: 0,\n lastScrollLeft: 0\n };\n },\n watch: {\n '$attrs.id': function (newValue) {\n this.id = newValue || UniqueComponentId();\n }\n },\n mounted() {\n this.id = this.id || UniqueComponentId();\n\n if (this.$el.offsetParent) {\n this.initialize();\n }\n },\n updated() {\n if (!this.initialized && this.$el.offsetParent) {\n this.initialize();\n }\n },\n beforeUnmount() {\n this.unbindDocumentResizeListener();\n\n if (this.frame) {\n window.cancelAnimationFrame(this.frame);\n }\n },\n methods: {\n initialize() {\n this.moveBar();\n this.bindDocumentResizeListener();\n this.calculateContainerHeight();\n },\n calculateContainerHeight() {\n let containerStyles = getComputedStyle(this.$el),\n xBarStyles = getComputedStyle(this.$refs.xBar),\n pureContainerHeight = getHeight(this.$el) - parseInt(xBarStyles['height'], 10);\n\n if (containerStyles['max-height'] !== 'none' && pureContainerHeight === 0) {\n if (this.$refs.content.offsetHeight + parseInt(xBarStyles['height'], 10) > parseInt(containerStyles['max-height'], 10)) {\n this.$el.style.height = containerStyles['max-height'];\n } else {\n this.$el.style.height =\n this.$refs.content.offsetHeight + parseFloat(containerStyles.paddingTop) + parseFloat(containerStyles.paddingBottom) + parseFloat(containerStyles.borderTopWidth) + parseFloat(containerStyles.borderBottomWidth) + 'px';\n }\n }\n },\n moveBar() {\n if (this.$refs.content) {\n /* horizontal scroll */\n let totalWidth = this.$refs.content.scrollWidth;\n let ownWidth = this.$refs.content.clientWidth;\n let bottom = (this.$el.clientHeight - this.$refs.xBar.clientHeight) * -1;\n\n this.scrollXRatio = ownWidth / totalWidth;\n\n /* vertical scroll */\n let totalHeight = this.$refs.content.scrollHeight;\n let ownHeight = this.$refs.content.clientHeight;\n let right = (this.$el.clientWidth - this.$refs.yBar.clientWidth) * -1;\n\n this.scrollYRatio = ownHeight / totalHeight;\n\n this.frame = this.requestAnimationFrame(() => {\n if (this.$refs.xBar) {\n if (this.scrollXRatio >= 1) {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n\n this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; inset-inline-start:' + (Math.abs(this.$refs.content.scrollLeft) / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';\n }\n }\n\n if (this.$refs.yBar) {\n if (this.scrollYRatio >= 1) {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n\n this.$refs.yBar.style.cssText =\n 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px); inset-inline-end:' + right + 'px;';\n }\n }\n });\n }\n },\n onYBarMouseDown(e) {\n this.isYBarClicked = true;\n this.$refs.yBar.focus();\n this.lastPageY = e.pageY;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onXBarMouseDown(e) {\n this.isXBarClicked = true;\n this.$refs.xBar.focus();\n this.lastPageX = e.pageX;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onScroll(event) {\n if (this.lastScrollLeft !== event.target.scrollLeft) {\n this.lastScrollLeft = event.target.scrollLeft;\n this.orientation = 'horizontal';\n } else if (this.lastScrollTop !== event.target.scrollTop) {\n this.lastScrollTop = event.target.scrollTop;\n this.orientation = 'vertical';\n }\n\n this.moveBar();\n },\n onKeyDown(event) {\n if (this.orientation === 'vertical') {\n switch (event.code) {\n case 'ArrowDown': {\n this.setTimer('scrollTop', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n this.setTimer('scrollTop', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowRight': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n } else if (this.orientation === 'horizontal') {\n switch (event.code) {\n case 'ArrowRight': {\n this.setTimer('scrollLeft', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.setTimer('scrollLeft', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown':\n\n case 'ArrowUp': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n },\n onKeyUp() {\n this.clearTimer();\n },\n repeat(bar, step) {\n this.$refs.content[bar] += step;\n this.moveBar();\n },\n setTimer(bar, step) {\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(bar, step);\n }, 40);\n },\n clearTimer() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n },\n onDocumentMouseMove(e) {\n if (this.isXBarClicked) {\n this.onMouseMoveForXBar(e);\n } else if (this.isYBarClicked) {\n this.onMouseMoveForYBar(e);\n } else {\n this.onMouseMoveForXBar(e);\n this.onMouseMoveForYBar(e);\n }\n },\n onMouseMoveForXBar(e) {\n let deltaX = e.pageX - this.lastPageX;\n\n this.lastPageX = e.pageX;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollLeft += deltaX / this.scrollXRatio;\n });\n },\n onMouseMoveForYBar(e) {\n let deltaY = e.pageY - this.lastPageY;\n\n this.lastPageY = e.pageY;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollTop += deltaY / this.scrollYRatio;\n });\n },\n onFocus(event) {\n if (this.$refs.xBar.isSameNode(event.target)) {\n this.orientation = 'horizontal';\n } else if (this.$refs.yBar.isSameNode(event.target)) {\n this.orientation = 'vertical';\n }\n },\n onBlur() {\n if (this.orientation === 'horizontal') {\n this.orientation = 'vertical';\n }\n },\n onDocumentMouseUp() {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n this.$refs.xBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(document.body, 'p-scrollpanel-grabbed');\n\n this.unbindDocumentMouseListeners();\n this.isXBarClicked = false;\n this.isYBarClicked = false;\n },\n requestAnimationFrame(f) {\n let frame = window.requestAnimationFrame || this.timeoutFrame;\n\n return frame(f);\n },\n refresh() {\n this.moveBar();\n },\n scrollTop(scrollTop) {\n let scrollableHeight = this.$refs.content.scrollHeight - this.$refs.content.clientHeight;\n\n scrollTop = scrollTop > scrollableHeight ? scrollableHeight : scrollTop > 0 ? scrollTop : 0;\n this.$refs.content.scrollTop = scrollTop;\n },\n timeoutFrame(fn) {\n setTimeout(fn, 0);\n },\n bindDocumentMouseListeners() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = (e) => {\n this.onDocumentMouseMove(e);\n };\n\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = (e) => {\n this.onDocumentMouseUp(e);\n };\n\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseListeners() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n bindDocumentResizeListener() {\n if (!this.documentResizeListener) {\n this.documentResizeListener = () => {\n this.moveBar();\n };\n\n window.addEventListener('resize', this.documentResizeListener);\n }\n },\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n },\n computed: {\n contentId() {\n return this.id + '_content';\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","step","type","Number","style","ScrollPanelStyle","provide","$pcScrollPanel","$parentInstance","BaseScrollPanel","inheritAttrs","initialized","documentResizeListener","documentMouseMoveListener","documentMouseUpListener","frame","scrollXRatio","scrollYRatio","isXBarClicked","isYBarClicked","lastPageX","lastPageY","timer","outsideClickListener","data","id","$attrs","orientation","lastScrollTop","lastScrollLeft","watch","$attrsId","newValue","UniqueComponentId","mounted","$el","offsetParent","initialize","updated","beforeUnmount","unbindDocumentResizeListener","window","cancelAnimationFrame","methods","moveBar","bindDocumentResizeListener","calculateContainerHeight","containerStyles","getComputedStyle","xBarStyles","$refs","xBar","pureContainerHeight","getHeight","parseInt","content","offsetHeight","height","parseFloat","paddingTop","paddingBottom","borderTopWidth","borderBottomWidth","_this","totalWidth","scrollWidth","ownWidth","clientWidth","bottom","clientHeight","totalHeight","scrollHeight","ownHeight","right","yBar","requestAnimationFrame","setAttribute","isUnstyled","addClass","removeClass","cssText","Math","max","abs","scrollLeft","scrollTop","onYBarMouseDown","e","focus","pageY","document","body","bindDocumentMouseListeners","preventDefault","onXBarMouseDown","pageX","onScroll","event","target","onKeyDown","code","setTimer","onKeyUp","clearTimer","repeat","bar","_this2","setTimeout","clearTimeout","onDocumentMouseMove","onMouseMoveForXBar","onMouseMoveForYBar","_this3","deltaX","_this4","deltaY","onFocus","isSameNode","onBlur","onDocumentMouseUp","unbindDocumentMouseListeners","f","timeoutFrame","refresh","scrollableHeight","fn","_this5","addEventListener","removeEventListener","_this6","computed","contentId","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","_createElementVNode","ptm","ref","$options","apply","arguments","onMouseenter","_renderSlot","$slots","tabindex","role","$data","onMousedown","onKeydown","_cache","$event","onKeyup","_hoisted_2","_hoisted_3"],"mappings":"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"}