@dolusoft/vue3-datatable 1.8.25 → 1.8.28

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.
@@ -3572,101 +3572,103 @@ const _hoisted_10 = /* @__PURE__ */ vue.createElementVNode("span", null, "##Tabl
3572
3572
  const _hoisted_11 = ["onClick"];
3573
3573
  const _hoisted_12 = { class: "bh-checkbox" };
3574
3574
  const _hoisted_13 = ["value"];
3575
- const _hoisted_14 = ["innerHTML"];
3576
- const _hoisted_15 = ["onClick"];
3577
- const _hoisted_16 = ["colspan"];
3575
+ const _hoisted_14 = ["onContextmenu"];
3576
+ const _hoisted_15 = ["innerHTML"];
3577
+ const _hoisted_16 = ["onClick"];
3578
3578
  const _hoisted_17 = ["colspan"];
3579
- const _hoisted_18 = /* @__PURE__ */ vue.createElementVNode("div", { class: "bh-skeleton-box bh-h-8" }, null, -1);
3580
- const _hoisted_19 = [
3581
- _hoisted_18
3579
+ const _hoisted_18 = ["colspan"];
3580
+ const _hoisted_19 = /* @__PURE__ */ vue.createElementVNode("div", { class: "bh-skeleton-box bh-h-8" }, null, -1);
3581
+ const _hoisted_20 = [
3582
+ _hoisted_19
3582
3583
  ];
3583
- const _hoisted_20 = ["colspan"];
3584
- const _hoisted_21 = /* @__PURE__ */ vue.createElementVNode("span", null, "##Table Header Area Slot##", -1);
3585
- const _hoisted_22 = ["onClick"];
3586
- const _hoisted_23 = { class: "bh-checkbox" };
3587
- const _hoisted_24 = ["value"];
3588
- const _hoisted_25 = ["innerHTML"];
3589
- const _hoisted_26 = ["onClick"];
3590
- const _hoisted_27 = ["colspan"];
3591
- const _hoisted_28 = ["colspan"];
3592
- const _hoisted_29 = /* @__PURE__ */ vue.createElementVNode("div", { class: "bh-skeleton-box bh-h-8" }, null, -1);
3593
- const _hoisted_30 = [
3594
- _hoisted_29
3584
+ const _hoisted_21 = ["colspan"];
3585
+ const _hoisted_22 = /* @__PURE__ */ vue.createElementVNode("span", null, "##Table Header Area Slot##", -1);
3586
+ const _hoisted_23 = ["onClick"];
3587
+ const _hoisted_24 = { class: "bh-checkbox" };
3588
+ const _hoisted_25 = ["value"];
3589
+ const _hoisted_26 = ["onContextmenu"];
3590
+ const _hoisted_27 = ["innerHTML"];
3591
+ const _hoisted_28 = ["onClick"];
3592
+ const _hoisted_29 = ["colspan"];
3593
+ const _hoisted_30 = ["colspan"];
3594
+ const _hoisted_31 = /* @__PURE__ */ vue.createElementVNode("div", { class: "bh-skeleton-box bh-h-8" }, null, -1);
3595
+ const _hoisted_32 = [
3596
+ _hoisted_31
3595
3597
  ];
3596
- const _hoisted_31 = ["colspan"];
3597
- const _hoisted_32 = { class: "bh-flex bh-items-center bh-flex-wrap bh-flex-col sm:bh-flex-row bh-gap-4" };
3598
- const _hoisted_33 = { class: "bh-pagination-info bh-flex bh-items-center" };
3599
- const _hoisted_34 = { class: "bh-mr-2" };
3600
- const _hoisted_35 = ["value"];
3601
- const _hoisted_36 = { class: "bh-pagination-number sm:bh-ml-auto bh-inline-flex bh-items-center bh-space-x-1" };
3602
- const _hoisted_37 = ["innerHTML"];
3603
- const _hoisted_38 = {
3598
+ const _hoisted_33 = ["colspan"];
3599
+ const _hoisted_34 = { class: "bh-flex bh-items-center bh-flex-wrap bh-flex-col sm:bh-flex-row bh-gap-4" };
3600
+ const _hoisted_35 = { class: "bh-pagination-info bh-flex bh-items-center" };
3601
+ const _hoisted_36 = { class: "bh-mr-2" };
3602
+ const _hoisted_37 = ["value"];
3603
+ const _hoisted_38 = { class: "bh-pagination-number sm:bh-ml-auto bh-inline-flex bh-items-center bh-space-x-1" };
3604
+ const _hoisted_39 = ["innerHTML"];
3605
+ const _hoisted_40 = {
3604
3606
  key: 1,
3605
3607
  "aria-hidden": "true",
3606
3608
  width: "14",
3607
3609
  height: "14",
3608
3610
  viewBox: "0 0 16 16"
3609
3611
  };
3610
- const _hoisted_39 = /* @__PURE__ */ vue.createElementVNode("g", {
3612
+ const _hoisted_41 = /* @__PURE__ */ vue.createElementVNode("g", {
3611
3613
  fill: "currentColor",
3612
3614
  "fill-rule": "evenodd"
3613
3615
  }, [
3614
3616
  /* @__PURE__ */ vue.createElementVNode("path", { d: "M8.354 1.646a.5.5 0 0 1 0 .708L2.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z" }),
3615
3617
  /* @__PURE__ */ vue.createElementVNode("path", { d: "M12.354 1.646a.5.5 0 0 1 0 .708L6.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z" })
3616
3618
  ], -1);
3617
- const _hoisted_40 = [
3618
- _hoisted_39
3619
+ const _hoisted_42 = [
3620
+ _hoisted_41
3619
3621
  ];
3620
- const _hoisted_41 = ["innerHTML"];
3621
- const _hoisted_42 = {
3622
+ const _hoisted_43 = ["innerHTML"];
3623
+ const _hoisted_44 = {
3622
3624
  key: 1,
3623
3625
  "aria-hidden": "true",
3624
3626
  width: "14",
3625
3627
  height: "14",
3626
3628
  viewBox: "0 0 16 16"
3627
3629
  };
3628
- const _hoisted_43 = /* @__PURE__ */ vue.createElementVNode("path", {
3630
+ const _hoisted_45 = /* @__PURE__ */ vue.createElementVNode("path", {
3629
3631
  fill: "currentColor",
3630
3632
  "fill-rule": "evenodd",
3631
3633
  d: "M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z"
3632
3634
  }, null, -1);
3633
- const _hoisted_44 = [
3634
- _hoisted_43
3635
+ const _hoisted_46 = [
3636
+ _hoisted_45
3635
3637
  ];
3636
- const _hoisted_45 = ["onClick"];
3637
- const _hoisted_46 = ["innerHTML"];
3638
- const _hoisted_47 = {
3638
+ const _hoisted_47 = ["onClick"];
3639
+ const _hoisted_48 = ["innerHTML"];
3640
+ const _hoisted_49 = {
3639
3641
  key: 1,
3640
3642
  "aria-hidden": "true",
3641
3643
  width: "14",
3642
3644
  height: "14",
3643
3645
  viewBox: "0 0 16 16"
3644
3646
  };
3645
- const _hoisted_48 = /* @__PURE__ */ vue.createElementVNode("path", {
3647
+ const _hoisted_50 = /* @__PURE__ */ vue.createElementVNode("path", {
3646
3648
  fill: "currentColor",
3647
3649
  "fill-rule": "evenodd",
3648
3650
  d: "M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8L4.646 2.354a.5.5 0 0 1 0-.708z"
3649
3651
  }, null, -1);
3650
- const _hoisted_49 = [
3651
- _hoisted_48
3652
+ const _hoisted_51 = [
3653
+ _hoisted_50
3652
3654
  ];
3653
- const _hoisted_50 = ["innerHTML"];
3654
- const _hoisted_51 = {
3655
+ const _hoisted_52 = ["innerHTML"];
3656
+ const _hoisted_53 = {
3655
3657
  key: 1,
3656
3658
  "aria-hidden": "true",
3657
3659
  width: "14",
3658
3660
  height: "14",
3659
3661
  viewBox: "0 0 16 16"
3660
3662
  };
3661
- const _hoisted_52 = /* @__PURE__ */ vue.createElementVNode("g", {
3663
+ const _hoisted_54 = /* @__PURE__ */ vue.createElementVNode("g", {
3662
3664
  fill: "currentColor",
3663
3665
  "fill-rule": "evenodd"
3664
3666
  }, [
3665
3667
  /* @__PURE__ */ vue.createElementVNode("path", { d: "M3.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L9.293 8L3.646 2.354a.5.5 0 0 1 0-.708z" }),
3666
3668
  /* @__PURE__ */ vue.createElementVNode("path", { d: "M7.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L13.293 8L7.646 2.354a.5.5 0 0 1 0-.708z" })
3667
3669
  ], -1);
3668
- const _hoisted_53 = [
3669
- _hoisted_52
3670
+ const _hoisted_55 = [
3671
+ _hoisted_54
3670
3672
  ];
3671
3673
  const __default__ = {
3672
3674
  name: "Vue3Datatable"
@@ -3755,7 +3757,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
3755
3757
  "currentTopMenuSize",
3756
3758
  "currentLeftMenuSize",
3757
3759
  "rowRightPanelClick",
3758
- "clearAllFilters"
3760
+ "clearAllFilters",
3761
+ "cellContextMenu"
3759
3762
  ],
3760
3763
  setup(__props, { expose: __expose, emit: __emit }) {
3761
3764
  var _a, _b;
@@ -4057,6 +4060,17 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4057
4060
  });
4058
4061
  });
4059
4062
  const emit = __emit;
4063
+ const handleCellContextMenu = (event, row, column, value, rowIndex, columnIndex) => {
4064
+ event.preventDefault();
4065
+ emit("cellContextMenu", {
4066
+ event,
4067
+ row,
4068
+ column,
4069
+ value,
4070
+ rowIndex,
4071
+ columnIndex
4072
+ });
4073
+ };
4060
4074
  __expose({
4061
4075
  reset() {
4062
4076
  reset();
@@ -4092,6 +4106,27 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4092
4106
  },
4093
4107
  clearAllFilters() {
4094
4108
  clearAllFilters();
4109
+ },
4110
+ /**
4111
+ * Set column filter value and optionally trigger filter
4112
+ * @param field - Column field name
4113
+ * @param value - Filter value
4114
+ * @param condition - Filter condition (default: column's default condition)
4115
+ * @param triggerFilter - Whether to trigger filterChange event (default: false)
4116
+ */
4117
+ setColumnFilter(field, value, condition, triggerFilter = false) {
4118
+ const column = props.columns.find((col) => col.field === field);
4119
+ if (column) {
4120
+ column.value = value;
4121
+ if (condition) {
4122
+ column.condition = condition;
4123
+ }
4124
+ updateHasAnyActiveFilter();
4125
+ if (triggerFilter) {
4126
+ filterChange();
4127
+ }
4128
+ }
4129
+ return !!column;
4095
4130
  }
4096
4131
  });
4097
4132
  vue.watch(
@@ -4689,7 +4724,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4689
4724
  j === 0 && props.stickyFirstColumn ? "bh-sticky bh-left-0 bh-bg-blue-light" : "",
4690
4725
  props.hasCheckbox && j === 0 && props.stickyFirstColumn ? "bh-left-[52px]" : "",
4691
4726
  col.cellClass ? col.cellClass : ""
4692
- ])
4727
+ ]),
4728
+ onContextmenu: ($event) => handleCellContextMenu($event, item, col, cellValue(item, col.field), i, j)
4693
4729
  }, [
4694
4730
  vue.unref(slots)[col.field] ? vue.renderSlot(_ctx.$slots, col.field, {
4695
4731
  key: 0,
@@ -4697,10 +4733,10 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4697
4733
  }) : col.cellRenderer ? (vue.openBlock(), vue.createElementBlock("div", {
4698
4734
  key: 1,
4699
4735
  innerHTML: col.cellRenderer(item)
4700
- }, null, 8, _hoisted_14)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
4736
+ }, null, 8, _hoisted_15)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
4701
4737
  vue.createTextVNode(vue.toDisplayString(cellValue(item, col.field)), 1)
4702
4738
  ], 64))
4703
- ], 2)) : vue.createCommentVNode("", true)
4739
+ ], 42, _hoisted_14)) : vue.createCommentVNode("", true)
4704
4740
  ], 64);
4705
4741
  }), 256))
4706
4742
  ], 10, _hoisted_11)) : vue.createCommentVNode("", true),
@@ -4720,8 +4756,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4720
4756
  rowIndex: i,
4721
4757
  filterItems: filterItems.value
4722
4758
  })
4723
- ], 8, _hoisted_16)
4724
- ], 10, _hoisted_15)) : vue.createCommentVNode("", true)
4759
+ ], 8, _hoisted_17)
4760
+ ], 10, _hoisted_16)) : vue.createCommentVNode("", true)
4725
4761
  ], 64);
4726
4762
  }), 128)),
4727
4763
  !filterRowCount.value && currentLoader.value && _ctx.skeletonloader ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 0 }, vue.renderList(props.pageSize, (i) => {
@@ -4732,7 +4768,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4732
4768
  vue.createElementVNode("td", {
4733
4769
  colspan: props.columns.length + vue.unref(extracolumnlength),
4734
4770
  class: "!bh-p-0 !bh-border-transparent"
4735
- }, _hoisted_19, 8, _hoisted_17)
4771
+ }, _hoisted_20, 8, _hoisted_18)
4736
4772
  ]);
4737
4773
  }), 128)) : vue.createCommentVNode("", true),
4738
4774
  filterRowCount.value ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 1 }, vue.renderList(props.footerRows, (item, i) => {
@@ -4743,7 +4779,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4743
4779
  vue.unref(extracolumnlength) > 0 ? (vue.openBlock(), vue.createElementBlock("td", {
4744
4780
  key: 0,
4745
4781
  colspan: vue.unref(extracolumnlength)
4746
- }, null, 8, _hoisted_20)) : vue.createCommentVNode("", true),
4782
+ }, null, 8, _hoisted_21)) : vue.createCommentVNode("", true),
4747
4783
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(props.columns, (col, j) => {
4748
4784
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
4749
4785
  !col.hide && !col.dataOnly ? (vue.openBlock(), vue.createElementBlock("td", {
@@ -4837,7 +4873,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4837
4873
  style: vue.normalizeStyle({ height: _ctx.headerAreaHeight, "margin-bottom": "10px" })
4838
4874
  }, [
4839
4875
  vue.renderSlot(_ctx.$slots, "tableHeaderArea", {}, () => [
4840
- _hoisted_21
4876
+ _hoisted_22
4841
4877
  ])
4842
4878
  ], 4)) : vue.createCommentVNode("", true),
4843
4879
  vue.renderSlot(_ctx.$slots, "tableactionheader"),
@@ -4906,14 +4942,14 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4906
4942
  "bh-sticky bh-left-0 bh-bg-blue-light": props.stickyFirstColumn
4907
4943
  })
4908
4944
  }, [
4909
- vue.createElementVNode("div", _hoisted_23, [
4945
+ vue.createElementVNode("div", _hoisted_24, [
4910
4946
  vue.withDirectives(vue.createElementVNode("input", {
4911
4947
  "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => selected.value = $event),
4912
4948
  type: "checkbox",
4913
4949
  value: getRowKey(i),
4914
4950
  onClick: _cache[4] || (_cache[4] = vue.withModifiers(() => {
4915
4951
  }, ["stop"]))
4916
- }, null, 8, _hoisted_24), [
4952
+ }, null, 8, _hoisted_25), [
4917
4953
  [vue.vModelCheckbox, selected.value]
4918
4954
  ]),
4919
4955
  vue.createElementVNode("div", null, [
@@ -4961,7 +4997,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4961
4997
  j === 0 && props.stickyFirstColumn ? "bh-sticky bh-left-0 bh-bg-blue-light" : "",
4962
4998
  props.hasCheckbox && j === 0 && props.stickyFirstColumn ? "bh-left-[52px]" : "",
4963
4999
  col.cellClass ? col.cellClass : ""
4964
- ])
5000
+ ]),
5001
+ onContextmenu: ($event) => handleCellContextMenu($event, item, col, cellValue(item, col.field), i, j)
4965
5002
  }, [
4966
5003
  vue.unref(slots)[col.field] ? vue.renderSlot(_ctx.$slots, col.field, {
4967
5004
  key: 0,
@@ -4969,13 +5006,13 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
4969
5006
  }) : col.cellRenderer ? (vue.openBlock(), vue.createElementBlock("div", {
4970
5007
  key: 1,
4971
5008
  innerHTML: col.cellRenderer(item)
4972
- }, null, 8, _hoisted_25)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
5009
+ }, null, 8, _hoisted_27)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
4973
5010
  vue.createTextVNode(vue.toDisplayString(cellValue(item, col.field)), 1)
4974
5011
  ], 64))
4975
- ], 2)) : vue.createCommentVNode("", true)
5012
+ ], 42, _hoisted_26)) : vue.createCommentVNode("", true)
4976
5013
  ], 64);
4977
5014
  }), 256))
4978
- ], 10, _hoisted_22)) : vue.createCommentVNode("", true),
5015
+ ], 10, _hoisted_23)) : vue.createCommentVNode("", true),
4979
5016
  isRowExpanded(item, i) && props.hasSubtable ? (vue.openBlock(), vue.createElementBlock("tr", {
4980
5017
  key: 1,
4981
5018
  class: vue.normalizeClass([
@@ -5003,8 +5040,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5003
5040
  filterItems: filterItems.value
5004
5041
  })
5005
5042
  ], 4)
5006
- ], 8, _hoisted_27)
5007
- ], 10, _hoisted_26)) : vue.createCommentVNode("", true)
5043
+ ], 8, _hoisted_29)
5044
+ ], 10, _hoisted_28)) : vue.createCommentVNode("", true)
5008
5045
  ], 64);
5009
5046
  }), 128)),
5010
5047
  !filterRowCount.value && currentLoader.value && _ctx.skeletonloader ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 0 }, vue.renderList(props.pageSize, (i) => {
@@ -5015,7 +5052,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5015
5052
  vue.createElementVNode("td", {
5016
5053
  colspan: props.columns.length + vue.unref(extracolumnlength),
5017
5054
  class: "!bh-p-0 !bh-border-transparent"
5018
- }, _hoisted_30, 8, _hoisted_28)
5055
+ }, _hoisted_32, 8, _hoisted_30)
5019
5056
  ]);
5020
5057
  }), 128)) : vue.createCommentVNode("", true),
5021
5058
  filterRowCount.value ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 1 }, vue.renderList(props.footerRows, (item, i) => {
@@ -5026,7 +5063,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5026
5063
  vue.unref(extracolumnlength) > 0 ? (vue.openBlock(), vue.createElementBlock("td", {
5027
5064
  key: 0,
5028
5065
  colspan: vue.unref(extracolumnlength)
5029
- }, null, 8, _hoisted_31)) : vue.createCommentVNode("", true),
5066
+ }, null, 8, _hoisted_33)) : vue.createCommentVNode("", true),
5030
5067
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(props.columns, (col, j) => {
5031
5068
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
5032
5069
  !col.hide && !col.dataOnly ? (vue.openBlock(), vue.createElementBlock("td", {
@@ -5114,7 +5151,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5114
5151
  "sticky-footer": props.stickyFooter
5115
5152
  }])
5116
5153
  }, [
5117
- vue.createElementVNode("div", _hoisted_32, [
5154
+ vue.createElementVNode("div", _hoisted_34, [
5118
5155
  _ctx.enablefooterpagination ? vue.renderSlot(_ctx.$slots, "footerpageinfo", {
5119
5156
  key: 0,
5120
5157
  paginationInfo: _ctx.paginationInfo,
@@ -5127,8 +5164,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5127
5164
  stringFormat,
5128
5165
  setPageSize
5129
5166
  }, () => [
5130
- vue.createElementVNode("div", _hoisted_33, [
5131
- vue.createElementVNode("span", _hoisted_34, vue.toDisplayString(stringFormat(
5167
+ vue.createElementVNode("div", _hoisted_35, [
5168
+ vue.createElementVNode("span", _hoisted_36, vue.toDisplayString(stringFormat(
5132
5169
  props.paginationInfo,
5133
5170
  filterRowCount.value ? offset.value : 0,
5134
5171
  limit.value,
@@ -5143,7 +5180,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5143
5180
  return vue.openBlock(), vue.createElementBlock("option", {
5144
5181
  value: option,
5145
5182
  key: option
5146
- }, vue.toDisplayString(option), 9, _hoisted_35);
5183
+ }, vue.toDisplayString(option), 9, _hoisted_37);
5147
5184
  }), 128))
5148
5185
  ], 512)), [
5149
5186
  [vue.vModelSelect, currentPageSize.value]
@@ -5159,7 +5196,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5159
5196
  nextPage,
5160
5197
  previousPage
5161
5198
  }, () => [
5162
- vue.createElementVNode("div", _hoisted_36, [
5199
+ vue.createElementVNode("div", _hoisted_38, [
5163
5200
  props.showFirstPage ? (vue.openBlock(), vue.createElementBlock("button", {
5164
5201
  key: 0,
5165
5202
  type: "button",
@@ -5169,7 +5206,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5169
5206
  props.firstArrow ? (vue.openBlock(), vue.createElementBlock("span", {
5170
5207
  key: 0,
5171
5208
  innerHTML: props.firstArrow
5172
- }, null, 8, _hoisted_37)) : (vue.openBlock(), vue.createElementBlock("svg", _hoisted_38, _hoisted_40))
5209
+ }, null, 8, _hoisted_39)) : (vue.openBlock(), vue.createElementBlock("svg", _hoisted_40, _hoisted_42))
5173
5210
  ], 2)) : vue.createCommentVNode("", true),
5174
5211
  vue.createElementVNode("button", {
5175
5212
  type: "button",
@@ -5179,7 +5216,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5179
5216
  props.previousArrow ? (vue.openBlock(), vue.createElementBlock("span", {
5180
5217
  key: 0,
5181
5218
  innerHTML: props.previousArrow
5182
- }, null, 8, _hoisted_41)) : (vue.openBlock(), vue.createElementBlock("svg", _hoisted_42, _hoisted_44))
5219
+ }, null, 8, _hoisted_43)) : (vue.openBlock(), vue.createElementBlock("svg", _hoisted_44, _hoisted_46))
5183
5220
  ], 2),
5184
5221
  props.showNumbers ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 1 }, vue.renderList(paging.value, (page) => {
5185
5222
  return vue.openBlock(), vue.createElementBlock("button", {
@@ -5190,7 +5227,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5190
5227
  "bh-active": page === currentPage.value
5191
5228
  }]),
5192
5229
  onClick: ($event) => movePage(page)
5193
- }, vue.toDisplayString(page), 11, _hoisted_45);
5230
+ }, vue.toDisplayString(page), 11, _hoisted_47);
5194
5231
  }), 128)) : vue.createCommentVNode("", true),
5195
5232
  vue.createElementVNode("button", {
5196
5233
  type: "button",
@@ -5200,7 +5237,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5200
5237
  props.nextArrow ? (vue.openBlock(), vue.createElementBlock("span", {
5201
5238
  key: 0,
5202
5239
  innerHTML: props.nextArrow
5203
- }, null, 8, _hoisted_46)) : (vue.openBlock(), vue.createElementBlock("svg", _hoisted_47, _hoisted_49))
5240
+ }, null, 8, _hoisted_48)) : (vue.openBlock(), vue.createElementBlock("svg", _hoisted_49, _hoisted_51))
5204
5241
  ], 2),
5205
5242
  props.showLastPage ? (vue.openBlock(), vue.createElementBlock("button", {
5206
5243
  key: 2,
@@ -5211,7 +5248,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
5211
5248
  props.lastArrow ? (vue.openBlock(), vue.createElementBlock("span", {
5212
5249
  key: 0,
5213
5250
  innerHTML: props.lastArrow
5214
- }, null, 8, _hoisted_50)) : (vue.openBlock(), vue.createElementBlock("svg", _hoisted_51, _hoisted_53))
5251
+ }, null, 8, _hoisted_52)) : (vue.openBlock(), vue.createElementBlock("svg", _hoisted_53, _hoisted_55))
5215
5252
  ], 2)) : vue.createCommentVNode("", true)
5216
5253
  ])
5217
5254
  ]) : vue.createCommentVNode("", true)
@@ -3571,101 +3571,103 @@ const _hoisted_10 = /* @__PURE__ */ createElementVNode("span", null, "##Table Ac
3571
3571
  const _hoisted_11 = ["onClick"];
3572
3572
  const _hoisted_12 = { class: "bh-checkbox" };
3573
3573
  const _hoisted_13 = ["value"];
3574
- const _hoisted_14 = ["innerHTML"];
3575
- const _hoisted_15 = ["onClick"];
3576
- const _hoisted_16 = ["colspan"];
3574
+ const _hoisted_14 = ["onContextmenu"];
3575
+ const _hoisted_15 = ["innerHTML"];
3576
+ const _hoisted_16 = ["onClick"];
3577
3577
  const _hoisted_17 = ["colspan"];
3578
- const _hoisted_18 = /* @__PURE__ */ createElementVNode("div", { class: "bh-skeleton-box bh-h-8" }, null, -1);
3579
- const _hoisted_19 = [
3580
- _hoisted_18
3578
+ const _hoisted_18 = ["colspan"];
3579
+ const _hoisted_19 = /* @__PURE__ */ createElementVNode("div", { class: "bh-skeleton-box bh-h-8" }, null, -1);
3580
+ const _hoisted_20 = [
3581
+ _hoisted_19
3581
3582
  ];
3582
- const _hoisted_20 = ["colspan"];
3583
- const _hoisted_21 = /* @__PURE__ */ createElementVNode("span", null, "##Table Header Area Slot##", -1);
3584
- const _hoisted_22 = ["onClick"];
3585
- const _hoisted_23 = { class: "bh-checkbox" };
3586
- const _hoisted_24 = ["value"];
3587
- const _hoisted_25 = ["innerHTML"];
3588
- const _hoisted_26 = ["onClick"];
3589
- const _hoisted_27 = ["colspan"];
3590
- const _hoisted_28 = ["colspan"];
3591
- const _hoisted_29 = /* @__PURE__ */ createElementVNode("div", { class: "bh-skeleton-box bh-h-8" }, null, -1);
3592
- const _hoisted_30 = [
3593
- _hoisted_29
3583
+ const _hoisted_21 = ["colspan"];
3584
+ const _hoisted_22 = /* @__PURE__ */ createElementVNode("span", null, "##Table Header Area Slot##", -1);
3585
+ const _hoisted_23 = ["onClick"];
3586
+ const _hoisted_24 = { class: "bh-checkbox" };
3587
+ const _hoisted_25 = ["value"];
3588
+ const _hoisted_26 = ["onContextmenu"];
3589
+ const _hoisted_27 = ["innerHTML"];
3590
+ const _hoisted_28 = ["onClick"];
3591
+ const _hoisted_29 = ["colspan"];
3592
+ const _hoisted_30 = ["colspan"];
3593
+ const _hoisted_31 = /* @__PURE__ */ createElementVNode("div", { class: "bh-skeleton-box bh-h-8" }, null, -1);
3594
+ const _hoisted_32 = [
3595
+ _hoisted_31
3594
3596
  ];
3595
- const _hoisted_31 = ["colspan"];
3596
- const _hoisted_32 = { class: "bh-flex bh-items-center bh-flex-wrap bh-flex-col sm:bh-flex-row bh-gap-4" };
3597
- const _hoisted_33 = { class: "bh-pagination-info bh-flex bh-items-center" };
3598
- const _hoisted_34 = { class: "bh-mr-2" };
3599
- const _hoisted_35 = ["value"];
3600
- const _hoisted_36 = { class: "bh-pagination-number sm:bh-ml-auto bh-inline-flex bh-items-center bh-space-x-1" };
3601
- const _hoisted_37 = ["innerHTML"];
3602
- const _hoisted_38 = {
3597
+ const _hoisted_33 = ["colspan"];
3598
+ const _hoisted_34 = { class: "bh-flex bh-items-center bh-flex-wrap bh-flex-col sm:bh-flex-row bh-gap-4" };
3599
+ const _hoisted_35 = { class: "bh-pagination-info bh-flex bh-items-center" };
3600
+ const _hoisted_36 = { class: "bh-mr-2" };
3601
+ const _hoisted_37 = ["value"];
3602
+ const _hoisted_38 = { class: "bh-pagination-number sm:bh-ml-auto bh-inline-flex bh-items-center bh-space-x-1" };
3603
+ const _hoisted_39 = ["innerHTML"];
3604
+ const _hoisted_40 = {
3603
3605
  key: 1,
3604
3606
  "aria-hidden": "true",
3605
3607
  width: "14",
3606
3608
  height: "14",
3607
3609
  viewBox: "0 0 16 16"
3608
3610
  };
3609
- const _hoisted_39 = /* @__PURE__ */ createElementVNode("g", {
3611
+ const _hoisted_41 = /* @__PURE__ */ createElementVNode("g", {
3610
3612
  fill: "currentColor",
3611
3613
  "fill-rule": "evenodd"
3612
3614
  }, [
3613
3615
  /* @__PURE__ */ createElementVNode("path", { d: "M8.354 1.646a.5.5 0 0 1 0 .708L2.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z" }),
3614
3616
  /* @__PURE__ */ createElementVNode("path", { d: "M12.354 1.646a.5.5 0 0 1 0 .708L6.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z" })
3615
3617
  ], -1);
3616
- const _hoisted_40 = [
3617
- _hoisted_39
3618
+ const _hoisted_42 = [
3619
+ _hoisted_41
3618
3620
  ];
3619
- const _hoisted_41 = ["innerHTML"];
3620
- const _hoisted_42 = {
3621
+ const _hoisted_43 = ["innerHTML"];
3622
+ const _hoisted_44 = {
3621
3623
  key: 1,
3622
3624
  "aria-hidden": "true",
3623
3625
  width: "14",
3624
3626
  height: "14",
3625
3627
  viewBox: "0 0 16 16"
3626
3628
  };
3627
- const _hoisted_43 = /* @__PURE__ */ createElementVNode("path", {
3629
+ const _hoisted_45 = /* @__PURE__ */ createElementVNode("path", {
3628
3630
  fill: "currentColor",
3629
3631
  "fill-rule": "evenodd",
3630
3632
  d: "M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z"
3631
3633
  }, null, -1);
3632
- const _hoisted_44 = [
3633
- _hoisted_43
3634
+ const _hoisted_46 = [
3635
+ _hoisted_45
3634
3636
  ];
3635
- const _hoisted_45 = ["onClick"];
3636
- const _hoisted_46 = ["innerHTML"];
3637
- const _hoisted_47 = {
3637
+ const _hoisted_47 = ["onClick"];
3638
+ const _hoisted_48 = ["innerHTML"];
3639
+ const _hoisted_49 = {
3638
3640
  key: 1,
3639
3641
  "aria-hidden": "true",
3640
3642
  width: "14",
3641
3643
  height: "14",
3642
3644
  viewBox: "0 0 16 16"
3643
3645
  };
3644
- const _hoisted_48 = /* @__PURE__ */ createElementVNode("path", {
3646
+ const _hoisted_50 = /* @__PURE__ */ createElementVNode("path", {
3645
3647
  fill: "currentColor",
3646
3648
  "fill-rule": "evenodd",
3647
3649
  d: "M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8L4.646 2.354a.5.5 0 0 1 0-.708z"
3648
3650
  }, null, -1);
3649
- const _hoisted_49 = [
3650
- _hoisted_48
3651
+ const _hoisted_51 = [
3652
+ _hoisted_50
3651
3653
  ];
3652
- const _hoisted_50 = ["innerHTML"];
3653
- const _hoisted_51 = {
3654
+ const _hoisted_52 = ["innerHTML"];
3655
+ const _hoisted_53 = {
3654
3656
  key: 1,
3655
3657
  "aria-hidden": "true",
3656
3658
  width: "14",
3657
3659
  height: "14",
3658
3660
  viewBox: "0 0 16 16"
3659
3661
  };
3660
- const _hoisted_52 = /* @__PURE__ */ createElementVNode("g", {
3662
+ const _hoisted_54 = /* @__PURE__ */ createElementVNode("g", {
3661
3663
  fill: "currentColor",
3662
3664
  "fill-rule": "evenodd"
3663
3665
  }, [
3664
3666
  /* @__PURE__ */ createElementVNode("path", { d: "M3.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L9.293 8L3.646 2.354a.5.5 0 0 1 0-.708z" }),
3665
3667
  /* @__PURE__ */ createElementVNode("path", { d: "M7.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L13.293 8L7.646 2.354a.5.5 0 0 1 0-.708z" })
3666
3668
  ], -1);
3667
- const _hoisted_53 = [
3668
- _hoisted_52
3669
+ const _hoisted_55 = [
3670
+ _hoisted_54
3669
3671
  ];
3670
3672
  const __default__ = {
3671
3673
  name: "Vue3Datatable"
@@ -3754,7 +3756,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
3754
3756
  "currentTopMenuSize",
3755
3757
  "currentLeftMenuSize",
3756
3758
  "rowRightPanelClick",
3757
- "clearAllFilters"
3759
+ "clearAllFilters",
3760
+ "cellContextMenu"
3758
3761
  ],
3759
3762
  setup(__props, { expose: __expose, emit: __emit }) {
3760
3763
  var _a, _b;
@@ -4056,6 +4059,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4056
4059
  });
4057
4060
  });
4058
4061
  const emit = __emit;
4062
+ const handleCellContextMenu = (event, row, column, value, rowIndex, columnIndex) => {
4063
+ event.preventDefault();
4064
+ emit("cellContextMenu", {
4065
+ event,
4066
+ row,
4067
+ column,
4068
+ value,
4069
+ rowIndex,
4070
+ columnIndex
4071
+ });
4072
+ };
4059
4073
  __expose({
4060
4074
  reset() {
4061
4075
  reset();
@@ -4091,6 +4105,27 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4091
4105
  },
4092
4106
  clearAllFilters() {
4093
4107
  clearAllFilters();
4108
+ },
4109
+ /**
4110
+ * Set column filter value and optionally trigger filter
4111
+ * @param field - Column field name
4112
+ * @param value - Filter value
4113
+ * @param condition - Filter condition (default: column's default condition)
4114
+ * @param triggerFilter - Whether to trigger filterChange event (default: false)
4115
+ */
4116
+ setColumnFilter(field, value, condition, triggerFilter = false) {
4117
+ const column = props.columns.find((col) => col.field === field);
4118
+ if (column) {
4119
+ column.value = value;
4120
+ if (condition) {
4121
+ column.condition = condition;
4122
+ }
4123
+ updateHasAnyActiveFilter();
4124
+ if (triggerFilter) {
4125
+ filterChange();
4126
+ }
4127
+ }
4128
+ return !!column;
4094
4129
  }
4095
4130
  });
4096
4131
  watch(
@@ -4688,7 +4723,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4688
4723
  j === 0 && props.stickyFirstColumn ? "bh-sticky bh-left-0 bh-bg-blue-light" : "",
4689
4724
  props.hasCheckbox && j === 0 && props.stickyFirstColumn ? "bh-left-[52px]" : "",
4690
4725
  col.cellClass ? col.cellClass : ""
4691
- ])
4726
+ ]),
4727
+ onContextmenu: ($event) => handleCellContextMenu($event, item, col, cellValue(item, col.field), i, j)
4692
4728
  }, [
4693
4729
  unref(slots)[col.field] ? renderSlot(_ctx.$slots, col.field, {
4694
4730
  key: 0,
@@ -4696,10 +4732,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4696
4732
  }) : col.cellRenderer ? (openBlock(), createElementBlock("div", {
4697
4733
  key: 1,
4698
4734
  innerHTML: col.cellRenderer(item)
4699
- }, null, 8, _hoisted_14)) : (openBlock(), createElementBlock(Fragment, { key: 2 }, [
4735
+ }, null, 8, _hoisted_15)) : (openBlock(), createElementBlock(Fragment, { key: 2 }, [
4700
4736
  createTextVNode(toDisplayString(cellValue(item, col.field)), 1)
4701
4737
  ], 64))
4702
- ], 2)) : createCommentVNode("", true)
4738
+ ], 42, _hoisted_14)) : createCommentVNode("", true)
4703
4739
  ], 64);
4704
4740
  }), 256))
4705
4741
  ], 10, _hoisted_11)) : createCommentVNode("", true),
@@ -4719,8 +4755,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4719
4755
  rowIndex: i,
4720
4756
  filterItems: filterItems.value
4721
4757
  })
4722
- ], 8, _hoisted_16)
4723
- ], 10, _hoisted_15)) : createCommentVNode("", true)
4758
+ ], 8, _hoisted_17)
4759
+ ], 10, _hoisted_16)) : createCommentVNode("", true)
4724
4760
  ], 64);
4725
4761
  }), 128)),
4726
4762
  !filterRowCount.value && currentLoader.value && _ctx.skeletonloader ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(props.pageSize, (i) => {
@@ -4731,7 +4767,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4731
4767
  createElementVNode("td", {
4732
4768
  colspan: props.columns.length + unref(extracolumnlength),
4733
4769
  class: "!bh-p-0 !bh-border-transparent"
4734
- }, _hoisted_19, 8, _hoisted_17)
4770
+ }, _hoisted_20, 8, _hoisted_18)
4735
4771
  ]);
4736
4772
  }), 128)) : createCommentVNode("", true),
4737
4773
  filterRowCount.value ? (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(props.footerRows, (item, i) => {
@@ -4742,7 +4778,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4742
4778
  unref(extracolumnlength) > 0 ? (openBlock(), createElementBlock("td", {
4743
4779
  key: 0,
4744
4780
  colspan: unref(extracolumnlength)
4745
- }, null, 8, _hoisted_20)) : createCommentVNode("", true),
4781
+ }, null, 8, _hoisted_21)) : createCommentVNode("", true),
4746
4782
  (openBlock(true), createElementBlock(Fragment, null, renderList(props.columns, (col, j) => {
4747
4783
  return openBlock(), createElementBlock(Fragment, null, [
4748
4784
  !col.hide && !col.dataOnly ? (openBlock(), createElementBlock("td", {
@@ -4836,7 +4872,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4836
4872
  style: normalizeStyle({ height: _ctx.headerAreaHeight, "margin-bottom": "10px" })
4837
4873
  }, [
4838
4874
  renderSlot(_ctx.$slots, "tableHeaderArea", {}, () => [
4839
- _hoisted_21
4875
+ _hoisted_22
4840
4876
  ])
4841
4877
  ], 4)) : createCommentVNode("", true),
4842
4878
  renderSlot(_ctx.$slots, "tableactionheader"),
@@ -4905,14 +4941,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4905
4941
  "bh-sticky bh-left-0 bh-bg-blue-light": props.stickyFirstColumn
4906
4942
  })
4907
4943
  }, [
4908
- createElementVNode("div", _hoisted_23, [
4944
+ createElementVNode("div", _hoisted_24, [
4909
4945
  withDirectives(createElementVNode("input", {
4910
4946
  "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => selected.value = $event),
4911
4947
  type: "checkbox",
4912
4948
  value: getRowKey(i),
4913
4949
  onClick: _cache[4] || (_cache[4] = withModifiers(() => {
4914
4950
  }, ["stop"]))
4915
- }, null, 8, _hoisted_24), [
4951
+ }, null, 8, _hoisted_25), [
4916
4952
  [vModelCheckbox, selected.value]
4917
4953
  ]),
4918
4954
  createElementVNode("div", null, [
@@ -4960,7 +4996,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4960
4996
  j === 0 && props.stickyFirstColumn ? "bh-sticky bh-left-0 bh-bg-blue-light" : "",
4961
4997
  props.hasCheckbox && j === 0 && props.stickyFirstColumn ? "bh-left-[52px]" : "",
4962
4998
  col.cellClass ? col.cellClass : ""
4963
- ])
4999
+ ]),
5000
+ onContextmenu: ($event) => handleCellContextMenu($event, item, col, cellValue(item, col.field), i, j)
4964
5001
  }, [
4965
5002
  unref(slots)[col.field] ? renderSlot(_ctx.$slots, col.field, {
4966
5003
  key: 0,
@@ -4968,13 +5005,13 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
4968
5005
  }) : col.cellRenderer ? (openBlock(), createElementBlock("div", {
4969
5006
  key: 1,
4970
5007
  innerHTML: col.cellRenderer(item)
4971
- }, null, 8, _hoisted_25)) : (openBlock(), createElementBlock(Fragment, { key: 2 }, [
5008
+ }, null, 8, _hoisted_27)) : (openBlock(), createElementBlock(Fragment, { key: 2 }, [
4972
5009
  createTextVNode(toDisplayString(cellValue(item, col.field)), 1)
4973
5010
  ], 64))
4974
- ], 2)) : createCommentVNode("", true)
5011
+ ], 42, _hoisted_26)) : createCommentVNode("", true)
4975
5012
  ], 64);
4976
5013
  }), 256))
4977
- ], 10, _hoisted_22)) : createCommentVNode("", true),
5014
+ ], 10, _hoisted_23)) : createCommentVNode("", true),
4978
5015
  isRowExpanded(item, i) && props.hasSubtable ? (openBlock(), createElementBlock("tr", {
4979
5016
  key: 1,
4980
5017
  class: normalizeClass([
@@ -5002,8 +5039,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5002
5039
  filterItems: filterItems.value
5003
5040
  })
5004
5041
  ], 4)
5005
- ], 8, _hoisted_27)
5006
- ], 10, _hoisted_26)) : createCommentVNode("", true)
5042
+ ], 8, _hoisted_29)
5043
+ ], 10, _hoisted_28)) : createCommentVNode("", true)
5007
5044
  ], 64);
5008
5045
  }), 128)),
5009
5046
  !filterRowCount.value && currentLoader.value && _ctx.skeletonloader ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(props.pageSize, (i) => {
@@ -5014,7 +5051,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5014
5051
  createElementVNode("td", {
5015
5052
  colspan: props.columns.length + unref(extracolumnlength),
5016
5053
  class: "!bh-p-0 !bh-border-transparent"
5017
- }, _hoisted_30, 8, _hoisted_28)
5054
+ }, _hoisted_32, 8, _hoisted_30)
5018
5055
  ]);
5019
5056
  }), 128)) : createCommentVNode("", true),
5020
5057
  filterRowCount.value ? (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(props.footerRows, (item, i) => {
@@ -5025,7 +5062,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5025
5062
  unref(extracolumnlength) > 0 ? (openBlock(), createElementBlock("td", {
5026
5063
  key: 0,
5027
5064
  colspan: unref(extracolumnlength)
5028
- }, null, 8, _hoisted_31)) : createCommentVNode("", true),
5065
+ }, null, 8, _hoisted_33)) : createCommentVNode("", true),
5029
5066
  (openBlock(true), createElementBlock(Fragment, null, renderList(props.columns, (col, j) => {
5030
5067
  return openBlock(), createElementBlock(Fragment, null, [
5031
5068
  !col.hide && !col.dataOnly ? (openBlock(), createElementBlock("td", {
@@ -5113,7 +5150,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5113
5150
  "sticky-footer": props.stickyFooter
5114
5151
  }])
5115
5152
  }, [
5116
- createElementVNode("div", _hoisted_32, [
5153
+ createElementVNode("div", _hoisted_34, [
5117
5154
  _ctx.enablefooterpagination ? renderSlot(_ctx.$slots, "footerpageinfo", {
5118
5155
  key: 0,
5119
5156
  paginationInfo: _ctx.paginationInfo,
@@ -5126,8 +5163,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5126
5163
  stringFormat,
5127
5164
  setPageSize
5128
5165
  }, () => [
5129
- createElementVNode("div", _hoisted_33, [
5130
- createElementVNode("span", _hoisted_34, toDisplayString(stringFormat(
5166
+ createElementVNode("div", _hoisted_35, [
5167
+ createElementVNode("span", _hoisted_36, toDisplayString(stringFormat(
5131
5168
  props.paginationInfo,
5132
5169
  filterRowCount.value ? offset.value : 0,
5133
5170
  limit.value,
@@ -5142,7 +5179,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5142
5179
  return openBlock(), createElementBlock("option", {
5143
5180
  value: option,
5144
5181
  key: option
5145
- }, toDisplayString(option), 9, _hoisted_35);
5182
+ }, toDisplayString(option), 9, _hoisted_37);
5146
5183
  }), 128))
5147
5184
  ], 512)), [
5148
5185
  [vModelSelect, currentPageSize.value]
@@ -5158,7 +5195,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5158
5195
  nextPage,
5159
5196
  previousPage
5160
5197
  }, () => [
5161
- createElementVNode("div", _hoisted_36, [
5198
+ createElementVNode("div", _hoisted_38, [
5162
5199
  props.showFirstPage ? (openBlock(), createElementBlock("button", {
5163
5200
  key: 0,
5164
5201
  type: "button",
@@ -5168,7 +5205,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5168
5205
  props.firstArrow ? (openBlock(), createElementBlock("span", {
5169
5206
  key: 0,
5170
5207
  innerHTML: props.firstArrow
5171
- }, null, 8, _hoisted_37)) : (openBlock(), createElementBlock("svg", _hoisted_38, _hoisted_40))
5208
+ }, null, 8, _hoisted_39)) : (openBlock(), createElementBlock("svg", _hoisted_40, _hoisted_42))
5172
5209
  ], 2)) : createCommentVNode("", true),
5173
5210
  createElementVNode("button", {
5174
5211
  type: "button",
@@ -5178,7 +5215,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5178
5215
  props.previousArrow ? (openBlock(), createElementBlock("span", {
5179
5216
  key: 0,
5180
5217
  innerHTML: props.previousArrow
5181
- }, null, 8, _hoisted_41)) : (openBlock(), createElementBlock("svg", _hoisted_42, _hoisted_44))
5218
+ }, null, 8, _hoisted_43)) : (openBlock(), createElementBlock("svg", _hoisted_44, _hoisted_46))
5182
5219
  ], 2),
5183
5220
  props.showNumbers ? (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(paging.value, (page) => {
5184
5221
  return openBlock(), createElementBlock("button", {
@@ -5189,7 +5226,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5189
5226
  "bh-active": page === currentPage.value
5190
5227
  }]),
5191
5228
  onClick: ($event) => movePage(page)
5192
- }, toDisplayString(page), 11, _hoisted_45);
5229
+ }, toDisplayString(page), 11, _hoisted_47);
5193
5230
  }), 128)) : createCommentVNode("", true),
5194
5231
  createElementVNode("button", {
5195
5232
  type: "button",
@@ -5199,7 +5236,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5199
5236
  props.nextArrow ? (openBlock(), createElementBlock("span", {
5200
5237
  key: 0,
5201
5238
  innerHTML: props.nextArrow
5202
- }, null, 8, _hoisted_46)) : (openBlock(), createElementBlock("svg", _hoisted_47, _hoisted_49))
5239
+ }, null, 8, _hoisted_48)) : (openBlock(), createElementBlock("svg", _hoisted_49, _hoisted_51))
5203
5240
  ], 2),
5204
5241
  props.showLastPage ? (openBlock(), createElementBlock("button", {
5205
5242
  key: 2,
@@ -5210,7 +5247,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
5210
5247
  props.lastArrow ? (openBlock(), createElementBlock("span", {
5211
5248
  key: 0,
5212
5249
  innerHTML: props.lastArrow
5213
- }, null, 8, _hoisted_50)) : (openBlock(), createElementBlock("svg", _hoisted_51, _hoisted_53))
5250
+ }, null, 8, _hoisted_52)) : (openBlock(), createElementBlock("svg", _hoisted_53, _hoisted_55))
5214
5251
  ], 2)) : createCommentVNode("", true)
5215
5252
  ])
5216
5253
  ]) : createCommentVNode("", true)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dolusoft/vue3-datatable",
3
- "version": "1.8.25",
3
+ "version": "1.8.28",
4
4
  "description": "Vue3 Datatable - fully customizable & easy to use datatable library",
5
5
  "private": false,
6
6
  "type": "module",