@bigbinary/neeto-folders-frontend 2.0.8 → 2.0.9

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/cjs/hooks.js CHANGED
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var useFolderActions = require('../useFolderActions-ibifd0ZD.js');
3
+ var useFolderActions = require('../useFolderActions-69nKxJCT.js');
4
4
  require('@babel/runtime/helpers/defineProperty');
5
5
  require('i18next');
6
6
  require('@bigbinary/neeto-cist');
@@ -7,7 +7,7 @@ import { buildUrl } from '@bigbinary/neeto-commons-frontend/utils';
7
7
  import Alert from '@bigbinary/neetoui/Alert';
8
8
  import { useTranslation as useTranslation$1, Trans } from 'react-i18next';
9
9
  import { useHistory, Link, NavLink } from 'react-router-dom';
10
- import { c as useFolderStore, d as useDestroyFolder, a as useFolders, e as useFetchFolders, f as useCreateFolder, g as useUpdateFolder, h as useReorderFolders, D as DEFAULT_CONFIG, u as useFolder, b as useFolderActions } from './useFolderActions-Cckopfet.js';
10
+ import { c as useFolderStore, d as useDestroyFolder, a as useFolders, e as useFetchFolders, f as useCreateFolder, g as useUpdateFolder, h as useReorderFolders, D as DEFAULT_CONFIG, u as useFolder, b as useFolderActions } from './useFolderActions-Bjx-yzjp.js';
11
11
  import { QUERY_KEYS } from './constants.js';
12
12
  import { p as pathToFolder, t as treeToMap, m as measureDepth, a as mapToTree, b as mapToSortedTree } from './index-CO0LgS5v.js';
13
13
  import { a as isActiveFolder, m as mapObj, g as getActiveFolderId, i as isArray } from './internal-B2c8gwOa.js';
@@ -1508,12 +1508,32 @@ var FoldersTree = function FoldersTree(_ref) {
1508
1508
  var _activeFolder$meta;
1509
1509
  if (!folders) return;
1510
1510
  // When active folder changes from external sources, update expanded keys to auto expand tree.
1511
- var expandedKeys = [];
1511
+ var updatedExpandedKeys = _toConsumableArray(expandedKeys);
1512
1512
  var map = treeToMap(folders, "sid");
1513
1513
  var activeFolder = map[activeFolderSid];
1514
1514
  var parentSid = activeFolder === null || activeFolder === void 0 || (_activeFolder$meta = activeFolder.meta) === null || _activeFolder$meta === void 0 || (_activeFolder$meta = _activeFolder$meta.parent) === null || _activeFolder$meta === void 0 ? void 0 : _activeFolder$meta.sid;
1515
- if (parentSid) expandedKeys.push(parentSid);
1516
- setExpandedKeys(expandedKeys);
1515
+ if (parentSid && !updatedExpandedKeys.includes(parentSid)) {
1516
+ updatedExpandedKeys.push(parentSid);
1517
+ }
1518
+ setExpandedKeys(updatedExpandedKeys);
1519
+ };
1520
+ var handleExpand = function handleExpand(keys, _ref2) {
1521
+ var expanded = _ref2.expanded,
1522
+ node = _ref2.node;
1523
+ if (expanded) {
1524
+ setExpandedKeys(keys);
1525
+ return;
1526
+ }
1527
+ var keysSet = new Set(keys);
1528
+ var _removeChildKeys = function removeChildKeys() {
1529
+ var children = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
1530
+ children.forEach(function (child) {
1531
+ keysSet["delete"](child.sid);
1532
+ _removeChildKeys(child.children);
1533
+ });
1534
+ };
1535
+ _removeChildKeys(node.children);
1536
+ setExpandedKeys(_toConsumableArray(keysSet));
1517
1537
  };
1518
1538
  useEffect(function () {
1519
1539
  // Non urgent update.
@@ -1551,7 +1571,7 @@ var FoldersTree = function FoldersTree(_ref) {
1551
1571
  }))
1552
1572
  });
1553
1573
  },
1554
- onExpand: setExpandedKeys
1574
+ onExpand: handleExpand
1555
1575
  });
1556
1576
  };
1557
1577