@panneau/core 2.0.71 → 2.0.75
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/es/hooks.js +40 -1
- package/lib/hooks.js +40 -0
- package/package.json +2 -2
package/es/hooks.js
CHANGED
|
@@ -889,6 +889,45 @@ var useResourceUrlGenerator = function useResourceUrlGenerator() {
|
|
|
889
889
|
};
|
|
890
890
|
};
|
|
891
891
|
|
|
892
|
+
var useResourceQuery = function useResourceQuery() {
|
|
893
|
+
var initialValues = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
|
894
|
+
var paginated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
895
|
+
var initialQuery = useMemo(function () {
|
|
896
|
+
return paginated ? _objectSpread({
|
|
897
|
+
page: 1,
|
|
898
|
+
count: 10
|
|
899
|
+
}, initialValues) : initialValues || null;
|
|
900
|
+
}, [paginated, initialValues]);
|
|
901
|
+
var _useState = useState(initialQuery),
|
|
902
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
903
|
+
query = _useState2[0],
|
|
904
|
+
setQuery = _useState2[1];
|
|
905
|
+
useEffect(function () {
|
|
906
|
+
setQuery(initialQuery);
|
|
907
|
+
}, [initialQuery, setQuery]);
|
|
908
|
+
var onPageChange = useCallback(function (newPage) {
|
|
909
|
+
setQuery(_objectSpread(_objectSpread({}, query), {}, {
|
|
910
|
+
page: newPage || 1
|
|
911
|
+
}));
|
|
912
|
+
}, [query, setQuery]);
|
|
913
|
+
var onQueryChange = useCallback(function (newQuery) {
|
|
914
|
+
var finalQuery = newQuery !== null ? Object.keys(newQuery).reduce(function (currentQuery, key) {
|
|
915
|
+
var val = newQuery[key];
|
|
916
|
+
return val !== null ? _objectSpread(_objectSpread({}, currentQuery), {}, _defineProperty({}, key, val)) : currentQuery;
|
|
917
|
+
}, null) : null;
|
|
918
|
+
setQuery(finalQuery);
|
|
919
|
+
}, [query, setQuery]);
|
|
920
|
+
var onQueryReset = useCallback(function () {
|
|
921
|
+
setQuery(initialQuery);
|
|
922
|
+
}, [initialQuery, setQuery]);
|
|
923
|
+
return {
|
|
924
|
+
query: query,
|
|
925
|
+
onPageChange: onPageChange,
|
|
926
|
+
onQueryChange: onQueryChange,
|
|
927
|
+
onQueryReset: onQueryReset
|
|
928
|
+
};
|
|
929
|
+
};
|
|
930
|
+
|
|
892
931
|
var _excluded = ["width", "height"];
|
|
893
932
|
var useScreenSize = function useScreenSize(_ref) {
|
|
894
933
|
var _ref$width = _ref.width,
|
|
@@ -999,4 +1038,4 @@ var useScreenSizeFromWindow = function useScreenSizeFromWindow(opts) {
|
|
|
999
1038
|
var eventsManager = typeof window !== 'undefined' ? new EventsManager(window) : null;
|
|
1000
1039
|
var useWindowEvent = createUseEvent(eventsManager);
|
|
1001
1040
|
|
|
1002
|
-
export { getObserver, useAnimationFrame, useDocumentEvent, useForm, useFormattedDate, useFormattedTime, useIntersectionObserver, useIsVisible, useLoadedFonts, useMediaApi, useMediasParser, useObserver, useResizeObserver, useResourceUrlGenerator, useScreenSizeFromElement, useScreenSizeFromWindow, useWindowEvent };
|
|
1041
|
+
export { getObserver, useAnimationFrame, useDocumentEvent, useForm, useFormattedDate, useFormattedTime, useIntersectionObserver, useIsVisible, useLoadedFonts, useMediaApi, useMediasParser, useObserver, useResizeObserver, useResourceQuery, useResourceUrlGenerator, useScreenSizeFromElement, useScreenSizeFromWindow, useWindowEvent };
|
package/lib/hooks.js
CHANGED
|
@@ -924,6 +924,45 @@ var useResourceUrlGenerator = function useResourceUrlGenerator() {
|
|
|
924
924
|
};
|
|
925
925
|
};
|
|
926
926
|
|
|
927
|
+
var useResourceQuery = function useResourceQuery() {
|
|
928
|
+
var initialValues = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
|
929
|
+
var paginated = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
930
|
+
var initialQuery = react.useMemo(function () {
|
|
931
|
+
return paginated ? _objectSpread__default["default"]({
|
|
932
|
+
page: 1,
|
|
933
|
+
count: 10
|
|
934
|
+
}, initialValues) : initialValues || null;
|
|
935
|
+
}, [paginated, initialValues]);
|
|
936
|
+
var _useState = react.useState(initialQuery),
|
|
937
|
+
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
938
|
+
query = _useState2[0],
|
|
939
|
+
setQuery = _useState2[1];
|
|
940
|
+
react.useEffect(function () {
|
|
941
|
+
setQuery(initialQuery);
|
|
942
|
+
}, [initialQuery, setQuery]);
|
|
943
|
+
var onPageChange = react.useCallback(function (newPage) {
|
|
944
|
+
setQuery(_objectSpread__default["default"](_objectSpread__default["default"]({}, query), {}, {
|
|
945
|
+
page: newPage || 1
|
|
946
|
+
}));
|
|
947
|
+
}, [query, setQuery]);
|
|
948
|
+
var onQueryChange = react.useCallback(function (newQuery) {
|
|
949
|
+
var finalQuery = newQuery !== null ? Object.keys(newQuery).reduce(function (currentQuery, key) {
|
|
950
|
+
var val = newQuery[key];
|
|
951
|
+
return val !== null ? _objectSpread__default["default"](_objectSpread__default["default"]({}, currentQuery), {}, _defineProperty__default["default"]({}, key, val)) : currentQuery;
|
|
952
|
+
}, null) : null;
|
|
953
|
+
setQuery(finalQuery);
|
|
954
|
+
}, [query, setQuery]);
|
|
955
|
+
var onQueryReset = react.useCallback(function () {
|
|
956
|
+
setQuery(initialQuery);
|
|
957
|
+
}, [initialQuery, setQuery]);
|
|
958
|
+
return {
|
|
959
|
+
query: query,
|
|
960
|
+
onPageChange: onPageChange,
|
|
961
|
+
onQueryChange: onQueryChange,
|
|
962
|
+
onQueryReset: onQueryReset
|
|
963
|
+
};
|
|
964
|
+
};
|
|
965
|
+
|
|
927
966
|
var _excluded = ["width", "height"];
|
|
928
967
|
var useScreenSize = function useScreenSize(_ref) {
|
|
929
968
|
var _ref$width = _ref.width,
|
|
@@ -1047,6 +1086,7 @@ exports.useMediaApi = useMediaApi;
|
|
|
1047
1086
|
exports.useMediasParser = useMediasParser;
|
|
1048
1087
|
exports.useObserver = useObserver;
|
|
1049
1088
|
exports.useResizeObserver = useResizeObserver;
|
|
1089
|
+
exports.useResourceQuery = useResourceQuery;
|
|
1050
1090
|
exports.useResourceUrlGenerator = useResourceUrlGenerator;
|
|
1051
1091
|
exports.useScreenSizeFromElement = useScreenSizeFromElement;
|
|
1052
1092
|
exports.useScreenSizeFromWindow = useScreenSizeFromWindow;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@panneau/core",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.75",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"javascript"
|
|
@@ -114,5 +114,5 @@
|
|
|
114
114
|
"publishConfig": {
|
|
115
115
|
"access": "public"
|
|
116
116
|
},
|
|
117
|
-
"gitHead": "
|
|
117
|
+
"gitHead": "2b0ca89c848915cdafd65de777882516ae3df88e"
|
|
118
118
|
}
|