@webiny/app 6.4.12-beta.5 → 6.5.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/RouterConfig.d.ts +1 -3
- package/core/Plugins.d.ts +2 -1
- package/features/graphqlClient/FetchGraphQLClient.d.ts +0 -3
- package/features/graphqlClient/FetchGraphQLClient.js +3 -21
- package/features/graphqlClient/FetchGraphQLClient.js.map +1 -1
- package/features/graphqlClient/__tests__/GraphQLClient.test.js +0 -4
- package/features/graphqlClient/__tests__/GraphQLClient.test.js.map +1 -1
- package/features/graphqlClient/abstractions.d.ts +0 -7
- package/features/graphqlClient/abstractions.js +1 -2
- package/features/graphqlClient/abstractions.js.map +1 -1
- package/features/graphqlClient/index.d.ts +0 -3
- package/features/graphqlClient/index.js +1 -2
- package/features/router/HistoryRouterGateway.d.ts +3 -0
- package/features/router/HistoryRouterGateway.js +12 -0
- package/features/router/HistoryRouterGateway.js.map +1 -1
- package/features/router/Route.d.ts +1 -1
- package/features/router/RouterPresenter.d.ts +2 -0
- package/features/router/RouterPresenter.js +10 -0
- package/features/router/RouterPresenter.js.map +1 -1
- package/features/router/RouterRepository.d.ts +2 -0
- package/features/router/RouterRepository.js +8 -2
- package/features/router/RouterRepository.js.map +1 -1
- package/features/router/abstractions.d.ts +9 -0
- package/features/router/abstractions.js.map +1 -1
- package/package.json +17 -18
- package/plugins/AddQuerySelectionPlugin.js +1 -1
- package/plugins/AddQuerySelectionPlugin.js.map +1 -1
- package/plugins/image.d.ts +1 -1
- package/presentation/router/components/RouteParamsSync.d.ts +22 -0
- package/presentation/router/components/RouteParamsSync.js +53 -0
- package/presentation/router/components/RouteParamsSync.js.map +1 -0
- package/presentation/router/hooks/useRoute.d.ts +1 -0
- package/presentation/router/hooks/useRoute.js +2 -1
- package/presentation/router/hooks/useRoute.js.map +1 -1
- package/presentation/router/hooks/useRouter.d.ts +1 -0
- package/presentation/router/hooks/useRouter.js +1 -0
- package/presentation/router/hooks/useRouter.js.map +1 -1
- package/presentation/router/index.d.ts +2 -0
- package/presentation/router/index.js +1 -0
- package/types.d.ts +0 -21
- package/features/graphqlClient/GraphQLExtensionsEvent.d.ts +0 -18
- package/features/graphqlClient/GraphQLExtensionsEvent.js +0 -13
- package/features/graphqlClient/GraphQLExtensionsEvent.js.map +0 -1
- package/hooks/useAutocomplete/index.d.ts +0 -1
- package/hooks/useAutocomplete/index.js +0 -1
- package/hooks/useAutocomplete/useAutocomplete.d.ts +0 -11
- package/hooks/useAutocomplete/useAutocomplete.js +0 -17
- package/hooks/useAutocomplete/useAutocomplete.js.map +0 -1
- package/hooks/useDataList/functions/getData.d.ts +0 -2
- package/hooks/useDataList/functions/getData.js +0 -5
- package/hooks/useDataList/functions/getData.js.map +0 -1
- package/hooks/useDataList/functions/getError.d.ts +0 -2
- package/hooks/useDataList/functions/getError.js +0 -5
- package/hooks/useDataList/functions/getError.js.map +0 -1
- package/hooks/useDataList/functions/getMeta.d.ts +0 -2
- package/hooks/useDataList/functions/getMeta.js +0 -5
- package/hooks/useDataList/functions/getMeta.js.map +0 -1
- package/hooks/useDataList/functions/index.d.ts +0 -3
- package/hooks/useDataList/functions/index.js +0 -3
- package/hooks/useDataList/functions/searchDataByKey.d.ts +0 -2
- package/hooks/useDataList/functions/searchDataByKey.js +0 -13
- package/hooks/useDataList/functions/searchDataByKey.js.map +0 -1
- package/hooks/useDataList/index.d.ts +0 -1
- package/hooks/useDataList/index.js +0 -1
- package/hooks/useDataList/useDataList.d.ts +0 -35
- package/hooks/useDataList/useDataList.js +0 -142
- package/hooks/useDataList/useDataList.js.map +0 -1
- package/hooks/useDataList/utils/index.d.ts +0 -1
- package/hooks/useDataList/utils/index.js +0 -1
- package/hooks/useDataList/utils/prepareLoadListParams.d.ts +0 -10
- package/hooks/useDataList/utils/prepareLoadListParams.js +0 -29
- package/hooks/useDataList/utils/prepareLoadListParams.js.map +0 -1
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useRef, useState } from "react";
|
|
2
|
-
import { useQuery } from "@apollo/react-hooks";
|
|
3
|
-
import get from "lodash/get.js";
|
|
4
|
-
import isEqual from "lodash/isEqual.js";
|
|
5
|
-
import { prepareLoadListParams } from "./utils/index.js";
|
|
6
|
-
import { getData, getError, getMeta } from "./functions/index.js";
|
|
7
|
-
const useDataList = (params)=>{
|
|
8
|
-
const [multiSelectedItems, multiSelect] = useState([]);
|
|
9
|
-
const getQueryOptions = useCallback(()=>{
|
|
10
|
-
let variables = params.variables;
|
|
11
|
-
if ("function" == typeof variables) variables = variables(params);
|
|
12
|
-
return {
|
|
13
|
-
client: params.client,
|
|
14
|
-
variables: {
|
|
15
|
-
...variables,
|
|
16
|
-
...prepareLoadListParams()
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
}, []);
|
|
20
|
-
const queryData = useQuery(params.query, getQueryOptions());
|
|
21
|
-
const prevLoadParamsRef = useRef({});
|
|
22
|
-
const dataListProps = {
|
|
23
|
-
data: get(params, "getData", getData)(queryData.data),
|
|
24
|
-
meta: get(params, "getMeta", getMeta)(queryData.data),
|
|
25
|
-
error: get(params, "getError", getError)(queryData.data),
|
|
26
|
-
loading: queryData.loading,
|
|
27
|
-
init () {
|
|
28
|
-
this.refresh();
|
|
29
|
-
},
|
|
30
|
-
refresh (params = null) {
|
|
31
|
-
multiSelect([]);
|
|
32
|
-
if (!params) return void queryData.refetch(dataListProps.__loadParams);
|
|
33
|
-
queryData.refetch(params);
|
|
34
|
-
},
|
|
35
|
-
setPerPage (perPage) {
|
|
36
|
-
const preparedParams = {
|
|
37
|
-
...dataListProps.__loadParams,
|
|
38
|
-
limit: parseInt("" + perPage),
|
|
39
|
-
after: void 0,
|
|
40
|
-
before: void 0
|
|
41
|
-
};
|
|
42
|
-
this.refresh(preparedParams);
|
|
43
|
-
},
|
|
44
|
-
setNextPage (cursor) {
|
|
45
|
-
const preparedParams = {
|
|
46
|
-
...dataListProps.__loadParams,
|
|
47
|
-
after: cursor,
|
|
48
|
-
before: void 0
|
|
49
|
-
};
|
|
50
|
-
this.refresh(preparedParams);
|
|
51
|
-
},
|
|
52
|
-
setPreviousPage (cursor) {
|
|
53
|
-
const preparedParams = {
|
|
54
|
-
...dataListProps.__loadParams,
|
|
55
|
-
after: void 0,
|
|
56
|
-
before: cursor
|
|
57
|
-
};
|
|
58
|
-
this.refresh(preparedParams);
|
|
59
|
-
},
|
|
60
|
-
setSearch (search) {
|
|
61
|
-
const preparedParams = {
|
|
62
|
-
...dataListProps.__loadParams,
|
|
63
|
-
search,
|
|
64
|
-
after: void 0,
|
|
65
|
-
before: void 0
|
|
66
|
-
};
|
|
67
|
-
this.refresh(preparedParams);
|
|
68
|
-
},
|
|
69
|
-
setWhere (where) {
|
|
70
|
-
const preparedParams = {
|
|
71
|
-
...dataListProps.__loadParams,
|
|
72
|
-
where,
|
|
73
|
-
after: void 0,
|
|
74
|
-
before: void 0
|
|
75
|
-
};
|
|
76
|
-
this.refresh(preparedParams);
|
|
77
|
-
},
|
|
78
|
-
setSorters (sort) {
|
|
79
|
-
const preparedParams = {
|
|
80
|
-
...dataListProps.__loadParams,
|
|
81
|
-
sort,
|
|
82
|
-
after: void 0,
|
|
83
|
-
before: void 0
|
|
84
|
-
};
|
|
85
|
-
this.refresh(preparedParams);
|
|
86
|
-
},
|
|
87
|
-
multiSelect (items, value) {
|
|
88
|
-
if (!Array.isArray(items)) items = [
|
|
89
|
-
items
|
|
90
|
-
];
|
|
91
|
-
const returnItems = [
|
|
92
|
-
...multiSelectedItems
|
|
93
|
-
];
|
|
94
|
-
items.forEach((item)=>{
|
|
95
|
-
if (void 0 === value) returnItems.includes(item) ? returnItems.splice(returnItems.indexOf(item), 1) : returnItems.push(item);
|
|
96
|
-
else if (true === value) returnItems.includes(item) || returnItems.push(item);
|
|
97
|
-
else returnItems.includes(item) && returnItems.splice(returnItems.indexOf(item), 1);
|
|
98
|
-
});
|
|
99
|
-
multiSelect(returnItems);
|
|
100
|
-
},
|
|
101
|
-
isSelected (item) {
|
|
102
|
-
const query = new URLSearchParams(location.search);
|
|
103
|
-
return query.get("id") === item.id;
|
|
104
|
-
},
|
|
105
|
-
select (item) {
|
|
106
|
-
const query = new URLSearchParams(location.search);
|
|
107
|
-
query.set("id", item.id);
|
|
108
|
-
},
|
|
109
|
-
isMultiSelected (item) {
|
|
110
|
-
if (!Array.isArray(multiSelectedItems)) return false;
|
|
111
|
-
return multiSelectedItems.includes(item);
|
|
112
|
-
},
|
|
113
|
-
isNoneMultiSelected () {
|
|
114
|
-
return 0 === multiSelectedItems.length;
|
|
115
|
-
},
|
|
116
|
-
getMultiSelected () {
|
|
117
|
-
return multiSelectedItems;
|
|
118
|
-
},
|
|
119
|
-
multiSelectAll (value) {
|
|
120
|
-
const { data } = dataListProps;
|
|
121
|
-
if (Array.isArray(data)) dataListProps.multiSelect(data, value);
|
|
122
|
-
else dataListProps.multiSelect([], value);
|
|
123
|
-
},
|
|
124
|
-
isAllMultiSelected () {
|
|
125
|
-
const { data } = dataListProps;
|
|
126
|
-
return Array.isArray(data) && multiSelectedItems.length === data.length;
|
|
127
|
-
},
|
|
128
|
-
__loadParams: prepareLoadListParams(location)
|
|
129
|
-
};
|
|
130
|
-
useEffect(()=>{
|
|
131
|
-
const params = {
|
|
132
|
-
prev: prevLoadParamsRef.current,
|
|
133
|
-
current: dataListProps.__loadParams
|
|
134
|
-
};
|
|
135
|
-
if (!isEqual(params.prev, params.current)) dataListProps.init();
|
|
136
|
-
prevLoadParamsRef.current = params.current;
|
|
137
|
-
});
|
|
138
|
-
return dataListProps;
|
|
139
|
-
};
|
|
140
|
-
export { useDataList };
|
|
141
|
-
|
|
142
|
-
//# sourceMappingURL=useDataList.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hooks/useDataList/useDataList.js","sources":["../../../src/hooks/useDataList/useDataList.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from \"react\";\nimport { useQuery } from \"@apollo/react-hooks\";\nimport get from \"lodash/get.js\";\nimport isEqual from \"lodash/isEqual.js\";\nimport { prepareLoadListParams } from \"./utils/index.js\";\nimport { getData, getError, getMeta } from \"./functions/index.js\";\n\nimport type { DocumentNode } from \"graphql\";\nimport type { ApolloClient } from \"apollo-client\";\n\nexport interface UseDataListParams {\n variables?: ((params: UseDataListParams) => any) | object;\n client?: ApolloClient<any>;\n query: DocumentNode;\n getData?: (data: any) => any;\n getMeta?: (data: any) => any;\n getError?: (data: any) => any;\n}\n\nexport interface DataListProps {\n __loadParams: any;\n refresh: (params?: any) => void;\n data: any[];\n meta: any;\n error: any;\n loading: boolean;\n isSelected: (item: any) => boolean;\n select: (item: any) => void;\n isMultiSelected: (item: any) => boolean;\n isNoneMultiSelected: () => boolean;\n isAllMultiSelected: () => boolean;\n multiSelectAll: (value: boolean) => void;\n getMultiSelected: () => any[];\n setSearch: (search: any) => void;\n setWhere: (where: any) => void;\n setSorters: (sort: any) => void;\n setPerPage: (perPage: number) => void;\n setPreviousPage: (cursor: string) => void;\n setNextPage: (cursor: string) => void;\n multiSelect: (items: string | string[], value?: boolean) => void;\n init: () => void;\n}\n\nconst useDataList = (params: UseDataListParams) => {\n const [multiSelectedItems, multiSelect] = useState<string[]>([]);\n\n const getQueryOptions = useCallback(() => {\n let variables = params.variables;\n if (typeof variables === \"function\") {\n variables = variables(params);\n }\n\n return {\n client: params.client,\n variables: {\n ...variables,\n ...prepareLoadListParams()\n }\n };\n }, []);\n\n const queryData = useQuery(params.query, getQueryOptions());\n const prevLoadParamsRef = useRef({});\n\n const dataListProps: DataListProps = {\n data: get(params, \"getData\", getData)(queryData.data),\n meta: get(params, \"getMeta\", getMeta)(queryData.data),\n error: get(params, \"getError\", getError)(queryData.data),\n\n loading: queryData.loading,\n init() {\n this.refresh();\n },\n refresh(params = null): void {\n // Refresh multi select first.\n multiSelect([]);\n\n if (!params) {\n queryData.refetch(dataListProps.__loadParams);\n return;\n }\n\n queryData.refetch(params);\n },\n setPerPage(perPage: number): void {\n const preparedParams = {\n ...dataListProps.__loadParams,\n limit: parseInt(\"\" + perPage),\n after: undefined,\n before: undefined\n };\n this.refresh(preparedParams);\n },\n setNextPage(cursor: string): void {\n const preparedParams = {\n ...dataListProps.__loadParams,\n after: cursor,\n before: undefined\n };\n this.refresh(preparedParams);\n },\n setPreviousPage(cursor: string): void {\n const preparedParams = {\n ...dataListProps.__loadParams,\n after: undefined,\n before: cursor\n };\n this.refresh(preparedParams);\n },\n setSearch(search): void {\n const preparedParams = {\n ...dataListProps.__loadParams,\n search,\n after: undefined,\n before: undefined\n };\n this.refresh(preparedParams);\n },\n setWhere(where): void {\n const preparedParams = {\n ...dataListProps.__loadParams,\n where,\n after: undefined,\n before: undefined\n };\n this.refresh(preparedParams);\n },\n setSorters(sort): void {\n const preparedParams = {\n ...dataListProps.__loadParams,\n sort,\n after: undefined,\n before: undefined\n };\n this.refresh(preparedParams);\n },\n multiSelect(items, value): void {\n if (!Array.isArray(items)) {\n items = [items];\n }\n\n const returnItems = [...multiSelectedItems];\n\n items.forEach(item => {\n if (value === undefined) {\n returnItems.includes(item)\n ? returnItems.splice(returnItems.indexOf(item), 1)\n : returnItems.push(item);\n } else {\n if (value === true) {\n !returnItems.includes(item) && returnItems.push(item);\n } else {\n returnItems.includes(item) &&\n returnItems.splice(returnItems.indexOf(item), 1);\n }\n }\n });\n\n multiSelect(returnItems);\n },\n isSelected(item) {\n const query = new URLSearchParams(location.search);\n return query.get(\"id\") === item.id;\n },\n select(item) {\n const query = new URLSearchParams(location.search);\n query.set(\"id\", item.id);\n },\n isMultiSelected(item) {\n if (!Array.isArray(multiSelectedItems)) {\n return false;\n }\n\n return multiSelectedItems.includes(item);\n },\n isNoneMultiSelected() {\n return multiSelectedItems.length === 0;\n },\n getMultiSelected() {\n return multiSelectedItems;\n },\n multiSelectAll(value: boolean): void {\n const { data } = dataListProps;\n if (Array.isArray(data)) {\n dataListProps.multiSelect(data, value);\n } else {\n dataListProps.multiSelect([], value);\n }\n },\n isAllMultiSelected(): boolean {\n const { data } = dataListProps;\n\n return Array.isArray(data) && multiSelectedItems.length === data.length;\n },\n\n __loadParams: prepareLoadListParams(location)\n };\n\n useEffect(() => {\n const params = {\n prev: prevLoadParamsRef.current,\n current: dataListProps.__loadParams\n };\n\n if (!isEqual(params.prev, params.current)) {\n dataListProps.init();\n }\n\n prevLoadParamsRef.current = params.current;\n });\n\n return dataListProps;\n};\n\nexport { useDataList };\n"],"names":["useDataList","params","multiSelectedItems","multiSelect","useState","getQueryOptions","useCallback","variables","prepareLoadListParams","queryData","useQuery","prevLoadParamsRef","useRef","dataListProps","get","getData","getMeta","getError","perPage","preparedParams","parseInt","undefined","cursor","search","where","sort","items","value","Array","returnItems","item","query","URLSearchParams","location","data","useEffect","isEqual"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as prepareLoadListParams } from "./prepareLoadListParams.js";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as prepareLoadListParams } from "./prepareLoadListParams.js";
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
const keys = [
|
|
2
|
-
"sort",
|
|
3
|
-
"where",
|
|
4
|
-
"search"
|
|
5
|
-
];
|
|
6
|
-
const prepareLoadListParams = (location)=>{
|
|
7
|
-
const params = {};
|
|
8
|
-
if (!location) return params;
|
|
9
|
-
const query = new URLSearchParams(location.search);
|
|
10
|
-
const after = query.get("after");
|
|
11
|
-
const before = query.get("before");
|
|
12
|
-
const limit = query.get("limit");
|
|
13
|
-
if (after) params.after = after;
|
|
14
|
-
if (before) params.before = before;
|
|
15
|
-
if (limit) params.limit = parseInt(limit);
|
|
16
|
-
keys.forEach((key)=>{
|
|
17
|
-
const value = query.get(key);
|
|
18
|
-
if ("string" != typeof value) return;
|
|
19
|
-
try {
|
|
20
|
-
params[key] = JSON.parse(value);
|
|
21
|
-
} catch {
|
|
22
|
-
params[key] = value;
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
|
-
return params;
|
|
26
|
-
};
|
|
27
|
-
export default prepareLoadListParams;
|
|
28
|
-
|
|
29
|
-
//# sourceMappingURL=prepareLoadListParams.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hooks/useDataList/utils/prepareLoadListParams.js","sources":["../../../../src/hooks/useDataList/utils/prepareLoadListParams.ts"],"sourcesContent":["interface Params {\n after?: string;\n before?: string;\n limit?: number;\n sort?: string;\n where?: Record<string, any>;\n search?: string;\n}\n\nconst keys: (keyof Params)[] = [\"sort\", \"where\", \"search\"];\n\nexport default (location?: Location): Params => {\n const params: Params = {};\n if (!location) {\n return params;\n }\n\n const query = new URLSearchParams(location.search);\n\n const after = query.get(\"after\");\n const before = query.get(\"before\");\n const limit = query.get(\"limit\");\n\n if (after) {\n params.after = after;\n }\n\n if (before) {\n params.before = before;\n }\n\n if (limit) {\n params.limit = parseInt(limit);\n }\n\n keys.forEach(key => {\n const value = query.get(key);\n if (typeof value !== \"string\") {\n return;\n }\n try {\n params[key] = JSON.parse(value);\n } catch {\n /**\n * If we can't parse the value, it means it's a string.\n */\n // @ts-expect-error\n params[key] = value;\n }\n });\n return params;\n};\n"],"names":["keys","location","params","query","URLSearchParams","after","before","limit","parseInt","key","value","JSON"],"mappings":"AASA,MAAMA,OAAyB;IAAC;IAAQ;IAAS;CAAS;AAE1D,8BAAgB,CAAAC;IACZ,MAAMC,SAAiB,CAAC;IACxB,IAAI,CAACD,UACD,OAAOC;IAGX,MAAMC,QAAQ,IAAIC,gBAAgBH,SAAS,MAAM;IAEjD,MAAMI,QAAQF,MAAM,GAAG,CAAC;IACxB,MAAMG,SAASH,MAAM,GAAG,CAAC;IACzB,MAAMI,QAAQJ,MAAM,GAAG,CAAC;IAExB,IAAIE,OACAH,OAAO,KAAK,GAAGG;IAGnB,IAAIC,QACAJ,OAAO,MAAM,GAAGI;IAGpB,IAAIC,OACAL,OAAO,KAAK,GAAGM,SAASD;IAG5BP,KAAK,OAAO,CAACS,CAAAA;QACT,MAAMC,QAAQP,MAAM,GAAG,CAACM;QACxB,IAAI,AAAiB,YAAjB,OAAOC,OACP;QAEJ,IAAI;YACAR,MAAM,CAACO,IAAI,GAAGE,KAAK,KAAK,CAACD;QAC7B,EAAE,OAAM;YAKJR,MAAM,CAACO,IAAI,GAAGC;QAClB;IACJ;IACA,OAAOR;AACX"}
|