@canvas-components/react-list-table 0.3.34 → 0.3.35

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.cjs CHANGED
@@ -5696,6 +5696,15 @@ function applyManagedColumnOrder(columns, orderedKeys) {
5696
5696
  function resolveColumnKey(column) {
5697
5697
  return String(column.key ?? column.dataIndex);
5698
5698
  }
5699
+ function getColumnManagerOrders(columns, parentKey = "root", orders = /* @__PURE__ */ new Map()) {
5700
+ orders.set(parentKey, columns.map(resolveColumnKey));
5701
+ columns.forEach((column) => {
5702
+ if (column.children?.length) {
5703
+ getColumnManagerOrders(column.children, resolveColumnKey(column), orders);
5704
+ }
5705
+ });
5706
+ return orders;
5707
+ }
5699
5708
  function getColumnSettingsSignature(columns) {
5700
5709
  return JSON.stringify(
5701
5710
  columns.map((column) => ({
@@ -5893,7 +5902,7 @@ function ReactListTableInner(props, ref) {
5893
5902
  ...nextOptions.ui,
5894
5903
  onDensityChange: setDensityOverride,
5895
5904
  onScrollbarChange: setScrollbarOverride,
5896
- onColumnSettingsChange: (restoredColumns) => {
5905
+ onColumnSettingsChange: (restoredColumns, source) => {
5897
5906
  const signature = getColumnSettingsSignature(restoredColumns);
5898
5907
  const current = restoredColumnTreeRef.current;
5899
5908
  if (current?.sourceColumns === columns && current.storageKey === storageKey && current.signature === signature)
@@ -5906,9 +5915,11 @@ function ReactListTableInner(props, ref) {
5906
5915
  };
5907
5916
  restoredColumnTreeRef.current = next;
5908
5917
  setRestoredColumnTree(next);
5909
- setColumnVisibility(/* @__PURE__ */ new Map());
5910
- setColumnOrders(/* @__PURE__ */ new Map());
5911
- setColumnConfig(/* @__PURE__ */ new Map());
5918
+ setColumnOrders(getColumnManagerOrders(restoredColumns));
5919
+ if (source === "restore") {
5920
+ setColumnVisibility(/* @__PURE__ */ new Map());
5921
+ setColumnConfig(/* @__PURE__ */ new Map());
5922
+ }
5912
5923
  },
5913
5924
  onColumnSettingsCacheChange: (value) => setColumnSettingsCacheOverride(
5914
5925
  (current) => current?.storageKey === storageKey && current?.value === value ? current : { storageKey, value }
package/dist/index.js CHANGED
@@ -5695,6 +5695,15 @@ function applyManagedColumnOrder(columns, orderedKeys) {
5695
5695
  function resolveColumnKey(column) {
5696
5696
  return String(column.key ?? column.dataIndex);
5697
5697
  }
5698
+ function getColumnManagerOrders(columns, parentKey = "root", orders = /* @__PURE__ */ new Map()) {
5699
+ orders.set(parentKey, columns.map(resolveColumnKey));
5700
+ columns.forEach((column) => {
5701
+ if (column.children?.length) {
5702
+ getColumnManagerOrders(column.children, resolveColumnKey(column), orders);
5703
+ }
5704
+ });
5705
+ return orders;
5706
+ }
5698
5707
  function getColumnSettingsSignature(columns) {
5699
5708
  return JSON.stringify(
5700
5709
  columns.map((column) => ({
@@ -5892,7 +5901,7 @@ function ReactListTableInner(props, ref) {
5892
5901
  ...nextOptions.ui,
5893
5902
  onDensityChange: setDensityOverride,
5894
5903
  onScrollbarChange: setScrollbarOverride,
5895
- onColumnSettingsChange: (restoredColumns) => {
5904
+ onColumnSettingsChange: (restoredColumns, source) => {
5896
5905
  const signature = getColumnSettingsSignature(restoredColumns);
5897
5906
  const current = restoredColumnTreeRef.current;
5898
5907
  if (current?.sourceColumns === columns && current.storageKey === storageKey && current.signature === signature)
@@ -5905,9 +5914,11 @@ function ReactListTableInner(props, ref) {
5905
5914
  };
5906
5915
  restoredColumnTreeRef.current = next;
5907
5916
  setRestoredColumnTree(next);
5908
- setColumnVisibility(/* @__PURE__ */ new Map());
5909
- setColumnOrders(/* @__PURE__ */ new Map());
5910
- setColumnConfig(/* @__PURE__ */ new Map());
5917
+ setColumnOrders(getColumnManagerOrders(restoredColumns));
5918
+ if (source === "restore") {
5919
+ setColumnVisibility(/* @__PURE__ */ new Map());
5920
+ setColumnConfig(/* @__PURE__ */ new Map());
5921
+ }
5911
5922
  },
5912
5923
  onColumnSettingsCacheChange: (value) => setColumnSettingsCacheOverride(
5913
5924
  (current) => current?.storageKey === storageKey && current?.value === value ? current : { storageKey, value }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@canvas-components/react-list-table",
3
- "version": "0.3.34",
3
+ "version": "0.3.35",
4
4
  "description": "React adapter for the list table core engine.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -29,8 +29,8 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@canvas-components/chart": "0.3.7",
32
- "@canvas-components/react-components": "0.3.16",
33
- "@canvas-components/list-table": "0.3.30"
32
+ "@canvas-components/list-table": "0.3.31",
33
+ "@canvas-components/react-components": "0.3.16"
34
34
  },
35
35
  "peerDependencies": {
36
36
  "react": ">=16.8.0",