@bigbinary/neeto-folders-frontend 2.0.26 → 2.0.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.
package/dist/cjs/hooks.js CHANGED
@@ -1,10 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var useFolderActions = require('../useFolderActions-hz2Q6yci.js');
3
+ var useFolderActions = require('../useFolderActions-4NdTAEfb.js');
4
4
  require('@babel/runtime/helpers/defineProperty');
5
5
  require('i18next');
6
6
  require('@bigbinary/neeto-cist');
7
- require('../internal-D5q2PCbM.js');
7
+ require('../internal-DKHdgJas.js');
8
+ require('@bigbinary/neetoui/Toastr');
8
9
  require('ramda');
9
10
  require('react-router-dom');
10
11
  require('zustand/shallow');
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"hooks.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
package/dist/cjs/utils.js CHANGED
@@ -1,10 +1,11 @@
1
1
  'use strict';
2
2
 
3
3
  require('ramda');
4
- var utils = require('../index-DshpXNOY.js');
4
+ var utils = require('../index-DxzvHr2u.js');
5
5
  require('@babel/runtime/helpers/defineProperty');
6
6
  require('@bigbinary/neeto-cist');
7
- require('../internal-D5q2PCbM.js');
7
+ require('../internal-DKHdgJas.js');
8
+ require('@bigbinary/neetoui/Toastr');
8
9
  require('react-router-dom');
9
10
 
10
11
 
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
1
+ {"version":3,"file":"utils.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
@@ -7,11 +7,12 @@ import { buildUrl, showThumbsUpToastr } from '@bigbinary/neeto-commons-frontend/
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-C247TYkG.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-DBZKRr8d.js';
11
11
  import { QUERY_KEYS } from './constants.js';
12
- import { p as pathToFolder, t as treeToMap, m as measureDepth, a as mapToTree, b as mapToSortedTree } from './index-ohGlXbZu.js';
13
- import { a as isActiveFolder, g as getActiveFolderId, i as isArray, m as mapObj } from './internal-33v6k2oX.js';
12
+ import { p as pathToFolder, t as treeToMap, m as measureDepth, a as mapToTree, b as mapToSortedTree } from './index-CfSLBCVx.js';
13
+ import { a as isActiveFolder, g as getActiveFolderId, t as toastApiError, i as isArray, m as mapObj } from './internal-DUPKoXC_.js';
14
14
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
15
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
15
16
  import Pane from '@bigbinary/neetoui/Pane';
16
17
  import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
17
18
  import _regeneratorRuntime from '@babel/runtime/regenerator';
@@ -23,7 +24,6 @@ import ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';
23
24
  import Form from '@bigbinary/neetoui/formik/Form';
24
25
  import { t as t$1 } from 'i18next';
25
26
  import { object, string } from 'yup';
26
- import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
27
27
  import Switch from '@bigbinary/neetoui/formik/Switch';
28
28
  import Textarea from '@bigbinary/neetoui/formik/Textarea';
29
29
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
@@ -145,7 +145,7 @@ var FORM_VALIDATION_SCHEMA = object().shape({
145
145
  }))
146
146
  });
147
147
 
148
- var _excluded$6 = ["type"];
148
+ var _excluded$7 = ["type"];
149
149
  function ownKeys$h(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
150
150
  function _objectSpread$h(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$h(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$h(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
151
151
  var typeComponentMap = {
@@ -158,7 +158,7 @@ var ExtraAttributes = function ExtraAttributes(_ref) {
158
158
  if (!Array.isArray(attributes)) return null;
159
159
  return attributes.map(function (_ref2) {
160
160
  var type = _ref2.type,
161
- rest = _objectWithoutProperties(_ref2, _excluded$6);
161
+ rest = _objectWithoutProperties(_ref2, _excluded$7);
162
162
  var Component = typeComponentMap[type];
163
163
  if (!Component) return null;
164
164
  return /*#__PURE__*/createElement(Component, _objectSpread$h(_objectSpread$h({}, rest), {}, {
@@ -360,7 +360,7 @@ var AddEditPane = function AddEditPane(_ref) {
360
360
 
361
361
  var REORDER_TREE_INDENT_WIDTH = 30;
362
362
 
363
- var _excluded$5 = ["icon", "itemLabel", "folder", "folderLabel", "depth", "className", "onClick"];
363
+ var _excluded$6 = ["icon", "itemLabel", "folder", "folderLabel", "depth", "className", "onClick"];
364
364
  function ownKeys$g(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
365
365
  function _objectSpread$g(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$g(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$g(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
366
366
  var Node$1 = function Node(_ref, ref) {
@@ -373,7 +373,7 @@ var Node$1 = function Node(_ref, ref) {
373
373
  depth = _ref.depth,
374
374
  className = _ref.className,
375
375
  onClick = _ref.onClick,
376
- rest = _objectWithoutProperties(_ref, _excluded$5);
376
+ rest = _objectWithoutProperties(_ref, _excluded$6);
377
377
  var metaInfo = [];
378
378
  var childCount = (_folder$children$leng = (_folder$children = folder.children) === null || _folder$children === void 0 ? void 0 : _folder$children.length) !== null && _folder$children$leng !== void 0 ? _folder$children$leng : 0;
379
379
  childCount > 0 && metaInfo.push("".concat(childCount, " ").concat(folderLabel).toLowerCase());
@@ -416,7 +416,7 @@ var Node$1 = function Node(_ref, ref) {
416
416
  };
417
417
  var Node$2 = /*#__PURE__*/forwardRef(Node$1);
418
418
 
419
- var _excluded$4 = ["folder", "item", "depth", "maxDepth", "disabled", "config"];
419
+ var _excluded$5 = ["folder", "item", "depth", "maxDepth", "disabled", "config"];
420
420
  function ownKeys$f(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
421
421
  function _objectSpread$f(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$f(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$f(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
422
422
  var _SelectableNode = function SelectableNode(_ref) {
@@ -424,11 +424,11 @@ var _SelectableNode = function SelectableNode(_ref) {
424
424
  var folder = _ref.folder,
425
425
  item = _ref.item,
426
426
  _ref$depth = _ref.depth,
427
- depth = _ref$depth === void 0 ? 0 : _ref$depth,
427
+ depth = _ref$depth === void 0 ? 1 : _ref$depth,
428
428
  maxDepth = _ref.maxDepth,
429
429
  disabled = _ref.disabled,
430
430
  config = _ref.config,
431
- rest = _objectWithoutProperties(_ref, _excluded$4);
431
+ rest = _objectWithoutProperties(_ref, _excluded$5);
432
432
  var selection = rest.selection,
433
433
  onSelect = rest.onSelect;
434
434
  var _useTranslation = useTranslation(config),
@@ -479,8 +479,17 @@ var _SelectableNode = function SelectableNode(_ref) {
479
479
 
480
480
  function ownKeys$e(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
481
481
  function _objectSpread$e(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$e(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$e(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
482
+ var createTree = function createTree(folders, isRootEnabled) {
483
+ return isRootEnabled ? [{
484
+ name: "/",
485
+ id: null,
486
+ children: folders
487
+ }] : folders;
488
+ };
482
489
  var PaneBody = function PaneBody(_ref) {
483
- var item = _ref.item,
490
+ var _ref$isRootEnabled = _ref.isRootEnabled,
491
+ isRootEnabled = _ref$isRootEnabled === void 0 ? true : _ref$isRootEnabled,
492
+ item = _ref.item,
484
493
  config = _ref.config,
485
494
  submitButtonProps = _ref.submitButtonProps,
486
495
  cancelButtonProps = _ref.cancelButtonProps,
@@ -514,20 +523,19 @@ var PaneBody = function PaneBody(_ref) {
514
523
  }, shallow),
515
524
  type = _useFolderStore2.type;
516
525
  var tree = useMemo(function () {
517
- return [{
518
- name: "/",
519
- id: null,
520
- children: folders
521
- }];
522
- }, [folders]);
523
- var folderDepth = 0;
526
+ return createTree(folders, isRootEnabled);
527
+ }, [folders, isRootEnabled]);
528
+ var maxDepth = Number.POSITIVE_INFINITY;
524
529
  if (item) {
525
530
  // If item is a folder, measure the current depth from current folder to longest leaf.
526
531
  var foldersMap = treeToMap(folders);
527
532
  var folder = foldersMap[item.id];
528
- if (folder) folderDepth = measureDepth(folder);
533
+ if (folder) {
534
+ var folderDepth = measureDepth(folder) + 1; // +1 for own depth;
535
+ maxDepth = config.maxDepth - folderDepth;
536
+ if (isRootEnabled) maxDepth += 1; // +1 for root folder.
537
+ }
529
538
  }
530
- var maxDepth = config.maxDepth - folderDepth + 1;
531
539
  var onAddFolder = function onAddFolder() {
532
540
  setFolderState({
533
541
  paneState: {
@@ -582,14 +590,14 @@ var PaneBody = function PaneBody(_ref) {
582
590
  children: [/*#__PURE__*/jsxs("div", {
583
591
  className: "flex flex-1 space-x-2",
584
592
  children: [/*#__PURE__*/jsx(Button, _objectSpread$e(_objectSpread$e({
585
- disabled: selection === parent,
586
593
  label: t("common.save"),
587
594
  style: "primary",
588
595
  onClick: function onClick() {
589
596
  return onSubmit(selection);
590
597
  }
591
598
  }, submitButtonProps), {}, {
592
- "data-cy": "save-changes-button"
599
+ "data-cy": "save-changes-button",
600
+ disabled: selection === parent || (submitButtonProps === null || submitButtonProps === void 0 ? void 0 : submitButtonProps.disabled)
593
601
  })), /*#__PURE__*/jsx(Button, _objectSpread$e(_objectSpread$e({
594
602
  label: t("common.cancel"),
595
603
  style: "text",
@@ -619,6 +627,7 @@ var MoveFolderPane = function MoveFolderPane(_ref) {
619
627
  }, shallow),
620
628
  item = _useFolderStore.item;
621
629
  var _useUpdateFolder = useUpdateFolder(config),
630
+ isPending = _useUpdateFolder.isPending,
622
631
  updateFolder = _useUpdateFolder.mutate;
623
632
  var onSaveSelection = function onSaveSelection(parentId) {
624
633
  var payload = {
@@ -627,24 +636,32 @@ var MoveFolderPane = function MoveFolderPane(_ref) {
627
636
  };
628
637
  updateFolder({
629
638
  id: item.id,
630
- payload: payload
639
+ payload: payload,
640
+ config: {
641
+ showToastr: false
642
+ }
631
643
  }, {
632
644
  onSuccess: function onSuccess() {
633
645
  var _config$onUpdateSucce;
634
646
  onClose();
635
647
  (_config$onUpdateSucce = config.onUpdateSuccess) === null || _config$onUpdateSucce === void 0 || _config$onUpdateSucce.call(config);
636
- }
648
+ },
649
+ onError: toastApiError
637
650
  });
638
651
  };
639
652
  return /*#__PURE__*/jsx(PaneBody, {
640
653
  config: config,
641
654
  item: item,
642
655
  onClose: onClose,
656
+ submitButtonProps: {
657
+ loading: isPending,
658
+ disabled: isPending
659
+ },
643
660
  onSubmit: onSaveSelection
644
661
  });
645
662
  };
646
663
 
647
- var _excluded$3 = ["folder", "depth", "config", "folderLabel", "itemLabel"];
664
+ var _excluded$4 = ["folder", "depth", "config", "folderLabel", "itemLabel"];
648
665
  function ownKeys$d(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
649
666
  function _objectSpread$d(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$d(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$d(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
650
667
  var _DraggableNode$1 = function DraggableNode(_ref) {
@@ -654,7 +671,7 @@ var _DraggableNode$1 = function DraggableNode(_ref) {
654
671
  config = _ref.config,
655
672
  folderLabel = _ref.folderLabel,
656
673
  itemLabel = _ref.itemLabel,
657
- rest = _objectWithoutProperties(_ref, _excluded$3);
674
+ rest = _objectWithoutProperties(_ref, _excluded$4);
658
675
  var _useDraggable = useDraggable({
659
676
  id: "draggable-item--".concat(folder.id),
660
677
  data: folder,
@@ -941,7 +958,7 @@ var PlaceholderNode = function PlaceholderNode(_ref) {
941
958
  });
942
959
  };
943
960
 
944
- var _excluded$2 = ["folder", "config", "dragState", "folderLabel", "itemLabel"];
961
+ var _excluded$3 = ["folder", "config", "dragState", "folderLabel", "itemLabel"];
945
962
  function ownKeys$b(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
946
963
  function _objectSpread$b(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$b(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$b(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
947
964
  var _DraggableNode = function DraggableNode(_ref) {
@@ -951,7 +968,7 @@ var _DraggableNode = function DraggableNode(_ref) {
951
968
  dragState = _ref.dragState,
952
969
  folderLabel = _ref.folderLabel,
953
970
  itemLabel = _ref.itemLabel,
954
- rest = _objectWithoutProperties(_ref, _excluded$2);
971
+ rest = _objectWithoutProperties(_ref, _excluded$3);
955
972
  var overItem = dragState.overItem;
956
973
  var isOverItem = folder.id === (overItem === null || overItem === void 0 ? void 0 : overItem.id);
957
974
  var isOverParent = folder.id === (overItem === null || overItem === void 0 || (_overItem$meta$parent = overItem.meta.parent) === null || _overItem$meta$parent === void 0 ? void 0 : _overItem$meta$parent.id);
@@ -1193,6 +1210,7 @@ var ReorderFoldersPane = function ReorderFoldersPane(_ref) {
1193
1210
  });
1194
1211
  };
1195
1212
 
1213
+ var _excluded$2 = ["type"];
1196
1214
  function ownKeys$9(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1197
1215
  function _objectSpread$9(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$9(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$9(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1198
1216
  var FoldersPane = function FoldersPane(_ref) {
@@ -1200,32 +1218,30 @@ var FoldersPane = function FoldersPane(_ref) {
1200
1218
  var config = _objectSpread$9(_objectSpread$9({}, DEFAULT_CONFIG), configProps);
1201
1219
  var _useFolderStore = useFolderStore(function (store) {
1202
1220
  return {
1221
+ paneState: store["paneState"],
1203
1222
  setFolderState: store["setFolderState"]
1204
1223
  };
1205
1224
  }, shallow),
1225
+ paneState = _useFolderStore.paneState,
1206
1226
  setFolderState = _useFolderStore.setFolderState;
1207
- var _useFolderStore2 = useFolderStore(function (store) {
1208
- var _store$paneState;
1209
- return {
1210
- type: (_store$paneState = store["paneState"]) === null || _store$paneState === void 0 ? void 0 : _store$paneState["type"]
1211
- };
1212
- }, shallow),
1213
- type = _useFolderStore2.type;
1227
+ var _ref2 = paneState || {},
1228
+ type = _ref2.type,
1229
+ rest = _objectWithoutProperties(_ref2, _excluded$2);
1214
1230
  var onClose = function onClose() {
1215
1231
  return setFolderState({
1216
1232
  paneState: null
1217
1233
  });
1218
1234
  };
1219
- var commonProps = {
1235
+ var commonProps = _objectSpread$9({
1220
1236
  config: config,
1221
1237
  onClose: onClose
1222
- };
1238
+ }, rest);
1223
1239
  var ReorderPaneComponent = config.reorderMode === "reorder" ? ReorderFoldersPane : RearrangeFoldersPane;
1224
1240
  return /*#__PURE__*/jsx(Pane, {
1225
1241
  onClose: onClose,
1226
1242
  isOpen: !!type,
1227
- children: function children(_ref2) {
1228
- var setFocusField = _ref2.setFocusField;
1243
+ children: function children(_ref3) {
1244
+ var setFocusField = _ref3.setFocusField;
1229
1245
  return /*#__PURE__*/jsxs(Fragment, {
1230
1246
  children: [(type === "edit" || type === "add") && /*#__PURE__*/jsx(AddEditPane, _objectSpread$9({}, _objectSpread$9({
1231
1247
  setFocusField: setFocusField