@panneau/data 3.0.173 → 3.0.174

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.
Files changed (3) hide show
  1. package/es/index.js +47 -16
  2. package/lib/index.js +47 -16
  3. package/package.json +3 -3
package/es/index.js CHANGED
@@ -571,7 +571,7 @@ var useItems = function useItems(_ref) {
571
571
  var useItems$1 = useItems;
572
572
 
573
573
  var _excluded$2 = ["page", "count"],
574
- _excluded2 = ["data", "refetch", "isLoading", "isFetched"];
574
+ _excluded2 = ["data", "refetch", "isLoading", "isFetching", "isRefetching", "isFetched"];
575
575
  var useItemsStore = function useItemsStore(store, _ref) {
576
576
  var _ref$url = _ref.url,
577
577
  url = _ref$url === void 0 ? null : _ref$url,
@@ -642,8 +642,10 @@ var useItemsStore = function useItemsStore(store, _ref) {
642
642
  _useQuery$data = _useQuery.data,
643
643
  data = _useQuery$data === void 0 ? null : _useQuery$data,
644
644
  reload = _useQuery.refetch,
645
- loading = _useQuery.isLoading,
646
- loaded = _useQuery.isFetched,
645
+ isLoading = _useQuery.isLoading,
646
+ isFetching = _useQuery.isFetching,
647
+ isRefetching = _useQuery.isRefetching,
648
+ isFetched = _useQuery.isFetched,
647
649
  otherProps = _objectWithoutProperties(_useQuery, _excluded2);
648
650
  var _ref4 = data || {},
649
651
  _ref4$data = _ref4.data,
@@ -731,19 +733,24 @@ var useItemsStore = function useItemsStore(store, _ref) {
731
733
 
732
734
  // Keep a list of pages, useEffect wont work here because delayed
733
735
  var pages = useRef(null);
734
- if (loaded && page !== null && data !== null) {
736
+ if (isFetched && page !== null && data !== null) {
735
737
  pages.current = _objectSpread(_objectSpread({}, pages.current), {}, _defineProperty({}, page, data));
736
738
  }
737
739
  var allItems = pages.current !== null ? replaceUpdatedItems(Object.keys(pages.current).flatMap(function (k) {
738
740
  var _pages$current$k;
739
741
  return (_pages$current$k = pages.current[k]) === null || _pages$current$k === void 0 ? void 0 : _pages$current$k.data;
740
742
  })) : finalItems;
743
+ var finalLoading = isLoading || isFetching || isRefetching;
741
744
  return _objectSpread(_objectSpread({}, otherProps), {}, {
745
+ isLoading: isLoading,
746
+ isFetching: isFetching,
747
+ isRefetching: isRefetching,
748
+ isFetched: isFetched,
742
749
  items: finalItems,
743
750
  pages: pages.current,
744
751
  allItems: allItems,
745
- loading: loading,
746
- loaded: loaded,
752
+ loading: finalLoading,
753
+ loaded: isFetched,
747
754
  reload: reload,
748
755
  loadPage: loadPage,
749
756
  loadNextPage: loadNextPage,
@@ -1002,10 +1009,12 @@ var MediasApi = /*#__PURE__*/function (_Base) {
1002
1009
  baseUrl: opts.baseUrl ? opts.baseUrl : null,
1003
1010
  routes: _objectSpread({
1004
1011
  index: 'medias',
1012
+ trashed: 'medias/trash',
1005
1013
  tags: 'medias/tags',
1006
1014
  show: 'medias/:media',
1007
1015
  store: 'medias',
1008
1016
  update: 'medias/:media',
1017
+ trash: 'medias/trash/:media',
1009
1018
  "delete": 'medias/:media'
1010
1019
  }, opts.routes || null)
1011
1020
  }]);
@@ -1033,6 +1042,21 @@ var MediasApi = /*#__PURE__*/function (_Base) {
1033
1042
  }
1034
1043
  return this.requestGet(this.route('index'), finalQuery);
1035
1044
  }
1045
+ }, {
1046
+ key: "getTrashed",
1047
+ value: function getTrashed() {
1048
+ var query = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1049
+ var page = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
1050
+ var count = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 10;
1051
+ var finalQuery = _objectSpread({}, query);
1052
+ if (page !== null) {
1053
+ finalQuery.page = page;
1054
+ }
1055
+ if (count !== null) {
1056
+ finalQuery.count = count;
1057
+ }
1058
+ return this.requestGet(this.route('trashed'), finalQuery);
1059
+ }
1036
1060
  }, {
1037
1061
  key: "getTags",
1038
1062
  value: function getTags() {
@@ -1056,6 +1080,13 @@ var MediasApi = /*#__PURE__*/function (_Base) {
1056
1080
  media: id
1057
1081
  }), data);
1058
1082
  }
1083
+ }, {
1084
+ key: "trash",
1085
+ value: function trash(id) {
1086
+ return this.requestDelete(this.route('trash', {
1087
+ media: id
1088
+ }));
1089
+ }
1059
1090
  }, {
1060
1091
  key: "delete",
1061
1092
  value: function _delete(id) {
@@ -1339,13 +1370,19 @@ var useQueryContext = function useQueryContext() {
1339
1370
  };
1340
1371
  var propTypes$1 = {
1341
1372
  config: PropTypes.shape({}),
1373
+ initialKey: PropTypes.arrayOf(PropTypes.string),
1374
+ initialData: PropTypes.oneOfType([PropTypes.shape({}), PropTypes.arrayOf(PropTypes.shape({}))]),
1342
1375
  children: PropTypes.node.isRequired
1343
1376
  };
1344
1377
  var defaultProps$1 = {
1345
- config: null
1378
+ config: null,
1379
+ initialKey: null,
1380
+ initialData: null
1346
1381
  };
1347
1382
  var QueryProvider = function QueryProvider(_ref) {
1348
1383
  var initialConfig = _ref.config,
1384
+ initialKey = _ref.initialKey,
1385
+ initialData = _ref.initialData,
1349
1386
  children = _ref.children;
1350
1387
  var queryClient = useMemo(function () {
1351
1388
  var client = new QueryClient(_objectSpread({
@@ -1355,15 +1392,9 @@ var QueryProvider = function QueryProvider(_ref) {
1355
1392
  }
1356
1393
  }
1357
1394
  }, initialConfig));
1358
- // if (page !== null) {
1359
- // const query =
1360
- // window && !isEmpty(window.location.search)
1361
- // ? queryString.parse(window.location.search, {
1362
- // arrayFormat: 'bracket',
1363
- // })
1364
- // : null;
1365
- // client.setQueryData(['pages', page.url, query], page);
1366
- // }
1395
+ if (initialKey !== null && initialData !== null) {
1396
+ client.setQueryData(initialKey, initialData);
1397
+ }
1367
1398
  return client;
1368
1399
  }, [initialConfig]);
1369
1400
  return /*#__PURE__*/React.createElement(QueryClientProvider, {
package/lib/index.js CHANGED
@@ -1235,7 +1235,7 @@ var useItems = function useItems(_ref) {
1235
1235
  var useItems$1 = useItems;
1236
1236
 
1237
1237
  var _excluded$2 = ["page", "count"],
1238
- _excluded2 = ["data", "refetch", "isLoading", "isFetched"];
1238
+ _excluded2 = ["data", "refetch", "isLoading", "isFetching", "isRefetching", "isFetched"];
1239
1239
  var useItemsStore = function useItemsStore(store, _ref) {
1240
1240
  var _ref$url = _ref.url,
1241
1241
  url = _ref$url === void 0 ? null : _ref$url,
@@ -1306,8 +1306,10 @@ var useItemsStore = function useItemsStore(store, _ref) {
1306
1306
  _useQuery$data = _useQuery.data,
1307
1307
  data = _useQuery$data === void 0 ? null : _useQuery$data,
1308
1308
  reload = _useQuery.refetch,
1309
- loading = _useQuery.isLoading,
1310
- loaded = _useQuery.isFetched,
1309
+ isLoading = _useQuery.isLoading,
1310
+ isFetching = _useQuery.isFetching,
1311
+ isRefetching = _useQuery.isRefetching,
1312
+ isFetched = _useQuery.isFetched,
1311
1313
  otherProps = _objectWithoutProperties(_useQuery, _excluded2);
1312
1314
  var _ref4 = data || {},
1313
1315
  _ref4$data = _ref4.data,
@@ -1395,19 +1397,24 @@ var useItemsStore = function useItemsStore(store, _ref) {
1395
1397
 
1396
1398
  // Keep a list of pages, useEffect wont work here because delayed
1397
1399
  var pages = React.useRef(null);
1398
- if (loaded && page !== null && data !== null) {
1400
+ if (isFetched && page !== null && data !== null) {
1399
1401
  pages.current = _objectSpread(_objectSpread({}, pages.current), {}, _defineProperty({}, page, data));
1400
1402
  }
1401
1403
  var allItems = pages.current !== null ? replaceUpdatedItems(Object.keys(pages.current).flatMap(function (k) {
1402
1404
  var _pages$current$k;
1403
1405
  return (_pages$current$k = pages.current[k]) === null || _pages$current$k === void 0 ? void 0 : _pages$current$k.data;
1404
1406
  })) : finalItems;
1407
+ var finalLoading = isLoading || isFetching || isRefetching;
1405
1408
  return _objectSpread(_objectSpread({}, otherProps), {}, {
1409
+ isLoading: isLoading,
1410
+ isFetching: isFetching,
1411
+ isRefetching: isRefetching,
1412
+ isFetched: isFetched,
1406
1413
  items: finalItems,
1407
1414
  pages: pages.current,
1408
1415
  allItems: allItems,
1409
- loading: loading,
1410
- loaded: loaded,
1416
+ loading: finalLoading,
1417
+ loaded: isFetched,
1411
1418
  reload: reload,
1412
1419
  loadPage: loadPage,
1413
1420
  loadNextPage: loadNextPage,
@@ -1682,10 +1689,12 @@ var MediasApi = /*#__PURE__*/function (_Base) {
1682
1689
  baseUrl: opts.baseUrl ? opts.baseUrl : null,
1683
1690
  routes: _objectSpread({
1684
1691
  index: 'medias',
1692
+ trashed: 'medias/trash',
1685
1693
  tags: 'medias/tags',
1686
1694
  show: 'medias/:media',
1687
1695
  store: 'medias',
1688
1696
  update: 'medias/:media',
1697
+ trash: 'medias/trash/:media',
1689
1698
  "delete": 'medias/:media'
1690
1699
  }, opts.routes || null)
1691
1700
  }]);
@@ -1713,6 +1722,21 @@ var MediasApi = /*#__PURE__*/function (_Base) {
1713
1722
  }
1714
1723
  return this.requestGet(this.route('index'), finalQuery);
1715
1724
  }
1725
+ }, {
1726
+ key: "getTrashed",
1727
+ value: function getTrashed() {
1728
+ var query = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1729
+ var page = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
1730
+ var count = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 10;
1731
+ var finalQuery = _objectSpread({}, query);
1732
+ if (page !== null) {
1733
+ finalQuery.page = page;
1734
+ }
1735
+ if (count !== null) {
1736
+ finalQuery.count = count;
1737
+ }
1738
+ return this.requestGet(this.route('trashed'), finalQuery);
1739
+ }
1716
1740
  }, {
1717
1741
  key: "getTags",
1718
1742
  value: function getTags() {
@@ -1736,6 +1760,13 @@ var MediasApi = /*#__PURE__*/function (_Base) {
1736
1760
  media: id
1737
1761
  }), data);
1738
1762
  }
1763
+ }, {
1764
+ key: "trash",
1765
+ value: function trash(id) {
1766
+ return this.requestDelete(this.route('trash', {
1767
+ media: id
1768
+ }));
1769
+ }
1739
1770
  }, {
1740
1771
  key: "delete",
1741
1772
  value: function _delete(id) {
@@ -2019,13 +2050,19 @@ var useQueryContext = function useQueryContext() {
2019
2050
  };
2020
2051
  var propTypes$1 = {
2021
2052
  config: PropTypes.shape({}),
2053
+ initialKey: PropTypes.arrayOf(PropTypes.string),
2054
+ initialData: PropTypes.oneOfType([PropTypes.shape({}), PropTypes.arrayOf(PropTypes.shape({}))]),
2022
2055
  children: PropTypes.node.isRequired
2023
2056
  };
2024
2057
  var defaultProps$1 = {
2025
- config: null
2058
+ config: null,
2059
+ initialKey: null,
2060
+ initialData: null
2026
2061
  };
2027
2062
  var QueryProvider = function QueryProvider(_ref) {
2028
2063
  var initialConfig = _ref.config,
2064
+ initialKey = _ref.initialKey,
2065
+ initialData = _ref.initialData,
2029
2066
  children = _ref.children;
2030
2067
  var queryClient = React.useMemo(function () {
2031
2068
  var client = new reactQuery.QueryClient(_objectSpread({
@@ -2035,15 +2072,9 @@ var QueryProvider = function QueryProvider(_ref) {
2035
2072
  }
2036
2073
  }
2037
2074
  }, initialConfig));
2038
- // if (page !== null) {
2039
- // const query =
2040
- // window && !isEmpty(window.location.search)
2041
- // ? queryString.parse(window.location.search, {
2042
- // arrayFormat: 'bracket',
2043
- // })
2044
- // : null;
2045
- // client.setQueryData(['pages', page.url, query], page);
2046
- // }
2075
+ if (initialKey !== null && initialData !== null) {
2076
+ client.setQueryData(initialKey, initialData);
2077
+ }
2047
2078
  return client;
2048
2079
  }, [initialConfig]);
2049
2080
  return /*#__PURE__*/React.createElement(reactQuery.QueryClientProvider, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@panneau/data",
3
- "version": "3.0.173",
3
+ "version": "3.0.174",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "javascript"
@@ -56,7 +56,7 @@
56
56
  "@babel/runtime": "^7.12.5",
57
57
  "@folklore/fetch": "^0.1.17",
58
58
  "@folklore/routes": "^0.2.26",
59
- "@panneau/core": "^3.0.169",
59
+ "@panneau/core": "^3.0.174",
60
60
  "@tanstack/react-query": "^5.29.2",
61
61
  "lodash": "^4.17.21",
62
62
  "prop-types": "^15.7.2",
@@ -65,5 +65,5 @@
65
65
  "publishConfig": {
66
66
  "access": "public"
67
67
  },
68
- "gitHead": "29037e4f0ed74d81586442a76daffcfb6d062200"
68
+ "gitHead": "0b3a328b97ef9e9c02f8cfe731ac50a1611dc854"
69
69
  }