@ndla/ui 19.1.0 → 20.0.0
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/es/MyNdla/Resource/FolderInput.js +29 -36
- package/es/NDLAFilm/FilmSlideshow.js +8 -8
- package/es/Search/LoadingWrapper.js +2 -2
- package/es/Search/SearchResult.js +1 -1
- package/es/SearchTypeResult/SearchTypeResult.js +3 -3
- package/es/TreeStructure/FolderItem.js +54 -38
- package/es/TreeStructure/FolderItems.js +29 -35
- package/es/TreeStructure/FolderNameInput.js +12 -16
- package/es/TreeStructure/TreeStructure.js +64 -91
- package/es/TreeStructure/arrowNavigation.js +44 -0
- package/es/TreeStructure/helperFunctions.js +41 -35
- package/es/index.js +0 -1
- package/es/locale/messages-en.js +4 -1
- package/es/locale/messages-nb.js +4 -1
- package/es/locale/messages-nn.js +4 -1
- package/es/locale/messages-se.js +4 -1
- package/es/locale/messages-sma.js +4 -1
- package/lib/MyNdla/Resource/FolderInput.d.ts +2 -2
- package/lib/MyNdla/Resource/FolderInput.js +26 -33
- package/lib/NDLAFilm/FilmSlideshow.js +10 -10
- package/lib/Search/LoadingWrapper.js +3 -3
- package/lib/Search/SearchResult.js +2 -2
- package/lib/SearchTypeResult/SearchTypeResult.js +4 -4
- package/lib/TreeStructure/FolderItem.d.ts +6 -3
- package/lib/TreeStructure/FolderItem.js +55 -38
- package/lib/TreeStructure/FolderItems.d.ts +1 -1
- package/lib/TreeStructure/FolderItems.js +29 -35
- package/lib/TreeStructure/FolderNameInput.d.ts +3 -2
- package/lib/TreeStructure/FolderNameInput.js +13 -17
- package/lib/TreeStructure/TreeStructure.d.ts +1 -6
- package/lib/TreeStructure/TreeStructure.js +63 -92
- package/lib/TreeStructure/TreeStructure.types.d.ts +13 -20
- package/lib/TreeStructure/arrowNavigation.d.ts +9 -0
- package/lib/TreeStructure/arrowNavigation.js +54 -0
- package/lib/TreeStructure/helperFunctions.d.ts +3 -4
- package/lib/TreeStructure/helperFunctions.js +45 -35
- package/lib/index.d.ts +0 -1
- package/lib/index.js +0 -9
- package/lib/locale/messages-en.d.ts +3 -0
- package/lib/locale/messages-en.js +4 -1
- package/lib/locale/messages-nb.d.ts +3 -0
- package/lib/locale/messages-nb.js +4 -1
- package/lib/locale/messages-nn.d.ts +3 -0
- package/lib/locale/messages-nn.js +4 -1
- package/lib/locale/messages-se.d.ts +3 -0
- package/lib/locale/messages-se.js +4 -1
- package/lib/locale/messages-sma.d.ts +3 -0
- package/lib/locale/messages-sma.js +4 -1
- package/package.json +11 -10
- package/src/MyNdla/Resource/FolderInput.tsx +41 -44
- package/src/NDLAFilm/FilmSlideshow.tsx +1 -1
- package/src/Search/LoadingWrapper.tsx +1 -1
- package/src/Search/SearchResult.jsx +1 -1
- package/src/SearchTypeResult/SearchTypeResult.tsx +1 -1
- package/src/TreeStructure/FolderItem.tsx +63 -40
- package/src/TreeStructure/FolderItems.tsx +26 -19
- package/src/TreeStructure/FolderNameInput.tsx +10 -12
- package/src/TreeStructure/TreeStructure.tsx +56 -71
- package/src/TreeStructure/TreeStructure.types.ts +13 -17
- package/src/TreeStructure/arrowNavigation.ts +53 -0
- package/src/TreeStructure/helperFunctions.ts +17 -25
- package/src/index.ts +0 -2
- package/src/locale/messages-en.ts +3 -0
- package/src/locale/messages-nb.ts +3 -0
- package/src/locale/messages-nn.ts +3 -0
- package/src/locale/messages-se.ts +3 -0
- package/src/locale/messages-sma.ts +3 -0
- package/es/Spinner/Spinner.js +0 -42
- package/es/Spinner/index.js +0 -2
- package/es/TreeStructure/keyboardNavigation/keyboardNavigation.js +0 -194
- package/es/TreeStructure/keyboardNavigation/keyboardNavigation.types.js +0 -0
- package/lib/Spinner/Spinner.d.ts +0 -16
- package/lib/Spinner/Spinner.js +0 -54
- package/lib/Spinner/index.d.ts +0 -2
- package/lib/Spinner/index.js +0 -13
- package/lib/TreeStructure/keyboardNavigation/keyboardNavigation.d.ts +0 -11
- package/lib/TreeStructure/keyboardNavigation/keyboardNavigation.js +0 -198
- package/lib/TreeStructure/keyboardNavigation/keyboardNavigation.types.d.ts +0 -26
- package/lib/TreeStructure/keyboardNavigation/keyboardNavigation.types.js +0 -1
- package/src/Spinner/Spinner.tsx +0 -46
- package/src/Spinner/index.ts +0 -3
- package/src/TreeStructure/keyboardNavigation/keyboardNavigation.ts +0 -161
- package/src/TreeStructure/keyboardNavigation/keyboardNavigation.types.ts +0 -28
|
@@ -11,8 +11,6 @@ var _styledBase = _interopRequireDefault(require("@emotion/styled-base"));
|
|
|
11
11
|
|
|
12
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
13
|
|
|
14
|
-
var _util = require("@ndla/util");
|
|
15
|
-
|
|
16
14
|
var _button = require("@ndla/button");
|
|
17
15
|
|
|
18
16
|
var _tooltip = _interopRequireDefault(require("@ndla/tooltip"));
|
|
@@ -29,8 +27,6 @@ var _FolderItems = _interopRequireDefault(require("./FolderItems"));
|
|
|
29
27
|
|
|
30
28
|
var _helperFunctions = require("./helperFunctions");
|
|
31
29
|
|
|
32
|
-
var _keyboardNavigation = _interopRequireWildcard(require("./keyboardNavigation/keyboardNavigation"));
|
|
33
|
-
|
|
34
30
|
var _core2 = require("@emotion/core");
|
|
35
31
|
|
|
36
32
|
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
|
|
@@ -39,12 +35,6 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
|
|
|
39
35
|
|
|
40
36
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
41
37
|
|
|
42
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
43
|
-
|
|
44
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
45
|
-
|
|
46
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
47
|
-
|
|
48
38
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
49
39
|
|
|
50
40
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
@@ -70,34 +60,36 @@ exports.MAX_LEVEL_FOR_FOLDERS = MAX_LEVEL_FOR_FOLDERS;
|
|
|
70
60
|
var StyledLabel = (0, _styledBase["default"])("label", {
|
|
71
61
|
target: "e1dg1gdn0",
|
|
72
62
|
label: "StyledLabel"
|
|
73
|
-
})("font-weight:", _core.fonts.weight.semibold, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
63
|
+
})("font-weight:", _core.fonts.weight.semibold, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRyZWVTdHJ1Y3R1cmUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNCZ0MiLCJmaWxlIjoiVHJlZVN0cnVjdHVyZS50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyMi1wcmVzZW50LCBORExBLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEdQTHYzIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKlxuICovXG5cbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlLCB1c2VSZWYsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBBZGRCdXR0b24gfSBmcm9tICdAbmRsYS9idXR0b24nO1xuaW1wb3J0IFRvb2x0aXAgZnJvbSAnQG5kbGEvdG9vbHRpcCc7XG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgc3BhY2luZywgZm9udHMgfSBmcm9tICdAbmRsYS9jb3JlJztcbmltcG9ydCB7IHVuaXEgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IFRyZWVTdHJ1Y3R1cmVTdHlsZWRXcmFwcGVyIGZyb20gJy4vVHJlZVN0cnVjdHVyZVdyYXBwZXInO1xuaW1wb3J0IEZvbGRlckl0ZW1zIGZyb20gJy4vRm9sZGVySXRlbXMnO1xuaW1wb3J0IHsgZ2V0UGF0aE9mRm9sZGVyLCBnZXRGb2xkZXJOYW1lLCBmbGF0dGVuRm9sZGVycyB9IGZyb20gJy4vaGVscGVyRnVuY3Rpb25zJztcbmltcG9ydCB7IFRyZWVTdHJ1Y3R1cmVQcm9wcyB9IGZyb20gJy4vVHJlZVN0cnVjdHVyZS50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBNQVhfTEVWRUxfRk9SX0ZPTERFUlMgPSA0O1xuXG5jb25zdCBTdHlsZWRMYWJlbCA9IHN0eWxlZC5sYWJlbGBcbiAgZm9udC13ZWlnaHQ6ICR7Zm9udHMud2VpZ2h0LnNlbWlib2xkfTtcbmA7XG5cbmNvbnN0IEFkZEZvbGRlcldyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tdG9wOiAke3NwYWNpbmcueHNtYWxsfTtcbmA7XG5cbmNvbnN0IFRyZWVTdHJ1Y3R1cmUgPSAoe1xuICBmb2xkZXJzLFxuICBsYWJlbCxcbiAgZWRpdGFibGUsXG4gIGxvYWRpbmcsXG4gIG9uTmV3Rm9sZGVyLFxuICBvblNlbGVjdEZvbGRlcixcbiAgb3Blbk9uRm9sZGVyQ2xpY2ssXG4gIGZyYW1lZCxcbiAgZm9sZGVySWRNYXJrZWRCeURlZmF1bHQsXG4gIGRlZmF1bHRPcGVuRm9sZGVycyxcbiAgZm9sZGVyQ2hpbGQsXG4gIG1heGltdW1MZXZlbHNPZkZvbGRlcnNBbGxvd2VkID0gTUFYX0xFVkVMX0ZPUl9GT0xERVJTLFxufTogVHJlZVN0cnVjdHVyZVByb3BzKSA9PiB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oKTtcbiAgY29uc3QgW25ld0ZvbGRlclBhcmVudElkLCBzZXROZXdGb2xkZXJQYXJlbnRJZF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIGNvbnN0IFtvcGVuRm9sZGVycywgc2V0T3BlbkZvbGRlcnNdID0gdXNlU3RhdGU8c3RyaW5nW10+KGRlZmF1bHRPcGVuRm9sZGVycyB8fCBbXSk7XG4gIGNvbnN0IFtmb2N1c2VkRm9sZGVySWQsIHNldEZvY3VzZWRGb2xkZXJJZF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIGNvbnN0IFttYXJrZWRGb2xkZXJJZCwgc2V0TWFya2VkRm9sZGVySWRdID0gdXNlU3RhdGU8c3RyaW5nIHwgdW5kZWZpbmVkPihmb2xkZXJJZE1hcmtlZEJ5RGVmYXVsdCB8fCBmb2xkZXJzWzBdPy5pZCk7XG4gIGNvbnN0IHRyZWVzdHJ1Y3R1cmVSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCB3cmFwcGVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgY29uc3Qgcm9vdExldmVsSWQgPSAndHJlZXN0cnVjdHVyZS1yb290JztcblxuICBjb25zdCB2aXNpYmxlRm9sZGVycyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gZmxhdHRlbkZvbGRlcnMoZm9sZGVycywgb3BlbkZvbGRlcnMpLm1hcCgoZm9sZGVyKSA9PiBmb2xkZXIuaWQpLFxuICAgIFtmb2xkZXJzLCBvcGVuRm9sZGVyc10sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZGVmYXVsdE9wZW5Gb2xkZXJzKSB7XG4gICAgICBzZXRPcGVuRm9sZGVycygocHJldikgPT4ge1xuICAgICAgICByZXR1cm4gdW5pcShbLi4uZGVmYXVsdE9wZW5Gb2xkZXJzLCAuLi5wcmV2XSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtkZWZhdWx0T3BlbkZvbGRlcnNdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghbG9hZGluZykge1xuICAgICAgc2V0TmV3Rm9sZGVyUGFyZW50SWQodW5kZWZpbmVkKTtcbiAgICB9XG4gIH0sIFtsb2FkaW5nXSk7XG5cbiAgY29uc3Qgb25DbG9zZUZvbGRlciA9IChpZDogc3RyaW5nKSA9PiB7XG4gICAgLy8gRGlkIHdlIGp1c3QgY2xvc2VkIGEgZm9sZGVyIHdpdGggYSBtYXJrZWQgZm9sZGVyIGluc2lkZSBpdD9cbiAgICAvLyBJZiBzbywgd2UgbmVlZCB0byBtYXJrIHRoZSBmb2xkZXIgd2UganVzdCBjbG9zZWQuXG4gICAgaWYgKG1hcmtlZEZvbGRlcklkKSB7XG4gICAgICBjb25zdCBjbG9zaW5nRm9sZGVyUGF0aCA9IGdldFBhdGhPZkZvbGRlcihmb2xkZXJzLCBpZCk7XG4gICAgICBjb25zdCBtYXJrZWRGb2xkZXJQYXRoID0gZ2V0UGF0aE9mRm9sZGVyKGZvbGRlcnMsIG1hcmtlZEZvbGRlcklkKTtcbiAgICAgIGNvbnN0IG1hcmtlZEZvbGRlcklzU3ViUGF0aCA9IGNsb3NpbmdGb2xkZXJQYXRoLmV2ZXJ5KFxuICAgICAgICAoZm9sZGVySWQsIF9pbmRleCkgPT4gbWFya2VkRm9sZGVyUGF0aFtfaW5kZXhdID09PSBmb2xkZXJJZCxcbiAgICAgICk7XG4gICAgICBpZiAobWFya2VkRm9sZGVySXNTdWJQYXRoKSB7XG4gICAgICAgIGlmIChvblNlbGVjdEZvbGRlcikge1xuICAgICAgICAgIHNldE1hcmtlZEZvbGRlcklkKGNsb3NpbmdGb2xkZXJQYXRoW2Nsb3NpbmdGb2xkZXJQYXRoLmxlbmd0aCAtIDFdKTtcbiAgICAgICAgICBvblNlbGVjdEZvbGRlcihjbG9zaW5nRm9sZGVyUGF0aFtjbG9zaW5nRm9sZGVyUGF0aC5sZW5ndGggLSAxXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2V0Rm9jdXNlZEZvbGRlcklkKGNsb3NpbmdGb2xkZXJQYXRoW2Nsb3NpbmdGb2xkZXJQYXRoLmxlbmd0aCAtIDFdKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBzZXRPcGVuRm9sZGVycyhvcGVuRm9sZGVycy5maWx0ZXIoKGZvbGRlcikgPT4gZm9sZGVyICE9PSBpZCkpO1xuICB9O1xuXG4gIGNvbnN0IG9uT3BlbkZvbGRlciA9IChpZDogc3RyaW5nKSA9PiB7XG4gICAgc2V0T3BlbkZvbGRlcnModW5pcShvcGVuRm9sZGVycy5jb25jYXQoaWQpKSk7XG4gIH07XG5cbiAgY29uc3Qgb25DcmVhdGVOZXdGb2xkZXIgPSAocGFyZW50SWQ6IHN0cmluZykgPT4ge1xuICAgIHNldE5ld0ZvbGRlclBhcmVudElkKHBhcmVudElkKTtcbiAgfTtcblxuICBjb25zdCBvblNhdmVOZXdGb2xkZXIgPSAobmFtZTogc3RyaW5nLCBwYXJlbnRJZDogc3RyaW5nKSA9PiB7XG4gICAgb25OZXdGb2xkZXIobmFtZSwgcGFyZW50SWQpLnRoZW4oKG5ld0ZvbGRlcklkKSA9PiB7XG4gICAgICBpZiAobmV3Rm9sZGVySWQpIHtcbiAgICAgICAgc2V0TWFya2VkRm9sZGVySWQobmV3Rm9sZGVySWQpO1xuICAgICAgICBzZXRGb2N1c2VkRm9sZGVySWQobmV3Rm9sZGVySWQpO1xuICAgICAgICBzZXRPcGVuRm9sZGVycyh1bmlxKG9wZW5Gb2xkZXJzLmNvbmNhdChwYXJlbnRJZCkpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBvbkNhbmNlbE5ld0ZvbGRlciA9ICgpID0+IHtcbiAgICBzZXROZXdGb2xkZXJQYXJlbnRJZCh1bmRlZmluZWQpO1xuICB9O1xuXG4gIGNvbnN0IG9uTWFya0ZvbGRlciA9IChpZDogc3RyaW5nKSA9PiB7XG4gICAgc2V0TWFya2VkRm9sZGVySWQoaWQpO1xuICAgIHNldEZvY3VzZWRGb2xkZXJJZChpZCk7XG4gIH07XG5cbiAgY29uc3QgcGF0aHMgPSBnZXRQYXRoT2ZGb2xkZXIoZm9sZGVycywgbWFya2VkRm9sZGVySWQgfHwgJycpO1xuICBjb25zdCBjYW5BZGRGb2xkZXIgPSBlZGl0YWJsZSAmJiBwYXRocy5sZW5ndGggPCAobWF4aW11bUxldmVsc09mRm9sZGVyc0FsbG93ZWQgfHwgMSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IHJlZj17dHJlZXN0cnVjdHVyZVJlZn0+XG4gICAgICB7bGFiZWwgJiYgPFN0eWxlZExhYmVsIGh0bWxGb3I9e3Jvb3RMZXZlbElkfT57bGFiZWx9PC9TdHlsZWRMYWJlbD59XG4gICAgICA8VHJlZVN0cnVjdHVyZVN0eWxlZFdyYXBwZXIgcmVmPXt3cmFwcGVyUmVmfSBpZD17cm9vdExldmVsSWR9IGFyaWEtbGFiZWw9XCJNZW51IHRyZWVcIiByb2xlPVwidHJlZVwiIGZyYW1lZD17ZnJhbWVkfT5cbiAgICAgICAgPEZvbGRlckl0ZW1zXG4gICAgICAgICAgb25TZWxlY3RGb2xkZXI9e29uU2VsZWN0Rm9sZGVyfVxuICAgICAgICAgIGxldmVsPXsxfVxuICAgICAgICAgIGZvbGRlcnM9e2ZvbGRlcnN9XG4gICAgICAgICAgZWRpdGFibGU9e2VkaXRhYmxlfVxuICAgICAgICAgIG9uT3BlbkZvbGRlcj17b25PcGVuRm9sZGVyfVxuICAgICAgICAgIG9uQ2xvc2VGb2xkZXI9e29uQ2xvc2VGb2xkZXJ9XG4gICAgICAgICAgbmV3Rm9sZGVyUGFyZW50SWQ9e25ld0ZvbGRlclBhcmVudElkfVxuICAgICAgICAgIG9uQ3JlYXRlTmV3Rm9sZGVyPXtvbkNyZWF0ZU5ld0ZvbGRlcn1cbiAgICAgICAgICBvbkNhbmNlbE5ld0ZvbGRlcj17b25DYW5jZWxOZXdGb2xkZXJ9XG4gICAgICAgICAgb25TYXZlTmV3Rm9sZGVyPXtvblNhdmVOZXdGb2xkZXJ9XG4gICAgICAgICAgdmlzaWJsZUZvbGRlcnM9e3Zpc2libGVGb2xkZXJzfVxuICAgICAgICAgIG9wZW5Gb2xkZXJzPXtvcGVuRm9sZGVyc31cbiAgICAgICAgICBtYXJrZWRGb2xkZXJJZD17bWFya2VkRm9sZGVySWR9XG4gICAgICAgICAgb25NYXJrRm9sZGVyPXtvbk1hcmtGb2xkZXJ9XG4gICAgICAgICAgb3Blbk9uRm9sZGVyQ2xpY2s9e29wZW5PbkZvbGRlckNsaWNrfVxuICAgICAgICAgIGxvYWRpbmc9e2xvYWRpbmd9XG4gICAgICAgICAgZm9jdXNlZEZvbGRlcklkPXtmb2N1c2VkRm9sZGVySWR9XG4gICAgICAgICAgc2V0Rm9jdXNlZEZvbGRlcklkPXtzZXRGb2N1c2VkRm9sZGVySWR9XG4gICAgICAgICAgZm9sZGVyQ2hpbGQ9e2ZvbGRlckNoaWxkfVxuICAgICAgICAgIG1heGltdW1MZXZlbHNPZkZvbGRlcnNBbGxvd2VkPXttYXhpbXVtTGV2ZWxzT2ZGb2xkZXJzQWxsb3dlZH1cbiAgICAgICAgLz5cbiAgICAgIDwvVHJlZVN0cnVjdHVyZVN0eWxlZFdyYXBwZXI+XG4gICAgICB7ZWRpdGFibGUgJiYgKFxuICAgICAgICA8QWRkRm9sZGVyV3JhcHBlcj5cbiAgICAgICAgICA8VG9vbHRpcFxuICAgICAgICAgICAgdG9vbHRpcD17XG4gICAgICAgICAgICAgIGNhbkFkZEZvbGRlclxuICAgICAgICAgICAgICAgID8gdCgnbXlOZGxhLm5ld0ZvbGRlclVuZGVyJywge1xuICAgICAgICAgICAgICAgICAgICBmb2xkZXJOYW1lOiBnZXRGb2xkZXJOYW1lKGZvbGRlcnMsIG1hcmtlZEZvbGRlcklkKSxcbiAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgOiB0KCd0cmVlU3RydWN0dXJlLm1heEZvbGRlcnNBbHJlYWR5QWRkZWQnKVxuICAgICAgICAgICAgfT5cbiAgICAgICAgICAgIDxBZGRCdXR0b25cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9eyFjYW5BZGRGb2xkZXJ9XG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9e3QoJ215TmRsYS5uZXdGb2xkZXInKX1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldE5ld0ZvbGRlclBhcmVudElkKG1hcmtlZEZvbGRlcklkKTtcbiAgICAgICAgICAgICAgfX0+XG4gICAgICAgICAgICAgIHt0KCdteU5kbGEubmV3Rm9sZGVyJyl9XG4gICAgICAgICAgICA8L0FkZEJ1dHRvbj5cbiAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIDwvQWRkRm9sZGVyV3JhcHBlcj5cbiAgICAgICl9XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBUcmVlU3RydWN0dXJlO1xuIl19 */"));
|
|
74
64
|
var AddFolderWrapper = (0, _styledBase["default"])("div", {
|
|
75
65
|
target: "e1dg1gdn1",
|
|
76
66
|
label: "AddFolderWrapper"
|
|
77
|
-
})("display:flex;margin-top:", _core.spacing.xsmall, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
67
|
+
})("display:flex;margin-top:", _core.spacing.xsmall, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRyZWVTdHJ1Y3R1cmUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBCbUMiLCJmaWxlIjoiVHJlZVN0cnVjdHVyZS50c3giLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAyMi1wcmVzZW50LCBORExBLlxuICpcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEdQTHYzIGxpY2Vuc2UgZm91bmQgaW4gdGhlXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuXG4gKlxuICovXG5cbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlLCB1c2VSZWYsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBBZGRCdXR0b24gfSBmcm9tICdAbmRsYS9idXR0b24nO1xuaW1wb3J0IFRvb2x0aXAgZnJvbSAnQG5kbGEvdG9vbHRpcCc7XG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgc3BhY2luZywgZm9udHMgfSBmcm9tICdAbmRsYS9jb3JlJztcbmltcG9ydCB7IHVuaXEgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IFRyZWVTdHJ1Y3R1cmVTdHlsZWRXcmFwcGVyIGZyb20gJy4vVHJlZVN0cnVjdHVyZVdyYXBwZXInO1xuaW1wb3J0IEZvbGRlckl0ZW1zIGZyb20gJy4vRm9sZGVySXRlbXMnO1xuaW1wb3J0IHsgZ2V0UGF0aE9mRm9sZGVyLCBnZXRGb2xkZXJOYW1lLCBmbGF0dGVuRm9sZGVycyB9IGZyb20gJy4vaGVscGVyRnVuY3Rpb25zJztcbmltcG9ydCB7IFRyZWVTdHJ1Y3R1cmVQcm9wcyB9IGZyb20gJy4vVHJlZVN0cnVjdHVyZS50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBNQVhfTEVWRUxfRk9SX0ZPTERFUlMgPSA0O1xuXG5jb25zdCBTdHlsZWRMYWJlbCA9IHN0eWxlZC5sYWJlbGBcbiAgZm9udC13ZWlnaHQ6ICR7Zm9udHMud2VpZ2h0LnNlbWlib2xkfTtcbmA7XG5cbmNvbnN0IEFkZEZvbGRlcldyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tdG9wOiAke3NwYWNpbmcueHNtYWxsfTtcbmA7XG5cbmNvbnN0IFRyZWVTdHJ1Y3R1cmUgPSAoe1xuICBmb2xkZXJzLFxuICBsYWJlbCxcbiAgZWRpdGFibGUsXG4gIGxvYWRpbmcsXG4gIG9uTmV3Rm9sZGVyLFxuICBvblNlbGVjdEZvbGRlcixcbiAgb3Blbk9uRm9sZGVyQ2xpY2ssXG4gIGZyYW1lZCxcbiAgZm9sZGVySWRNYXJrZWRCeURlZmF1bHQsXG4gIGRlZmF1bHRPcGVuRm9sZGVycyxcbiAgZm9sZGVyQ2hpbGQsXG4gIG1heGltdW1MZXZlbHNPZkZvbGRlcnNBbGxvd2VkID0gTUFYX0xFVkVMX0ZPUl9GT0xERVJTLFxufTogVHJlZVN0cnVjdHVyZVByb3BzKSA9PiB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oKTtcbiAgY29uc3QgW25ld0ZvbGRlclBhcmVudElkLCBzZXROZXdGb2xkZXJQYXJlbnRJZF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIGNvbnN0IFtvcGVuRm9sZGVycywgc2V0T3BlbkZvbGRlcnNdID0gdXNlU3RhdGU8c3RyaW5nW10+KGRlZmF1bHRPcGVuRm9sZGVycyB8fCBbXSk7XG4gIGNvbnN0IFtmb2N1c2VkRm9sZGVySWQsIHNldEZvY3VzZWRGb2xkZXJJZF0gPSB1c2VTdGF0ZTxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG4gIGNvbnN0IFttYXJrZWRGb2xkZXJJZCwgc2V0TWFya2VkRm9sZGVySWRdID0gdXNlU3RhdGU8c3RyaW5nIHwgdW5kZWZpbmVkPihmb2xkZXJJZE1hcmtlZEJ5RGVmYXVsdCB8fCBmb2xkZXJzWzBdPy5pZCk7XG4gIGNvbnN0IHRyZWVzdHJ1Y3R1cmVSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCB3cmFwcGVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgY29uc3Qgcm9vdExldmVsSWQgPSAndHJlZXN0cnVjdHVyZS1yb290JztcblxuICBjb25zdCB2aXNpYmxlRm9sZGVycyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gZmxhdHRlbkZvbGRlcnMoZm9sZGVycywgb3BlbkZvbGRlcnMpLm1hcCgoZm9sZGVyKSA9PiBmb2xkZXIuaWQpLFxuICAgIFtmb2xkZXJzLCBvcGVuRm9sZGVyc10sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZGVmYXVsdE9wZW5Gb2xkZXJzKSB7XG4gICAgICBzZXRPcGVuRm9sZGVycygocHJldikgPT4ge1xuICAgICAgICByZXR1cm4gdW5pcShbLi4uZGVmYXVsdE9wZW5Gb2xkZXJzLCAuLi5wcmV2XSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtkZWZhdWx0T3BlbkZvbGRlcnNdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghbG9hZGluZykge1xuICAgICAgc2V0TmV3Rm9sZGVyUGFyZW50SWQodW5kZWZpbmVkKTtcbiAgICB9XG4gIH0sIFtsb2FkaW5nXSk7XG5cbiAgY29uc3Qgb25DbG9zZUZvbGRlciA9IChpZDogc3RyaW5nKSA9PiB7XG4gICAgLy8gRGlkIHdlIGp1c3QgY2xvc2VkIGEgZm9sZGVyIHdpdGggYSBtYXJrZWQgZm9sZGVyIGluc2lkZSBpdD9cbiAgICAvLyBJZiBzbywgd2UgbmVlZCB0byBtYXJrIHRoZSBmb2xkZXIgd2UganVzdCBjbG9zZWQuXG4gICAgaWYgKG1hcmtlZEZvbGRlcklkKSB7XG4gICAgICBjb25zdCBjbG9zaW5nRm9sZGVyUGF0aCA9IGdldFBhdGhPZkZvbGRlcihmb2xkZXJzLCBpZCk7XG4gICAgICBjb25zdCBtYXJrZWRGb2xkZXJQYXRoID0gZ2V0UGF0aE9mRm9sZGVyKGZvbGRlcnMsIG1hcmtlZEZvbGRlcklkKTtcbiAgICAgIGNvbnN0IG1hcmtlZEZvbGRlcklzU3ViUGF0aCA9IGNsb3NpbmdGb2xkZXJQYXRoLmV2ZXJ5KFxuICAgICAgICAoZm9sZGVySWQsIF9pbmRleCkgPT4gbWFya2VkRm9sZGVyUGF0aFtfaW5kZXhdID09PSBmb2xkZXJJZCxcbiAgICAgICk7XG4gICAgICBpZiAobWFya2VkRm9sZGVySXNTdWJQYXRoKSB7XG4gICAgICAgIGlmIChvblNlbGVjdEZvbGRlcikge1xuICAgICAgICAgIHNldE1hcmtlZEZvbGRlcklkKGNsb3NpbmdGb2xkZXJQYXRoW2Nsb3NpbmdGb2xkZXJQYXRoLmxlbmd0aCAtIDFdKTtcbiAgICAgICAgICBvblNlbGVjdEZvbGRlcihjbG9zaW5nRm9sZGVyUGF0aFtjbG9zaW5nRm9sZGVyUGF0aC5sZW5ndGggLSAxXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2V0Rm9jdXNlZEZvbGRlcklkKGNsb3NpbmdGb2xkZXJQYXRoW2Nsb3NpbmdGb2xkZXJQYXRoLmxlbmd0aCAtIDFdKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBzZXRPcGVuRm9sZGVycyhvcGVuRm9sZGVycy5maWx0ZXIoKGZvbGRlcikgPT4gZm9sZGVyICE9PSBpZCkpO1xuICB9O1xuXG4gIGNvbnN0IG9uT3BlbkZvbGRlciA9IChpZDogc3RyaW5nKSA9PiB7XG4gICAgc2V0T3BlbkZvbGRlcnModW5pcShvcGVuRm9sZGVycy5jb25jYXQoaWQpKSk7XG4gIH07XG5cbiAgY29uc3Qgb25DcmVhdGVOZXdGb2xkZXIgPSAocGFyZW50SWQ6IHN0cmluZykgPT4ge1xuICAgIHNldE5ld0ZvbGRlclBhcmVudElkKHBhcmVudElkKTtcbiAgfTtcblxuICBjb25zdCBvblNhdmVOZXdGb2xkZXIgPSAobmFtZTogc3RyaW5nLCBwYXJlbnRJZDogc3RyaW5nKSA9PiB7XG4gICAgb25OZXdGb2xkZXIobmFtZSwgcGFyZW50SWQpLnRoZW4oKG5ld0ZvbGRlcklkKSA9PiB7XG4gICAgICBpZiAobmV3Rm9sZGVySWQpIHtcbiAgICAgICAgc2V0TWFya2VkRm9sZGVySWQobmV3Rm9sZGVySWQpO1xuICAgICAgICBzZXRGb2N1c2VkRm9sZGVySWQobmV3Rm9sZGVySWQpO1xuICAgICAgICBzZXRPcGVuRm9sZGVycyh1bmlxKG9wZW5Gb2xkZXJzLmNvbmNhdChwYXJlbnRJZCkpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBvbkNhbmNlbE5ld0ZvbGRlciA9ICgpID0+IHtcbiAgICBzZXROZXdGb2xkZXJQYXJlbnRJZCh1bmRlZmluZWQpO1xuICB9O1xuXG4gIGNvbnN0IG9uTWFya0ZvbGRlciA9IChpZDogc3RyaW5nKSA9PiB7XG4gICAgc2V0TWFya2VkRm9sZGVySWQoaWQpO1xuICAgIHNldEZvY3VzZWRGb2xkZXJJZChpZCk7XG4gIH07XG5cbiAgY29uc3QgcGF0aHMgPSBnZXRQYXRoT2ZGb2xkZXIoZm9sZGVycywgbWFya2VkRm9sZGVySWQgfHwgJycpO1xuICBjb25zdCBjYW5BZGRGb2xkZXIgPSBlZGl0YWJsZSAmJiBwYXRocy5sZW5ndGggPCAobWF4aW11bUxldmVsc09mRm9sZGVyc0FsbG93ZWQgfHwgMSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IHJlZj17dHJlZXN0cnVjdHVyZVJlZn0+XG4gICAgICB7bGFiZWwgJiYgPFN0eWxlZExhYmVsIGh0bWxGb3I9e3Jvb3RMZXZlbElkfT57bGFiZWx9PC9TdHlsZWRMYWJlbD59XG4gICAgICA8VHJlZVN0cnVjdHVyZVN0eWxlZFdyYXBwZXIgcmVmPXt3cmFwcGVyUmVmfSBpZD17cm9vdExldmVsSWR9IGFyaWEtbGFiZWw9XCJNZW51IHRyZWVcIiByb2xlPVwidHJlZVwiIGZyYW1lZD17ZnJhbWVkfT5cbiAgICAgICAgPEZvbGRlckl0ZW1zXG4gICAgICAgICAgb25TZWxlY3RGb2xkZXI9e29uU2VsZWN0Rm9sZGVyfVxuICAgICAgICAgIGxldmVsPXsxfVxuICAgICAgICAgIGZvbGRlcnM9e2ZvbGRlcnN9XG4gICAgICAgICAgZWRpdGFibGU9e2VkaXRhYmxlfVxuICAgICAgICAgIG9uT3BlbkZvbGRlcj17b25PcGVuRm9sZGVyfVxuICAgICAgICAgIG9uQ2xvc2VGb2xkZXI9e29uQ2xvc2VGb2xkZXJ9XG4gICAgICAgICAgbmV3Rm9sZGVyUGFyZW50SWQ9e25ld0ZvbGRlclBhcmVudElkfVxuICAgICAgICAgIG9uQ3JlYXRlTmV3Rm9sZGVyPXtvbkNyZWF0ZU5ld0ZvbGRlcn1cbiAgICAgICAgICBvbkNhbmNlbE5ld0ZvbGRlcj17b25DYW5jZWxOZXdGb2xkZXJ9XG4gICAgICAgICAgb25TYXZlTmV3Rm9sZGVyPXtvblNhdmVOZXdGb2xkZXJ9XG4gICAgICAgICAgdmlzaWJsZUZvbGRlcnM9e3Zpc2libGVGb2xkZXJzfVxuICAgICAgICAgIG9wZW5Gb2xkZXJzPXtvcGVuRm9sZGVyc31cbiAgICAgICAgICBtYXJrZWRGb2xkZXJJZD17bWFya2VkRm9sZGVySWR9XG4gICAgICAgICAgb25NYXJrRm9sZGVyPXtvbk1hcmtGb2xkZXJ9XG4gICAgICAgICAgb3Blbk9uRm9sZGVyQ2xpY2s9e29wZW5PbkZvbGRlckNsaWNrfVxuICAgICAgICAgIGxvYWRpbmc9e2xvYWRpbmd9XG4gICAgICAgICAgZm9jdXNlZEZvbGRlcklkPXtmb2N1c2VkRm9sZGVySWR9XG4gICAgICAgICAgc2V0Rm9jdXNlZEZvbGRlcklkPXtzZXRGb2N1c2VkRm9sZGVySWR9XG4gICAgICAgICAgZm9sZGVyQ2hpbGQ9e2ZvbGRlckNoaWxkfVxuICAgICAgICAgIG1heGltdW1MZXZlbHNPZkZvbGRlcnNBbGxvd2VkPXttYXhpbXVtTGV2ZWxzT2ZGb2xkZXJzQWxsb3dlZH1cbiAgICAgICAgLz5cbiAgICAgIDwvVHJlZVN0cnVjdHVyZVN0eWxlZFdyYXBwZXI+XG4gICAgICB7ZWRpdGFibGUgJiYgKFxuICAgICAgICA8QWRkRm9sZGVyV3JhcHBlcj5cbiAgICAgICAgICA8VG9vbHRpcFxuICAgICAgICAgICAgdG9vbHRpcD17XG4gICAgICAgICAgICAgIGNhbkFkZEZvbGRlclxuICAgICAgICAgICAgICAgID8gdCgnbXlOZGxhLm5ld0ZvbGRlclVuZGVyJywge1xuICAgICAgICAgICAgICAgICAgICBmb2xkZXJOYW1lOiBnZXRGb2xkZXJOYW1lKGZvbGRlcnMsIG1hcmtlZEZvbGRlcklkKSxcbiAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgOiB0KCd0cmVlU3RydWN0dXJlLm1heEZvbGRlcnNBbHJlYWR5QWRkZWQnKVxuICAgICAgICAgICAgfT5cbiAgICAgICAgICAgIDxBZGRCdXR0b25cbiAgICAgICAgICAgICAgZGlzYWJsZWQ9eyFjYW5BZGRGb2xkZXJ9XG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9e3QoJ215TmRsYS5uZXdGb2xkZXInKX1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldE5ld0ZvbGRlclBhcmVudElkKG1hcmtlZEZvbGRlcklkKTtcbiAgICAgICAgICAgICAgfX0+XG4gICAgICAgICAgICAgIHt0KCdteU5kbGEubmV3Rm9sZGVyJyl9XG4gICAgICAgICAgICA8L0FkZEJ1dHRvbj5cbiAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgIDwvQWRkRm9sZGVyV3JhcHBlcj5cbiAgICAgICl9XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBUcmVlU3RydWN0dXJlO1xuIl19 */"));
|
|
78
68
|
|
|
79
69
|
var TreeStructure = function TreeStructure(_ref) {
|
|
80
|
-
var
|
|
70
|
+
var _folders$;
|
|
81
71
|
|
|
82
|
-
var
|
|
72
|
+
var folders = _ref.folders,
|
|
83
73
|
label = _ref.label,
|
|
84
74
|
editable = _ref.editable,
|
|
85
75
|
loading = _ref.loading,
|
|
86
76
|
onNewFolder = _ref.onNewFolder,
|
|
77
|
+
onSelectFolder = _ref.onSelectFolder,
|
|
87
78
|
openOnFolderClick = _ref.openOnFolderClick,
|
|
88
79
|
framed = _ref.framed,
|
|
89
80
|
folderIdMarkedByDefault = _ref.folderIdMarkedByDefault,
|
|
90
81
|
defaultOpenFolders = _ref.defaultOpenFolders,
|
|
91
82
|
folderChild = _ref.folderChild,
|
|
92
|
-
|
|
83
|
+
_ref$maximumLevelsOfF = _ref.maximumLevelsOfFoldersAllowed,
|
|
84
|
+
maximumLevelsOfFoldersAllowed = _ref$maximumLevelsOfF === void 0 ? MAX_LEVEL_FOR_FOLDERS : _ref$maximumLevelsOfF;
|
|
93
85
|
|
|
94
86
|
var _useTranslation = (0, _reactI18next.useTranslation)(),
|
|
95
87
|
t = _useTranslation.t;
|
|
96
88
|
|
|
97
89
|
var _useState = (0, _react.useState)(),
|
|
98
90
|
_useState2 = _slicedToArray(_useState, 2),
|
|
99
|
-
|
|
100
|
-
|
|
91
|
+
newFolderParentId = _useState2[0],
|
|
92
|
+
setNewFolderParentId = _useState2[1];
|
|
101
93
|
|
|
102
94
|
var _useState3 = (0, _react.useState)(defaultOpenFolders || []),
|
|
103
95
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
@@ -109,17 +101,19 @@ var TreeStructure = function TreeStructure(_ref) {
|
|
|
109
101
|
focusedFolderId = _useState6[0],
|
|
110
102
|
setFocusedFolderId = _useState6[1];
|
|
111
103
|
|
|
112
|
-
var _useState7 = (0, _react.useState)(folderIdMarkedByDefault || ((
|
|
104
|
+
var _useState7 = (0, _react.useState)(folderIdMarkedByDefault || ((_folders$ = folders[0]) === null || _folders$ === void 0 ? void 0 : _folders$.id)),
|
|
113
105
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
114
106
|
markedFolderId = _useState8[0],
|
|
115
107
|
setMarkedFolderId = _useState8[1];
|
|
116
108
|
|
|
117
109
|
var treestructureRef = (0, _react.useRef)(null);
|
|
118
110
|
var wrapperRef = (0, _react.useRef)(null);
|
|
119
|
-
var rootLevelId =
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
111
|
+
var rootLevelId = 'treestructure-root';
|
|
112
|
+
var visibleFolders = (0, _react.useMemo)(function () {
|
|
113
|
+
return (0, _helperFunctions.flattenFolders)(folders, openFolders).map(function (folder) {
|
|
114
|
+
return folder.id;
|
|
115
|
+
});
|
|
116
|
+
}, [folders, openFolders]);
|
|
123
117
|
(0, _react.useEffect)(function () {
|
|
124
118
|
if (defaultOpenFolders) {
|
|
125
119
|
setOpenFolders(function (prev) {
|
|
@@ -129,59 +123,55 @@ var TreeStructure = function TreeStructure(_ref) {
|
|
|
129
123
|
}, [defaultOpenFolders]);
|
|
130
124
|
(0, _react.useEffect)(function () {
|
|
131
125
|
if (!loading) {
|
|
132
|
-
|
|
126
|
+
setNewFolderParentId(undefined);
|
|
133
127
|
}
|
|
134
128
|
}, [loading]);
|
|
135
129
|
|
|
136
|
-
var
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
if (
|
|
130
|
+
var onCloseFolder = function onCloseFolder(id) {
|
|
131
|
+
// Did we just closed a folder with a marked folder inside it?
|
|
132
|
+
// If so, we need to mark the folder we just closed.
|
|
133
|
+
if (markedFolderId) {
|
|
134
|
+
var closingFolderPath = (0, _helperFunctions.getPathOfFolder)(folders, id);
|
|
135
|
+
var markedFolderPath = (0, _helperFunctions.getPathOfFolder)(folders, markedFolderId);
|
|
136
|
+
var markedFolderIsSubPath = closingFolderPath.every(function (folderId, _index) {
|
|
137
|
+
return markedFolderPath[_index] === folderId;
|
|
138
|
+
});
|
|
139
|
+
|
|
140
|
+
if (markedFolderIsSubPath) {
|
|
141
|
+
if (onSelectFolder) {
|
|
148
142
|
setMarkedFolderId(closingFolderPath[closingFolderPath.length - 1]);
|
|
143
|
+
onSelectFolder(closingFolderPath[closingFolderPath.length - 1]);
|
|
144
|
+
} else {
|
|
145
|
+
setFocusedFolderId(closingFolderPath[closingFolderPath.length - 1]);
|
|
149
146
|
}
|
|
150
147
|
}
|
|
151
|
-
|
|
152
|
-
setOpenFolders(openFolders.filter(function (folder) {
|
|
153
|
-
return folder !== id;
|
|
154
|
-
}));
|
|
155
|
-
} else {
|
|
156
|
-
setOpenFolders((0, _lodash.uniq)([].concat(_toConsumableArray(openFolders), [id])));
|
|
157
148
|
}
|
|
149
|
+
|
|
150
|
+
setOpenFolders(openFolders.filter(function (folder) {
|
|
151
|
+
return folder !== id;
|
|
152
|
+
}));
|
|
158
153
|
};
|
|
159
154
|
|
|
160
|
-
var
|
|
161
|
-
|
|
155
|
+
var onOpenFolder = function onOpenFolder(id) {
|
|
156
|
+
setOpenFolders((0, _lodash.uniq)(openFolders.concat(id)));
|
|
162
157
|
};
|
|
163
158
|
|
|
164
|
-
var
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
setOpenFolders((0, _lodash.uniq)([].concat(_toConsumableArray(openFolders), [newFolder.parentId])));
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
});
|
|
180
|
-
}
|
|
159
|
+
var onCreateNewFolder = function onCreateNewFolder(parentId) {
|
|
160
|
+
setNewFolderParentId(parentId);
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
var onSaveNewFolder = function onSaveNewFolder(name, parentId) {
|
|
164
|
+
onNewFolder(name, parentId).then(function (newFolderId) {
|
|
165
|
+
if (newFolderId) {
|
|
166
|
+
setMarkedFolderId(newFolderId);
|
|
167
|
+
setFocusedFolderId(newFolderId);
|
|
168
|
+
setOpenFolders((0, _lodash.uniq)(openFolders.concat(parentId)));
|
|
169
|
+
}
|
|
170
|
+
});
|
|
181
171
|
};
|
|
182
172
|
|
|
183
173
|
var onCancelNewFolder = function onCancelNewFolder() {
|
|
184
|
-
|
|
174
|
+
setNewFolderParentId(undefined);
|
|
185
175
|
};
|
|
186
176
|
|
|
187
177
|
var onMarkFolder = function onMarkFolder(id) {
|
|
@@ -189,24 +179,10 @@ var TreeStructure = function TreeStructure(_ref) {
|
|
|
189
179
|
setFocusedFolderId(id);
|
|
190
180
|
};
|
|
191
181
|
|
|
192
|
-
var paths = (0, _helperFunctions.getPathOfFolder)(
|
|
182
|
+
var paths = (0, _helperFunctions.getPathOfFolder)(folders, markedFolderId || '');
|
|
193
183
|
var canAddFolder = editable && paths.length < (maximumLevelsOfFoldersAllowed || 1);
|
|
194
184
|
return (0, _core2.jsx)("div", {
|
|
195
|
-
ref: treestructureRef
|
|
196
|
-
onKeyDown: function onKeyDown(e) {
|
|
197
|
-
var _wrapperRef$current;
|
|
198
|
-
|
|
199
|
-
if (((_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.contains(document.activeElement)) && _keyboardNavigation.KEYBOARD_KEYS_OF_INTEREST.includes(e.key)) {
|
|
200
|
-
(0, _keyboardNavigation["default"])({
|
|
201
|
-
e: e,
|
|
202
|
-
data: data,
|
|
203
|
-
setFocusedFolderId: setFocusedFolderId,
|
|
204
|
-
focusedFolderId: focusedFolderId,
|
|
205
|
-
onToggleOpen: onToggleOpen,
|
|
206
|
-
openFolders: openFolders
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
}
|
|
185
|
+
ref: treestructureRef
|
|
210
186
|
}, label && (0, _core2.jsx)(StyledLabel, {
|
|
211
187
|
htmlFor: rootLevelId
|
|
212
188
|
}, label), (0, _core2.jsx)(_TreeStructureWrapper["default"], {
|
|
@@ -216,14 +192,17 @@ var TreeStructure = function TreeStructure(_ref) {
|
|
|
216
192
|
role: "tree",
|
|
217
193
|
framed: framed
|
|
218
194
|
}, (0, _core2.jsx)(_FolderItems["default"], {
|
|
219
|
-
|
|
220
|
-
|
|
195
|
+
onSelectFolder: onSelectFolder,
|
|
196
|
+
level: 1,
|
|
197
|
+
folders: folders,
|
|
221
198
|
editable: editable,
|
|
222
|
-
|
|
223
|
-
|
|
199
|
+
onOpenFolder: onOpenFolder,
|
|
200
|
+
onCloseFolder: onCloseFolder,
|
|
201
|
+
newFolderParentId: newFolderParentId,
|
|
224
202
|
onCreateNewFolder: onCreateNewFolder,
|
|
225
203
|
onCancelNewFolder: onCancelNewFolder,
|
|
226
204
|
onSaveNewFolder: onSaveNewFolder,
|
|
205
|
+
visibleFolders: visibleFolders,
|
|
227
206
|
openFolders: openFolders,
|
|
228
207
|
markedFolderId: markedFolderId,
|
|
229
208
|
onMarkFolder: onMarkFolder,
|
|
@@ -231,28 +210,20 @@ var TreeStructure = function TreeStructure(_ref) {
|
|
|
231
210
|
loading: loading,
|
|
232
211
|
focusedFolderId: focusedFolderId,
|
|
233
212
|
setFocusedFolderId: setFocusedFolderId,
|
|
234
|
-
firstLevel: true,
|
|
235
213
|
folderChild: folderChild,
|
|
236
214
|
maximumLevelsOfFoldersAllowed: maximumLevelsOfFoldersAllowed
|
|
237
215
|
})), editable && (0, _core2.jsx)(AddFolderWrapper, null, (0, _core2.jsx)(_tooltip["default"], {
|
|
238
216
|
tooltip: canAddFolder ? t('myNdla.newFolderUnder', {
|
|
239
|
-
folderName: (0, _helperFunctions.getFolderName)(
|
|
240
|
-
}) : t('
|
|
217
|
+
folderName: (0, _helperFunctions.getFolderName)(folders, markedFolderId)
|
|
218
|
+
}) : t('treeStructure.maxFoldersAlreadyAdded')
|
|
241
219
|
}, (0, _core2.jsx)(_button.AddButton, {
|
|
242
220
|
disabled: !canAddFolder,
|
|
243
221
|
"aria-label": t('myNdla.newFolder'),
|
|
244
222
|
onClick: function onClick() {
|
|
245
|
-
|
|
246
|
-
setNewFolder({
|
|
247
|
-
idPaths: idPaths,
|
|
248
|
-
parentId: paths[paths.length - 1]
|
|
249
|
-
});
|
|
223
|
+
setNewFolderParentId(markedFolderId);
|
|
250
224
|
}
|
|
251
225
|
}, t('myNdla.newFolder')))));
|
|
252
226
|
};
|
|
253
227
|
|
|
254
|
-
TreeStructure.defaultProps = {
|
|
255
|
-
maximumLevelsOfFoldersAllowed: MAX_LEVEL_FOR_FOLDERS
|
|
256
|
-
};
|
|
257
228
|
var _default = TreeStructure;
|
|
258
229
|
exports["default"] = _default;
|
|
@@ -9,36 +9,27 @@ import React, { ReactNode } from 'react';
|
|
|
9
9
|
export interface FolderStructureProps {
|
|
10
10
|
id: string;
|
|
11
11
|
name: string;
|
|
12
|
-
|
|
13
|
-
data?: FolderStructureProps[];
|
|
12
|
+
subfolders: FolderStructureProps[];
|
|
14
13
|
isFavorite?: boolean;
|
|
15
14
|
status?: string;
|
|
16
15
|
openAsDefault?: boolean;
|
|
17
|
-
url?: string;
|
|
18
16
|
icon?: ReactNode;
|
|
19
17
|
}
|
|
20
|
-
export interface NewFolderProps {
|
|
21
|
-
parentId?: string;
|
|
22
|
-
idPaths: number[];
|
|
23
|
-
}
|
|
24
18
|
interface CommonFolderProps {
|
|
25
|
-
data: FolderStructureProps[];
|
|
26
19
|
editable?: boolean;
|
|
27
20
|
loading?: boolean;
|
|
28
21
|
openOnFolderClick?: boolean;
|
|
22
|
+
onSelectFolder?: (id: string) => void;
|
|
29
23
|
}
|
|
30
24
|
export interface TreeStructureProps extends CommonFolderProps {
|
|
25
|
+
folders: FolderStructureProps[];
|
|
31
26
|
framed?: boolean;
|
|
32
27
|
label?: string;
|
|
33
28
|
folderIdMarkedByDefault?: string;
|
|
34
|
-
onNewFolder: (
|
|
35
|
-
value: string;
|
|
36
|
-
parentId?: string;
|
|
37
|
-
idPaths: number[];
|
|
38
|
-
}) => Promise<string>;
|
|
29
|
+
onNewFolder: (name: string, parentId: string) => Promise<string>;
|
|
39
30
|
defaultOpenFolders?: string[];
|
|
40
31
|
folderChild?: FolderChildFuncType;
|
|
41
|
-
maximumLevelsOfFoldersAllowed
|
|
32
|
+
maximumLevelsOfFoldersAllowed?: number;
|
|
42
33
|
}
|
|
43
34
|
export declare type onCreateNewFolderProp = ({ idPaths, parentId, }: {
|
|
44
35
|
idPaths: number[];
|
|
@@ -48,18 +39,20 @@ export declare type SetOpenFolderProp = React.Dispatch<React.SetStateAction<stri
|
|
|
48
39
|
export declare type SetFocusedFolderId = React.Dispatch<React.SetStateAction<string | undefined>>;
|
|
49
40
|
export declare type FolderChildFuncType = (id: string, tabIndex: number) => ReactNode;
|
|
50
41
|
export interface FolderItemsProps extends CommonFolderProps {
|
|
51
|
-
|
|
52
|
-
|
|
42
|
+
folders: FolderStructureProps[];
|
|
43
|
+
onCloseFolder: (id: string) => void;
|
|
44
|
+
onOpenFolder: (id: string) => void;
|
|
45
|
+
onSaveNewFolder: (name: string, parentId: string) => void;
|
|
53
46
|
onCancelNewFolder: () => void;
|
|
54
|
-
onCreateNewFolder:
|
|
55
|
-
|
|
47
|
+
onCreateNewFolder: (parentId: string) => void;
|
|
48
|
+
newFolderParentId: string | undefined;
|
|
49
|
+
visibleFolders: string[];
|
|
56
50
|
openFolders: string[];
|
|
57
51
|
markedFolderId?: string;
|
|
58
52
|
onMarkFolder: (id: string) => void;
|
|
59
|
-
|
|
53
|
+
level: number;
|
|
60
54
|
focusedFolderId: string | undefined;
|
|
61
55
|
setFocusedFolderId: SetFocusedFolderId;
|
|
62
|
-
firstLevel: boolean;
|
|
63
56
|
keyNavigationFocusIsCreateFolderButton?: boolean;
|
|
64
57
|
icon?: ReactNode;
|
|
65
58
|
folderChild?: FolderChildFuncType;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2022-present, NDLA.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the GPLv3 license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
import { KeyboardEvent } from 'react';
|
|
9
|
+
export declare const arrowNavigation: (e: KeyboardEvent<HTMLElement>, id: string, visibleFolders: string[], setFocusedFolderId: (id: string) => void, onOpen: (id: string) => void, onClose: (id: string) => void) => void;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.arrowNavigation = void 0;
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Copyright (c) 2022-present, NDLA.
|
|
10
|
+
*
|
|
11
|
+
* This source code is licensed under the GPLv3 license found in the
|
|
12
|
+
* LICENSE file in the root directory of this source tree.
|
|
13
|
+
*
|
|
14
|
+
*/
|
|
15
|
+
var navigateVertical = function navigateVertical(visibleFolders, folderId, setFocusedFolderId, direction) {
|
|
16
|
+
var currentIndex = visibleFolders.findIndex(function (id) {
|
|
17
|
+
return id === folderId;
|
|
18
|
+
});
|
|
19
|
+
var target = visibleFolders[currentIndex + direction];
|
|
20
|
+
|
|
21
|
+
if (target !== undefined) {
|
|
22
|
+
setFocusedFolderId(target);
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
var arrowKeys = ['ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight'];
|
|
27
|
+
|
|
28
|
+
var arrowNavigation = function arrowNavigation(e, id, visibleFolders, setFocusedFolderId, onOpen, onClose) {
|
|
29
|
+
if (!arrowKeys.includes(e.key)) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
e.preventDefault();
|
|
34
|
+
e.stopPropagation();
|
|
35
|
+
|
|
36
|
+
switch (e.key) {
|
|
37
|
+
case 'ArrowUp':
|
|
38
|
+
return navigateVertical(visibleFolders, id, setFocusedFolderId, -1);
|
|
39
|
+
|
|
40
|
+
case 'ArrowDown':
|
|
41
|
+
return navigateVertical(visibleFolders, id, setFocusedFolderId, 1);
|
|
42
|
+
|
|
43
|
+
case 'ArrowLeft':
|
|
44
|
+
return onClose(id);
|
|
45
|
+
|
|
46
|
+
case 'ArrowRight':
|
|
47
|
+
return onOpen(id);
|
|
48
|
+
|
|
49
|
+
default:
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
exports.arrowNavigation = arrowNavigation;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { FolderStructureProps } from './TreeStructure.types';
|
|
2
|
-
declare const getPathOfFolder: (data: FolderStructureProps[], findId: string) => string[];
|
|
3
|
-
declare const
|
|
4
|
-
declare const
|
|
5
|
-
export { getPathOfFolder, getIdPathsOfFolder, getFolderName };
|
|
2
|
+
export declare const getPathOfFolder: (data: FolderStructureProps[], findId: string) => string[];
|
|
3
|
+
export declare const getFolderName: (data: FolderStructureProps[], findId: string | undefined) => string | undefined;
|
|
4
|
+
export declare const flattenFolders: (folders: FolderStructureProps[], openFolders?: string[] | undefined) => FolderStructureProps[];
|
|
@@ -3,7 +3,17 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.flattenFolders = exports.getFolderName = exports.getPathOfFolder = void 0;
|
|
7
|
+
|
|
8
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
9
|
+
|
|
10
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
11
|
+
|
|
12
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
|
+
|
|
14
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
15
|
+
|
|
16
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
7
17
|
|
|
8
18
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
9
19
|
|
|
@@ -20,20 +30,20 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
20
30
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
21
31
|
|
|
22
32
|
var getPathOfFolder = function getPathOfFolder(data, findId) {
|
|
23
|
-
var paths = function paths(
|
|
24
|
-
var _iterator = _createForOfIteratorHelper(
|
|
33
|
+
var paths = function paths(folders, path) {
|
|
34
|
+
var _iterator = _createForOfIteratorHelper(folders),
|
|
25
35
|
_step;
|
|
26
36
|
|
|
27
37
|
try {
|
|
28
38
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
29
39
|
var _step$value = _step.value,
|
|
30
40
|
id = _step$value.id,
|
|
31
|
-
|
|
41
|
+
subfolders = _step$value.subfolders;
|
|
32
42
|
|
|
33
43
|
if (id === findId) {
|
|
34
44
|
return [].concat(_toConsumableArray(path), [id]);
|
|
35
|
-
} else if (
|
|
36
|
-
return paths(
|
|
45
|
+
} else if (subfolders === null || subfolders === void 0 ? void 0 : subfolders.length) {
|
|
46
|
+
return paths(subfolders, [].concat(_toConsumableArray(path), [id]));
|
|
37
47
|
}
|
|
38
48
|
}
|
|
39
49
|
} catch (err) {
|
|
@@ -50,28 +60,6 @@ var getPathOfFolder = function getPathOfFolder(data, findId) {
|
|
|
50
60
|
|
|
51
61
|
exports.getPathOfFolder = getPathOfFolder;
|
|
52
62
|
|
|
53
|
-
var getIdPathsOfFolder = function getIdPathsOfFolder(data, findId) {
|
|
54
|
-
var currentPath = [];
|
|
55
|
-
|
|
56
|
-
var paths = function paths(dataChildren, path) {
|
|
57
|
-
dataChildren.forEach(function (_ref, _index) {
|
|
58
|
-
var id = _ref.id,
|
|
59
|
-
dataChildrenSub = _ref.data;
|
|
60
|
-
|
|
61
|
-
if (id === findId) {
|
|
62
|
-
currentPath = [].concat(_toConsumableArray(path), [_index]);
|
|
63
|
-
} else if (dataChildrenSub === null || dataChildrenSub === void 0 ? void 0 : dataChildrenSub.length) {
|
|
64
|
-
paths(dataChildrenSub, [].concat(_toConsumableArray(path), [_index]));
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
paths(data, []);
|
|
70
|
-
return currentPath;
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
exports.getIdPathsOfFolder = getIdPathsOfFolder;
|
|
74
|
-
|
|
75
63
|
var getFolderName = function getFolderName(data, findId) {
|
|
76
64
|
if (!findId) {
|
|
77
65
|
return undefined;
|
|
@@ -80,16 +68,16 @@ var getFolderName = function getFolderName(data, findId) {
|
|
|
80
68
|
var folderName;
|
|
81
69
|
|
|
82
70
|
var paths = function paths(dataChildren) {
|
|
83
|
-
dataChildren.some(function (
|
|
84
|
-
var id =
|
|
85
|
-
name =
|
|
86
|
-
|
|
71
|
+
dataChildren.some(function (_ref, _index) {
|
|
72
|
+
var id = _ref.id,
|
|
73
|
+
name = _ref.name,
|
|
74
|
+
subfolders = _ref.subfolders;
|
|
87
75
|
|
|
88
76
|
if (id === findId) {
|
|
89
77
|
folderName = name;
|
|
90
78
|
return true;
|
|
91
|
-
} else if (
|
|
92
|
-
return paths(
|
|
79
|
+
} else if (subfolders === null || subfolders === void 0 ? void 0 : subfolders.length) {
|
|
80
|
+
return paths(subfolders);
|
|
93
81
|
}
|
|
94
82
|
|
|
95
83
|
return false;
|
|
@@ -100,4 +88,26 @@ var getFolderName = function getFolderName(data, findId) {
|
|
|
100
88
|
return folderName;
|
|
101
89
|
};
|
|
102
90
|
|
|
103
|
-
exports.getFolderName = getFolderName;
|
|
91
|
+
exports.getFolderName = getFolderName;
|
|
92
|
+
|
|
93
|
+
var flattenFolders = function flattenFolders(folders, openFolders) {
|
|
94
|
+
return folders.reduce(function (acc, _ref2) {
|
|
95
|
+
var subfolders = _ref2.subfolders,
|
|
96
|
+
id = _ref2.id,
|
|
97
|
+
rest = _objectWithoutProperties(_ref2, ["subfolders", "id"]);
|
|
98
|
+
|
|
99
|
+
if (!subfolders || openFolders && !openFolders.includes(id)) {
|
|
100
|
+
return acc.concat(_objectSpread({
|
|
101
|
+
subfolders: subfolders,
|
|
102
|
+
id: id
|
|
103
|
+
}, rest));
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
return acc.concat(_objectSpread({
|
|
107
|
+
subfolders: subfolders,
|
|
108
|
+
id: id
|
|
109
|
+
}, rest), flattenFolders(subfolders, openFolders));
|
|
110
|
+
}, []);
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
exports.flattenFolders = flattenFolders;
|
package/lib/index.d.ts
CHANGED
|
@@ -34,7 +34,6 @@ export type { FigureType } from './Figure';
|
|
|
34
34
|
export { LanguageSelector } from './LanguageSelector';
|
|
35
35
|
export { LearningPathWrapper, LearningPathContent, LearningPathMenu, LearningPathSticky, LearningPathInformation, LearningPathStickySibling, LearningPathStickyPlaceholder, LearningPathLastStepNavigation, LearningPathMobileStepInfo, LearningPathMobileHeader, } from './LearningPaths';
|
|
36
36
|
export { Translation, TranslationLine, TranslationBox } from './Translation';
|
|
37
|
-
export { default as Spinner } from './Spinner';
|
|
38
37
|
export { default as SearchResultSleeve } from './Search/SearchResultSleeve';
|
|
39
38
|
export { default as ContentTypeResult } from './Search/ContentTypeResult';
|
|
40
39
|
export { SearchFieldForm } from './Search/SearchFieldForm';
|