@webiny/app 5.15.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/LICENSE +21 -0
- package/README.md +19 -0
- package/apollo-client/InMemoryCache.d.ts +7 -0
- package/apollo-client/InMemoryCache.js +60 -0
- package/apollo-client/InMemoryCache.js.map +1 -0
- package/components/Image.d.ts +3 -0
- package/components/Image.js +29 -0
- package/components/Image.js.map +1 -0
- package/components/Routes.d.ts +2 -0
- package/components/Routes.js +36 -0
- package/components/Routes.js.map +1 -0
- package/components/View.d.ts +8 -0
- package/components/View.js +24 -0
- package/components/View.js.map +1 -0
- package/components/index.d.ts +1 -0
- package/components/index.js +2 -0
- package/components/index.js.map +1 -0
- package/contexts/Ui/index.d.ts +27 -0
- package/contexts/Ui/index.js +70 -0
- package/contexts/Ui/index.js.map +1 -0
- package/hooks/useAutocomplete/index.d.ts +1 -0
- package/hooks/useAutocomplete/index.js +2 -0
- package/hooks/useAutocomplete/index.js.map +1 -0
- package/hooks/useAutocomplete/useAutocomplete.d.ts +6 -0
- package/hooks/useAutocomplete/useAutocomplete.js +28 -0
- package/hooks/useAutocomplete/useAutocomplete.js.map +1 -0
- package/hooks/useDataList/functions/getData.d.ts +2 -0
- package/hooks/useDataList/functions/getData.js +5 -0
- package/hooks/useDataList/functions/getData.js.map +1 -0
- package/hooks/useDataList/functions/getError.d.ts +2 -0
- package/hooks/useDataList/functions/getError.js +5 -0
- package/hooks/useDataList/functions/getError.js.map +1 -0
- package/hooks/useDataList/functions/getMeta.d.ts +2 -0
- package/hooks/useDataList/functions/getMeta.js +5 -0
- package/hooks/useDataList/functions/getMeta.js.map +1 -0
- package/hooks/useDataList/functions/index.d.ts +3 -0
- package/hooks/useDataList/functions/index.js +4 -0
- package/hooks/useDataList/functions/index.js.map +1 -0
- package/hooks/useDataList/functions/searchDataByKey.d.ts +2 -0
- package/hooks/useDataList/functions/searchDataByKey.js +22 -0
- package/hooks/useDataList/functions/searchDataByKey.js.map +1 -0
- package/hooks/useDataList/index.d.ts +1 -0
- package/hooks/useDataList/index.js +2 -0
- package/hooks/useDataList/index.js.map +1 -0
- package/hooks/useDataList/useDataList.d.ts +36 -0
- package/hooks/useDataList/useDataList.js +194 -0
- package/hooks/useDataList/useDataList.js.map +1 -0
- package/hooks/useDataList/utils/index.d.ts +2 -0
- package/hooks/useDataList/utils/index.js +3 -0
- package/hooks/useDataList/utils/index.js.map +1 -0
- package/hooks/useDataList/utils/prepareLoadListParams.d.ts +4 -0
- package/hooks/useDataList/utils/prepareLoadListParams.js +35 -0
- package/hooks/useDataList/utils/prepareLoadListParams.js.map +1 -0
- package/hooks/useDataList/utils/redirectToRouteWithQueryParams.d.ts +5 -0
- package/hooks/useDataList/utils/redirectToRouteWithQueryParams.js +23 -0
- package/hooks/useDataList/utils/redirectToRouteWithQueryParams.js.map +1 -0
- package/hooks/useDataList/utils/types.d.ts +34 -0
- package/hooks/useDataList/utils/types.js +2 -0
- package/hooks/useDataList/utils/types.js.map +1 -0
- package/hooks/useHandler.d.ts +1 -0
- package/hooks/useHandler.js +13 -0
- package/hooks/useHandler.js.map +1 -0
- package/hooks/useHandlers.d.ts +11 -0
- package/hooks/useHandlers.js +20 -0
- package/hooks/useHandlers.js.map +1 -0
- package/hooks/useUi.d.ts +2 -0
- package/hooks/useUi.js +6 -0
- package/hooks/useUi.js.map +1 -0
- package/i18n/i18n.d.ts +2 -0
- package/i18n/i18n.js +6 -0
- package/i18n/i18n.js.map +1 -0
- package/i18n/index.d.ts +1 -0
- package/i18n/index.js +2 -0
- package/i18n/index.js.map +1 -0
- package/package.json +70 -0
- package/plugins/AddQuerySelectionPlugin.d.ts +15 -0
- package/plugins/AddQuerySelectionPlugin.js +102 -0
- package/plugins/AddQuerySelectionPlugin.js.map +1 -0
- package/plugins/ApolloCacheObjectIdPlugin.d.ts +15 -0
- package/plugins/ApolloCacheObjectIdPlugin.js +41 -0
- package/plugins/ApolloCacheObjectIdPlugin.js.map +1 -0
- package/plugins/ApolloDynamicLink.d.ts +5 -0
- package/plugins/ApolloDynamicLink.js +63 -0
- package/plugins/ApolloDynamicLink.js.map +1 -0
- package/plugins/ApolloLinkPlugin.d.ts +12 -0
- package/plugins/ApolloLinkPlugin.js +41 -0
- package/plugins/ApolloLinkPlugin.js.map +1 -0
- package/plugins/ConsoleLinkPlugin.d.ts +8 -0
- package/plugins/ConsoleLinkPlugin.js +48 -0
- package/plugins/ConsoleLinkPlugin.js.map +1 -0
- package/plugins/LocaleHeaderLinkPlugin.d.ts +14 -0
- package/plugins/LocaleHeaderLinkPlugin.js +62 -0
- package/plugins/LocaleHeaderLinkPlugin.js.map +1 -0
- package/plugins/NetworkErrorLinkPlugin/ErrorOverlay.d.ts +6 -0
- package/plugins/NetworkErrorLinkPlugin/ErrorOverlay.js +77 -0
- package/plugins/NetworkErrorLinkPlugin/ErrorOverlay.js.map +1 -0
- package/plugins/NetworkErrorLinkPlugin/StyledComponents.d.ts +3 -0
- package/plugins/NetworkErrorLinkPlugin/StyledComponents.js +10 -0
- package/plugins/NetworkErrorLinkPlugin/StyledComponents.js.map +1 -0
- package/plugins/NetworkErrorLinkPlugin/assets/close_24px.svg +1 -0
- package/plugins/NetworkErrorLinkPlugin/createErrorOverlay.d.ts +5 -0
- package/plugins/NetworkErrorLinkPlugin/createErrorOverlay.js +28 -0
- package/plugins/NetworkErrorLinkPlugin/createErrorOverlay.js.map +1 -0
- package/plugins/NetworkErrorLinkPlugin.d.ts +7 -0
- package/plugins/NetworkErrorLinkPlugin.js +46 -0
- package/plugins/NetworkErrorLinkPlugin.js.map +1 -0
- package/plugins/OmitTypenameLinkPlugin.d.ts +8 -0
- package/plugins/OmitTypenameLinkPlugin.js +42 -0
- package/plugins/OmitTypenameLinkPlugin.js.map +1 -0
- package/plugins/RoutePlugin.d.ts +12 -0
- package/plugins/RoutePlugin.js +37 -0
- package/plugins/RoutePlugin.js.map +1 -0
- package/plugins/TenantHeaderLinkPlugin.d.ts +14 -0
- package/plugins/TenantHeaderLinkPlugin.js +64 -0
- package/plugins/TenantHeaderLinkPlugin.js.map +1 -0
- package/plugins/ViewPlugin.d.ts +14 -0
- package/plugins/ViewPlugin.js +42 -0
- package/plugins/ViewPlugin.js.map +1 -0
- package/plugins/image.d.ts +3 -0
- package/plugins/image.js +166 -0
- package/plugins/image.js.map +1 -0
- package/plugins/index.d.ts +20 -0
- package/plugins/index.js +74 -0
- package/plugins/index.js.map +1 -0
- package/types.d.ts +62 -0
- package/types.js +3 -0
- package/types.js.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/hooks/useDataList/functions/getMeta.ts"],"names":["searchDataByKey","response"],"mappings":"AAAA,OAAOA,eAAP;AAEA,gBAAe,UAAAC,QAAQ;AAAA,SAAID,eAAe,CAAC,MAAD,EAASC,QAAT,CAAnB;AAAA,CAAvB","sourcesContent":["import searchDataByKey from \"./searchDataByKey\";\n\nexport default response => searchDataByKey(\"meta\", response);\n"],"file":"getMeta.js"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/hooks/useDataList/functions/index.ts"],"names":["default","getData","getError","getMeta"],"mappings":"AAAA,SAASA,OAAO,IAAIC,OAApB;AACA,SAASD,OAAO,IAAIE,QAApB;AACA,SAASF,OAAO,IAAIG,OAApB","sourcesContent":["export { default as getData } from \"./getData\";\nexport { default as getError } from \"./getError\";\nexport { default as getMeta } from \"./getMeta\";\n"],"file":"index.js"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
var searchDataByKey = function searchDataByKey(searchKey, object) {
|
|
2
|
+
if (!object || typeof object !== "object") {
|
|
3
|
+
return null;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
if (object[searchKey]) {
|
|
7
|
+
return object[searchKey];
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
for (var key in object) {
|
|
11
|
+
var value = searchDataByKey(searchKey, object[key]);
|
|
12
|
+
|
|
13
|
+
if (value) {
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return null;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export default searchDataByKey;
|
|
22
|
+
//# sourceMappingURL=searchDataByKey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/hooks/useDataList/functions/searchDataByKey.ts"],"names":["searchDataByKey","searchKey","object","key","value"],"mappings":"AAAA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,SAAD,EAAYC,MAAZ,EAAuB;AAC3C,MAAI,CAACA,MAAD,IAAW,OAAOA,MAAP,KAAkB,QAAjC,EAA2C;AACvC,WAAO,IAAP;AACH;;AAED,MAAIA,MAAM,CAACD,SAAD,CAAV,EAAuB;AACnB,WAAOC,MAAM,CAACD,SAAD,CAAb;AACH;;AAED,OAAK,IAAME,GAAX,IAAkBD,MAAlB,EAA0B;AACtB,QAAME,KAAK,GAAGJ,eAAe,CAACC,SAAD,EAAYC,MAAM,CAACC,GAAD,CAAlB,CAA7B;;AACA,QAAIC,KAAJ,EAAW;AACP,aAAOA,KAAP;AACH;AACJ;;AAED,SAAO,IAAP;AACH,CAjBD;;AAmBA,eAAeJ,eAAf","sourcesContent":["const searchDataByKey = (searchKey, object) => {\n if (!object || typeof object !== \"object\") {\n return null;\n }\n\n if (object[searchKey]) {\n return object[searchKey];\n }\n\n for (const key in object) {\n const value = searchDataByKey(searchKey, object[key]);\n if (value) {\n return value;\n }\n }\n\n return null;\n};\n\nexport default searchDataByKey;\n"],"file":"searchDataByKey.js"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useDataList } from "./useDataList";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/useDataList/index.ts"],"names":["useDataList"],"mappings":"AAAA,SAASA,WAAT","sourcesContent":["export { useDataList } from \"./useDataList\";\n"],"file":"index.js"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { DocumentNode } from "graphql";
|
|
2
|
+
import { ApolloClient } from "apollo-client";
|
|
3
|
+
export declare type UseDataListParams = {
|
|
4
|
+
useRouter?: boolean;
|
|
5
|
+
variables?: ((params: UseDataListParams) => any) | object;
|
|
6
|
+
client?: ApolloClient<any>;
|
|
7
|
+
query: DocumentNode;
|
|
8
|
+
getData?: (data: any) => any;
|
|
9
|
+
getMeta?: (data: any) => any;
|
|
10
|
+
getError?: (data: any) => any;
|
|
11
|
+
};
|
|
12
|
+
export declare type DataListProps = {
|
|
13
|
+
__loadParams: any;
|
|
14
|
+
refresh: (params?: any) => void;
|
|
15
|
+
data: any[];
|
|
16
|
+
meta: any;
|
|
17
|
+
error: any;
|
|
18
|
+
loading: boolean;
|
|
19
|
+
isSelected: (item: any) => boolean;
|
|
20
|
+
select: (item: any) => void;
|
|
21
|
+
isMultiSelected: (item: any) => boolean;
|
|
22
|
+
isNoneMultiSelected: () => boolean;
|
|
23
|
+
isAllMultiSelected: () => boolean;
|
|
24
|
+
multiSelectAll: (value: boolean) => void;
|
|
25
|
+
getMultiSelected: () => any[];
|
|
26
|
+
setSearch: (search: any) => void;
|
|
27
|
+
setWhere: (where: any) => void;
|
|
28
|
+
setSorters: (sort: any) => void;
|
|
29
|
+
setPerPage: (perPage: number) => void;
|
|
30
|
+
setPreviousPage: (cursor: string) => void;
|
|
31
|
+
setNextPage: (cursor: string) => void;
|
|
32
|
+
multiSelect: (items: string | string[], value?: boolean) => void;
|
|
33
|
+
init: () => void;
|
|
34
|
+
};
|
|
35
|
+
declare const useDataList: (params: UseDataListParams) => DataListProps;
|
|
36
|
+
export { useDataList };
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
+
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
3
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
4
|
+
import _isEqual from "lodash/isEqual";
|
|
5
|
+
import _get from "lodash/get";
|
|
6
|
+
import { useState, useEffect, useRef, useCallback } from "react";
|
|
7
|
+
import { useQuery } from "@apollo/react-hooks";
|
|
8
|
+
import { useRouter } from "@webiny/react-router";
|
|
9
|
+
import { prepareLoadListParams } from "./utils";
|
|
10
|
+
import { getData, getError, getMeta } from "./functions";
|
|
11
|
+
|
|
12
|
+
var useDataList = function useDataList(params) {
|
|
13
|
+
var _useState = useState([]),
|
|
14
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
15
|
+
multiSelectedItems = _useState2[0],
|
|
16
|
+
_multiSelect = _useState2[1];
|
|
17
|
+
|
|
18
|
+
var history = null;
|
|
19
|
+
var location = null;
|
|
20
|
+
var routerHook = useRouter();
|
|
21
|
+
|
|
22
|
+
if (params.useRouter !== false) {
|
|
23
|
+
history = routerHook.history;
|
|
24
|
+
location = routerHook.location;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
var getQueryOptions = useCallback(function () {
|
|
28
|
+
var variables = params.variables;
|
|
29
|
+
|
|
30
|
+
if (typeof variables === "function") {
|
|
31
|
+
variables = variables(params);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return {
|
|
35
|
+
client: params.client,
|
|
36
|
+
variables: _objectSpread(_objectSpread({}, variables), prepareLoadListParams(location))
|
|
37
|
+
};
|
|
38
|
+
}, undefined);
|
|
39
|
+
var queryData = useQuery(params.query, getQueryOptions());
|
|
40
|
+
var prevLoadParamsRef = useRef({});
|
|
41
|
+
var dataListProps = {
|
|
42
|
+
data: _get(params, "getData", getData)(queryData.data),
|
|
43
|
+
meta: _get(params, "getMeta", getMeta)(queryData.data),
|
|
44
|
+
error: _get(params, "getError", getError)(queryData.data),
|
|
45
|
+
loading: queryData.loading,
|
|
46
|
+
init: function init() {
|
|
47
|
+
this.refresh();
|
|
48
|
+
},
|
|
49
|
+
refresh: function refresh() {
|
|
50
|
+
var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
|
51
|
+
|
|
52
|
+
// Refresh multi select first.
|
|
53
|
+
_multiSelect([]);
|
|
54
|
+
|
|
55
|
+
if (!params) {
|
|
56
|
+
queryData.refetch(dataListProps.__loadParams);
|
|
57
|
+
return;
|
|
58
|
+
} // if (history) {
|
|
59
|
+
// redirectToRouteWithQueryParams(params, { history, location });
|
|
60
|
+
// return;
|
|
61
|
+
// }
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
queryData.refetch(params);
|
|
65
|
+
},
|
|
66
|
+
setPerPage: function setPerPage(perPage) {
|
|
67
|
+
var preparedParams = _objectSpread(_objectSpread({}, dataListProps.__loadParams), {}, {
|
|
68
|
+
limit: parseInt("" + perPage),
|
|
69
|
+
after: undefined,
|
|
70
|
+
before: undefined
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
this.refresh(preparedParams);
|
|
74
|
+
},
|
|
75
|
+
setNextPage: function setNextPage(cursor) {
|
|
76
|
+
var preparedParams = _objectSpread(_objectSpread({}, dataListProps.__loadParams), {}, {
|
|
77
|
+
after: cursor,
|
|
78
|
+
before: undefined
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
this.refresh(preparedParams);
|
|
82
|
+
},
|
|
83
|
+
setPreviousPage: function setPreviousPage(cursor) {
|
|
84
|
+
var preparedParams = _objectSpread(_objectSpread({}, dataListProps.__loadParams), {}, {
|
|
85
|
+
after: undefined,
|
|
86
|
+
before: cursor
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
this.refresh(preparedParams);
|
|
90
|
+
},
|
|
91
|
+
setSearch: function setSearch(search) {
|
|
92
|
+
var preparedParams = _objectSpread(_objectSpread({}, dataListProps.__loadParams), {}, {
|
|
93
|
+
search: search,
|
|
94
|
+
after: undefined,
|
|
95
|
+
before: undefined
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
this.refresh(preparedParams);
|
|
99
|
+
},
|
|
100
|
+
setWhere: function setWhere(where) {
|
|
101
|
+
var preparedParams = _objectSpread(_objectSpread({}, dataListProps.__loadParams), {}, {
|
|
102
|
+
where: where,
|
|
103
|
+
after: undefined,
|
|
104
|
+
before: undefined
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
this.refresh(preparedParams);
|
|
108
|
+
},
|
|
109
|
+
setSorters: function setSorters(sort) {
|
|
110
|
+
var preparedParams = _objectSpread(_objectSpread({}, dataListProps.__loadParams), {}, {
|
|
111
|
+
sort: sort,
|
|
112
|
+
after: undefined,
|
|
113
|
+
before: undefined
|
|
114
|
+
});
|
|
115
|
+
|
|
116
|
+
this.refresh(preparedParams);
|
|
117
|
+
},
|
|
118
|
+
multiSelect: function multiSelect(items, value) {
|
|
119
|
+
if (!Array.isArray(items)) {
|
|
120
|
+
items = [items];
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
var returnItems = _toConsumableArray(multiSelectedItems);
|
|
124
|
+
|
|
125
|
+
items.forEach(function (item) {
|
|
126
|
+
if (value === undefined) {
|
|
127
|
+
returnItems.includes(item) ? returnItems.splice(returnItems.indexOf(item), 1) : returnItems.push(item);
|
|
128
|
+
} else {
|
|
129
|
+
if (value === true) {
|
|
130
|
+
!returnItems.includes(item) && returnItems.push(item);
|
|
131
|
+
} else {
|
|
132
|
+
returnItems.includes(item) && returnItems.splice(returnItems.indexOf(item), 1);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
|
|
137
|
+
_multiSelect(returnItems);
|
|
138
|
+
},
|
|
139
|
+
isSelected: function isSelected(item) {
|
|
140
|
+
var query = new URLSearchParams(location.search);
|
|
141
|
+
return query.get("id") === item.id;
|
|
142
|
+
},
|
|
143
|
+
select: function select(item) {
|
|
144
|
+
var query = new URLSearchParams(location.search);
|
|
145
|
+
query.set("id", item.id);
|
|
146
|
+
history.push({
|
|
147
|
+
search: query.toString()
|
|
148
|
+
});
|
|
149
|
+
},
|
|
150
|
+
isMultiSelected: function isMultiSelected(item) {
|
|
151
|
+
if (!Array.isArray(multiSelectedItems)) {
|
|
152
|
+
return false;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
return multiSelectedItems.includes(item);
|
|
156
|
+
},
|
|
157
|
+
isNoneMultiSelected: function isNoneMultiSelected() {
|
|
158
|
+
return multiSelectedItems.length === 0;
|
|
159
|
+
},
|
|
160
|
+
getMultiSelected: function getMultiSelected() {
|
|
161
|
+
return multiSelectedItems;
|
|
162
|
+
},
|
|
163
|
+
multiSelectAll: function multiSelectAll(value) {
|
|
164
|
+
var data = dataListProps.data;
|
|
165
|
+
|
|
166
|
+
if (Array.isArray(data)) {
|
|
167
|
+
dataListProps.multiSelect(data, value);
|
|
168
|
+
} else {
|
|
169
|
+
dataListProps.multiSelect([], value);
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
isAllMultiSelected: function isAllMultiSelected() {
|
|
173
|
+
var data = dataListProps.data;
|
|
174
|
+
return Array.isArray(data) && multiSelectedItems.length === data.length;
|
|
175
|
+
},
|
|
176
|
+
__loadParams: prepareLoadListParams(location)
|
|
177
|
+
};
|
|
178
|
+
useEffect(function () {
|
|
179
|
+
var params = {
|
|
180
|
+
prev: prevLoadParamsRef.current,
|
|
181
|
+
current: dataListProps.__loadParams
|
|
182
|
+
};
|
|
183
|
+
|
|
184
|
+
if (!_isEqual(params.prev, params.current)) {
|
|
185
|
+
dataListProps.init();
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
prevLoadParamsRef.current = params.current;
|
|
189
|
+
});
|
|
190
|
+
return dataListProps;
|
|
191
|
+
};
|
|
192
|
+
|
|
193
|
+
export { useDataList };
|
|
194
|
+
//# sourceMappingURL=useDataList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/useDataList/useDataList.ts"],"names":["useState","useEffect","useRef","useCallback","useQuery","useRouter","prepareLoadListParams","getData","getError","getMeta","useDataList","params","multiSelectedItems","multiSelect","history","location","routerHook","getQueryOptions","variables","client","undefined","queryData","query","prevLoadParamsRef","dataListProps","data","meta","error","loading","init","refresh","refetch","__loadParams","setPerPage","perPage","preparedParams","limit","parseInt","after","before","setNextPage","cursor","setPreviousPage","setSearch","search","setWhere","where","setSorters","sort","items","value","Array","isArray","returnItems","forEach","item","includes","splice","indexOf","push","isSelected","URLSearchParams","get","id","select","set","toString","isMultiSelected","isNoneMultiSelected","length","getMultiSelected","multiSelectAll","isAllMultiSelected","prev","current"],"mappings":"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","sourcesContent":["import { useState, useEffect, useRef, useCallback } from \"react\";\nimport { useQuery } from \"@apollo/react-hooks\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { get, isEqual } from \"lodash\";\nimport { prepareLoadListParams } from \"./utils\";\nimport { getData, getError, getMeta } from \"./functions\";\n\nimport { DocumentNode } from \"graphql\";\nimport { ApolloClient } from \"apollo-client\";\n\nexport type UseDataListParams = {\n useRouter?: boolean;\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 type 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([]);\n\n let history = null;\n let location = null;\n const routerHook = useRouter();\n\n if (params.useRouter !== false) {\n history = routerHook.history;\n location = routerHook.location;\n }\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(location)\n }\n };\n }, undefined);\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 // if (history) {\n // redirectToRouteWithQueryParams(params, { history, location });\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 history.push({ search: query.toString() });\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"],"file":"useDataList.js"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/hooks/useDataList/utils/index.ts"],"names":["default","prepareLoadListParams","redirectToRouteWithQueryParams"],"mappings":"AAAA,SAASA,OAAO,IAAIC,qBAApB;AACA,SAASD,OAAO,IAAIE,8BAApB","sourcesContent":["export { default as prepareLoadListParams } from \"./prepareLoadListParams\";\nexport { default as redirectToRouteWithQueryParams } from \"./redirectToRouteWithQueryParams\";\n"],"file":"index.js"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export default (function (location) {
|
|
2
|
+
var params = {};
|
|
3
|
+
|
|
4
|
+
if (location) {
|
|
5
|
+
var query = new URLSearchParams(location.search);
|
|
6
|
+
var after = query.get("after");
|
|
7
|
+
var before = query.get("before");
|
|
8
|
+
var limit = query.get("limit");
|
|
9
|
+
|
|
10
|
+
if (after) {
|
|
11
|
+
params.after = after;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
if (before) {
|
|
15
|
+
params.before = before;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
if (limit) {
|
|
19
|
+
params.limit = parseInt(limit);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
["sort", "where", "search"].forEach(function (key) {
|
|
23
|
+
if (typeof query.get(key) === "string") {
|
|
24
|
+
try {
|
|
25
|
+
params[key] = JSON.parse(query.get(key));
|
|
26
|
+
} catch (e) {
|
|
27
|
+
params[key] = query.get(key);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return params;
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=prepareLoadListParams.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/hooks/useDataList/utils/prepareLoadListParams.ts"],"names":["location","params","query","URLSearchParams","search","after","get","before","limit","parseInt","forEach","key","JSON","parse","e"],"mappings":"AAAA,gBAAe,UAAAA,QAAQ,EAAI;AACvB,MAAMC,MAA8B,GAAG,EAAvC;;AAEA,MAAID,QAAJ,EAAc;AACV,QAAME,KAAK,GAAG,IAAIC,eAAJ,CAAoBH,QAAQ,CAACI,MAA7B,CAAd;AAEA,QAAMC,KAAK,GAAGH,KAAK,CAACI,GAAN,CAAU,OAAV,CAAd;AACA,QAAMC,MAAM,GAAGL,KAAK,CAACI,GAAN,CAAU,QAAV,CAAf;AACA,QAAME,KAAK,GAAGN,KAAK,CAACI,GAAN,CAAU,OAAV,CAAd;;AAEA,QAAID,KAAJ,EAAW;AACPJ,MAAAA,MAAM,CAACI,KAAP,GAAeA,KAAf;AACH;;AAED,QAAIE,MAAJ,EAAY;AACRN,MAAAA,MAAM,CAACM,MAAP,GAAgBA,MAAhB;AACH;;AAED,QAAIC,KAAJ,EAAW;AACPP,MAAAA,MAAM,CAACO,KAAP,GAAeC,QAAQ,CAACD,KAAD,CAAvB;AACH;;AAED,KAAC,MAAD,EAAS,OAAT,EAAkB,QAAlB,EAA4BE,OAA5B,CAAoC,UAAAC,GAAG,EAAI;AACvC,UAAI,OAAOT,KAAK,CAACI,GAAN,CAAUK,GAAV,CAAP,KAA0B,QAA9B,EAAwC;AACpC,YAAI;AACAV,UAAAA,MAAM,CAACU,GAAD,CAAN,GAAcC,IAAI,CAACC,KAAL,CAAWX,KAAK,CAACI,GAAN,CAAUK,GAAV,CAAX,CAAd;AACH,SAFD,CAEE,OAAOG,CAAP,EAAU;AACRb,UAAAA,MAAM,CAACU,GAAD,CAAN,GAAcT,KAAK,CAACI,GAAN,CAAUK,GAAV,CAAd;AACH;AACJ;AACJ,KARD;AASH;;AAED,SAAOV,MAAP;AACH,CAlCD","sourcesContent":["export default location => {\n const params: { [key: string]: any } = {};\n\n if (location) {\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 [\"sort\", \"where\", \"search\"].forEach(key => {\n if (typeof query.get(key) === \"string\") {\n try {\n params[key] = JSON.parse(query.get(key));\n } catch (e) {\n params[key] = query.get(key);\n }\n }\n });\n }\n\n return params;\n};\n"],"file":"prepareLoadListParams.js"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export default (function (params, _ref) {
|
|
2
|
+
var history = _ref.history,
|
|
3
|
+
location = _ref.location;
|
|
4
|
+
var paramsClone = Object.assign({}, params);
|
|
5
|
+
["sort", "search", "where"].forEach(function (key) {
|
|
6
|
+
if (typeof paramsClone[key] === "object") {
|
|
7
|
+
paramsClone[key] = JSON.stringify(paramsClone[key]);
|
|
8
|
+
}
|
|
9
|
+
});
|
|
10
|
+
var keys = ["limit", "after", "before", "where", "search", "sort"];
|
|
11
|
+
var query = new URLSearchParams(location.search);
|
|
12
|
+
keys.forEach(function (key) {
|
|
13
|
+
if (typeof paramsClone[key] !== "undefined") {
|
|
14
|
+
query.set(key, paramsClone[key]);
|
|
15
|
+
} else {
|
|
16
|
+
query.delete(key);
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
history.push({
|
|
20
|
+
search: query.toString()
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
//# sourceMappingURL=redirectToRouteWithQueryParams.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/hooks/useDataList/utils/redirectToRouteWithQueryParams.ts"],"names":["params","history","location","paramsClone","Object","assign","forEach","key","JSON","stringify","keys","query","URLSearchParams","search","set","delete","push","toString"],"mappings":"AAAA,gBAAe,UAACA,MAAD,QAAmC;AAAA,MAAxBC,OAAwB,QAAxBA,OAAwB;AAAA,MAAfC,QAAe,QAAfA,QAAe;AAC9C,MAAMC,WAAW,GAAGC,MAAM,CAACC,MAAP,CAAc,EAAd,EAAkBL,MAAlB,CAApB;AAEA,GAAC,MAAD,EAAS,QAAT,EAAmB,OAAnB,EAA4BM,OAA5B,CAAoC,UAAAC,GAAG,EAAI;AACvC,QAAI,OAAOJ,WAAW,CAACI,GAAD,CAAlB,KAA4B,QAAhC,EAA0C;AACtCJ,MAAAA,WAAW,CAACI,GAAD,CAAX,GAAmBC,IAAI,CAACC,SAAL,CAAeN,WAAW,CAACI,GAAD,CAA1B,CAAnB;AACH;AACJ,GAJD;AAMA,MAAMG,IAAI,GAAG,CAAC,OAAD,EAAU,OAAV,EAAmB,QAAnB,EAA6B,OAA7B,EAAsC,QAAtC,EAAgD,MAAhD,CAAb;AAEA,MAAMC,KAAK,GAAG,IAAIC,eAAJ,CAAoBV,QAAQ,CAACW,MAA7B,CAAd;AACAH,EAAAA,IAAI,CAACJ,OAAL,CAAa,UAAAC,GAAG,EAAI;AAChB,QAAI,OAAOJ,WAAW,CAACI,GAAD,CAAlB,KAA4B,WAAhC,EAA6C;AACzCI,MAAAA,KAAK,CAACG,GAAN,CAAUP,GAAV,EAAeJ,WAAW,CAACI,GAAD,CAA1B;AACH,KAFD,MAEO;AACHI,MAAAA,KAAK,CAACI,MAAN,CAAaR,GAAb;AACH;AACJ,GAND;AAQAN,EAAAA,OAAO,CAACe,IAAR,CAAa;AAAEH,IAAAA,MAAM,EAAEF,KAAK,CAACM,QAAN;AAAV,GAAb;AACH,CArBD","sourcesContent":["export default (params, { history, location }) => {\n const paramsClone = Object.assign({}, params);\n\n [\"sort\", \"search\", \"where\"].forEach(key => {\n if (typeof paramsClone[key] === \"object\") {\n paramsClone[key] = JSON.stringify(paramsClone[key]);\n }\n });\n\n const keys = [\"limit\", \"after\", \"before\", \"where\", \"search\", \"sort\"];\n\n const query = new URLSearchParams(location.search);\n keys.forEach(key => {\n if (typeof paramsClone[key] !== \"undefined\") {\n query.set(key, paramsClone[key]);\n } else {\n query.delete(key);\n }\n });\n\n history.push({ search: query.toString() });\n};\n"],"file":"redirectToRouteWithQueryParams.js"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export declare type UseDataListParams = {
|
|
2
|
+
load?: boolean;
|
|
3
|
+
name: string;
|
|
4
|
+
type: string;
|
|
5
|
+
fields: string;
|
|
6
|
+
limit?: number;
|
|
7
|
+
sort?: Object;
|
|
8
|
+
where?: Object;
|
|
9
|
+
search?: Object;
|
|
10
|
+
};
|
|
11
|
+
export declare type SearchParams = {
|
|
12
|
+
query: string;
|
|
13
|
+
operator?: "and" | "or";
|
|
14
|
+
fields?: Array<string>;
|
|
15
|
+
};
|
|
16
|
+
export declare type UseDataListProps = {
|
|
17
|
+
data: Array<Object>;
|
|
18
|
+
meta: Object;
|
|
19
|
+
init: () => void;
|
|
20
|
+
refresh: (params?: Object) => void;
|
|
21
|
+
delete: (id: string, options: Object) => void;
|
|
22
|
+
setPerPage: (perPage: number) => void;
|
|
23
|
+
setPage: (page: number) => void;
|
|
24
|
+
setSearch: (search: SearchParams | any) => void;
|
|
25
|
+
setWhere: (where: Object) => void;
|
|
26
|
+
setSorters: (sort: Object) => void;
|
|
27
|
+
multiSelect: (item: Object, value: boolean) => void;
|
|
28
|
+
multiSelectAll: (value: boolean) => void;
|
|
29
|
+
isMultiSelected: (item: Object) => boolean;
|
|
30
|
+
isAllMultiSelected: () => boolean;
|
|
31
|
+
isNoneMultiSelected: () => boolean;
|
|
32
|
+
getMultiSelected: () => Array<Object>;
|
|
33
|
+
__loadParams: UseDataListParams;
|
|
34
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[],"file":"types.js"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function useHandler(props: any, factory: any): (...args: any[]) => any;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { useRef, useEffect } from "react";
|
|
2
|
+
export function useHandler(props, factory) {
|
|
3
|
+
var propsRef = useRef(props);
|
|
4
|
+
var handlerRef = useRef(function () {
|
|
5
|
+
var handler = factory(propsRef.current);
|
|
6
|
+
return handler.apply(void 0, arguments);
|
|
7
|
+
});
|
|
8
|
+
useEffect(function () {
|
|
9
|
+
propsRef.current = props;
|
|
10
|
+
});
|
|
11
|
+
return handlerRef.current;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=useHandler.js.map
|