knt-shared 1.7.11 → 1.7.12

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.
package/dist/index.esm.js CHANGED
@@ -6592,6 +6592,15 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
6592
6592
  const handleFullscreen = () => {
6593
6593
  isFullscreen.value = !isFullscreen.value;
6594
6594
  };
6595
+ const dedupeRowsByKey = (rows) => {
6596
+ const seen = /* @__PURE__ */ new Set();
6597
+ return rows.filter((item) => {
6598
+ const key = getRowKey(item);
6599
+ if (seen.has(key)) return false;
6600
+ seen.add(key);
6601
+ return true;
6602
+ });
6603
+ };
6595
6604
  const handleSelect = (rowKeys, rowKey, record) => {
6596
6605
  var _a;
6597
6606
  const onlyCurrent = ((_a = getMergedProps.value.rowSelection) == null ? void 0 : _a.onlyCurrent) ?? false;
@@ -6610,13 +6619,13 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
6610
6619
  const otherPagesRows = selectedRows.value.filter(
6611
6620
  (item) => !currentPageKeySet.has(getRowKey(item))
6612
6621
  );
6613
- selectedRowKeys.value = [...otherPagesKeys, ...rowKeys];
6614
- selectedRows.value = [
6622
+ selectedRowKeys.value = [.../* @__PURE__ */ new Set([...otherPagesKeys, ...rowKeys])];
6623
+ selectedRows.value = dedupeRowsByKey([
6615
6624
  ...otherPagesRows,
6616
6625
  ...dataSource.value.filter(
6617
6626
  (item) => rowKeys.includes(getRowKey(item))
6618
6627
  )
6619
- ];
6628
+ ]);
6620
6629
  }
6621
6630
  emit("select", selectedRowKeys.value, rowKey, record);
6622
6631
  };
@@ -6644,17 +6653,10 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
6644
6653
  if (onlyCurrent) {
6645
6654
  if (checked) {
6646
6655
  selectedRowKeys.value = [.../* @__PURE__ */ new Set([...frozenKeys, ...selectableKeys])];
6647
- selectedRows.value = [
6648
- ...frozenRows,
6649
- ...selectableRows.filter(
6650
- (item) => !frozenRows.some(
6651
- (r) => getRowKey(r) === getRowKey(item)
6652
- )
6653
- )
6654
- ];
6656
+ selectedRows.value = dedupeRowsByKey([...frozenRows, ...selectableRows]);
6655
6657
  } else {
6656
- selectedRowKeys.value = [...frozenKeys];
6657
- selectedRows.value = [...frozenRows];
6658
+ selectedRowKeys.value = [...new Set(frozenKeys)];
6659
+ selectedRows.value = dedupeRowsByKey(frozenRows);
6658
6660
  }
6659
6661
  } else {
6660
6662
  const currentPageKeySet = new Set(
@@ -6667,38 +6669,19 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
6667
6669
  (item) => !currentPageKeySet.has(getRowKey(item))
6668
6670
  );
6669
6671
  if (checked) {
6670
- const mergedKeySet = /* @__PURE__ */ new Set([
6671
- ...otherPagesKeys,
6672
- ...frozenKeys,
6673
- ...selectableKeys
6674
- ]);
6675
- selectedRowKeys.value = [...mergedKeySet];
6676
- selectedRows.value = [
6677
- ...otherPagesRows,
6678
- ...frozenRows.filter(
6679
- (item) => !otherPagesRows.some(
6680
- (r) => getRowKey(r) === getRowKey(item)
6681
- )
6682
- ),
6683
- ...selectableRows.filter(
6684
- (item) => !otherPagesRows.some(
6685
- (r) => getRowKey(r) === getRowKey(item)
6686
- ) && !frozenRows.some(
6687
- (r) => getRowKey(r) === getRowKey(item)
6688
- )
6689
- )
6672
+ selectedRowKeys.value = [
6673
+ .../* @__PURE__ */ new Set([...otherPagesKeys, ...frozenKeys, ...selectableKeys])
6690
6674
  ];
6691
- } else {
6692
- const mergedKeySet = /* @__PURE__ */ new Set([...otherPagesKeys, ...frozenKeys]);
6693
- selectedRowKeys.value = [...mergedKeySet];
6694
- selectedRows.value = [
6675
+ selectedRows.value = dedupeRowsByKey([
6695
6676
  ...otherPagesRows,
6696
- ...frozenRows.filter(
6697
- (item) => !otherPagesRows.some(
6698
- (r) => getRowKey(r) === getRowKey(item)
6699
- )
6700
- )
6677
+ ...frozenRows,
6678
+ ...selectableRows
6679
+ ]);
6680
+ } else {
6681
+ selectedRowKeys.value = [
6682
+ .../* @__PURE__ */ new Set([...otherPagesKeys, ...frozenKeys])
6701
6683
  ];
6684
+ selectedRows.value = dedupeRowsByKey([...otherPagesRows, ...frozenRows]);
6702
6685
  }
6703
6686
  }
6704
6687
  emit("selectAll", checked);
@@ -7442,7 +7425,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
7442
7425
  };
7443
7426
  }
7444
7427
  });
7445
- const BasicTable = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-bff5416b"]]);
7428
+ const BasicTable = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-4e9be0fe"]]);
7446
7429
  function useTable(options = {}) {
7447
7430
  const tableRef = ref(null);
7448
7431
  const formRef = ref(null);