primevue 4.5.3 → 4.5.5

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 (194) hide show
  1. package/accordion/index.mjs +1 -1
  2. package/accordioncontent/index.mjs +1 -1
  3. package/accordionheader/index.mjs +1 -1
  4. package/accordionpanel/index.mjs +1 -1
  5. package/autocomplete/AutoComplete.vue +5 -2
  6. package/autocomplete/index.mjs +5 -3
  7. package/autocomplete/index.mjs.map +1 -1
  8. package/avatar/index.mjs +1 -1
  9. package/avatargroup/index.mjs +1 -1
  10. package/badge/index.mjs +1 -1
  11. package/blockui/BlockUI.vue +1 -1
  12. package/blockui/index.mjs +2 -2
  13. package/blockui/index.mjs.map +1 -1
  14. package/breadcrumb/index.mjs +1 -1
  15. package/button/index.mjs +1 -1
  16. package/buttongroup/index.mjs +1 -1
  17. package/card/index.mjs +1 -1
  18. package/carousel/index.mjs +1 -1
  19. package/cascadeselect/CascadeSelect.vue +2 -1
  20. package/cascadeselect/index.mjs +3 -2
  21. package/cascadeselect/index.mjs.map +1 -1
  22. package/chart/index.mjs +1 -1
  23. package/checkbox/index.mjs +1 -1
  24. package/checkboxgroup/index.mjs +1 -1
  25. package/chip/index.mjs +1 -1
  26. package/colorpicker/ColorPicker.vue +1 -1
  27. package/colorpicker/index.mjs +2 -2
  28. package/colorpicker/index.mjs.map +1 -1
  29. package/column/index.d.ts +12 -0
  30. package/confirmdialog/index.mjs +1 -1
  31. package/confirmpopup/index.mjs +1 -1
  32. package/contextmenu/ContextMenu.vue +1 -1
  33. package/contextmenu/ContextMenuSub.vue +1 -1
  34. package/contextmenu/index.mjs +3 -3
  35. package/contextmenu/index.mjs.map +1 -1
  36. package/datatable/BodyCell.vue +7 -2
  37. package/datatable/BodyRow.vue +4 -1
  38. package/datatable/ColumnFilter.vue +2 -0
  39. package/datatable/DataTable.vue +12 -4
  40. package/datatable/index.mjs +31 -9
  41. package/datatable/index.mjs.map +1 -1
  42. package/dataview/index.mjs +1 -1
  43. package/datepicker/DatePicker.vue +29 -13
  44. package/datepicker/index.mjs +28 -14
  45. package/datepicker/index.mjs.map +1 -1
  46. package/deferredcontent/index.mjs +1 -1
  47. package/dialog/Dialog.vue +26 -10
  48. package/dialog/index.mjs +3 -3
  49. package/dialog/index.mjs.map +1 -1
  50. package/divider/index.mjs +1 -1
  51. package/dock/index.mjs +1 -1
  52. package/drawer/index.mjs +1 -1
  53. package/dynamicdialog/index.mjs +1 -1
  54. package/editor/index.mjs +1 -1
  55. package/fieldset/index.mjs +1 -1
  56. package/fileupload/FileUpload.vue +3 -3
  57. package/fileupload/index.mjs +4 -4
  58. package/fileupload/index.mjs.map +1 -1
  59. package/floatlabel/index.mjs +1 -1
  60. package/fluid/index.mjs +1 -1
  61. package/galleria/Galleria.vue +1 -1
  62. package/galleria/index.mjs +2 -2
  63. package/galleria/index.mjs.map +1 -1
  64. package/iconfield/index.mjs +1 -1
  65. package/iftalabel/index.mjs +1 -1
  66. package/image/index.mjs +1 -1
  67. package/imagecompare/index.mjs +1 -1
  68. package/inlinemessage/index.mjs +1 -1
  69. package/inplace/index.mjs +1 -1
  70. package/inputchips/index.mjs +1 -1
  71. package/inputgroup/index.mjs +1 -1
  72. package/inputgroupaddon/index.mjs +1 -1
  73. package/inputicon/index.mjs +1 -1
  74. package/inputmask/index.mjs +1 -1
  75. package/inputnumber/InputNumber.vue +7 -2
  76. package/inputnumber/index.mjs +7 -3
  77. package/inputnumber/index.mjs.map +1 -1
  78. package/inputotp/InputOtp.vue +5 -1
  79. package/inputotp/index.mjs +5 -2
  80. package/inputotp/index.mjs.map +1 -1
  81. package/inputtext/index.mjs +1 -1
  82. package/keyfilter/index.mjs +20 -0
  83. package/keyfilter/index.mjs.map +1 -1
  84. package/knob/index.mjs +1 -1
  85. package/listbox/index.mjs +1 -1
  86. package/megamenu/index.mjs +1 -1
  87. package/menu/Menu.vue +1 -1
  88. package/menu/index.d.ts +10 -0
  89. package/menu/index.mjs +2 -2
  90. package/menu/index.mjs.map +1 -1
  91. package/menubar/MenubarSub.vue +1 -1
  92. package/menubar/index.mjs +2 -2
  93. package/menubar/index.mjs.map +1 -1
  94. package/message/index.mjs +1 -1
  95. package/metergroup/index.mjs +1 -1
  96. package/multiselect/MultiSelect.vue +8 -4
  97. package/multiselect/index.mjs +13 -8
  98. package/multiselect/index.mjs.map +1 -1
  99. package/orderlist/index.mjs +1 -1
  100. package/organizationchart/index.mjs +1 -1
  101. package/overlaybadge/index.mjs +1 -1
  102. package/package.json +4 -4
  103. package/paginator/index.mjs +1 -1
  104. package/panel/index.mjs +1 -1
  105. package/panelmenu/index.mjs +1 -1
  106. package/password/Password.vue +2 -2
  107. package/password/index.mjs +3 -3
  108. package/password/index.mjs.map +1 -1
  109. package/picklist/index.mjs +1 -1
  110. package/popover/Popover.vue +22 -1
  111. package/popover/index.mjs +23 -2
  112. package/popover/index.mjs.map +1 -1
  113. package/portal/index.mjs +1 -1
  114. package/progressbar/index.mjs +1 -1
  115. package/progressspinner/index.mjs +1 -1
  116. package/radiobutton/index.mjs +1 -1
  117. package/radiobuttongroup/index.mjs +1 -1
  118. package/rating/index.mjs +1 -1
  119. package/scrollpanel/ScrollPanel.vue +2 -1
  120. package/scrollpanel/index.mjs +3 -2
  121. package/scrollpanel/index.mjs.map +1 -1
  122. package/scrolltop/index.mjs +1 -1
  123. package/select/Select.vue +12 -2
  124. package/select/index.mjs +58 -49
  125. package/select/index.mjs.map +1 -1
  126. package/selectbutton/index.mjs +1 -1
  127. package/skeleton/index.mjs +1 -1
  128. package/slider/index.mjs +1 -1
  129. package/speeddial/SpeedDial.vue +17 -6
  130. package/speeddial/index.mjs +19 -9
  131. package/speeddial/index.mjs.map +1 -1
  132. package/speeddial/style/index.mjs +6 -1
  133. package/speeddial/style/index.mjs.map +1 -1
  134. package/splitbutton/index.mjs +1 -1
  135. package/splitter/Splitter.vue +27 -4
  136. package/splitter/index.mjs +19 -4
  137. package/splitter/index.mjs.map +1 -1
  138. package/splitterpanel/index.mjs +1 -1
  139. package/step/Step.vue +12 -11
  140. package/step/index.mjs +12 -11
  141. package/step/index.mjs.map +1 -1
  142. package/stepitem/index.mjs +1 -1
  143. package/steplist/index.mjs +1 -1
  144. package/steppanel/StepPanel.vue +13 -7
  145. package/steppanel/index.mjs +14 -8
  146. package/steppanel/index.mjs.map +1 -1
  147. package/steppanels/index.mjs +1 -1
  148. package/stepper/BaseStepper.vue +2 -1
  149. package/stepper/index.mjs +3 -2
  150. package/stepper/index.mjs.map +1 -1
  151. package/steps/index.mjs +1 -1
  152. package/styleclass/index.mjs +18 -6
  153. package/styleclass/index.mjs.map +1 -1
  154. package/tab/index.mjs +2 -2
  155. package/tablist/TabList.vue +19 -0
  156. package/tablist/index.mjs +22 -1
  157. package/tablist/index.mjs.map +1 -1
  158. package/tabmenu/index.mjs +1 -1
  159. package/tabpanel/index.d.ts +16 -3
  160. package/tabpanel/index.mjs +1 -1
  161. package/tabpanels/index.mjs +1 -1
  162. package/tabs/index.mjs +1 -1
  163. package/tabview/index.mjs +2 -2
  164. package/tag/index.mjs +1 -1
  165. package/terminal/index.mjs +1 -1
  166. package/textarea/index.mjs +1 -1
  167. package/tieredmenu/TieredMenu.vue +3 -2
  168. package/tieredmenu/TieredMenuSub.vue +1 -1
  169. package/tieredmenu/index.mjs +5 -4
  170. package/tieredmenu/index.mjs.map +1 -1
  171. package/timeline/Timeline.vue +4 -4
  172. package/timeline/index.mjs +3 -3
  173. package/timeline/index.mjs.map +1 -1
  174. package/toast/index.mjs +1 -1
  175. package/togglebutton/index.mjs +1 -1
  176. package/toggleswitch/index.mjs +1 -1
  177. package/toolbar/index.mjs +1 -1
  178. package/tooltip/index.mjs +7 -4
  179. package/tooltip/index.mjs.map +1 -1
  180. package/tree/Tree.vue +51 -34
  181. package/tree/TreeNode.vue +3 -0
  182. package/tree/index.d.ts +11 -0
  183. package/tree/index.mjs +73 -45
  184. package/tree/index.mjs.map +1 -1
  185. package/treeselect/TreeSelect.vue +2 -1
  186. package/treeselect/index.d.ts +6 -1
  187. package/treeselect/index.mjs +10 -7
  188. package/treeselect/index.mjs.map +1 -1
  189. package/treetable/TreeTable.vue +12 -15
  190. package/treetable/index.mjs +11 -7
  191. package/treetable/index.mjs.map +1 -1
  192. package/umd/primevue.min.js +1 -1
  193. package/virtualscroller/index.mjs +1 -1
  194. package/web-types.json +1 -1
@@ -283,6 +283,9 @@ export default {
283
283
  handler(newValue) {
284
284
  this.d_rowExpanded = this.dataKey ? newValue?.[resolveFieldData(this.rowData, this.dataKey)] !== undefined : newValue?.some((d) => this.equals(this.rowData, d));
285
285
  }
286
+ },
287
+ rowData(newValue) {
288
+ this.d_rowExpanded = this.dataKey ? this.expandedRows?.[resolveFieldData(newValue, this.dataKey)] !== undefined : this.expandedRows?.some((d) => this.equals(newValue, d));
286
289
  }
287
290
  },
288
291
  methods: {
@@ -507,7 +510,7 @@ export default {
507
510
  return [this.cx('row', { rowData: this.rowData, index: this.rowIndex, columnSelectionMode }), rowStyleClass];
508
511
  },
509
512
  rowTabindex() {
510
- if (this.selection === null && (this.selectionMode === 'single' || this.selectionMode === 'multiple')) {
513
+ if ((this.selection === null || (Array.isArray(this.selection) && this.selection.length === 0)) && (this.selectionMode === 'single' || this.selectionMode === 'multiple')) {
511
514
  return this.rowIndex === 0 ? 0 : -1;
512
515
  }
513
516
 
@@ -520,6 +520,8 @@ export default {
520
520
  originalEvent: event,
521
521
  target: this.overlay
522
522
  });
523
+
524
+ this.selfClick = false;
523
525
  },
524
526
  onContentMouseDown() {
525
527
  this.selfClick = true;
@@ -399,7 +399,8 @@ export default {
399
399
  'update:editingRows',
400
400
  'row-edit-init',
401
401
  'row-edit-save',
402
- 'row-edit-cancel'
402
+ 'row-edit-cancel',
403
+ 'update:totalRecords'
403
404
  ],
404
405
  provide() {
405
406
  return {
@@ -483,6 +484,9 @@ export default {
483
484
  handler: function (newValue) {
484
485
  this.d_filters = this.cloneFilters(newValue);
485
486
  }
487
+ },
488
+ totalRecordsLength(newValue) {
489
+ this.$emit('update:totalRecords', newValue);
486
490
  }
487
491
  },
488
492
  mounted() {
@@ -1760,10 +1764,14 @@ export default {
1760
1764
  }
1761
1765
 
1762
1766
  if (Object.keys(state).length) {
1763
- storage.setItem(this.stateKey, JSON.stringify(state));
1764
- }
1767
+ const serializedState = JSON.stringify(state);
1765
1768
 
1766
- this.$emit('state-save', state);
1769
+ if (serializedState !== this._lastSavedState) {
1770
+ storage.setItem(this.stateKey, serializedState);
1771
+ this._lastSavedState = serializedState;
1772
+ this.$emit('state-save', state);
1773
+ }
1774
+ }
1767
1775
  },
1768
1776
  restoreState() {
1769
1777
  const storage = this.getStorage();
@@ -12,7 +12,7 @@ import BaseComponent from '@primevue/core/basecomponent';
12
12
  import DataTableStyle from 'primevue/datatable/style';
13
13
  import ChevronDownIcon from '@primevue/icons/chevrondown';
14
14
  import ChevronRightIcon from '@primevue/icons/chevronright';
15
- import { mergeProps, resolveComponent, createBlock, openBlock, withCtx, createCommentVNode, resolveDynamicComponent, normalizeClass, resolveDirective, createElementBlock, withDirectives, Fragment, withModifiers, createTextVNode, toDisplayString, createElementVNode, renderList, createVNode, Transition, withKeys, normalizeProps, renderSlot, createSlots } from 'vue';
15
+ import { mergeProps, resolveComponent, openBlock, createBlock, withCtx, resolveDynamicComponent, normalizeClass, createCommentVNode, resolveDirective, createElementBlock, Fragment, withDirectives, withModifiers, createTextVNode, toDisplayString, createElementVNode, renderList, createVNode, Transition, withKeys, normalizeProps, renderSlot, createSlots } from 'vue';
16
16
  import BarsIcon from '@primevue/icons/bars';
17
17
  import CheckIcon from '@primevue/icons/check';
18
18
  import PencilIcon from '@primevue/icons/pencil';
@@ -541,6 +541,11 @@ var script$a = {
541
541
  hostName: 'DataTable',
542
542
  "extends": BaseComponent,
543
543
  emits: ['cell-edit-init', 'cell-edit-complete', 'cell-edit-cancel', 'row-edit-init', 'row-edit-save', 'row-edit-cancel', 'row-toggle', 'radio-change', 'checkbox-change', 'editing-meta-change'],
544
+ inject: {
545
+ $pcDataTable: {
546
+ "default": undefined
547
+ }
548
+ },
544
549
  props: {
545
550
  rowData: {
546
551
  type: Object,
@@ -709,7 +714,7 @@ var script$a = {
709
714
  var _this2 = this;
710
715
  if (!this.documentEditListener) {
711
716
  this.documentEditListener = function (event) {
712
- _this2.selfClick = _this2.$el && _this2.$el.contains(event.target);
717
+ _this2.selfClick = _this2.$el && (_this2.$el.contains(event.target) || event.target.closest('[data-pc-section="overlay"]') || event.target.closest('[data-pc-section="panel"]'));
713
718
  if (_this2.editCompleteTimeout) {
714
719
  clearTimeout(_this2.editCompleteTimeout);
715
720
  }
@@ -996,7 +1001,8 @@ var script$a = {
996
1001
  return this.columnProp('frozen') ? [columnStyle, bodyStyle, this.styleObject] : [columnStyle, bodyStyle];
997
1002
  },
998
1003
  loading: function loading() {
999
- return this.getVirtualScrollerProp('loading');
1004
+ var _this$column$children, _this$$pcDataTable;
1005
+ return ((_this$column$children = this.column.children) === null || _this$column$children === void 0 ? void 0 : _this$column$children.loading) && (this.getVirtualScrollerProp('loading') || ((_this$$pcDataTable = this.$pcDataTable) === null || _this$$pcDataTable === void 0 ? void 0 : _this$$pcDataTable.loading));
1000
1006
  },
1001
1007
  loadingOptions: function loadingOptions() {
1002
1008
  var getLoaderOptions = this.getVirtualScrollerProp('getLoaderOptions');
@@ -1411,6 +1417,14 @@ var script$9 = {
1411
1417
  return _this.equals(_this.rowData, d);
1412
1418
  });
1413
1419
  }
1420
+ },
1421
+ rowData: function rowData(newValue) {
1422
+ var _this$expandedRows,
1423
+ _this$expandedRows2,
1424
+ _this2 = this;
1425
+ this.d_rowExpanded = this.dataKey ? ((_this$expandedRows = this.expandedRows) === null || _this$expandedRows === void 0 ? void 0 : _this$expandedRows[resolveFieldData(newValue, this.dataKey)]) !== undefined : (_this$expandedRows2 = this.expandedRows) === null || _this$expandedRows2 === void 0 ? void 0 : _this$expandedRows2.some(function (d) {
1426
+ return _this2.equals(newValue, d);
1427
+ });
1414
1428
  }
1415
1429
  },
1416
1430
  methods: {
@@ -1657,7 +1671,7 @@ var script$9 = {
1657
1671
  }), rowStyleClass];
1658
1672
  },
1659
1673
  rowTabindex: function rowTabindex() {
1660
- if (this.selection === null && (this.selectionMode === 'single' || this.selectionMode === 'multiple')) {
1674
+ if ((this.selection === null || Array.isArray(this.selection) && this.selection.length === 0) && (this.selectionMode === 'single' || this.selectionMode === 'multiple')) {
1661
1675
  return this.rowIndex === 0 ? 0 : -1;
1662
1676
  }
1663
1677
  return -1;
@@ -1716,11 +1730,11 @@ var script$9 = {
1716
1730
  }
1717
1731
  },
1718
1732
  columnsLength: function columnsLength() {
1719
- var _this2 = this;
1733
+ var _this3 = this;
1720
1734
  if (this.columns) {
1721
1735
  var hiddenColLength = 0;
1722
1736
  this.columns.forEach(function (column) {
1723
- if (_this2.columnProp(column, 'hidden')) hiddenColLength++;
1737
+ if (_this3.columnProp(column, 'hidden')) hiddenColLength++;
1724
1738
  });
1725
1739
  return this.columns.length - hiddenColLength;
1726
1740
  }
@@ -2872,6 +2886,7 @@ var script$5 = {
2872
2886
  originalEvent: event,
2873
2887
  target: this.overlay
2874
2888
  });
2889
+ this.selfClick = false;
2875
2890
  },
2876
2891
  onContentMouseDown: function onContentMouseDown() {
2877
2892
  this.selfClick = true;
@@ -4448,7 +4463,7 @@ var script = {
4448
4463
  name: 'DataTable',
4449
4464
  "extends": script$d,
4450
4465
  inheritAttrs: false,
4451
- emits: ['value-change', 'update:first', 'update:rows', 'page', 'update:sortField', 'update:sortOrder', 'update:multiSortMeta', 'sort', 'filter', 'row-click', 'row-dblclick', 'update:selection', 'row-select', 'row-unselect', 'update:contextMenuSelection', 'row-contextmenu', 'row-unselect-all', 'row-select-all', 'select-all-change', 'column-resize-end', 'column-reorder', 'row-reorder', 'update:expandedRows', 'row-collapse', 'row-expand', 'update:expandedRowGroups', 'rowgroup-collapse', 'rowgroup-expand', 'update:filters', 'state-restore', 'state-save', 'cell-edit-init', 'cell-edit-complete', 'cell-edit-cancel', 'update:editingRows', 'row-edit-init', 'row-edit-save', 'row-edit-cancel'],
4466
+ emits: ['value-change', 'update:first', 'update:rows', 'page', 'update:sortField', 'update:sortOrder', 'update:multiSortMeta', 'sort', 'filter', 'row-click', 'row-dblclick', 'update:selection', 'row-select', 'row-unselect', 'update:contextMenuSelection', 'row-contextmenu', 'row-unselect-all', 'row-select-all', 'select-all-change', 'column-resize-end', 'column-reorder', 'row-reorder', 'update:expandedRows', 'row-collapse', 'row-expand', 'update:expandedRowGroups', 'rowgroup-collapse', 'rowgroup-expand', 'update:filters', 'state-restore', 'state-save', 'cell-edit-init', 'cell-edit-complete', 'cell-edit-cancel', 'update:editingRows', 'row-edit-init', 'row-edit-save', 'row-edit-cancel', 'update:totalRecords'],
4452
4467
  provide: function provide() {
4453
4468
  return {
4454
4469
  $columns: this.d_columns,
@@ -4535,6 +4550,9 @@ var script = {
4535
4550
  handler: function handler(newValue) {
4536
4551
  this.d_filters = this.cloneFilters(newValue);
4537
4552
  }
4553
+ },
4554
+ totalRecordsLength: function totalRecordsLength(newValue) {
4555
+ this.$emit('update:totalRecords', newValue);
4538
4556
  }
4539
4557
  },
4540
4558
  mounted: function mounted() {
@@ -5737,9 +5755,13 @@ var script = {
5737
5755
  state.selectionKeys = this.d_selectionKeys;
5738
5756
  }
5739
5757
  if (Object.keys(state).length) {
5740
- storage.setItem(this.stateKey, JSON.stringify(state));
5758
+ var serializedState = JSON.stringify(state);
5759
+ if (serializedState !== this._lastSavedState) {
5760
+ storage.setItem(this.stateKey, serializedState);
5761
+ this._lastSavedState = serializedState;
5762
+ this.$emit('state-save', state);
5763
+ }
5741
5764
  }
5742
- this.$emit('state-save', state);
5743
5765
  },
5744
5766
  restoreState: function restoreState() {
5745
5767
  var storage = this.getStorage();