@webiny/app-aco 0.0.0-unstable.c2780f51fe → 0.0.0-unstable.c7dec08bb0

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.
Files changed (261) hide show
  1. package/Folders.d.ts +2 -0
  2. package/Folders.js +22 -0
  3. package/Folders.js.map +1 -0
  4. package/components/Dialogs/DialogCreate.d.ts +3 -4
  5. package/components/Dialogs/DialogCreate.js +31 -34
  6. package/components/Dialogs/DialogCreate.js.map +1 -1
  7. package/components/Dialogs/DialogDelete.d.ts +5 -5
  8. package/components/Dialogs/DialogDelete.js +2 -2
  9. package/components/Dialogs/DialogDelete.js.map +1 -1
  10. package/components/Dialogs/DialogMove.d.ts +5 -6
  11. package/components/Dialogs/DialogMove.js +23 -30
  12. package/components/Dialogs/DialogMove.js.map +1 -1
  13. package/components/Dialogs/DialogUpdate.d.ts +3 -3
  14. package/components/Dialogs/DialogUpdate.js +8 -12
  15. package/components/Dialogs/DialogUpdate.js.map +1 -1
  16. package/components/Dialogs/index.d.ts +1 -0
  17. package/components/Dialogs/index.js +11 -0
  18. package/components/Dialogs/index.js.map +1 -1
  19. package/components/Dialogs/styled.js +1 -1
  20. package/components/Dialogs/styled.js.map +1 -1
  21. package/components/FolderGrid/ActionDelete.d.ts +6 -0
  22. package/components/FolderGrid/ActionDelete.js +25 -0
  23. package/components/FolderGrid/ActionDelete.js.map +1 -0
  24. package/components/FolderGrid/ActionEdit.d.ts +6 -0
  25. package/components/FolderGrid/ActionEdit.js +25 -0
  26. package/components/FolderGrid/ActionEdit.js.map +1 -0
  27. package/components/FolderGrid/Folder.d.ts +9 -0
  28. package/components/FolderGrid/Folder.js +42 -0
  29. package/components/FolderGrid/Folder.js.map +1 -0
  30. package/components/FolderGrid/FolderGrid.d.ts +8 -0
  31. package/components/FolderGrid/FolderGrid.js +60 -0
  32. package/components/FolderGrid/FolderGrid.js.map +1 -0
  33. package/components/FolderGrid/index.d.ts +1 -0
  34. package/components/FolderGrid/index.js +16 -0
  35. package/components/FolderGrid/index.js.map +1 -0
  36. package/components/FolderGrid/styled.d.ts +53 -0
  37. package/components/FolderGrid/styled.js +41 -0
  38. package/components/FolderGrid/styled.js.map +1 -0
  39. package/components/FolderTree/ButtonCreate/index.d.ts +6 -0
  40. package/components/{Tree → FolderTree}/ButtonCreate/index.js +2 -2
  41. package/components/FolderTree/ButtonCreate/index.js.map +1 -0
  42. package/components/{Tree → FolderTree}/ButtonCreate/styled.js +3 -3
  43. package/components/FolderTree/Empty/index.d.ts +2 -0
  44. package/components/{Tree → FolderTree}/Empty/index.js +2 -2
  45. package/components/FolderTree/Empty/index.js.map +1 -0
  46. package/components/{Tree → FolderTree}/Empty/styled.js +1 -1
  47. package/components/FolderTree/List/index.d.ts +11 -0
  48. package/components/{Tree → FolderTree}/List/index.js +35 -35
  49. package/components/FolderTree/List/index.js.map +1 -0
  50. package/components/{Tree → FolderTree}/List/utils.d.ts +3 -3
  51. package/components/{Tree → FolderTree}/List/utils.js +32 -33
  52. package/components/FolderTree/List/utils.js.map +1 -0
  53. package/components/FolderTree/Loader/index.d.ts +4 -0
  54. package/components/{Tree → FolderTree}/Loader/index.js +4 -4
  55. package/components/FolderTree/Loader/index.js.map +1 -0
  56. package/components/{Tree → FolderTree}/Loader/styled.js +4 -4
  57. package/components/FolderTree/Loader/styled.js.map +1 -0
  58. package/components/{Tree → FolderTree}/MenuActions/index.d.ts +3 -3
  59. package/components/{Tree → FolderTree}/MenuActions/index.js +1 -1
  60. package/components/FolderTree/MenuActions/index.js.map +1 -0
  61. package/components/{Tree → FolderTree}/MenuActions/styled.js +2 -2
  62. package/components/FolderTree/Node/index.d.ts +22 -0
  63. package/components/{Tree → FolderTree}/Node/index.js +25 -10
  64. package/components/FolderTree/Node/index.js.map +1 -0
  65. package/components/{Tree → FolderTree}/Node/styled.js +7 -7
  66. package/components/FolderTree/Node/styled.js.map +1 -0
  67. package/components/FolderTree/NodePreview/index.d.ts +8 -0
  68. package/components/{Tree → FolderTree}/NodePreview/index.js +2 -1
  69. package/components/FolderTree/NodePreview/index.js.map +1 -0
  70. package/components/{Tree → FolderTree}/NodePreview/styled.js +1 -1
  71. package/components/FolderTree/Placeholder/index.d.ts +9 -0
  72. package/components/FolderTree/Placeholder/index.js.map +1 -0
  73. package/components/{Tree → FolderTree}/Placeholder/styled.js +1 -1
  74. package/components/FolderTree/index.d.ts +13 -0
  75. package/components/{Tree → FolderTree}/index.js +30 -30
  76. package/components/FolderTree/index.js.map +1 -0
  77. package/components/{Tree → FolderTree}/styled.js +2 -2
  78. package/components/FolderTree/styled.js.map +1 -0
  79. package/components/Search/Search.d.ts +7 -0
  80. package/components/Search/Search.js +19 -0
  81. package/components/Search/Search.js.map +1 -0
  82. package/components/Search/index.d.ts +1 -0
  83. package/components/Search/index.js +16 -0
  84. package/components/Search/index.js.map +1 -0
  85. package/components/Search/styled.d.ts +7 -0
  86. package/components/Search/styled.js +13 -0
  87. package/components/Search/styled.js.map +1 -0
  88. package/components/index.d.ts +3 -1
  89. package/components/index.js +26 -4
  90. package/components/index.js.map +1 -1
  91. package/constants.d.ts +1 -0
  92. package/constants.js +8 -0
  93. package/constants.js.map +1 -0
  94. package/contexts/DisplayError/index.d.ts +6 -0
  95. package/contexts/DisplayError/index.js +38 -0
  96. package/contexts/DisplayError/index.js.map +1 -0
  97. package/contexts/FoldersApi/FoldersApiProvider.d.ts +23 -0
  98. package/contexts/FoldersApi/FoldersApiProvider.js +332 -0
  99. package/contexts/FoldersApi/FoldersApiProvider.js.map +1 -0
  100. package/contexts/FoldersApi/index.d.ts +2 -0
  101. package/contexts/FoldersApi/index.js +27 -0
  102. package/contexts/FoldersApi/index.js.map +1 -0
  103. package/contexts/FoldersApi/useFoldersApi.d.ts +2 -0
  104. package/contexts/FoldersApi/useFoldersApi.js +15 -0
  105. package/contexts/FoldersApi/useFoldersApi.js.map +1 -0
  106. package/contexts/app.d.ts +33 -0
  107. package/contexts/app.js +191 -0
  108. package/contexts/app.js.map +1 -0
  109. package/contexts/folders.d.ts +8 -6
  110. package/contexts/folders.js +141 -236
  111. package/contexts/folders.js.map +1 -1
  112. package/contexts/index.d.ts +1 -2
  113. package/contexts/index.js +12 -12
  114. package/contexts/index.js.map +1 -1
  115. package/contexts/navigateFolder.d.ts +18 -0
  116. package/contexts/navigateFolder.js +70 -0
  117. package/contexts/navigateFolder.js.map +1 -0
  118. package/contexts/navigateFolderWithRouter.d.ts +8 -0
  119. package/contexts/navigateFolderWithRouter.js +90 -0
  120. package/contexts/navigateFolderWithRouter.js.map +1 -0
  121. package/contexts/records.d.ts +16 -12
  122. package/contexts/records.js +552 -298
  123. package/contexts/records.js.map +1 -1
  124. package/dialogs/Dialog.d.ts +15 -0
  125. package/dialogs/Dialog.js +43 -0
  126. package/dialogs/Dialog.js.map +1 -0
  127. package/dialogs/dialogs.d.ts +31 -0
  128. package/dialogs/dialogs.js +120 -0
  129. package/dialogs/dialogs.js.map +1 -0
  130. package/dialogs/index.d.ts +4 -0
  131. package/dialogs/index.js +49 -0
  132. package/dialogs/index.js.map +1 -0
  133. package/dialogs/styled.d.ts +18 -0
  134. package/dialogs/styled.js +24 -0
  135. package/dialogs/styled.js.map +1 -0
  136. package/dialogs/useDialogsContext.d.ts +2 -0
  137. package/dialogs/useDialogsContext.js +16 -0
  138. package/dialogs/useDialogsContext.js.map +1 -0
  139. package/dialogs/useMoveToFolderDialog.d.ts +22 -0
  140. package/dialogs/useMoveToFolderDialog.js +74 -0
  141. package/dialogs/useMoveToFolderDialog.js.map +1 -0
  142. package/graphql/app.gql.d.ts +17 -0
  143. package/graphql/app.gql.js +14 -0
  144. package/graphql/app.gql.js.map +1 -0
  145. package/graphql/records/common.d.ts +4 -0
  146. package/graphql/records/common.js +47 -0
  147. package/graphql/records/common.js.map +1 -0
  148. package/graphql/records/createRecord.d.ts +2 -0
  149. package/graphql/records/createRecord.js +19 -0
  150. package/graphql/records/createRecord.js.map +1 -0
  151. package/graphql/records/deleteRecord.d.ts +2 -0
  152. package/graphql/records/deleteRecord.js +19 -0
  153. package/graphql/records/deleteRecord.js.map +1 -0
  154. package/graphql/records/getRecord.d.ts +2 -0
  155. package/graphql/records/getRecord.js +20 -0
  156. package/graphql/records/getRecord.js.map +1 -0
  157. package/graphql/records/listRecords.d.ts +2 -0
  158. package/graphql/records/listRecords.js +29 -0
  159. package/graphql/records/listRecords.js.map +1 -0
  160. package/graphql/records/listTags.d.ts +2 -0
  161. package/graphql/records/listTags.js +19 -0
  162. package/graphql/records/listTags.js.map +1 -0
  163. package/graphql/records/moveRecord.d.ts +2 -0
  164. package/graphql/records/moveRecord.js +19 -0
  165. package/graphql/records/moveRecord.js.map +1 -0
  166. package/graphql/records/types.d.ts +108 -0
  167. package/graphql/records/types.js +5 -0
  168. package/graphql/records/types.js.map +1 -0
  169. package/graphql/records/updateRecord.d.ts +2 -0
  170. package/graphql/records/updateRecord.js +19 -0
  171. package/graphql/records/updateRecord.js.map +1 -0
  172. package/graphql/records.gql.d.ts +7 -5
  173. package/graphql/records.gql.js +77 -18
  174. package/graphql/records.gql.js.map +1 -1
  175. package/handlers.d.ts +7 -2
  176. package/handlers.js +36 -2
  177. package/handlers.js.map +1 -1
  178. package/hooks/index.d.ts +4 -0
  179. package/hooks/index.js +50 -1
  180. package/hooks/index.js.map +1 -1
  181. package/hooks/useAcoApp.d.ts +2 -0
  182. package/hooks/useAcoApp.js +24 -0
  183. package/hooks/useAcoApp.js.map +1 -0
  184. package/hooks/useAcoList.d.ts +25 -17
  185. package/hooks/useAcoList.js +216 -66
  186. package/hooks/useAcoList.js.map +1 -1
  187. package/hooks/useFolders.d.ts +8 -8
  188. package/hooks/useFolders.js +15 -25
  189. package/hooks/useFolders.js.map +1 -1
  190. package/hooks/useNavigateFolder.d.ts +2 -0
  191. package/hooks/useNavigateFolder.js +16 -0
  192. package/hooks/useNavigateFolder.js.map +1 -0
  193. package/hooks/useRecords.d.ts +11 -14
  194. package/hooks/useRecords.js +30 -15
  195. package/hooks/useRecords.js.map +1 -1
  196. package/hooks/useTags.d.ts +14 -0
  197. package/hooks/useTags.js +38 -0
  198. package/hooks/useTags.js.map +1 -0
  199. package/index.d.ts +5 -3
  200. package/index.js +52 -45
  201. package/index.js.map +1 -1
  202. package/package.json +26 -21
  203. package/sorting.d.ts +9 -3
  204. package/sorting.js +38 -12
  205. package/sorting.js.map +1 -1
  206. package/types.d.ts +43 -81
  207. package/types.js +11 -13
  208. package/types.js.map +1 -1
  209. package/components/Tree/ButtonCreate/index.d.ts +0 -6
  210. package/components/Tree/ButtonCreate/index.js.map +0 -1
  211. package/components/Tree/Empty/index.d.ts +0 -2
  212. package/components/Tree/Empty/index.js.map +0 -1
  213. package/components/Tree/List/constants.d.ts +0 -1
  214. package/components/Tree/List/constants.js +0 -8
  215. package/components/Tree/List/constants.js.map +0 -1
  216. package/components/Tree/List/index.d.ts +0 -15
  217. package/components/Tree/List/index.js.map +0 -1
  218. package/components/Tree/List/utils.js.map +0 -1
  219. package/components/Tree/Loader/index.d.ts +0 -2
  220. package/components/Tree/Loader/index.js.map +0 -1
  221. package/components/Tree/Loader/styled.js.map +0 -1
  222. package/components/Tree/MenuActions/index.js.map +0 -1
  223. package/components/Tree/Node/index.d.ts +0 -21
  224. package/components/Tree/Node/index.js.map +0 -1
  225. package/components/Tree/Node/styled.js.map +0 -1
  226. package/components/Tree/NodePreview/index.d.ts +0 -8
  227. package/components/Tree/NodePreview/index.js.map +0 -1
  228. package/components/Tree/Placeholder/index.d.ts +0 -9
  229. package/components/Tree/Placeholder/index.js.map +0 -1
  230. package/components/Tree/Title/index.d.ts +0 -9
  231. package/components/Tree/Title/index.js +0 -24
  232. package/components/Tree/Title/index.js.map +0 -1
  233. package/components/Tree/Title/styled.d.ts +0 -16
  234. package/components/Tree/Title/styled.js +0 -24
  235. package/components/Tree/Title/styled.js.map +0 -1
  236. package/components/Tree/index.d.ts +0 -16
  237. package/components/Tree/index.js.map +0 -1
  238. package/components/Tree/styled.js.map +0 -1
  239. package/contexts/links.d.ts +0 -18
  240. package/contexts/links.js +0 -371
  241. package/contexts/links.js.map +0 -1
  242. package/graphql/links.gql.d.ts +0 -5
  243. package/graphql/links.gql.js +0 -34
  244. package/graphql/links.gql.js.map +0 -1
  245. package/hooks/useLinks.d.ts +0 -20
  246. package/hooks/useLinks.js +0 -65
  247. package/hooks/useLinks.js.map +0 -1
  248. /package/components/{Tree → FolderTree}/ButtonCreate/styled.d.ts +0 -0
  249. /package/components/{Tree → FolderTree}/ButtonCreate/styled.js.map +0 -0
  250. /package/components/{Tree → FolderTree}/Empty/styled.d.ts +0 -0
  251. /package/components/{Tree → FolderTree}/Empty/styled.js.map +0 -0
  252. /package/components/{Tree → FolderTree}/Loader/styled.d.ts +0 -0
  253. /package/components/{Tree → FolderTree}/MenuActions/styled.d.ts +0 -0
  254. /package/components/{Tree → FolderTree}/MenuActions/styled.js.map +0 -0
  255. /package/components/{Tree → FolderTree}/Node/styled.d.ts +0 -0
  256. /package/components/{Tree → FolderTree}/NodePreview/styled.d.ts +0 -0
  257. /package/components/{Tree → FolderTree}/NodePreview/styled.js.map +0 -0
  258. /package/components/{Tree → FolderTree}/Placeholder/index.js +0 -0
  259. /package/components/{Tree → FolderTree}/Placeholder/styled.d.ts +0 -0
  260. /package/components/{Tree → FolderTree}/Placeholder/styled.js.map +0 -0
  261. /package/components/{Tree → FolderTree}/styled.d.ts +0 -0
package/Folders.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const Folders: () => JSX.Element;
package/Folders.js ADDED
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.Folders = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _appAdmin = require("@webiny/app-admin");
10
+ var _FoldersApi = require("./contexts/FoldersApi");
11
+ var FoldersApiProviderHOC = function FoldersApiProviderHOC(Component) {
12
+ return function FoldersApiProviderHOC(_ref) {
13
+ var children = _ref.children;
14
+ return /*#__PURE__*/_react.default.createElement(_FoldersApi.FoldersApiProvider, null, /*#__PURE__*/_react.default.createElement(Component, null, children));
15
+ };
16
+ };
17
+ var Folders = function Folders() {
18
+ return /*#__PURE__*/_react.default.createElement(_appAdmin.Plugin, {
19
+ providers: [FoldersApiProviderHOC]
20
+ });
21
+ };
22
+ exports.Folders = Folders;
package/Folders.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"names":["FoldersApiProviderHOC","Component","children","Folders"],"sources":["Folders.tsx"],"sourcesContent":["import React from \"react\";\nimport { Plugin } from \"@webiny/app-admin\";\nimport { FoldersApiProvider } from \"~/contexts/FoldersApi\";\n\nconst FoldersApiProviderHOC = (Component: React.FC): React.FC => {\n return function FoldersApiProviderHOC({ children }) {\n return (\n <FoldersApiProvider>\n <Component>{children}</Component>\n </FoldersApiProvider>\n );\n };\n};\n\nexport const Folders = () => {\n return <Plugin providers={[FoldersApiProviderHOC]} />;\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AAEA,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAqB,CAAIC,SAAmB,EAAe;EAC7D,OAAO,SAASD,qBAAqB,OAAe;IAAA,IAAZE,QAAQ,QAARA,QAAQ;IAC5C,oBACI,6BAAC,8BAAkB,qBACf,6BAAC,SAAS,QAAEA,QAAQ,CAAa,CAChB;EAE7B,CAAC;AACL,CAAC;AAEM,IAAMC,OAAO,GAAG,SAAVA,OAAO,GAAS;EACzB,oBAAO,6BAAC,gBAAM;IAAC,SAAS,EAAE,CAACH,qBAAqB;EAAE,EAAG;AACzD,CAAC;AAAC"}
@@ -1,10 +1,9 @@
1
1
  import React from "react";
2
2
  import { DialogOnClose } from "@webiny/ui/Dialog";
3
- declare type Props = {
4
- type: string;
3
+ interface FolderDialogCreateProps {
5
4
  open: boolean;
6
5
  onClose: DialogOnClose;
7
6
  currentParentId?: string | null;
8
- };
9
- export declare const FolderDialogCreate: React.FC<Props>;
7
+ }
8
+ export declare const FolderDialogCreate: React.VFC<FolderDialogCreateProps>;
10
9
  export {};
@@ -12,6 +12,7 @@ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/obje
12
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
13
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
14
14
  var _react = _interopRequireWildcard(require("react"));
15
+ var _slugify = _interopRequireDefault(require("slugify"));
15
16
  var _i18n = require("@webiny/app/i18n");
16
17
  var _appAdmin = require("@webiny/app-admin");
17
18
  var _form = require("@webiny/form");
@@ -22,31 +23,30 @@ var _Input = require("@webiny/ui/Input");
22
23
  var _Progress = require("@webiny/ui/Progress");
23
24
  var _Typography = require("@webiny/ui/Typography");
24
25
  var _validation = require("@webiny/validation");
25
- var _slugify = _interopRequireDefault(require("slugify"));
26
26
  var _ = require("./..");
27
27
  var _useFolders2 = require("../../hooks/useFolders");
28
28
  var _styled = require("./styled");
29
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
30
- var t = _i18n.i18n.ns("app-aco/components/tree/dialog-create");
29
+ var _constants = require("../../constants");
30
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
31
+ var t = _i18n.i18n.ns("app-aco/dialogs/dialog-create");
31
32
  var FolderDialogCreate = function FolderDialogCreate(_ref) {
32
- var type = _ref.type,
33
- onClose = _ref.onClose,
33
+ var onClose = _ref.onClose,
34
34
  open = _ref.open,
35
35
  currentParentId = _ref.currentParentId;
36
- var _useFolders = (0, _useFolders2.useFolders)(type),
36
+ var _useFolders = (0, _useFolders2.useFolders)(),
37
37
  loading = _useFolders.loading,
38
38
  createFolder = _useFolders.createFolder;
39
39
  var _useState = (0, _react.useState)(false),
40
40
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
41
41
  dialogOpen = _useState2[0],
42
42
  setDialogOpen = _useState2[1];
43
- var _useState3 = (0, _react.useState)(),
43
+ var _useState3 = (0, _react.useState)(currentParentId || _constants.ROOT_FOLDER),
44
44
  _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
45
45
  parentId = _useState4[0],
46
46
  setParentId = _useState4[1];
47
47
  var _useSnackbar = (0, _appAdmin.useSnackbar)(),
48
48
  showSnackbar = _useSnackbar.showSnackbar;
49
- var onSubmit = /*#__PURE__*/function () {
49
+ var onSubmit = (0, _react.useCallback)( /*#__PURE__*/function () {
50
50
  var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(data) {
51
51
  return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
52
52
  while (1) switch (_context.prev = _context.next) {
@@ -54,8 +54,7 @@ var FolderDialogCreate = function FolderDialogCreate(_ref) {
54
54
  _context.prev = 0;
55
55
  _context.next = 3;
56
56
  return createFolder((0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
57
- type: type,
58
- parentId: parentId || null
57
+ parentId: parentId === _constants.ROOT_FOLDER ? null : parentId
59
58
  }));
60
59
  case 3:
61
60
  setDialogOpen(false);
@@ -72,16 +71,18 @@ var FolderDialogCreate = function FolderDialogCreate(_ref) {
72
71
  }
73
72
  }, _callee, null, [[0, 7]]);
74
73
  }));
75
- return function onSubmit(_x) {
74
+ return function (_x) {
76
75
  return _ref2.apply(this, arguments);
77
76
  };
78
- }();
79
- var generateSlug = function generateSlug(form) {
77
+ }(), [parentId]);
78
+ (0, _react.useEffect)(function () {
79
+ if (currentParentId !== parentId) {
80
+ setParentId(currentParentId || _constants.ROOT_FOLDER);
81
+ }
82
+ }, [currentParentId]);
83
+ var generateSlug = (0, _react.useCallback)(function (form) {
80
84
  return function () {
81
- if (form.data.slug) {
82
- return;
83
- }
84
- if (!form.data.title) {
85
+ if (form.data.slug || !form.data.title) {
85
86
  return;
86
87
  }
87
88
 
@@ -93,17 +94,20 @@ var FolderDialogCreate = function FolderDialogCreate(_ref) {
93
94
  trim: false
94
95
  }));
95
96
  };
96
- };
97
- (0, _react.useEffect)(function () {
98
- setParentId(currentParentId);
99
- }, [currentParentId]);
97
+ }, []);
100
98
  (0, _react.useEffect)(function () {
101
99
  setDialogOpen(open);
102
- }, [open]);
100
+ }, [open, setDialogOpen]);
101
+ if (!dialogOpen) {
102
+ return null;
103
+ }
104
+ var onFolderClick = function onFolderClick(data) {
105
+ setParentId(data.id);
106
+ };
103
107
  return /*#__PURE__*/_react.default.createElement(_styled.DialogContainer, {
104
108
  open: dialogOpen,
105
109
  onClose: onClose
106
- }, dialogOpen && /*#__PURE__*/_react.default.createElement(_form.Form, {
110
+ }, /*#__PURE__*/_react.default.createElement(_form.Form, {
107
111
  onSubmit: onSubmit
108
112
  }, function (_ref3) {
109
113
  var form = _ref3.form,
@@ -131,22 +135,15 @@ var FolderDialogCreate = function FolderDialogCreate(_ref) {
131
135
  }, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
132
136
  use: "body1"
133
137
  }, t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["Parent folder"])))), /*#__PURE__*/_react.default.createElement(_styled.DialogFoldersContainer, null, /*#__PURE__*/_react.default.createElement(_.FolderTree, {
134
- title: t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Root folder"]))),
135
- type: type,
136
- focusedFolderId: parentId || undefined,
137
- onFolderClick: function onFolderClick(data) {
138
- return setParentId((data === null || data === void 0 ? void 0 : data.id) || null);
139
- },
140
- onTitleClick: function onTitleClick() {
141
- return setParentId(null);
142
- }
138
+ focusedFolderId: parentId,
139
+ onFolderClick: onFolderClick
143
140
  }))))), /*#__PURE__*/_react.default.createElement(_Dialog.DialogActions, null, /*#__PURE__*/_react.default.createElement(_Button.ButtonDefault, {
144
141
  onClick: function onClick() {
145
142
  setDialogOpen(false);
146
143
  }
147
- }, t(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["Cancel"])))), /*#__PURE__*/_react.default.createElement(_Button.ButtonPrimary, {
144
+ }, t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Cancel"])))), /*#__PURE__*/_react.default.createElement(_Button.ButtonPrimary, {
148
145
  onClick: submit
149
- }, t(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["Create Folder"]))))));
146
+ }, t(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["Create Folder"]))))));
150
147
  }));
151
148
  };
152
149
  exports.FolderDialogCreate = FolderDialogCreate;
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","FolderDialogCreate","type","onClose","open","currentParentId","useFolders","loading","createFolder","useState","dialogOpen","setDialogOpen","parentId","setParentId","useSnackbar","showSnackbar","onSubmit","data","message","generateSlug","form","slug","title","setValue","slugify","replacement","lower","remove","trim","useEffect","Bind","submit","CREATE","validation","create","undefined","id"],"sources":["DialogCreate.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\n\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { Form, FormAPI, FormOnSubmit } from \"@webiny/form\";\nimport { ButtonDefault, ButtonPrimary } from \"@webiny/ui/Button\";\nimport { DialogTitle, DialogActions, DialogContent, DialogOnClose } from \"@webiny/ui/Dialog\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { validation } from \"@webiny/validation\";\nimport slugify from \"slugify\";\n\nimport { FolderTree } from \"~/components\";\nimport { useFolders } from \"~/hooks/useFolders\";\n\nimport { DialogContainer, DialogFoldersContainer } from \"./styled\";\n\nimport { FolderItem } from \"~/types\";\n\ntype Props = {\n type: string;\n open: boolean;\n onClose: DialogOnClose;\n currentParentId?: string | null;\n};\n\nconst t = i18n.ns(\"app-aco/components/tree/dialog-create\");\n\ntype SubmitData = Omit<FolderItem, \"id\">;\n\nexport const FolderDialogCreate: React.FC<Props> = ({ type, onClose, open, currentParentId }) => {\n const { loading, createFolder } = useFolders(type);\n const [dialogOpen, setDialogOpen] = useState(false);\n const [parentId, setParentId] = useState<string | null>();\n const { showSnackbar } = useSnackbar();\n\n const onSubmit: FormOnSubmit<SubmitData> = async data => {\n try {\n await createFolder({\n ...data,\n type,\n parentId: parentId || null\n });\n setDialogOpen(false);\n showSnackbar(t`Folder created successfully!`);\n } catch (error) {\n showSnackbar(error.message);\n }\n };\n\n const generateSlug = (form: FormAPI) => () => {\n if (form.data.slug) {\n return;\n }\n\n if (!form.data.title) {\n return;\n }\n\n // We want to update slug only when the folder is first being created.\n form.setValue(\n \"slug\",\n slugify(form.data.title, {\n replacement: \"-\",\n lower: true,\n remove: /[*#\\?<>_\\{\\}\\[\\]+~.()'\"!:;@]/g,\n trim: false\n })\n );\n };\n\n useEffect(() => {\n setParentId(currentParentId);\n }, [currentParentId]);\n\n useEffect(() => {\n setDialogOpen(open);\n }, [open]);\n\n return (\n <DialogContainer open={dialogOpen} onClose={onClose}>\n {dialogOpen && (\n <Form<SubmitData> onSubmit={onSubmit}>\n {({ form, Bind, submit }) => (\n <>\n {loading.CREATE && <CircularProgress label={t`Creating folder...`} />}\n <DialogTitle>{t`Create a new folder`}</DialogTitle>\n <DialogContent>\n <Grid>\n <Cell span={12}>\n <Bind\n name={\"title\"}\n validators={[validation.create(\"required,minLength:3\")]}\n >\n <Input label={t`Title`} onBlur={generateSlug(form)} />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Bind\n name={\"slug\"}\n validators={[\n validation.create(\"required,minLength:3,slug\")\n ]}\n >\n <Input label={t`Slug`} />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Typography use=\"body1\">{t`Parent folder`}</Typography>\n <DialogFoldersContainer>\n <FolderTree\n title={t`Root folder`}\n type={type}\n focusedFolderId={parentId || undefined}\n onFolderClick={data =>\n setParentId(data?.id || null)\n }\n onTitleClick={() => setParentId(null)}\n />\n </DialogFoldersContainer>\n </Cell>\n </Grid>\n </DialogContent>\n <DialogActions>\n <ButtonDefault\n onClick={() => {\n setDialogOpen(false);\n }}\n >\n {t`Cancel`}\n </ButtonDefault>\n <ButtonPrimary onClick={submit}>{t`Create Folder`}</ButtonPrimary>\n </DialogActions>\n </>\n )}\n </Form>\n )}\n </DialogContainer>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["t","i18n","ns","FolderDialogCreate","onClose","open","currentParentId","useFolders","loading","createFolder","useState","dialogOpen","setDialogOpen","ROOT_FOLDER","parentId","setParentId","useSnackbar","showSnackbar","onSubmit","useCallback","data","message","useEffect","generateSlug","form","slug","title","setValue","slugify","replacement","lower","remove","trim","onFolderClick","id","Bind","submit","CREATE","validation","create"],"sources":["DialogCreate.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\nimport slugify from \"slugify\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { Form, FormAPI, FormOnSubmit } from \"@webiny/form\";\nimport { ButtonDefault, ButtonPrimary } from \"@webiny/ui/Button\";\nimport { DialogActions, DialogContent, DialogOnClose, DialogTitle } from \"@webiny/ui/Dialog\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { validation } from \"@webiny/validation\";\nimport { FolderTree } from \"~/components\";\nimport { useFolders } from \"~/hooks/useFolders\";\nimport { DialogContainer, DialogFoldersContainer } from \"./styled\";\nimport { FolderItem } from \"~/types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\ninterface FolderDialogCreateProps {\n open: boolean;\n onClose: DialogOnClose;\n currentParentId?: string | null;\n}\n\nconst t = i18n.ns(\"app-aco/dialogs/dialog-create\");\n\ntype SubmitData = Omit<FolderItem, \"id\">;\n\nexport const FolderDialogCreate: React.VFC<FolderDialogCreateProps> = ({\n onClose,\n open,\n currentParentId\n}) => {\n const { loading, createFolder } = useFolders();\n const [dialogOpen, setDialogOpen] = useState(false);\n const [parentId, setParentId] = useState<string>(currentParentId || ROOT_FOLDER);\n const { showSnackbar } = useSnackbar();\n\n const onSubmit: FormOnSubmit<SubmitData> = useCallback(\n async data => {\n try {\n await createFolder({\n ...data,\n parentId: parentId === ROOT_FOLDER ? null : parentId\n });\n setDialogOpen(false);\n showSnackbar(t`Folder created successfully!`);\n } catch (error) {\n showSnackbar(error.message);\n }\n },\n [parentId]\n );\n\n useEffect(() => {\n if (currentParentId !== parentId) {\n setParentId(currentParentId || ROOT_FOLDER);\n }\n }, [currentParentId]);\n\n const generateSlug = useCallback((form: FormAPI) => {\n return () => {\n if (form.data.slug || !form.data.title) {\n return;\n }\n\n // We want to update slug only when the folder is first being created.\n form.setValue(\n \"slug\",\n slugify(form.data.title, {\n replacement: \"-\",\n lower: true,\n remove: /[*#\\?<>_\\{\\}\\[\\]+~.()'\"!:;@]/g,\n trim: false\n })\n );\n };\n }, []);\n\n useEffect(() => {\n setDialogOpen(open);\n }, [open, setDialogOpen]);\n\n if (!dialogOpen) {\n return null;\n }\n\n const onFolderClick = (data: FolderItem) => {\n setParentId(data.id);\n };\n\n return (\n <DialogContainer open={dialogOpen} onClose={onClose}>\n <Form<SubmitData> onSubmit={onSubmit}>\n {({ form, Bind, submit }) => (\n <>\n {loading.CREATE && <CircularProgress label={t`Creating folder...`} />}\n <DialogTitle>{t`Create a new folder`}</DialogTitle>\n <DialogContent>\n <Grid>\n <Cell span={12}>\n <Bind\n name={\"title\"}\n validators={[validation.create(\"required,minLength:3\")]}\n >\n <Input label={t`Title`} onBlur={generateSlug(form)} />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Bind\n name={\"slug\"}\n validators={[\n validation.create(\"required,minLength:3,slug\")\n ]}\n >\n <Input label={t`Slug`} />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Typography use=\"body1\">{t`Parent folder`}</Typography>\n <DialogFoldersContainer>\n <FolderTree\n focusedFolderId={parentId}\n onFolderClick={onFolderClick}\n />\n </DialogFoldersContainer>\n </Cell>\n </Grid>\n </DialogContent>\n <DialogActions>\n <ButtonDefault\n onClick={() => {\n setDialogOpen(false);\n }}\n >\n {t`Cancel`}\n </ButtonDefault>\n <ButtonPrimary onClick={submit}>{t`Create Folder`}</ButtonPrimary>\n </DialogActions>\n </>\n )}\n </Form>\n </DialogContainer>\n );\n};\n"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- /// <reference types="react" />
1
+ import React from "react";
2
2
  import { DialogOnClose } from "@webiny/ui/Dialog";
3
3
  import { FolderItem } from "../../types";
4
- declare type Props = {
5
- folder: FolderItem;
4
+ interface FolderDialogDeleteProps {
5
+ folder: Pick<FolderItem, "id" | "title">;
6
6
  open: boolean;
7
7
  onClose: DialogOnClose;
8
- };
9
- export declare const FolderDialogDelete: ({ folder, open, onClose }: Props) => JSX.Element;
8
+ }
9
+ export declare const FolderDialogDelete: React.VFC<FolderDialogDeleteProps>;
10
10
  export {};
@@ -19,12 +19,12 @@ var _Progress = require("@webiny/ui/Progress");
19
19
  var _hooks = require("../../hooks");
20
20
  var _styled = require("./styled");
21
21
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
22
- var t = _i18n.i18n.ns("app-headless-cms/app-page-builder/page-details/header/delete-page");
22
+ var t = _i18n.i18n.ns("app-aco/dialogs/dialog-delete");
23
23
  var FolderDialogDelete = function FolderDialogDelete(_ref) {
24
24
  var folder = _ref.folder,
25
25
  open = _ref.open,
26
26
  onClose = _ref.onClose;
27
- var _useFolders = (0, _hooks.useFolders)(folder.type),
27
+ var _useFolders = (0, _hooks.useFolders)(),
28
28
  deleteFolder = _useFolders.deleteFolder,
29
29
  loading = _useFolders.loading;
30
30
  var _useSnackbar = (0, _appAdmin.useSnackbar)(),
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","FolderDialogDelete","folder","open","onClose","useFolders","type","deleteFolder","loading","useSnackbar","showSnackbar","useState","dialogOpen","setDialogOpen","useEffect","folderDisplayName","useMemo","title","length","slice","concat","onSubmit","result","name","Error","message","DELETE"],"sources":["DialogDelete.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from \"react\";\n\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport {\n DialogActions,\n DialogCancel,\n DialogContent,\n DialogOnClose,\n DialogTitle\n} from \"@webiny/ui/Dialog\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\n\nimport { useFolders } from \"~/hooks\";\n\nimport { DialogContainer } from \"./styled\";\n\nconst t = i18n.ns(\"app-headless-cms/app-page-builder/page-details/header/delete-page\");\n\nimport { FolderItem } from \"~/types\";\n\ntype Props = {\n folder: FolderItem;\n open: boolean;\n onClose: DialogOnClose;\n};\n\nexport const FolderDialogDelete = ({ folder, open, onClose }: Props) => {\n const { deleteFolder, loading } = useFolders(folder.type);\n const { showSnackbar } = useSnackbar();\n const [dialogOpen, setDialogOpen] = useState(false);\n\n useEffect(() => {\n setDialogOpen(open);\n }, [open]);\n\n const folderDisplayName = useMemo(\n () => (folder.title.length > 20 ? folder.title.slice(0, 20).concat(\"...\") : folder.title),\n [folder.title]\n );\n\n const onSubmit = async () => {\n try {\n const result = await deleteFolder(folder);\n\n if (result) {\n showSnackbar(\n t`The folder \"{name}\" was deleted successfully.`({\n name: folderDisplayName\n })\n );\n } else {\n throw new Error(\n t`Error while deleting page \"{name}\"!`({\n name: folderDisplayName\n })\n );\n }\n } catch (error) {\n showSnackbar(error.message);\n } finally {\n setDialogOpen(false);\n }\n };\n\n return (\n <DialogContainer open={dialogOpen} onClose={onClose}>\n {loading.DELETE && <CircularProgress label={t`Deleting folder...`} />}\n <DialogTitle>{t`Delete folder`}</DialogTitle>\n <DialogContent>\n {t`You are about to delete the folder \"{name}\"! Are you sure you want to continue?`(\n {\n name: folderDisplayName\n }\n )}\n </DialogContent>\n <DialogActions>\n <DialogCancel\n onClick={() => {\n setDialogOpen(false);\n }}\n >\n {t`Cancel`}\n </DialogCancel>\n <ButtonPrimary\n onClick={() => {\n onSubmit();\n }}\n >\n {t`Delete folder`}\n </ButtonPrimary>\n </DialogActions>\n </DialogContainer>\n );\n};\n"],"mappings":";;;;;;;;;;;;AAAA;AAEA;AACA;AACA;AACA;AAOA;AAEA;AAEA;AAA2C;AAE3C,IAAMA,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,mEAAmE,CAAC;AAU/E,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkB,OAAyC;EAAA,IAAnCC,MAAM,QAANA,MAAM;IAAEC,IAAI,QAAJA,IAAI;IAAEC,OAAO,QAAPA,OAAO;EACtD,kBAAkC,IAAAC,iBAAU,EAACH,MAAM,CAACI,IAAI,CAAC;IAAjDC,YAAY,eAAZA,YAAY;IAAEC,OAAO,eAAPA,OAAO;EAC7B,mBAAyB,IAAAC,qBAAW,GAAE;IAA9BC,YAAY,gBAAZA,YAAY;EACpB,gBAAoC,IAAAC,eAAQ,EAAC,KAAK,CAAC;IAAA;IAA5CC,UAAU;IAAEC,aAAa;EAEhC,IAAAC,gBAAS,EAAC,YAAM;IACZD,aAAa,CAACV,IAAI,CAAC;EACvB,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,IAAMY,iBAAiB,GAAG,IAAAC,cAAO,EAC7B;IAAA,OAAOd,MAAM,CAACe,KAAK,CAACC,MAAM,GAAG,EAAE,GAAGhB,MAAM,CAACe,KAAK,CAACE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAACC,MAAM,CAAC,KAAK,CAAC,GAAGlB,MAAM,CAACe,KAAK;EAAA,CAAC,EACzF,CAACf,MAAM,CAACe,KAAK,CAAC,CACjB;EAED,IAAMI,QAAQ;IAAA,mGAAG;MAAA;MAAA;QAAA;UAAA;YAAA;YAAA;YAAA,OAEYd,YAAY,CAACL,MAAM,CAAC;UAAA;YAAnCoB,MAAM;YAAA,KAERA,MAAM;cAAA;cAAA;YAAA;YACNZ,YAAY,CACRZ,CAAC,mIAAgD;cAC7CyB,IAAI,EAAER;YACV,CAAC,CAAC,CACL;YAAC;YAAA;UAAA;YAAA,MAEI,IAAIS,KAAK,CACX1B,CAAC,2HAAsC;cACnCyB,IAAI,EAAER;YACV,CAAC,CAAC,CACL;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA;YAGLL,YAAY,CAAC,YAAMe,OAAO,CAAC;UAAC;YAAA;YAE5BZ,aAAa,CAAC,KAAK,CAAC;YAAC;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA,CAE5B;IAAA,gBAtBKQ,QAAQ;MAAA;IAAA;EAAA,GAsBb;EAED,oBACI,6BAAC,uBAAe;IAAC,IAAI,EAAET,UAAW;IAAC,OAAO,EAAER;EAAQ,GAC/CI,OAAO,CAACkB,MAAM,iBAAI,6BAAC,0BAAgB;IAAC,KAAK,EAAE5B,CAAC;EAAqB,EAAG,eACrE,6BAAC,mBAAW,QAAEA,CAAC,mGAA8B,eAC7C,6BAAC,qBAAa,QACTA,CAAC,uKACE;IACIyB,IAAI,EAAER;EACV,CAAC,CACJ,CACW,eAChB,6BAAC,qBAAa,qBACV,6BAAC,oBAAY;IACT,OAAO,EAAE,mBAAM;MACXF,aAAa,CAAC,KAAK,CAAC;IACxB;EAAE,GAEDf,CAAC,4FACS,eACf,6BAAC,qBAAa;IACV,OAAO,EAAE,mBAAM;MACXuB,QAAQ,EAAE;IACd;EAAE,GAEDvB,CAAC,mGACU,CACJ,CACF;AAE1B,CAAC;AAAC"}
1
+ {"version":3,"names":["t","i18n","ns","FolderDialogDelete","folder","open","onClose","useFolders","deleteFolder","loading","useSnackbar","showSnackbar","useState","dialogOpen","setDialogOpen","useEffect","folderDisplayName","useMemo","title","length","slice","concat","onSubmit","result","name","Error","message","DELETE"],"sources":["DialogDelete.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from \"react\";\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport {\n DialogActions,\n DialogCancel,\n DialogContent,\n DialogOnClose,\n DialogTitle\n} from \"@webiny/ui/Dialog\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { useFolders } from \"~/hooks\";\nimport { DialogContainer } from \"./styled\";\nconst t = i18n.ns(\"app-aco/dialogs/dialog-delete\");\nimport { FolderItem } from \"~/types\";\n\ninterface FolderDialogDeleteProps {\n folder: Pick<FolderItem, \"id\" | \"title\">;\n open: boolean;\n onClose: DialogOnClose;\n}\n\nexport const FolderDialogDelete: React.VFC<FolderDialogDeleteProps> = ({\n folder,\n open,\n onClose\n}) => {\n const { deleteFolder, loading } = useFolders();\n const { showSnackbar } = useSnackbar();\n const [dialogOpen, setDialogOpen] = useState(false);\n\n useEffect(() => {\n setDialogOpen(open);\n }, [open]);\n\n const folderDisplayName = useMemo(\n () => (folder.title.length > 20 ? folder.title.slice(0, 20).concat(\"...\") : folder.title),\n [folder.title]\n );\n\n const onSubmit = async () => {\n try {\n const result = await deleteFolder(folder);\n\n if (result) {\n showSnackbar(\n t`The folder \"{name}\" was deleted successfully.`({\n name: folderDisplayName\n })\n );\n } else {\n throw new Error(\n t`Error while deleting page \"{name}\"!`({\n name: folderDisplayName\n })\n );\n }\n } catch (error) {\n showSnackbar(error.message);\n } finally {\n setDialogOpen(false);\n }\n };\n\n return (\n <DialogContainer open={dialogOpen} onClose={onClose}>\n {loading.DELETE && <CircularProgress label={t`Deleting folder...`} />}\n <DialogTitle>{t`Delete folder`}</DialogTitle>\n <DialogContent>\n {t`You are about to delete the folder \"{name}\"! Are you sure you want to continue?`(\n {\n name: folderDisplayName\n }\n )}\n </DialogContent>\n <DialogActions>\n <DialogCancel\n onClick={() => {\n setDialogOpen(false);\n }}\n >\n {t`Cancel`}\n </DialogCancel>\n <ButtonPrimary\n onClick={() => {\n onSubmit();\n }}\n >\n {t`Delete folder`}\n </ButtonPrimary>\n </DialogActions>\n </DialogContainer>\n );\n};\n"],"mappings":";;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AAA2C;AAC3C,IAAMA,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,+BAA+B,CAAC;AAS3C,IAAMC,kBAAsD,GAAG,SAAzDA,kBAAsD,OAI7D;EAAA,IAHFC,MAAM,QAANA,MAAM;IACNC,IAAI,QAAJA,IAAI;IACJC,OAAO,QAAPA,OAAO;EAEP,kBAAkC,IAAAC,iBAAU,GAAE;IAAtCC,YAAY,eAAZA,YAAY;IAAEC,OAAO,eAAPA,OAAO;EAC7B,mBAAyB,IAAAC,qBAAW,GAAE;IAA9BC,YAAY,gBAAZA,YAAY;EACpB,gBAAoC,IAAAC,eAAQ,EAAC,KAAK,CAAC;IAAA;IAA5CC,UAAU;IAAEC,aAAa;EAEhC,IAAAC,gBAAS,EAAC,YAAM;IACZD,aAAa,CAACT,IAAI,CAAC;EACvB,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,IAAMW,iBAAiB,GAAG,IAAAC,cAAO,EAC7B;IAAA,OAAOb,MAAM,CAACc,KAAK,CAACC,MAAM,GAAG,EAAE,GAAGf,MAAM,CAACc,KAAK,CAACE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAACC,MAAM,CAAC,KAAK,CAAC,GAAGjB,MAAM,CAACc,KAAK;EAAA,CAAC,EACzF,CAACd,MAAM,CAACc,KAAK,CAAC,CACjB;EAED,IAAMI,QAAQ;IAAA,mGAAG;MAAA;MAAA;QAAA;UAAA;YAAA;YAAA;YAAA,OAEYd,YAAY,CAACJ,MAAM,CAAC;UAAA;YAAnCmB,MAAM;YAAA,KAERA,MAAM;cAAA;cAAA;YAAA;YACNZ,YAAY,CACRX,CAAC,mIAAgD;cAC7CwB,IAAI,EAAER;YACV,CAAC,CAAC,CACL;YAAC;YAAA;UAAA;YAAA,MAEI,IAAIS,KAAK,CACXzB,CAAC,2HAAsC;cACnCwB,IAAI,EAAER;YACV,CAAC,CAAC,CACL;UAAA;YAAA;YAAA;UAAA;YAAA;YAAA;YAGLL,YAAY,CAAC,YAAMe,OAAO,CAAC;UAAC;YAAA;YAE5BZ,aAAa,CAAC,KAAK,CAAC;YAAC;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA,CAE5B;IAAA,gBAtBKQ,QAAQ;MAAA;IAAA;EAAA,GAsBb;EAED,oBACI,6BAAC,uBAAe;IAAC,IAAI,EAAET,UAAW;IAAC,OAAO,EAAEP;EAAQ,GAC/CG,OAAO,CAACkB,MAAM,iBAAI,6BAAC,0BAAgB;IAAC,KAAK,EAAE3B,CAAC;EAAqB,EAAG,eACrE,6BAAC,mBAAW,QAAEA,CAAC,mGAA8B,eAC7C,6BAAC,qBAAa,QACTA,CAAC,uKACE;IACIwB,IAAI,EAAER;EACV,CAAC,CACJ,CACW,eAChB,6BAAC,qBAAa,qBACV,6BAAC,oBAAY;IACT,OAAO,EAAE,mBAAM;MACXF,aAAa,CAAC,KAAK,CAAC;IACxB;EAAE,GAEDd,CAAC,4FACS,eACf,6BAAC,qBAAa;IACV,OAAO,EAAE,mBAAM;MACXsB,QAAQ,EAAE;IACd;EAAE,GAEDtB,CAAC,mGACU,CACJ,CACF;AAE1B,CAAC;AAAC"}
@@ -1,11 +1,10 @@
1
1
  import React from "react";
2
2
  import { DialogOnClose } from "@webiny/ui/Dialog";
3
- import { SearchRecordItem } from "../../types";
4
- declare type Props = {
5
- type: string;
6
- searchRecord: SearchRecordItem;
3
+ import { MovableSearchRecordItem } from "../../types";
4
+ interface EntryDialogMoveProps {
5
+ searchRecord: MovableSearchRecordItem;
7
6
  open: boolean;
8
7
  onClose: DialogOnClose;
9
- };
10
- export declare const EntryDialogMove: React.FC<Props>;
8
+ }
9
+ export declare const EntryDialogMove: React.VFC<EntryDialogMoveProps>;
11
10
  export {};
@@ -20,15 +20,15 @@ var _Typography = require("@webiny/ui/Typography");
20
20
  var _ = require("./..");
21
21
  var _hooks = require("../../hooks");
22
22
  var _styled = require("./styled");
23
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7;
24
- var t = _i18n.i18n.ns("app-aco/components/tree/dialog-move");
23
+ var _constants = require("../../constants");
24
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
25
+ var t = _i18n.i18n.ns("app-aco/dialogs/dialog-move");
25
26
  var EntryDialogMove = function EntryDialogMove(_ref) {
26
- var type = _ref.type,
27
- searchRecord = _ref.searchRecord,
27
+ var searchRecord = _ref.searchRecord,
28
28
  onClose = _ref.onClose,
29
29
  open = _ref.open;
30
- var _useRecords = (0, _hooks.useRecords)(type, searchRecord.location.folderId || "ROOT"),
31
- updateRecord = _useRecords.updateRecord,
30
+ var _useRecords = (0, _hooks.useRecords)(searchRecord.location.folderId || _constants.ROOT_FOLDER),
31
+ moveRecord = _useRecords.moveRecord,
32
32
  loading = _useRecords.loading;
33
33
  var _useState = (0, _react.useState)(false),
34
34
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -42,42 +42,40 @@ var EntryDialogMove = function EntryDialogMove(_ref) {
42
42
  showSnackbar = _useSnackbar.showSnackbar;
43
43
  var onSubmit = /*#__PURE__*/function () {
44
44
  var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
45
- var id, title, _type, content, data;
45
+ var id;
46
46
  return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
47
47
  while (1) switch (_context.prev = _context.next) {
48
48
  case 0:
49
49
  _context.prev = 0;
50
- if (!folderId) {
51
- _context.next = 6;
50
+ if (folderId) {
51
+ _context.next = 4;
52
52
  break;
53
53
  }
54
- id = searchRecord.id, title = searchRecord.title, _type = searchRecord.type, content = searchRecord.content, data = searchRecord.data;
55
- _context.next = 5;
56
- return updateRecord({
54
+ setDialogOpen(false);
55
+ return _context.abrupt("return");
56
+ case 4:
57
+ id = searchRecord.id;
58
+ _context.next = 7;
59
+ return moveRecord({
57
60
  id: id,
58
- title: title,
59
- type: _type,
60
- content: content,
61
- data: data,
62
61
  location: {
63
62
  folderId: folderId
64
63
  }
65
64
  });
66
- case 5:
65
+ case 7:
67
66
  showSnackbar(t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Item moved successfully!"]))));
68
- case 6:
69
67
  setDialogOpen(false);
70
- _context.next = 12;
68
+ _context.next = 14;
71
69
  break;
72
- case 9:
73
- _context.prev = 9;
70
+ case 11:
71
+ _context.prev = 11;
74
72
  _context.t0 = _context["catch"](0);
75
73
  showSnackbar(_context.t0.message);
76
- case 12:
74
+ case 14:
77
75
  case "end":
78
76
  return _context.stop();
79
77
  }
80
- }, _callee, null, [[0, 9]]);
78
+ }, _callee, null, [[0, 11]]);
81
79
  }));
82
80
  return function onSubmit() {
83
81
  return _ref2.apply(this, arguments);
@@ -94,22 +92,17 @@ var EntryDialogMove = function EntryDialogMove(_ref) {
94
92
  }), /*#__PURE__*/_react.default.createElement(_Dialog.DialogContent, null, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
95
93
  use: "body1"
96
94
  }, t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Choose the folder where you want to move the item. You can always create a new one if you prefer."])))), /*#__PURE__*/_react.default.createElement(_styled.DialogFoldersContainer, null, /*#__PURE__*/_react.default.createElement(_.FolderTree, {
97
- title: t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Root folder"]))),
98
- type: type,
99
95
  focusedFolderId: folderId || searchRecord.location.folderId,
100
96
  onFolderClick: function onFolderClick(data) {
101
97
  return setFolderId(data === null || data === void 0 ? void 0 : data.id);
102
98
  },
103
- onTitleClick: function onTitleClick() {
104
- return setFolderId("ROOT");
105
- },
106
99
  enableCreate: true
107
100
  }))), /*#__PURE__*/_react.default.createElement(_Dialog.DialogActions, null, /*#__PURE__*/_react.default.createElement(_Dialog.DialogCancel, {
108
101
  onClick: function onClick() {
109
102
  setDialogOpen(false);
110
103
  }
111
- }, t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["Cancel"])))), /*#__PURE__*/_react.default.createElement(_Button.ButtonPrimary, {
104
+ }, t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Cancel"])))), /*#__PURE__*/_react.default.createElement(_Button.ButtonPrimary, {
112
105
  onClick: onSubmit
113
- }, t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Move item"])))))));
106
+ }, t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["Move item"])))))));
114
107
  };
115
108
  exports.EntryDialogMove = EntryDialogMove;
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","EntryDialogMove","type","searchRecord","onClose","open","useRecords","location","folderId","updateRecord","loading","useState","dialogOpen","setDialogOpen","setFolderId","useSnackbar","showSnackbar","onSubmit","id","title","content","data","message","useEffect","UPDATE"],"sources":["DialogMove.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\n\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport {\n DialogTitle,\n DialogActions,\n DialogContent,\n DialogOnClose,\n DialogCancel\n} from \"@webiny/ui/Dialog\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { Typography } from \"@webiny/ui/Typography\";\n\nimport { FolderTree } from \"~/components\";\nimport { useRecords } from \"~/hooks\";\n\nimport { DialogContainer, DialogFoldersContainer } from \"./styled\";\n\nimport { SearchRecordItem } from \"~/types\";\n\ntype Props = {\n type: string;\n searchRecord: SearchRecordItem;\n open: boolean;\n onClose: DialogOnClose;\n};\n\nconst t = i18n.ns(\"app-aco/components/tree/dialog-move\");\n\nexport const EntryDialogMove: React.FC<Props> = ({ type, searchRecord, onClose, open }) => {\n const { updateRecord, loading } = useRecords(type, searchRecord.location.folderId || \"ROOT\");\n const [dialogOpen, setDialogOpen] = useState(false);\n const [folderId, setFolderId] = useState<string>();\n const { showSnackbar } = useSnackbar();\n\n const onSubmit = async () => {\n try {\n if (folderId) {\n const { id, title, type, content, data } = searchRecord;\n await updateRecord({\n id,\n title,\n type,\n content,\n data,\n location: {\n folderId\n }\n });\n\n showSnackbar(t`Item moved successfully!`);\n }\n setDialogOpen(false);\n } catch (error) {\n showSnackbar(error.message);\n }\n };\n\n useEffect(() => {\n setDialogOpen(open);\n }, [open]);\n\n return (\n <DialogContainer open={dialogOpen} onClose={onClose}>\n {dialogOpen && (\n <>\n <DialogTitle>{t`Move item`}</DialogTitle>\n {loading.UPDATE && <CircularProgress label={t`Moving item...`} />}\n <DialogContent>\n <Typography use=\"body1\">{t`Choose the folder where you want to move the item. You can always create a new one if you prefer.`}</Typography>\n <DialogFoldersContainer>\n <FolderTree\n title={t`Root folder`}\n type={type}\n focusedFolderId={folderId || searchRecord.location.folderId}\n onFolderClick={data => setFolderId(data?.id)}\n onTitleClick={() => setFolderId(\"ROOT\")}\n enableCreate={true}\n />\n </DialogFoldersContainer>\n </DialogContent>\n <DialogActions>\n <DialogCancel\n onClick={() => {\n setDialogOpen(false);\n }}\n >\n {t`Cancel`}\n </DialogCancel>\n <ButtonPrimary onClick={onSubmit}>{t`Move item`}</ButtonPrimary>\n </DialogActions>\n </>\n )}\n </DialogContainer>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["t","i18n","ns","EntryDialogMove","searchRecord","onClose","open","useRecords","location","folderId","ROOT_FOLDER","moveRecord","loading","useState","dialogOpen","setDialogOpen","setFolderId","useSnackbar","showSnackbar","onSubmit","id","message","useEffect","UPDATE","data"],"sources":["DialogMove.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport {\n DialogActions,\n DialogCancel,\n DialogContent,\n DialogOnClose,\n DialogTitle\n} from \"@webiny/ui/Dialog\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { FolderTree } from \"~/components\";\nimport { useRecords } from \"~/hooks\";\nimport { DialogContainer, DialogFoldersContainer } from \"./styled\";\nimport { MovableSearchRecordItem } from \"~/types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\ninterface EntryDialogMoveProps {\n searchRecord: MovableSearchRecordItem;\n open: boolean;\n onClose: DialogOnClose;\n}\n\nconst t = i18n.ns(\"app-aco/dialogs/dialog-move\");\n\nexport const EntryDialogMove: React.VFC<EntryDialogMoveProps> = ({\n searchRecord,\n onClose,\n open\n}) => {\n const { moveRecord, loading } = useRecords(searchRecord.location.folderId || ROOT_FOLDER);\n const [dialogOpen, setDialogOpen] = useState(false);\n const [folderId, setFolderId] = useState<string>();\n const { showSnackbar } = useSnackbar();\n\n const onSubmit = async () => {\n try {\n if (!folderId) {\n setDialogOpen(false);\n return;\n }\n const { id } = searchRecord;\n await moveRecord({\n id,\n location: {\n folderId\n }\n });\n\n showSnackbar(t`Item moved successfully!`);\n setDialogOpen(false);\n } catch (error) {\n showSnackbar(error.message);\n }\n };\n\n useEffect(() => {\n setDialogOpen(open);\n }, [open]);\n\n return (\n <DialogContainer open={dialogOpen} onClose={onClose}>\n {dialogOpen && (\n <>\n <DialogTitle>{t`Move item`}</DialogTitle>\n {loading.UPDATE && <CircularProgress label={t`Moving item...`} />}\n <DialogContent>\n <Typography use=\"body1\">{t`Choose the folder where you want to move the item. You can always create a new one if you prefer.`}</Typography>\n <DialogFoldersContainer>\n <FolderTree\n focusedFolderId={folderId || searchRecord.location.folderId}\n onFolderClick={data => setFolderId(data?.id)}\n enableCreate={true}\n />\n </DialogFoldersContainer>\n </DialogContent>\n <DialogActions>\n <DialogCancel\n onClick={() => {\n setDialogOpen(false);\n }}\n >\n {t`Cancel`}\n </DialogCancel>\n <ButtonPrimary onClick={onSubmit}>{t`Move item`}</ButtonPrimary>\n </DialogActions>\n </>\n )}\n </DialogContainer>\n );\n};\n"],"mappings":";;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AAEA;AAA0C;AAQ1C,IAAMA,CAAC,GAAGC,UAAI,CAACC,EAAE,CAAC,6BAA6B,CAAC;AAEzC,IAAMC,eAAgD,GAAG,SAAnDA,eAAgD,OAIvD;EAAA,IAHFC,YAAY,QAAZA,YAAY;IACZC,OAAO,QAAPA,OAAO;IACPC,IAAI,QAAJA,IAAI;EAEJ,kBAAgC,IAAAC,iBAAU,EAACH,YAAY,CAACI,QAAQ,CAACC,QAAQ,IAAIC,sBAAW,CAAC;IAAjFC,UAAU,eAAVA,UAAU;IAAEC,OAAO,eAAPA,OAAO;EAC3B,gBAAoC,IAAAC,eAAQ,EAAC,KAAK,CAAC;IAAA;IAA5CC,UAAU;IAAEC,aAAa;EAChC,iBAAgC,IAAAF,eAAQ,GAAU;IAAA;IAA3CJ,QAAQ;IAAEO,WAAW;EAC5B,mBAAyB,IAAAC,qBAAW,GAAE;IAA9BC,YAAY,gBAAZA,YAAY;EAEpB,IAAMC,QAAQ;IAAA,mGAAG;MAAA;MAAA;QAAA;UAAA;YAAA;YAAA,IAEJV,QAAQ;cAAA;cAAA;YAAA;YACTM,aAAa,CAAC,KAAK,CAAC;YAAC;UAAA;YAGjBK,EAAE,GAAKhB,YAAY,CAAnBgB,EAAE;YAAA;YAAA,OACJT,UAAU,CAAC;cACbS,EAAE,EAAFA,EAAE;cACFZ,QAAQ,EAAE;gBACNC,QAAQ,EAARA;cACJ;YACJ,CAAC,CAAC;UAAA;YAEFS,YAAY,CAAClB,CAAC,4GAA2B;YACzCe,aAAa,CAAC,KAAK,CAAC;YAAC;YAAA;UAAA;YAAA;YAAA;YAErBG,YAAY,CAAC,YAAMG,OAAO,CAAC;UAAC;UAAA;YAAA;QAAA;MAAA;IAAA,CAEnC;IAAA,gBAnBKF,QAAQ;MAAA;IAAA;EAAA,GAmBb;EAED,IAAAG,gBAAS,EAAC,YAAM;IACZP,aAAa,CAACT,IAAI,CAAC;EACvB,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,oBACI,6BAAC,uBAAe;IAAC,IAAI,EAAEQ,UAAW;IAAC,OAAO,EAAET;EAAQ,GAC/CS,UAAU,iBACP,yEACI,6BAAC,mBAAW,QAAEd,CAAC,+FAA0B,EACxCY,OAAO,CAACW,MAAM,iBAAI,6BAAC,0BAAgB;IAAC,KAAK,EAAEvB,CAAC;EAAiB,EAAG,eACjE,6BAAC,qBAAa,qBACV,6BAAC,sBAAU;IAAC,GAAG,EAAC;EAAO,GAAEA,CAAC,uLAAiH,eAC3I,6BAAC,8BAAsB,qBACnB,6BAAC,YAAU;IACP,eAAe,EAAES,QAAQ,IAAIL,YAAY,CAACI,QAAQ,CAACC,QAAS;IAC5D,aAAa,EAAE,uBAAAe,IAAI;MAAA,OAAIR,WAAW,CAACQ,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEJ,EAAE,CAAC;IAAA,CAAC;IAC7C,YAAY,EAAE;EAAK,EACrB,CACmB,CACb,eAChB,6BAAC,qBAAa,qBACV,6BAAC,oBAAY;IACT,OAAO,EAAE,mBAAM;MACXL,aAAa,CAAC,KAAK,CAAC;IACxB;EAAE,GAEDf,CAAC,4FACS,eACf,6BAAC,qBAAa;IAAC,OAAO,EAAEmB;EAAS,GAAEnB,CAAC,+FAA4B,CACpD,CAEvB,CACa;AAE1B,CAAC;AAAC"}
@@ -1,10 +1,10 @@
1
1
  import React from "react";
2
2
  import { DialogOnClose } from "@webiny/ui/Dialog";
3
3
  import { FolderItem } from "../../types";
4
- declare type Props = {
4
+ interface FolderDialogUpdateProps {
5
5
  folder: FolderItem;
6
6
  open: boolean;
7
7
  onClose: DialogOnClose;
8
- };
9
- export declare const FolderDialogUpdate: React.FC<Props>;
8
+ }
9
+ export declare const FolderDialogUpdate: React.VFC<FolderDialogUpdateProps>;
10
10
  export {};
@@ -25,13 +25,14 @@ var _validation = require("@webiny/validation");
25
25
  var _ = require("./..");
26
26
  var _useFolders2 = require("../../hooks/useFolders");
27
27
  var _styled = require("./styled");
28
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
29
- var t = _i18n.i18n.ns("app-aco/components/tree/dialog-update");
28
+ var _constants = require("../../constants");
29
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
30
+ var t = _i18n.i18n.ns("app-aco/dialogs/dialog-update");
30
31
  var FolderDialogUpdate = function FolderDialogUpdate(_ref) {
31
32
  var folder = _ref.folder,
32
33
  onClose = _ref.onClose,
33
34
  open = _ref.open;
34
- var _useFolders = (0, _useFolders2.useFolders)(folder.type),
35
+ var _useFolders = (0, _useFolders2.useFolders)(),
35
36
  loading = _useFolders.loading,
36
37
  updateFolder = _useFolders.updateFolder;
37
38
  var _useState = (0, _react.useState)(false),
@@ -113,23 +114,18 @@ var FolderDialogUpdate = function FolderDialogUpdate(_ref) {
113
114
  }, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
114
115
  use: "body1"
115
116
  }, t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["Parent folder"])))), /*#__PURE__*/_react.default.createElement(_styled.DialogFoldersContainer, null, /*#__PURE__*/_react.default.createElement(_.FolderTree, {
116
- title: t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Root folder"]))),
117
- type: folder.type,
118
- focusedFolderId: parentId || undefined,
117
+ focusedFolderId: parentId || _constants.ROOT_FOLDER,
119
118
  hiddenFolderIds: [folder.id],
120
119
  onFolderClick: function onFolderClick(data) {
121
- return setParentId((data === null || data === void 0 ? void 0 : data.id) || null);
122
- },
123
- onTitleClick: function onTitleClick() {
124
- return setParentId(null);
120
+ return setParentId(data.id === _constants.ROOT_FOLDER ? null : data.id);
125
121
  }
126
122
  }))))), /*#__PURE__*/_react.default.createElement(_Dialog.DialogActions, null, /*#__PURE__*/_react.default.createElement(_Dialog.DialogCancel, {
127
123
  onClick: function onClick() {
128
124
  setDialogOpen(false);
129
125
  }
130
- }, t(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["Cancel"])))), /*#__PURE__*/_react.default.createElement(_Button.ButtonPrimary, {
126
+ }, t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Cancel"])))), /*#__PURE__*/_react.default.createElement(_Button.ButtonPrimary, {
131
127
  onClick: submit
132
- }, t(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["Update Folder"]))))));
128
+ }, t(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["Update Folder"]))))));
133
129
  })));
134
130
  };
135
131
  exports.FolderDialogUpdate = FolderDialogUpdate;
@@ -1 +1 @@
1
- {"version":3,"names":["t","i18n","ns","FolderDialogUpdate","folder","onClose","open","useFolders","type","loading","updateFolder","useState","dialogOpen","setDialogOpen","parentId","setParentId","useSnackbar","showSnackbar","onSubmit","data","message","useEffect","title","slug","Bind","submit","UPDATE","validation","create","undefined","id"],"sources":["DialogUpdate.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\n\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { Form, FormOnSubmit } from \"@webiny/form\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport {\n DialogTitle,\n DialogActions,\n DialogContent,\n DialogOnClose,\n DialogCancel\n} from \"@webiny/ui/Dialog\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { validation } from \"@webiny/validation\";\n\nimport { FolderTree } from \"~/components\";\nimport { useFolders } from \"~/hooks/useFolders\";\n\nimport { DialogContainer, DialogFoldersContainer } from \"./styled\";\n\nimport { FolderItem } from \"~/types\";\n\ntype Props = {\n folder: FolderItem;\n open: boolean;\n onClose: DialogOnClose;\n};\n\ntype SubmitData = Pick<FolderItem, \"title\" | \"slug\">;\n\nconst t = i18n.ns(\"app-aco/components/tree/dialog-update\");\n\nexport const FolderDialogUpdate: React.FC<Props> = ({ folder, onClose, open }) => {\n const { loading, updateFolder } = useFolders(folder.type);\n const [dialogOpen, setDialogOpen] = useState(false);\n const [parentId, setParentId] = useState<string | null>();\n const { showSnackbar } = useSnackbar();\n\n const onSubmit: FormOnSubmit<SubmitData> = async data => {\n try {\n await updateFolder({\n ...folder,\n ...data,\n parentId: parentId || null\n });\n setDialogOpen(false);\n showSnackbar(t`Folder updated successfully!`);\n } catch (error) {\n showSnackbar(error.message);\n }\n };\n\n useEffect(() => {\n setParentId(folder.parentId);\n }, [folder.parentId]);\n\n useEffect(() => {\n setDialogOpen(open);\n }, [open]);\n\n return (\n <DialogContainer open={dialogOpen} onClose={onClose}>\n {dialogOpen && (\n <>\n <Form<SubmitData>\n onSubmit={onSubmit}\n data={{\n title: folder.title,\n slug: folder.slug\n }}\n >\n {({ Bind, submit }) => (\n <>\n {loading.UPDATE && (\n <CircularProgress label={t`Updating folder...`} />\n )}\n <DialogTitle>{t`Update folder`}</DialogTitle>\n <DialogContent>\n <Grid>\n <Cell span={12}>\n <Bind\n name={\"title\"}\n validators={[\n validation.create(\"required,minLength:3\")\n ]}\n >\n <Input label={t`Title`} />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Bind\n name={\"slug\"}\n validators={[\n validation.create(\"required,minLength:3,slug\")\n ]}\n >\n <Input label={t`Slug`} value={folder.slug} />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Typography use=\"body1\">{t`Parent folder`}</Typography>\n <DialogFoldersContainer>\n <FolderTree\n title={t`Root folder`}\n type={folder.type}\n focusedFolderId={parentId || undefined}\n hiddenFolderIds={[folder.id]}\n onFolderClick={data =>\n setParentId(data?.id || null)\n }\n onTitleClick={() => setParentId(null)}\n />\n </DialogFoldersContainer>\n </Cell>\n </Grid>\n </DialogContent>\n <DialogActions>\n <DialogCancel\n onClick={() => {\n setDialogOpen(false);\n }}\n >\n {t`Cancel`}\n </DialogCancel>\n <ButtonPrimary onClick={submit}>\n {t`Update Folder`}\n </ButtonPrimary>\n </DialogActions>\n </>\n )}\n </Form>\n </>\n )}\n </DialogContainer>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["t","i18n","ns","FolderDialogUpdate","folder","onClose","open","useFolders","loading","updateFolder","useState","dialogOpen","setDialogOpen","parentId","setParentId","useSnackbar","showSnackbar","onSubmit","data","message","useEffect","title","slug","Bind","submit","UPDATE","validation","create","ROOT_FOLDER","id"],"sources":["DialogUpdate.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { useSnackbar } from \"@webiny/app-admin\";\nimport { Form, FormOnSubmit } from \"@webiny/form\";\nimport { ButtonPrimary } from \"@webiny/ui/Button\";\nimport {\n DialogTitle,\n DialogActions,\n DialogContent,\n DialogOnClose,\n DialogCancel\n} from \"@webiny/ui/Dialog\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { validation } from \"@webiny/validation\";\nimport { FolderTree } from \"~/components\";\nimport { useFolders } from \"~/hooks/useFolders\";\nimport { DialogContainer, DialogFoldersContainer } from \"./styled\";\nimport { FolderItem } from \"~/types\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\ninterface FolderDialogUpdateProps {\n folder: FolderItem;\n open: boolean;\n onClose: DialogOnClose;\n}\n\ntype SubmitData = Pick<FolderItem, \"title\" | \"slug\">;\n\nconst t = i18n.ns(\"app-aco/dialogs/dialog-update\");\n\nexport const FolderDialogUpdate: React.VFC<FolderDialogUpdateProps> = ({\n folder,\n onClose,\n open\n}) => {\n const { loading, updateFolder } = useFolders();\n const [dialogOpen, setDialogOpen] = useState(false);\n const [parentId, setParentId] = useState<string | null>();\n const { showSnackbar } = useSnackbar();\n\n const onSubmit: FormOnSubmit<SubmitData> = async data => {\n try {\n await updateFolder({\n ...folder,\n ...data,\n parentId: parentId || null\n });\n setDialogOpen(false);\n showSnackbar(t`Folder updated successfully!`);\n } catch (error) {\n showSnackbar(error.message);\n }\n };\n\n useEffect(() => {\n setParentId(folder.parentId);\n }, [folder.parentId]);\n\n useEffect(() => {\n setDialogOpen(open);\n }, [open]);\n\n return (\n <DialogContainer open={dialogOpen} onClose={onClose}>\n {dialogOpen && (\n <>\n <Form<SubmitData>\n onSubmit={onSubmit}\n data={{\n title: folder.title,\n slug: folder.slug\n }}\n >\n {({ Bind, submit }) => (\n <>\n {loading.UPDATE && (\n <CircularProgress label={t`Updating folder...`} />\n )}\n <DialogTitle>{t`Update folder`}</DialogTitle>\n <DialogContent>\n <Grid>\n <Cell span={12}>\n <Bind\n name={\"title\"}\n validators={[\n validation.create(\"required,minLength:3\")\n ]}\n >\n <Input label={t`Title`} />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Bind\n name={\"slug\"}\n validators={[\n validation.create(\"required,minLength:3,slug\")\n ]}\n >\n <Input label={t`Slug`} value={folder.slug} />\n </Bind>\n </Cell>\n <Cell span={12}>\n <Typography use=\"body1\">{t`Parent folder`}</Typography>\n <DialogFoldersContainer>\n <FolderTree\n focusedFolderId={parentId || ROOT_FOLDER}\n hiddenFolderIds={[folder.id]}\n onFolderClick={data =>\n setParentId(\n data.id === ROOT_FOLDER ? null : data.id\n )\n }\n />\n </DialogFoldersContainer>\n </Cell>\n </Grid>\n </DialogContent>\n <DialogActions>\n <DialogCancel\n onClick={() => {\n setDialogOpen(false);\n }}\n >\n {t`Cancel`}\n </DialogCancel>\n <ButtonPrimary onClick={submit}>\n {t`Update Folder`}\n </ButtonPrimary>\n </DialogActions>\n </>\n )}\n </Form>\n </>\n )}\n </DialogContainer>\n );\n};\n"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export * from "./DialogCreate";
2
2
  export * from "./DialogDelete";
3
+ export * from "./DialogMove";
3
4
  export * from "./DialogUpdate";
@@ -25,6 +25,17 @@ Object.keys(_DialogDelete).forEach(function (key) {
25
25
  }
26
26
  });
27
27
  });
28
+ var _DialogMove = require("./DialogMove");
29
+ Object.keys(_DialogMove).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _DialogMove[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _DialogMove[key];
36
+ }
37
+ });
38
+ });
28
39
  var _DialogUpdate = require("./DialogUpdate");
29
40
  Object.keys(_DialogUpdate).forEach(function (key) {
30
41
  if (key === "default" || key === "__esModule") return;
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["index.tsx"],"sourcesContent":["export * from \"./DialogCreate\";\nexport * from \"./DialogDelete\";\nexport * from \"./DialogUpdate\";\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"names":[],"sources":["index.tsx"],"sourcesContent":["export * from \"./DialogCreate\";\nexport * from \"./DialogDelete\";\nexport * from \"./DialogMove\";\nexport * from \"./DialogUpdate\";\n"],"mappings":";;;;;AAAA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}