@webiny/app-aco 5.37.0-beta.0 → 5.37.0-beta.1
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/Folders.d.ts +2 -0
- package/Folders.js +22 -0
- package/Folders.js.map +1 -0
- package/components/Dialogs/DialogCreate.d.ts +2 -3
- package/components/Dialogs/DialogCreate.js +32 -35
- package/components/Dialogs/DialogCreate.js.map +1 -1
- package/components/Dialogs/DialogDelete.d.ts +3 -3
- package/components/Dialogs/DialogDelete.js +1 -1
- package/components/Dialogs/DialogDelete.js.map +1 -1
- package/components/Dialogs/DialogMove.d.ts +4 -5
- package/components/Dialogs/DialogMove.js +22 -30
- package/components/Dialogs/DialogMove.js.map +1 -1
- package/components/Dialogs/DialogUpdate.d.ts +2 -2
- package/components/Dialogs/DialogUpdate.js +9 -13
- package/components/Dialogs/DialogUpdate.js.map +1 -1
- package/components/Dialogs/index.js.map +1 -1
- package/components/Dialogs/styled.js.map +1 -1
- package/components/FolderGrid/ActionDelete.js.map +1 -1
- package/components/FolderGrid/ActionEdit.js.map +1 -1
- package/components/FolderGrid/Folder.js.map +1 -1
- package/components/FolderGrid/FolderGrid.js.map +1 -1
- package/components/FolderGrid/index.js.map +1 -1
- package/components/FolderGrid/styled.js.map +1 -1
- package/components/FolderTree/ButtonCreate/index.js +1 -1
- package/components/FolderTree/ButtonCreate/index.js.map +1 -1
- package/components/FolderTree/ButtonCreate/styled.js.map +1 -1
- package/components/FolderTree/Empty/index.js.map +1 -1
- package/components/FolderTree/Empty/styled.js.map +1 -1
- package/components/FolderTree/List/index.d.ts +4 -8
- package/components/FolderTree/List/index.js +27 -30
- package/components/FolderTree/List/index.js.map +1 -1
- package/components/FolderTree/List/utils.d.ts +3 -3
- package/components/FolderTree/List/utils.js +6 -18
- package/components/FolderTree/List/utils.js.map +1 -1
- package/components/FolderTree/Loader/index.d.ts +4 -2
- package/components/FolderTree/Loader/index.js +3 -2
- package/components/FolderTree/Loader/index.js.map +1 -1
- package/components/FolderTree/Loader/styled.js +2 -2
- package/components/FolderTree/Loader/styled.js.map +1 -1
- package/components/FolderTree/MenuActions/index.js.map +1 -1
- package/components/FolderTree/MenuActions/styled.js.map +1 -1
- package/components/FolderTree/Node/index.d.ts +7 -6
- package/components/FolderTree/Node/index.js +25 -10
- package/components/FolderTree/Node/index.js.map +1 -1
- package/components/FolderTree/Node/styled.js +1 -1
- package/components/FolderTree/Node/styled.js.map +1 -1
- package/components/FolderTree/NodePreview/index.d.ts +2 -2
- package/components/FolderTree/NodePreview/index.js +2 -1
- package/components/FolderTree/NodePreview/index.js.map +1 -1
- package/components/FolderTree/NodePreview/styled.js.map +1 -1
- package/components/FolderTree/Placeholder/index.d.ts +2 -2
- package/components/FolderTree/Placeholder/index.js.map +1 -1
- package/components/FolderTree/Placeholder/styled.js.map +1 -1
- package/components/FolderTree/index.d.ts +7 -10
- package/components/FolderTree/index.js +30 -30
- package/components/FolderTree/index.js.map +1 -1
- package/components/FolderTree/styled.js +1 -1
- package/components/FolderTree/styled.js.map +1 -1
- package/components/Search/Search.d.ts +7 -0
- package/components/Search/Search.js +19 -0
- package/components/Search/Search.js.map +1 -0
- package/components/Search/index.d.ts +1 -0
- package/components/{TagList → Search}/index.js +4 -4
- package/components/Search/index.js.map +1 -0
- package/components/Search/styled.d.ts +7 -0
- package/components/Search/styled.js +13 -0
- package/components/Search/styled.js.map +1 -0
- package/components/index.d.ts +1 -1
- package/components/index.js +4 -4
- package/components/index.js.map +1 -1
- package/constants.d.ts +1 -0
- package/constants.js +8 -0
- package/constants.js.map +1 -0
- package/contexts/DisplayError/index.d.ts +6 -0
- package/contexts/DisplayError/index.js +38 -0
- package/contexts/DisplayError/index.js.map +1 -0
- package/contexts/FoldersApi/FoldersApiProvider.d.ts +23 -0
- package/contexts/FoldersApi/FoldersApiProvider.js +332 -0
- package/contexts/FoldersApi/FoldersApiProvider.js.map +1 -0
- package/contexts/FoldersApi/index.d.ts +2 -0
- package/contexts/FoldersApi/index.js +27 -0
- package/contexts/FoldersApi/index.js.map +1 -0
- package/contexts/FoldersApi/useFoldersApi.d.ts +2 -0
- package/contexts/FoldersApi/useFoldersApi.js +15 -0
- package/contexts/FoldersApi/useFoldersApi.js.map +1 -0
- package/contexts/acoList.d.ts +34 -0
- package/contexts/acoList.js +298 -0
- package/contexts/acoList.js.map +1 -0
- package/contexts/app.d.ts +35 -0
- package/contexts/app.js +197 -0
- package/contexts/app.js.map +1 -0
- package/contexts/folders.d.ts +8 -6
- package/contexts/folders.js +142 -240
- package/contexts/folders.js.map +1 -1
- package/contexts/index.d.ts +1 -2
- package/contexts/index.js +12 -12
- package/contexts/index.js.map +1 -1
- package/contexts/navigateFolder.d.ts +18 -0
- package/contexts/navigateFolder.js +72 -0
- package/contexts/navigateFolder.js.map +1 -0
- package/contexts/navigateFolderWithRouter.d.ts +8 -0
- package/contexts/navigateFolderWithRouter.js +92 -0
- package/contexts/navigateFolderWithRouter.js.map +1 -0
- package/contexts/records.d.ts +17 -26
- package/contexts/records.js +524 -383
- package/contexts/records.js.map +1 -1
- package/dialogs/Dialog.d.ts +15 -0
- package/dialogs/Dialog.js +43 -0
- package/dialogs/Dialog.js.map +1 -0
- package/dialogs/dialogs.d.ts +31 -0
- package/dialogs/dialogs.js +120 -0
- package/dialogs/dialogs.js.map +1 -0
- package/dialogs/index.d.ts +4 -0
- package/dialogs/index.js +49 -0
- package/dialogs/index.js.map +1 -0
- package/dialogs/styled.d.ts +18 -0
- package/dialogs/styled.js +24 -0
- package/dialogs/styled.js.map +1 -0
- package/dialogs/useDialogsContext.d.ts +2 -0
- package/dialogs/useDialogsContext.js +16 -0
- package/dialogs/useDialogsContext.js.map +1 -0
- package/dialogs/useMoveToFolderDialog.d.ts +22 -0
- package/dialogs/useMoveToFolderDialog.js +74 -0
- package/dialogs/useMoveToFolderDialog.js.map +1 -0
- package/graphql/app.gql.d.ts +17 -0
- package/graphql/app.gql.js +14 -0
- package/graphql/app.gql.js.map +1 -0
- package/graphql/folders.gql.js +1 -1
- package/graphql/folders.gql.js.map +1 -1
- package/graphql/records/common.d.ts +4 -0
- package/graphql/records/common.js +47 -0
- package/graphql/records/common.js.map +1 -0
- package/graphql/records/createRecord.d.ts +2 -0
- package/graphql/records/createRecord.js +19 -0
- package/graphql/records/createRecord.js.map +1 -0
- package/graphql/records/deleteRecord.d.ts +2 -0
- package/graphql/records/deleteRecord.js +19 -0
- package/graphql/records/deleteRecord.js.map +1 -0
- package/graphql/records/getRecord.d.ts +2 -0
- package/graphql/records/getRecord.js +20 -0
- package/graphql/records/getRecord.js.map +1 -0
- package/graphql/records/listRecords.d.ts +2 -0
- package/graphql/records/listRecords.js +29 -0
- package/graphql/records/listRecords.js.map +1 -0
- package/graphql/records/listTags.d.ts +2 -0
- package/graphql/records/listTags.js +19 -0
- package/graphql/records/listTags.js.map +1 -0
- package/graphql/records/moveRecord.d.ts +2 -0
- package/graphql/records/moveRecord.js +19 -0
- package/graphql/records/moveRecord.js.map +1 -0
- package/graphql/records/types.d.ts +108 -0
- package/graphql/records/types.js +5 -0
- package/graphql/records/types.js.map +1 -0
- package/graphql/records/updateRecord.d.ts +2 -0
- package/graphql/records/updateRecord.js +19 -0
- package/graphql/records/updateRecord.js.map +1 -0
- package/graphql/records.gql.d.ts +7 -6
- package/graphql/records.gql.js +77 -20
- package/graphql/records.gql.js.map +1 -1
- package/handlers.d.ts +7 -2
- package/handlers.js +36 -2
- package/handlers.js.map +1 -1
- package/hooks/index.d.ts +3 -0
- package/hooks/index.js +39 -1
- package/hooks/index.js.map +1 -1
- package/hooks/useAcoApp.d.ts +2 -0
- package/hooks/useAcoApp.js +25 -0
- package/hooks/useAcoApp.js.map +1 -0
- package/hooks/useAcoList.d.ts +3 -33
- package/hooks/useAcoList.js +6 -141
- package/hooks/useAcoList.js.map +1 -1
- package/hooks/useFolders.d.ts +8 -8
- package/hooks/useFolders.js +15 -25
- package/hooks/useFolders.js.map +1 -1
- package/hooks/useNavigateFolder.d.ts +2 -0
- package/hooks/useNavigateFolder.js +16 -0
- package/hooks/useNavigateFolder.js.map +1 -0
- package/hooks/useRecords.d.ts +12 -18
- package/hooks/useRecords.js +33 -16
- package/hooks/useRecords.js.map +1 -1
- package/hooks/useTags.d.ts +1 -6
- package/hooks/useTags.js +10 -19
- package/hooks/useTags.js.map +1 -1
- package/index.d.ts +5 -2
- package/index.js +51 -32
- package/index.js.map +1 -1
- package/package.json +22 -16
- package/sorting.d.ts +9 -3
- package/sorting.js +38 -12
- package/sorting.js.map +1 -1
- package/types.d.ts +40 -114
- package/types.js +11 -13
- package/types.js.map +1 -1
- package/components/FolderTree/List/constants.d.ts +0 -1
- package/components/FolderTree/List/constants.js +0 -8
- package/components/FolderTree/List/constants.js.map +0 -1
- package/components/FolderTree/Title/index.d.ts +0 -9
- package/components/FolderTree/Title/index.js +0 -24
- package/components/FolderTree/Title/index.js.map +0 -1
- package/components/FolderTree/Title/styled.d.ts +0 -16
- package/components/FolderTree/Title/styled.js +0 -24
- package/components/FolderTree/Title/styled.js.map +0 -1
- package/components/TagList/Empty.d.ts +0 -6
- package/components/TagList/Empty.js +0 -22
- package/components/TagList/Empty.js.map +0 -1
- package/components/TagList/Loader.d.ts +0 -2
- package/components/TagList/Loader.js +0 -19
- package/components/TagList/Loader.js.map +0 -1
- package/components/TagList/Tag.d.ts +0 -9
- package/components/TagList/Tag.js +0 -28
- package/components/TagList/Tag.js.map +0 -1
- package/components/TagList/TagList.d.ts +0 -14
- package/components/TagList/TagList.js +0 -65
- package/components/TagList/TagList.js.map +0 -1
- package/components/TagList/index.d.ts +0 -1
- package/components/TagList/index.js.map +0 -1
- package/components/TagList/styled.d.ts +0 -27
- package/components/TagList/styled.js +0 -35
- package/components/TagList/styled.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_store","_interopRequireDefault","_constants","_excluded","NavigateFolderContext","React","createContext","undefined","exports","NavigateFolderProvider","_ref","currentFolderId","folderId","children","createStorageKey","props","_objectWithoutProperties2","default","setFolderToStorage","useCallback","newFolderId","store","set","getFolderFromStorage","get","toLowerCase","useEffect","setTimeout","navigateToLatestFolder","storageFolderId","ROOT_FOLDER","navigateToFolder","navigateToListHome","remove","context","createElement","Provider","value"],"sources":["navigateFolder.tsx"],"sourcesContent":["import React, { useCallback, useEffect } from \"react\";\nimport store from \"store\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport interface NavigateFolderContext {\n currentFolderId?: string;\n setFolderToStorage: (folderId?: string) => void;\n navigateToListHome: () => void;\n navigateToFolder: (folder?: string) => void;\n navigateToLatestFolder: () => void;\n}\n\nexport const NavigateFolderContext = React.createContext<NavigateFolderContext | undefined>(\n undefined\n);\n\nexport interface NavigateFolderProviderProps {\n folderId: string | undefined;\n children: React.ReactNode;\n navigateToListHome: () => void;\n navigateToFolder: (folderId: string) => void;\n navigateToLatestFolder: (folderId: string) => void;\n createStorageKey: () => string;\n}\n\nexport const NavigateFolderProvider: React.VFC<NavigateFolderProviderProps> = ({\n folderId: currentFolderId,\n children,\n createStorageKey,\n ...props\n}) => {\n /**\n * Helper function to set the current folderId to local storage:\n * we export this function to call it programmatically when we need it and\n * persist the value on view switch.\n */\n const setFolderToStorage = useCallback(\n (newFolderId?: string): void => {\n store.set(createStorageKey(), newFolderId);\n },\n [createStorageKey]\n );\n\n /**\n * Helper function to get the current folderId to local storage.\n * NOTE: with 5.37.0 we moved from \"ROOT\" to \"root\" as home folderId,\n * we need to return the lowercase value.\n */\n const getFolderFromStorage = useCallback((): string | undefined => {\n const folderId = store.get(createStorageKey()) as string | undefined;\n return folderId?.toLowerCase();\n }, [createStorageKey]);\n\n useEffect(() => {\n setTimeout(() => {\n // Defer navigation to next tick.\n navigateToLatestFolder();\n });\n }, []);\n\n /**\n * Navigate to the latest folder, considering the latest visited folder.\n */\n const navigateToLatestFolder = useCallback(() => {\n const storageFolderId = getFolderFromStorage();\n props.navigateToLatestFolder(currentFolderId || storageFolderId || ROOT_FOLDER);\n }, [currentFolderId]);\n\n const navigateToFolder = useCallback(\n (folderId?: string) => {\n setFolderToStorage(folderId);\n props.navigateToFolder(folderId || ROOT_FOLDER);\n },\n [currentFolderId]\n );\n\n const navigateToListHome = () => {\n store.remove(createStorageKey());\n props.navigateToListHome();\n };\n\n const context: NavigateFolderContext = {\n currentFolderId: currentFolderId || getFolderFromStorage(),\n setFolderToStorage,\n navigateToListHome,\n navigateToFolder,\n navigateToLatestFolder\n };\n\n return (\n <NavigateFolderContext.Provider value={context}>{children}</NavigateFolderContext.Provider>\n );\n};\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AAA0C,IAAAI,SAAA;AAUnC,IAAMC,qBAAqB,gBAAGC,cAAK,CAACC,aAAa,CACpDC,SACJ,CAAC;AAACC,OAAA,CAAAJ,qBAAA,GAAAA,qBAAA;AAWK,IAAMK,sBAA8D,GAAG,SAAjEA,sBAA8DA,CAAAC,IAAA,EAKrE;EAAA,IAJQC,eAAe,GAAAD,IAAA,CAAzBE,QAAQ;IACRC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,gBAAgB,GAAAJ,IAAA,CAAhBI,gBAAgB;IACbC,KAAK,OAAAC,yBAAA,CAAAC,OAAA,EAAAP,IAAA,EAAAP,SAAA;EAER;AACJ;AACA;AACA;AACA;EACI,IAAMe,kBAAkB,GAAG,IAAAC,kBAAW,EAClC,UAACC,WAAoB,EAAW;IAC5BC,cAAK,CAACC,GAAG,CAACR,gBAAgB,CAAC,CAAC,EAAEM,WAAW,CAAC;EAC9C,CAAC,EACD,CAACN,gBAAgB,CACrB,CAAC;;EAED;AACJ;AACA;AACA;AACA;EACI,IAAMS,oBAAoB,GAAG,IAAAJ,kBAAW,EAAC,YAA0B;IAC/D,IAAMP,QAAQ,GAAGS,cAAK,CAACG,GAAG,CAACV,gBAAgB,CAAC,CAAC,CAAuB;IACpE,OAAOF,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEa,WAAW,CAAC,CAAC;EAClC,CAAC,EAAE,CAACX,gBAAgB,CAAC,CAAC;EAEtB,IAAAY,gBAAS,EAAC,YAAM;IACZC,UAAU,CAAC,YAAM;MACb;MACAC,sBAAsB,CAAC,CAAC;IAC5B,CAAC,CAAC;EACN,CAAC,EAAE,EAAE,CAAC;;EAEN;AACJ;AACA;EACI,IAAMA,sBAAsB,GAAG,IAAAT,kBAAW,EAAC,YAAM;IAC7C,IAAMU,eAAe,GAAGN,oBAAoB,CAAC,CAAC;IAC9CR,KAAK,CAACa,sBAAsB,CAACjB,eAAe,IAAIkB,eAAe,IAAIC,sBAAW,CAAC;EACnF,CAAC,EAAE,CAACnB,eAAe,CAAC,CAAC;EAErB,IAAMoB,gBAAgB,GAAG,IAAAZ,kBAAW,EAChC,UAACP,QAAiB,EAAK;IACnBM,kBAAkB,CAACN,QAAQ,CAAC;IAC5BG,KAAK,CAACgB,gBAAgB,CAACnB,QAAQ,IAAIkB,sBAAW,CAAC;EACnD,CAAC,EACD,CAACnB,eAAe,CACpB,CAAC;EAED,IAAMqB,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAA,EAAS;IAC7BX,cAAK,CAACY,MAAM,CAACnB,gBAAgB,CAAC,CAAC,CAAC;IAChCC,KAAK,CAACiB,kBAAkB,CAAC,CAAC;EAC9B,CAAC;EAED,IAAME,OAA8B,GAAG;IACnCvB,eAAe,EAAEA,eAAe,IAAIY,oBAAoB,CAAC,CAAC;IAC1DL,kBAAkB,EAAlBA,kBAAkB;IAClBc,kBAAkB,EAAlBA,kBAAkB;IAClBD,gBAAgB,EAAhBA,gBAAgB;IAChBH,sBAAsB,EAAtBA;EACJ,CAAC;EAED,oBACI/B,MAAA,CAAAoB,OAAA,CAAAkB,aAAA,CAAC/B,qBAAqB,CAACgC,QAAQ;IAACC,KAAK,EAAEH;EAAQ,GAAErB,QAAyC,CAAC;AAEnG,CAAC;AAACL,OAAA,CAAAC,sBAAA,GAAAA,sBAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export interface NavigateFolderProviderProps {
|
|
3
|
+
children: React.ReactNode;
|
|
4
|
+
folderIdQueryString?: string;
|
|
5
|
+
createStorageKey: () => string;
|
|
6
|
+
createListLink?: () => string;
|
|
7
|
+
}
|
|
8
|
+
export declare const NavigateFolderWithRouterProvider: React.VFC<NavigateFolderProviderProps>;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.NavigateFolderWithRouterProvider = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _reactRouter = require("@webiny/react-router");
|
|
12
|
+
var _navigateFolder = require("./navigateFolder");
|
|
13
|
+
var _constants = require("../constants");
|
|
14
|
+
var NavigateFolderWithRouterProvider = function NavigateFolderWithRouterProvider(_ref) {
|
|
15
|
+
var children = _ref.children,
|
|
16
|
+
_ref$folderIdQueryStr = _ref.folderIdQueryString,
|
|
17
|
+
folderIdQueryString = _ref$folderIdQueryStr === void 0 ? "folderId" : _ref$folderIdQueryStr,
|
|
18
|
+
createStorageKey = _ref.createStorageKey,
|
|
19
|
+
initialCreateListLink = _ref.createListLink;
|
|
20
|
+
var _useRouter = (0, _reactRouter.useRouter)(),
|
|
21
|
+
history = _useRouter.history,
|
|
22
|
+
search = _useRouter.search,
|
|
23
|
+
location = _useRouter.location;
|
|
24
|
+
var _search = (0, _slicedToArray2.default)(search, 1),
|
|
25
|
+
query = _search[0];
|
|
26
|
+
var folderId = query.get(folderIdQueryString) || undefined;
|
|
27
|
+
var _useState = (0, _react.useState)(folderId),
|
|
28
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
29
|
+
currentFolderId = _useState2[0],
|
|
30
|
+
setCurrentFolderId = _useState2[1];
|
|
31
|
+
(0, _react.useEffect)(function () {
|
|
32
|
+
setCurrentFolderId(folderId);
|
|
33
|
+
}, [folderId]);
|
|
34
|
+
var createListLink = (0, _react.useCallback)(function () {
|
|
35
|
+
if (!initialCreateListLink) {
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
38
|
+
return initialCreateListLink();
|
|
39
|
+
}, [initialCreateListLink]);
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Navigate to home list.
|
|
43
|
+
*/
|
|
44
|
+
var navigateToListHome = (0, _react.useCallback)(function () {
|
|
45
|
+
var url = createListLink();
|
|
46
|
+
if (url) {
|
|
47
|
+
return history.push(url);
|
|
48
|
+
}
|
|
49
|
+
return navigateToFolder(_constants.ROOT_FOLDER);
|
|
50
|
+
}, [createListLink]);
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Navigate to a specific folder.
|
|
54
|
+
*/
|
|
55
|
+
var navigateToFolder = (0, _react.useCallback)(function (newFolderId) {
|
|
56
|
+
var query = new URLSearchParams(location.search);
|
|
57
|
+
query.delete("new");
|
|
58
|
+
query.delete("id");
|
|
59
|
+
query.delete("entryId");
|
|
60
|
+
query.delete("search");
|
|
61
|
+
query.set(folderIdQueryString, newFolderId);
|
|
62
|
+
return history.push({
|
|
63
|
+
search: query.toString()
|
|
64
|
+
});
|
|
65
|
+
}, [location, folderIdQueryString]);
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Navigate back to list, considering the latest visited folder.
|
|
69
|
+
*/
|
|
70
|
+
var navigateToLatestFolder = (0, _react.useCallback)(function (folderId) {
|
|
71
|
+
/**
|
|
72
|
+
* We need to check if the stored folderId is the same as the current one, in this case we skip the navigation.
|
|
73
|
+
*/
|
|
74
|
+
if (folderId === currentFolderId) {
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
var query = new URLSearchParams(location.search);
|
|
78
|
+
query.set(folderIdQueryString, folderId);
|
|
79
|
+
return history.push({
|
|
80
|
+
pathname: createListLink(),
|
|
81
|
+
search: query.toString()
|
|
82
|
+
});
|
|
83
|
+
}, [createListLink, folderIdQueryString]);
|
|
84
|
+
return /*#__PURE__*/_react.default.createElement(_navigateFolder.NavigateFolderProvider, {
|
|
85
|
+
folderId: currentFolderId,
|
|
86
|
+
createStorageKey: createStorageKey,
|
|
87
|
+
navigateToFolder: navigateToFolder,
|
|
88
|
+
navigateToLatestFolder: navigateToLatestFolder,
|
|
89
|
+
navigateToListHome: navigateToListHome
|
|
90
|
+
}, children);
|
|
91
|
+
};
|
|
92
|
+
exports.NavigateFolderWithRouterProvider = NavigateFolderWithRouterProvider;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactRouter","_navigateFolder","_constants","NavigateFolderWithRouterProvider","_ref","children","_ref$folderIdQueryStr","folderIdQueryString","createStorageKey","initialCreateListLink","createListLink","_useRouter","useRouter","history","search","location","_search","_slicedToArray2","default","query","folderId","get","undefined","_useState","useState","_useState2","currentFolderId","setCurrentFolderId","useEffect","useCallback","navigateToListHome","url","push","navigateToFolder","ROOT_FOLDER","newFolderId","URLSearchParams","delete","set","toString","navigateToLatestFolder","pathname","createElement","NavigateFolderProvider","exports"],"sources":["navigateFolderWithRouter.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { NavigateFolderProvider } from \"~/contexts/navigateFolder\";\nimport { ROOT_FOLDER } from \"~/constants\";\n\nexport interface NavigateFolderProviderProps {\n children: React.ReactNode;\n folderIdQueryString?: string;\n createStorageKey: () => string;\n createListLink?: () => string;\n}\n\nexport const NavigateFolderWithRouterProvider: React.VFC<NavigateFolderProviderProps> = ({\n children,\n folderIdQueryString = \"folderId\",\n createStorageKey,\n createListLink: initialCreateListLink\n}) => {\n const { history, search, location } = useRouter();\n const [query] = search;\n const folderId = query.get(folderIdQueryString) || undefined;\n const [currentFolderId, setCurrentFolderId] = useState<string | undefined>(folderId);\n\n useEffect(() => {\n setCurrentFolderId(folderId);\n }, [folderId]);\n\n const createListLink = useCallback(() => {\n if (!initialCreateListLink) {\n return undefined;\n }\n return initialCreateListLink();\n }, [initialCreateListLink]);\n\n /**\n * Navigate to home list.\n */\n const navigateToListHome = useCallback(() => {\n const url = createListLink();\n if (url) {\n return history.push(url);\n }\n\n return navigateToFolder(ROOT_FOLDER);\n }, [createListLink]);\n\n /**\n * Navigate to a specific folder.\n */\n const navigateToFolder = useCallback(\n (newFolderId: string): void => {\n const query = new URLSearchParams(location.search);\n query.delete(\"new\");\n query.delete(\"id\");\n query.delete(\"entryId\");\n query.delete(\"search\");\n query.set(folderIdQueryString, newFolderId);\n return history.push({\n search: query.toString()\n });\n },\n [location, folderIdQueryString]\n );\n\n /**\n * Navigate back to list, considering the latest visited folder.\n */\n const navigateToLatestFolder = useCallback(\n folderId => {\n /**\n * We need to check if the stored folderId is the same as the current one, in this case we skip the navigation.\n */\n if (folderId === currentFolderId) {\n return;\n }\n\n const query = new URLSearchParams(location.search);\n query.set(folderIdQueryString, folderId);\n\n return history.push({\n pathname: createListLink(),\n search: query.toString()\n });\n },\n [createListLink, folderIdQueryString]\n );\n\n return (\n <NavigateFolderProvider\n folderId={currentFolderId}\n createStorageKey={createStorageKey}\n navigateToFolder={navigateToFolder}\n navigateToLatestFolder={navigateToLatestFolder}\n navigateToListHome={navigateToListHome}\n >\n {children}\n </NavigateFolderProvider>\n );\n};\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AASO,IAAMI,gCAAwE,GAAG,SAA3EA,gCAAwEA,CAAAC,IAAA,EAK/E;EAAA,IAJFC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAAC,qBAAA,GAAAF,IAAA,CACRG,mBAAmB;IAAnBA,mBAAmB,GAAAD,qBAAA,cAAG,UAAU,GAAAA,qBAAA;IAChCE,gBAAgB,GAAAJ,IAAA,CAAhBI,gBAAgB;IACAC,qBAAqB,GAAAL,IAAA,CAArCM,cAAc;EAEd,IAAAC,UAAA,GAAsC,IAAAC,sBAAS,EAAC,CAAC;IAAzCC,OAAO,GAAAF,UAAA,CAAPE,OAAO;IAAEC,MAAM,GAAAH,UAAA,CAANG,MAAM;IAAEC,QAAQ,GAAAJ,UAAA,CAARI,QAAQ;EACjC,IAAAC,OAAA,OAAAC,eAAA,CAAAC,OAAA,EAAgBJ,MAAM;IAAfK,KAAK,GAAAH,OAAA;EACZ,IAAMI,QAAQ,GAAGD,KAAK,CAACE,GAAG,CAACd,mBAAmB,CAAC,IAAIe,SAAS;EAC5D,IAAAC,SAAA,GAA8C,IAAAC,eAAQ,EAAqBJ,QAAQ,CAAC;IAAAK,UAAA,OAAAR,eAAA,CAAAC,OAAA,EAAAK,SAAA;IAA7EG,eAAe,GAAAD,UAAA;IAAEE,kBAAkB,GAAAF,UAAA;EAE1C,IAAAG,gBAAS,EAAC,YAAM;IACZD,kBAAkB,CAACP,QAAQ,CAAC;EAChC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,IAAMV,cAAc,GAAG,IAAAmB,kBAAW,EAAC,YAAM;IACrC,IAAI,CAACpB,qBAAqB,EAAE;MACxB,OAAOa,SAAS;IACpB;IACA,OAAOb,qBAAqB,CAAC,CAAC;EAClC,CAAC,EAAE,CAACA,qBAAqB,CAAC,CAAC;;EAE3B;AACJ;AACA;EACI,IAAMqB,kBAAkB,GAAG,IAAAD,kBAAW,EAAC,YAAM;IACzC,IAAME,GAAG,GAAGrB,cAAc,CAAC,CAAC;IAC5B,IAAIqB,GAAG,EAAE;MACL,OAAOlB,OAAO,CAACmB,IAAI,CAACD,GAAG,CAAC;IAC5B;IAEA,OAAOE,gBAAgB,CAACC,sBAAW,CAAC;EACxC,CAAC,EAAE,CAACxB,cAAc,CAAC,CAAC;;EAEpB;AACJ;AACA;EACI,IAAMuB,gBAAgB,GAAG,IAAAJ,kBAAW,EAChC,UAACM,WAAmB,EAAW;IAC3B,IAAMhB,KAAK,GAAG,IAAIiB,eAAe,CAACrB,QAAQ,CAACD,MAAM,CAAC;IAClDK,KAAK,CAACkB,MAAM,CAAC,KAAK,CAAC;IACnBlB,KAAK,CAACkB,MAAM,CAAC,IAAI,CAAC;IAClBlB,KAAK,CAACkB,MAAM,CAAC,SAAS,CAAC;IACvBlB,KAAK,CAACkB,MAAM,CAAC,QAAQ,CAAC;IACtBlB,KAAK,CAACmB,GAAG,CAAC/B,mBAAmB,EAAE4B,WAAW,CAAC;IAC3C,OAAOtB,OAAO,CAACmB,IAAI,CAAC;MAChBlB,MAAM,EAAEK,KAAK,CAACoB,QAAQ,CAAC;IAC3B,CAAC,CAAC;EACN,CAAC,EACD,CAACxB,QAAQ,EAAER,mBAAmB,CAClC,CAAC;;EAED;AACJ;AACA;EACI,IAAMiC,sBAAsB,GAAG,IAAAX,kBAAW,EACtC,UAAAT,QAAQ,EAAI;IACR;AACZ;AACA;IACY,IAAIA,QAAQ,KAAKM,eAAe,EAAE;MAC9B;IACJ;IAEA,IAAMP,KAAK,GAAG,IAAIiB,eAAe,CAACrB,QAAQ,CAACD,MAAM,CAAC;IAClDK,KAAK,CAACmB,GAAG,CAAC/B,mBAAmB,EAAEa,QAAQ,CAAC;IAExC,OAAOP,OAAO,CAACmB,IAAI,CAAC;MAChBS,QAAQ,EAAE/B,cAAc,CAAC,CAAC;MAC1BI,MAAM,EAAEK,KAAK,CAACoB,QAAQ,CAAC;IAC3B,CAAC,CAAC;EACN,CAAC,EACD,CAAC7B,cAAc,EAAEH,mBAAmB,CACxC,CAAC;EAED,oBACIV,MAAA,CAAAqB,OAAA,CAAAwB,aAAA,CAACzC,eAAA,CAAA0C,sBAAsB;IACnBvB,QAAQ,EAAEM,eAAgB;IAC1BlB,gBAAgB,EAAEA,gBAAiB;IACnCyB,gBAAgB,EAAEA,gBAAiB;IACnCO,sBAAsB,EAAEA,sBAAuB;IAC/CV,kBAAkB,EAAEA;EAAmB,GAEtCzB,QACmB,CAAC;AAEjC,CAAC;AAACuC,OAAA,CAAAzC,gCAAA,GAAAA,gCAAA"}
|
package/contexts/records.d.ts
CHANGED
|
@@ -1,37 +1,28 @@
|
|
|
1
1
|
import React, { ReactNode } from "react";
|
|
2
|
-
import {
|
|
2
|
+
import { DeletableSearchRecordItem, ListMeta, ListSearchRecordsQueryVariables, ListTagsWhereQueryVariables, Loading, LoadingActions, MovableSearchRecordItem, SearchRecordItem, TagItem } from "../types";
|
|
3
|
+
interface ListTagsParams {
|
|
4
|
+
where?: ListTagsWhereQueryVariables;
|
|
5
|
+
}
|
|
6
|
+
export declare type ListRecordsParams = ListSearchRecordsQueryVariables;
|
|
3
7
|
interface SearchRecordsContext {
|
|
4
|
-
records:
|
|
5
|
-
tags:
|
|
8
|
+
records: SearchRecordItem[];
|
|
9
|
+
tags: TagItem[];
|
|
6
10
|
loading: Loading<LoadingActions>;
|
|
7
|
-
meta:
|
|
8
|
-
listRecords: (params:
|
|
9
|
-
|
|
10
|
-
folderId?: string;
|
|
11
|
-
limit?: number;
|
|
12
|
-
after?: string;
|
|
13
|
-
sort?: ListDbSort;
|
|
14
|
-
search?: string;
|
|
15
|
-
createdBy?: string;
|
|
16
|
-
tags_in?: string[];
|
|
17
|
-
tags_startsWith?: string;
|
|
18
|
-
tags_not_startsWith?: string;
|
|
19
|
-
AND?: ListSearchRecordsWhereQueryVariables[];
|
|
20
|
-
OR?: ListSearchRecordsWhereQueryVariables[];
|
|
21
|
-
}) => Promise<SearchRecordItem[]>;
|
|
22
|
-
getRecord: (id: string) => Promise<SearchRecordItem>;
|
|
11
|
+
meta: ListMeta;
|
|
12
|
+
listRecords: (params: ListRecordsParams) => Promise<SearchRecordItem[]>;
|
|
13
|
+
getRecord: (id: string) => Promise<SearchRecordItem | null>;
|
|
23
14
|
createRecord: (record: Omit<SearchRecordItem, "id">) => Promise<SearchRecordItem>;
|
|
24
15
|
updateRecord: (record: SearchRecordItem, contextFolderId?: string) => Promise<SearchRecordItem>;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
16
|
+
moveRecord: (record: MovableSearchRecordItem) => Promise<void>;
|
|
17
|
+
deleteRecord(record: DeletableSearchRecordItem): Promise<true>;
|
|
18
|
+
listTags: (params: ListTagsParams) => Promise<TagItem[]>;
|
|
19
|
+
addRecordToCache: (record: any) => void;
|
|
20
|
+
updateRecordInCache: (record: any) => void;
|
|
21
|
+
removeRecordFromCache: (id: string) => void;
|
|
31
22
|
}
|
|
32
23
|
export declare const SearchRecordsContext: React.Context<SearchRecordsContext | undefined>;
|
|
33
24
|
interface Props {
|
|
34
25
|
children: ReactNode;
|
|
35
26
|
}
|
|
36
|
-
export declare const SearchRecordsProvider:
|
|
27
|
+
export declare const SearchRecordsProvider: React.VFC<Props>;
|
|
37
28
|
export {};
|