@panneau/data 2.0.5 → 2.0.7

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/index.js CHANGED
@@ -887,11 +887,26 @@ var useResourceItems = function useResourceItems(resource) {
887
887
  var query = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
888
888
  var page = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
889
889
  var count = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
890
- var opts = arguments.length > 4 ? arguments[4] : undefined;
890
+ var opts = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
891
891
  var api = useApi();
892
+ var _ref = resource || {},
893
+ _ref$id = _ref.id,
894
+ id = _ref$id === void 0 ? null : _ref$id;
895
+ var lastResourceRef = useRef(id);
896
+ var resourceChanging = lastResourceRef.current !== id;
892
897
  var getItems = useCallback(function () {
893
898
  var requestedPage = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
894
- return api.resources.get(resource, query, requestedPage, count);
899
+ return api.resources.get(resource, query, requestedPage, count).then(function (response) {
900
+ var _ref2 = resource || {},
901
+ resourceId = _ref2.id;
902
+ lastResourceRef.current = resourceId;
903
+ return response;
904
+ })["catch"](function (err) {
905
+ var _ref3 = resource || {},
906
+ resourceId = _ref3.id;
907
+ lastResourceRef.current = resourceId;
908
+ throw err;
909
+ });
895
910
  }, [api, resource, query, count]);
896
911
  var _useItems = useItems(_objectSpread({
897
912
  getPage: page !== null ? getItems : null,
@@ -901,8 +916,9 @@ var useResourceItems = function useResourceItems(resource) {
901
916
  items = _useItems.items,
902
917
  pageItems = _useItems.pageItems,
903
918
  request = _objectWithoutProperties(_useItems, _excluded);
919
+ var finalItems = page !== null ? pageItems : items;
904
920
  return _objectSpread({
905
- items: page !== null ? pageItems : items,
921
+ items: resourceChanging ? null : finalItems,
906
922
  allItems: items
907
923
  }, request);
908
924
  };
package/lib/index.js CHANGED
@@ -906,11 +906,26 @@ var useResourceItems = function useResourceItems(resource) {
906
906
  var query = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
907
907
  var page = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
908
908
  var count = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
909
- var opts = arguments.length > 4 ? arguments[4] : undefined;
909
+ var opts = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
910
910
  var api = useApi();
911
+ var _ref = resource || {},
912
+ _ref$id = _ref.id,
913
+ id = _ref$id === void 0 ? null : _ref$id;
914
+ var lastResourceRef = React.useRef(id);
915
+ var resourceChanging = lastResourceRef.current !== id;
911
916
  var getItems = React.useCallback(function () {
912
917
  var requestedPage = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
913
- return api.resources.get(resource, query, requestedPage, count);
918
+ return api.resources.get(resource, query, requestedPage, count).then(function (response) {
919
+ var _ref2 = resource || {},
920
+ resourceId = _ref2.id;
921
+ lastResourceRef.current = resourceId;
922
+ return response;
923
+ })["catch"](function (err) {
924
+ var _ref3 = resource || {},
925
+ resourceId = _ref3.id;
926
+ lastResourceRef.current = resourceId;
927
+ throw err;
928
+ });
914
929
  }, [api, resource, query, count]);
915
930
  var _useItems = useItems(_objectSpread__default["default"]({
916
931
  getPage: page !== null ? getItems : null,
@@ -920,8 +935,9 @@ var useResourceItems = function useResourceItems(resource) {
920
935
  items = _useItems.items,
921
936
  pageItems = _useItems.pageItems,
922
937
  request = _objectWithoutProperties__default["default"](_useItems, _excluded);
938
+ var finalItems = page !== null ? pageItems : items;
923
939
  return _objectSpread__default["default"]({
924
- items: page !== null ? pageItems : items,
940
+ items: resourceChanging ? null : finalItems,
925
941
  allItems: items
926
942
  }, request);
927
943
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@panneau/data",
3
- "version": "2.0.5",
3
+ "version": "2.0.7",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "javascript"
@@ -62,5 +62,5 @@
62
62
  "publishConfig": {
63
63
  "access": "public"
64
64
  },
65
- "gitHead": "eb99739fb81a02464eccb6a131b3e36a436de294"
65
+ "gitHead": "c875d4bd6d5315f9d5156b5679a33a1d8250a83f"
66
66
  }