@mic-rexjs/usecases-react 2.13.6 → 2.14.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.
@@ -9,18 +9,13 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
9
9
  var _useConstantEntityReducers = require("../useConstantEntityReducers");
10
10
  var _useContextualItem = require("../useContextualItem");
11
11
  var _usecases = require("@mic-rexjs/usecases");
12
- var _ahooks = require("ahooks");
13
12
  var _react = require("react");
14
13
  var _Statuses = require("../../enums/Statuses");
15
14
  var _initStore = require("../../methods/initStore");
16
- var _triggerWatchers = require("../../methods/triggerWatchers");
17
15
  var _valueUseCase = require("../../usecases/valueUseCase");
18
- var useStore = exports.useStore = function useStore(context, entity, statuses, options) {
16
+ var useStore = exports.useStore = function useStore(entityArg, context, statuses, options) {
19
17
  var deps = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
20
- var update = (0, _ahooks.useUpdate)();
21
- var optionsRef = (0, _ahooks.useLatest)(options);
22
18
  var storeRef = (0, _react.useRef)(null);
23
- var entityEnabled = (statuses & _Statuses.Statuses.EntityEnabled) === _Statuses.Statuses.EntityEnabled;
24
19
  var entityRootEnabled = (statuses & _Statuses.Statuses.EntityRootEnabled) === _Statuses.Statuses.EntityRootEnabled;
25
20
  var contextValue = (0, _react.useContext)(context);
26
21
  var _ref = contextValue || {},
@@ -28,7 +23,7 @@ var useStore = exports.useStore = function useStore(context, entity, statuses, o
28
23
  contextStore = _ref$store === void 0 ? null : _ref$store;
29
24
  var _useConstantEntityRed = (0, _useConstantEntityReducers.useConstantEntityReducers)([], _valueUseCase.valueUseCase),
30
25
  recordValueDiff = _useConstantEntityRed.recordValueDiff;
31
- var store = (0, _useContextualItem.useContextualItem)(contextStore, statuses, function () {
26
+ return (0, _useContextualItem.useContextualItem)(contextStore, statuses, function () {
32
27
  if (!entityRootEnabled) {
33
28
  return new _usecases.EntityStore(null);
34
29
  }
@@ -36,60 +31,8 @@ var useStore = exports.useStore = function useStore(context, entity, statuses, o
36
31
  var _recordValueDiff = recordValueDiff(deps),
37
32
  _recordValueDiff2 = (0, _slicedToArray2["default"])(_recordValueDiff, 2),
38
33
  changedDeps = _recordValueDiff2[1];
39
- var newStore = (0, _initStore.initStore)(entity, current, changedDeps);
34
+ var newStore = (0, _initStore.initStore)(entityArg, current, changedDeps);
40
35
  storeRef.current = newStore;
41
36
  return newStore;
42
37
  }, deps);
43
- var value = store.value;
44
- var prevValueRef = (0, _react.useRef)(value);
45
- var onTriggerWatchers = (0, _ahooks.useMemoizedFn)(function (newEntity, oldEntity) {
46
- var watch = optionsRef.current.watch;
47
- if (!watch) {
48
- return;
49
- }
50
- (0, _triggerWatchers.triggerWatchers)(watch, newEntity, oldEntity);
51
- });
52
- var onEntityChange = (0, _ahooks.useMemoizedFn)(function (newEntity, oldEntity) {
53
- var onChange = optionsRef.current.onChange;
54
- prevValueRef.current = newEntity;
55
- onTriggerWatchers(newEntity, oldEntity);
56
- onChange === null || onChange === void 0 || onChange(newEntity, oldEntity);
57
- if (!entityRootEnabled) {
58
- return;
59
- }
60
- update();
61
- });
62
- var onValueChange = (0, _ahooks.useMemoizedFn)(function () {
63
- if (!entityEnabled) {
64
- return;
65
- }
66
- var prevValue = prevValueRef.current;
67
- if (value === prevValue) {
68
- return;
69
- }
70
- prevValueRef.current = value;
71
- onTriggerWatchers(value, prevValue);
72
- });
73
- /**
74
- * 需要马上 `watch`,因为 `useEffect` 在子组件内优先执行,
75
- * 如果使用了 `setEntity` 则无法监控到变化
76
- */
77
- (0, _ahooks.useCreation)(function () {
78
- if (!entityEnabled) {
79
- return;
80
- }
81
- store.watch(onEntityChange);
82
- }, [entityEnabled, store, onEntityChange]);
83
- /**
84
- * 在变化时候,组件更新前,使用 `unwatch`
85
- */
86
- (0, _react.useEffect)(function () {
87
- return function () {
88
- store.unwatch(onEntityChange);
89
- };
90
- }, [entityEnabled, store, onEntityChange]);
91
- (0, _ahooks.useUpdateEffect)(function () {
92
- onValueChange();
93
- }, [value, onValueChange]);
94
- return store;
95
38
  };
@@ -42,9 +42,9 @@ var useUseCase = exports.useUseCase = function useUseCase() {
42
42
  var context = (0, _useContext.useContext)(usecase, argumentTypes);
43
43
  var entityContext = context;
44
44
  var statuses = (0, _useStatuses.useStatuses)(context, argumentTypes);
45
- var store = (0, _useStore.useStore)(entityContext, unsafeEntity, statuses, options, deps);
46
- var entity = (0, _useEntity.useEntity)(store, unsafeEntity, statuses);
45
+ var store = (0, _useStore.useStore)(unsafeEntity, entityContext, statuses, options, deps);
47
46
  var reducers = (0, _useReducers.useReducers)(usecase, context, store, statuses, options, deps);
47
+ var entity = (0, _useEntity.useEntity)(unsafeEntity, store, reducers, statuses, options);
48
48
  var Provider = (0, _useProvider.useProvider)(statuses, context, store, reducers);
49
49
  return (0, _ahooks.useCreation)(function () {
50
50
  if ((statuses & _Statuses.Statuses.EntityEnabled) !== _Statuses.Statuses.EntityEnabled) {
@@ -1681,13 +1681,14 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1681
1681
  });
1682
1682
  });
1683
1683
  (0, _globals.test)('`options.watch` should work with field path of array length', function () {
1684
+ var defaultList = [];
1684
1685
  var onEntityLengthChange = _globals.jest.fn();
1685
1686
  var onListLengthChange = _globals.jest.fn();
1686
1687
  var lengthUseCase = function lengthUseCase() {
1687
1688
  return (0, _usecases.entityUseCase)();
1688
1689
  };
1689
1690
  var _renderHook32 = (0, _react.renderHook)(function () {
1690
- return (0, _.useUseCase)([], lengthUseCase, {
1691
+ return (0, _.useUseCase)(defaultList, lengthUseCase, {
1691
1692
  watch: {
1692
1693
  length: onEntityLengthChange,
1693
1694
  'list.length': onListLengthChange
@@ -1940,6 +1941,51 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1940
1941
  (0, _globals.expect)(onStringMount).toHaveBeenCalledWith('hello');
1941
1942
  (0, _globals.expect)(onBooleanMount).toHaveBeenCalledWith(true);
1942
1943
  });
1944
+ (0, _globals.test)('`bindEntity` should be called when component mount', function () {
1945
+ var bindEntity = _globals.jest.fn(function (entity) {
1946
+ void entity;
1947
+ });
1948
+ var testUseCase = function testUseCase() {
1949
+ var entityReducers = (0, _usecases.entityUseCase)();
1950
+ return _objectSpread(_objectSpread({}, entityReducers), {}, {
1951
+ bindEntity: bindEntity
1952
+ });
1953
+ };
1954
+ (0, _react.renderHook)(function () {
1955
+ var _useUseCase24 = (0, _.useUseCase)(5, testUseCase),
1956
+ _useUseCase25 = (0, _slicedToArray2["default"])(_useUseCase24, 2),
1957
+ setEntity = _useUseCase25[1].setEntity;
1958
+ (0, _ahooks.useMount)(function () {
1959
+ setEntity(100);
1960
+ });
1961
+ });
1962
+ (0, _globals.expect)(bindEntity).toHaveBeenCalledTimes(1);
1963
+ (0, _globals.expect)(bindEntity).toHaveBeenCalledWith(5);
1964
+ });
1965
+ (0, _globals.test)('`unbindEntity` should be called when component unmount', function () {
1966
+ var unbindEntity = _globals.jest.fn(function (entity) {
1967
+ void entity;
1968
+ });
1969
+ var testUseCase = function testUseCase() {
1970
+ var entityReducers = (0, _usecases.entityUseCase)();
1971
+ return _objectSpread(_objectSpread({}, entityReducers), {}, {
1972
+ unbindEntity: unbindEntity
1973
+ });
1974
+ };
1975
+ var _renderHook35 = (0, _react.renderHook)(function () {
1976
+ var _useUseCase26 = (0, _.useUseCase)(5, testUseCase),
1977
+ _useUseCase27 = (0, _slicedToArray2["default"])(_useUseCase26, 2),
1978
+ setEntity = _useUseCase27[1].setEntity;
1979
+ (0, _ahooks.useMount)(function () {
1980
+ setEntity(100);
1981
+ });
1982
+ }),
1983
+ unmount = _renderHook35.unmount;
1984
+ (0, _globals.expect)(unbindEntity).toHaveBeenCalledTimes(0);
1985
+ unmount();
1986
+ (0, _globals.expect)(unbindEntity).toHaveBeenCalledTimes(1);
1987
+ (0, _globals.expect)(unbindEntity).toHaveBeenCalledWith(100);
1988
+ });
1943
1989
  });
1944
1990
  (0, _globals.describe)('`useUseCase` should work the same as `useContextualCoreCollection`', function () {
1945
1991
  (0, _globals.test)('Provider should be returned in child component', function () {
@@ -1956,13 +2002,13 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1956
2002
  return (0, _jsxRuntime.jsx)(_react2.Fragment, {});
1957
2003
  };
1958
2004
  var TestParent = function TestParent() {
1959
- var _useUseCase24 = (0, _.useUseCase)(function () {
2005
+ var _useUseCase28 = (0, _.useUseCase)(function () {
1960
2006
  return _objectSpread(_objectSpread({}, defaultFile), {}, {
1961
2007
  ext: EXT_1
1962
2008
  });
1963
2009
  }, fileUseCase),
1964
- _useUseCase25 = (0, _slicedToArray2["default"])(_useUseCase24, 3),
1965
- Provider = _useUseCase25[2];
2010
+ _useUseCase29 = (0, _slicedToArray2["default"])(_useUseCase28, 3),
2011
+ Provider = _useUseCase29[2];
1966
2012
  return (0, _jsxRuntime.jsx)(Provider, {
1967
2013
  children: (0, _jsxRuntime.jsx)(TestChild, {})
1968
2014
  });
@@ -1978,10 +2024,10 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1978
2024
  var onPopupFile = _globals.jest.fn();
1979
2025
  var buttonText = 'button';
1980
2026
  var Popup = function Popup() {
1981
- var _useUseCase26 = (0, _.useUseCase)(fileUseCase),
1982
- _useUseCase27 = (0, _slicedToArray2["default"])(_useUseCase26, 2),
1983
- file = _useUseCase27[0],
1984
- setEntity = _useUseCase27[1].setEntity;
2027
+ var _useUseCase30 = (0, _.useUseCase)(fileUseCase),
2028
+ _useUseCase31 = (0, _slicedToArray2["default"])(_useUseCase30, 2),
2029
+ file = _useUseCase31[0],
2030
+ setEntity = _useUseCase31[1].setEntity;
1985
2031
  var onClick = function onClick() {
1986
2032
  setEntity({
1987
2033
  ext: EXT_2
@@ -1996,24 +2042,24 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
1996
2042
  });
1997
2043
  };
1998
2044
  var TestChild = function TestChild() {
1999
- var _useUseCase28 = (0, _.useUseCase)(fileUseCase),
2000
- _useUseCase29 = (0, _slicedToArray2["default"])(_useUseCase28, 3),
2001
- Provider = _useUseCase29[2];
2045
+ var _useUseCase32 = (0, _.useUseCase)(fileUseCase),
2046
+ _useUseCase33 = (0, _slicedToArray2["default"])(_useUseCase32, 3),
2047
+ Provider = _useUseCase33[2];
2002
2048
  return (0, _reactDom.createPortal)((0, _jsxRuntime.jsx)(Provider, {
2003
2049
  children: (0, _jsxRuntime.jsx)(Popup, {})
2004
2050
  }), document.body);
2005
2051
  };
2006
2052
  var TestParent = function TestParent() {
2007
- var _useUseCase30 = (0, _.useUseCase)(function () {
2053
+ var _useUseCase34 = (0, _.useUseCase)(function () {
2008
2054
  return _objectSpread(_objectSpread({}, defaultFile), {}, {
2009
2055
  ext: EXT_1
2010
2056
  });
2011
2057
  }, fileUseCase, {
2012
2058
  onChange: onChange
2013
2059
  }),
2014
- _useUseCase31 = (0, _slicedToArray2["default"])(_useUseCase30, 3),
2015
- file = _useUseCase31[0],
2016
- Provider = _useUseCase31[2];
2060
+ _useUseCase35 = (0, _slicedToArray2["default"])(_useUseCase34, 3),
2061
+ file = _useUseCase35[0],
2062
+ Provider = _useUseCase35[2];
2017
2063
  (0, _react2.useEffect)(function () {
2018
2064
  onRootFile(file);
2019
2065
  }, [file]);
@@ -2074,9 +2120,9 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2074
2120
  return (0, _jsxRuntime.jsx)(_react2.Fragment, {});
2075
2121
  };
2076
2122
  var B = function B() {
2077
- var _useUseCase32 = (0, _.useUseCase)(defaultFile, mockUseCase),
2078
- _useUseCase33 = (0, _slicedToArray2["default"])(_useUseCase32, 3),
2079
- Provider = _useUseCase33[2];
2123
+ var _useUseCase36 = (0, _.useUseCase)(defaultFile, mockUseCase),
2124
+ _useUseCase37 = (0, _slicedToArray2["default"])(_useUseCase36, 3),
2125
+ Provider = _useUseCase37[2];
2080
2126
  return (0, _jsxRuntime.jsx)(Provider, {
2081
2127
  children: (0, _jsxRuntime.jsx)(A, {})
2082
2128
  });
@@ -2096,9 +2142,9 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2096
2142
  });
2097
2143
  };
2098
2144
  var A = function A() {
2099
- var _useUseCase34 = (0, _.useUseCase)(stringUseCase),
2100
- _useUseCase35 = (0, _slicedToArray2["default"])(_useUseCase34, 2),
2101
- add = _useUseCase35[1].add;
2145
+ var _useUseCase38 = (0, _.useUseCase)(stringUseCase),
2146
+ _useUseCase39 = (0, _slicedToArray2["default"])(_useUseCase38, 2),
2147
+ add = _useUseCase39[1].add;
2102
2148
  var update = (0, _ahooks.useUpdate)();
2103
2149
  var onClick = function onClick() {
2104
2150
  update();
@@ -2110,9 +2156,9 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2110
2156
  });
2111
2157
  };
2112
2158
  var B = function B() {
2113
- var _useUseCase36 = (0, _.useUseCase)('', stringUseCase),
2114
- _useUseCase37 = (0, _slicedToArray2["default"])(_useUseCase36, 3),
2115
- Provider = _useUseCase37[2];
2159
+ var _useUseCase40 = (0, _.useUseCase)('', stringUseCase),
2160
+ _useUseCase41 = (0, _slicedToArray2["default"])(_useUseCase40, 3),
2161
+ Provider = _useUseCase41[2];
2116
2162
  return (0, _jsxRuntime.jsx)(Provider, {
2117
2163
  children: (0, _jsxRuntime.jsx)(A, {})
2118
2164
  });
@@ -2136,9 +2182,9 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2136
2182
  });
2137
2183
  };
2138
2184
  var A = function A() {
2139
- var _useUseCase38 = (0, _.useUseCase)(stringUseCase),
2140
- _useUseCase39 = (0, _slicedToArray2["default"])(_useUseCase38, 2),
2141
- add = _useUseCase39[1].add;
2185
+ var _useUseCase42 = (0, _.useUseCase)(stringUseCase),
2186
+ _useUseCase43 = (0, _slicedToArray2["default"])(_useUseCase42, 2),
2187
+ add = _useUseCase43[1].add;
2142
2188
  var onClick = function onClick() {
2143
2189
  add('x');
2144
2190
  };
@@ -2152,9 +2198,9 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2152
2198
  });
2153
2199
  };
2154
2200
  var B = function B() {
2155
- var _useUseCase40 = (0, _.useUseCase)('', stringUseCase),
2156
- _useUseCase41 = (0, _slicedToArray2["default"])(_useUseCase40, 3),
2157
- Provider = _useUseCase41[2];
2201
+ var _useUseCase44 = (0, _.useUseCase)('', stringUseCase),
2202
+ _useUseCase45 = (0, _slicedToArray2["default"])(_useUseCase44, 3),
2203
+ Provider = _useUseCase45[2];
2158
2204
  return (0, _jsxRuntime.jsx)(Provider, {
2159
2205
  children: (0, _jsxRuntime.jsx)(A, {})
2160
2206
  });
@@ -2182,11 +2228,11 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2182
2228
  });
2183
2229
  };
2184
2230
  var A = function A() {
2185
- var _useUseCase42 = (0, _.useUseCase)(stringUseCase),
2186
- _useUseCase43 = (0, _slicedToArray2["default"])(_useUseCase42, 2),
2187
- _useUseCase43$ = _useUseCase43[1],
2188
- add = _useUseCase43$.add,
2189
- setEntity = _useUseCase43$.setEntity;
2231
+ var _useUseCase46 = (0, _.useUseCase)(stringUseCase),
2232
+ _useUseCase47 = (0, _slicedToArray2["default"])(_useUseCase46, 2),
2233
+ _useUseCase47$ = _useUseCase47[1],
2234
+ add = _useUseCase47$.add,
2235
+ setEntity = _useUseCase47$.setEntity;
2190
2236
  var update = (0, _ahooks.useUpdate)();
2191
2237
  add(addedText);
2192
2238
  var onSet = function onSet() {
@@ -2206,9 +2252,9 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2206
2252
  });
2207
2253
  };
2208
2254
  var B = function B() {
2209
- var _useUseCase44 = (0, _.useUseCase)('', stringUseCase),
2210
- _useUseCase45 = (0, _slicedToArray2["default"])(_useUseCase44, 3),
2211
- Provider = _useUseCase45[2];
2255
+ var _useUseCase48 = (0, _.useUseCase)('', stringUseCase),
2256
+ _useUseCase49 = (0, _slicedToArray2["default"])(_useUseCase48, 3),
2257
+ Provider = _useUseCase49[2];
2212
2258
  return (0, _jsxRuntime.jsx)(Provider, {
2213
2259
  children: (0, _jsxRuntime.jsx)(A, {})
2214
2260
  });
@@ -2253,12 +2299,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2253
2299
  return (0, _jsxRuntime.jsx)(_react2.Fragment, {});
2254
2300
  };
2255
2301
  var C = function C() {
2256
- var _useUseCase46 = (0, _.useUseCase)(defaultFile, fileUseCase, {
2302
+ var _useUseCase50 = (0, _.useUseCase)(defaultFile, fileUseCase, {
2257
2303
  onChange: onChangeC
2258
2304
  }),
2259
- _useUseCase47 = (0, _slicedToArray2["default"])(_useUseCase46, 3),
2260
- setPath = _useUseCase47[1].setPath,
2261
- Provider = _useUseCase47[2];
2305
+ _useUseCase51 = (0, _slicedToArray2["default"])(_useUseCase50, 3),
2306
+ setPath = _useUseCase51[1].setPath,
2307
+ Provider = _useUseCase51[2];
2262
2308
  var onFirstClick = function onFirstClick() {
2263
2309
  setPath(PATH_1);
2264
2310
  };
@@ -2285,11 +2331,11 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2285
2331
  var firstButtonText = 'first button';
2286
2332
  var secondButtonText = 'second button';
2287
2333
  var A = function A() {
2288
- var _useUseCase48 = (0, _.useUseCase)(fileUseCase, {
2334
+ var _useUseCase52 = (0, _.useUseCase)(fileUseCase, {
2289
2335
  onChange: onChange
2290
2336
  }),
2291
- _useUseCase49 = (0, _slicedToArray2["default"])(_useUseCase48, 2),
2292
- setPath = _useUseCase49[1].setPath;
2337
+ _useUseCase53 = (0, _slicedToArray2["default"])(_useUseCase52, 2),
2338
+ setPath = _useUseCase53[1].setPath;
2293
2339
  var onFirstClick = function onFirstClick() {
2294
2340
  setPath(PATH_1);
2295
2341
  onChange = onSecondChange;
@@ -2308,9 +2354,9 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2308
2354
  });
2309
2355
  };
2310
2356
  var B = function B() {
2311
- var _useUseCase50 = (0, _.useUseCase)(defaultFile, fileUseCase),
2312
- _useUseCase51 = (0, _slicedToArray2["default"])(_useUseCase50, 3),
2313
- Provider = _useUseCase51[2];
2357
+ var _useUseCase54 = (0, _.useUseCase)(defaultFile, fileUseCase),
2358
+ _useUseCase55 = (0, _slicedToArray2["default"])(_useUseCase54, 3),
2359
+ Provider = _useUseCase55[2];
2314
2360
  return (0, _jsxRuntime.jsx)(Provider, {
2315
2361
  children: (0, _jsxRuntime.jsx)(A, {})
2316
2362
  });
@@ -2332,13 +2378,13 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2332
2378
  var onExtChange = _globals.jest.fn();
2333
2379
  var firstButtonText = 'first button';
2334
2380
  var A = function A() {
2335
- var _useUseCase52 = (0, _.useUseCase)(fileUseCase, {
2381
+ var _useUseCase56 = (0, _.useUseCase)(fileUseCase, {
2336
2382
  watch: {
2337
2383
  ext: onExtChange
2338
2384
  }
2339
2385
  }),
2340
- _useUseCase53 = (0, _slicedToArray2["default"])(_useUseCase52, 2),
2341
- setPath = _useUseCase53[1].setPath;
2386
+ _useUseCase57 = (0, _slicedToArray2["default"])(_useUseCase56, 2),
2387
+ setPath = _useUseCase57[1].setPath;
2342
2388
  var onFirstClick = function onFirstClick() {
2343
2389
  setPath(PATH_1);
2344
2390
  };
@@ -2348,9 +2394,9 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2348
2394
  });
2349
2395
  };
2350
2396
  var B = function B() {
2351
- var _useUseCase54 = (0, _.useUseCase)(defaultFile, fileUseCase, {}),
2352
- _useUseCase55 = (0, _slicedToArray2["default"])(_useUseCase54, 3),
2353
- Provider = _useUseCase55[2];
2397
+ var _useUseCase58 = (0, _.useUseCase)(defaultFile, fileUseCase, {}),
2398
+ _useUseCase59 = (0, _slicedToArray2["default"])(_useUseCase58, 3),
2399
+ Provider = _useUseCase59[2];
2354
2400
  return (0, _jsxRuntime.jsx)(Provider, {
2355
2401
  children: (0, _jsxRuntime.jsx)(A, {})
2356
2402
  });
@@ -2400,14 +2446,14 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2400
2446
  return (0, _jsxRuntime.jsx)(_react2.Fragment, {});
2401
2447
  };
2402
2448
  var C = function C() {
2403
- var _useUseCase56 = (0, _.useUseCase)(defaultFile, fileUseCase, {
2449
+ var _useUseCase60 = (0, _.useUseCase)(defaultFile, fileUseCase, {
2404
2450
  watch: {
2405
2451
  ext: onChangeC
2406
2452
  }
2407
2453
  }),
2408
- _useUseCase57 = (0, _slicedToArray2["default"])(_useUseCase56, 3),
2409
- setPath = _useUseCase57[1].setPath,
2410
- Provider = _useUseCase57[2];
2454
+ _useUseCase61 = (0, _slicedToArray2["default"])(_useUseCase60, 3),
2455
+ setPath = _useUseCase61[1].setPath,
2456
+ Provider = _useUseCase61[2];
2411
2457
  var onFirstClick = function onFirstClick() {
2412
2458
  setPath(PATH_1);
2413
2459
  };
@@ -2434,13 +2480,13 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2434
2480
  var firstButtonText = 'first button';
2435
2481
  var secondButtonText = 'second button';
2436
2482
  var A = function A() {
2437
- var _useUseCase58 = (0, _.useUseCase)(fileUseCase, {
2483
+ var _useUseCase62 = (0, _.useUseCase)(fileUseCase, {
2438
2484
  watch: {
2439
2485
  ext: onExtChange
2440
2486
  }
2441
2487
  }),
2442
- _useUseCase59 = (0, _slicedToArray2["default"])(_useUseCase58, 2),
2443
- setPath = _useUseCase59[1].setPath;
2488
+ _useUseCase63 = (0, _slicedToArray2["default"])(_useUseCase62, 2),
2489
+ setPath = _useUseCase63[1].setPath;
2444
2490
  var onFirstClick = function onFirstClick() {
2445
2491
  setPath(PATH_1);
2446
2492
  onExtChange = onSecondExtChange;
@@ -2459,9 +2505,9 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2459
2505
  });
2460
2506
  };
2461
2507
  var B = function B() {
2462
- var _useUseCase60 = (0, _.useUseCase)(defaultFile, fileUseCase),
2463
- _useUseCase61 = (0, _slicedToArray2["default"])(_useUseCase60, 3),
2464
- Provider = _useUseCase61[2];
2508
+ var _useUseCase64 = (0, _.useUseCase)(defaultFile, fileUseCase),
2509
+ _useUseCase65 = (0, _slicedToArray2["default"])(_useUseCase64, 3),
2510
+ Provider = _useUseCase65[2];
2465
2511
  return (0, _jsxRuntime.jsx)(Provider, {
2466
2512
  children: (0, _jsxRuntime.jsx)(A, {})
2467
2513
  });
@@ -2488,38 +2534,38 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2488
2534
  });
2489
2535
  (0, _globals.describe)('`useUseCase` should work the same as `useReducers`', function () {
2490
2536
  (0, _globals.test)('`entity` should equal `defaultFile`', function () {
2491
- var _renderHook35 = (0, _react.renderHook)(function () {
2537
+ var _renderHook36 = (0, _react.renderHook)(function () {
2492
2538
  return (0, _.useUseCase)(mathUseCase);
2493
2539
  }),
2494
- result = _renderHook35.result;
2540
+ result = _renderHook36.result;
2495
2541
  var reducers = result.current;
2496
2542
  (0, _globals.expect)(Array.isArray(reducers)).toBe(false);
2497
2543
  });
2498
2544
  (0, _globals.test)('returned reducer should work', function () {
2499
- var _renderHook36 = (0, _react.renderHook)(function () {
2545
+ var _renderHook37 = (0, _react.renderHook)(function () {
2500
2546
  return (0, _.useUseCase)(mathUseCase);
2501
2547
  }),
2502
- result = _renderHook36.result;
2548
+ result = _renderHook37.result;
2503
2549
  var reducers = result.current;
2504
2550
  var add = reducers.add;
2505
2551
  (0, _globals.expect)(add(1, 2)).toBe(3);
2506
2552
  });
2507
2553
  (0, _globals.test)('`usecase` should be called only once if deps has not provided', function () {
2508
2554
  var mockUseCase = _globals.jest.fn(mathUseCase);
2509
- var _renderHook37 = (0, _react.renderHook)(function () {
2555
+ var _renderHook38 = (0, _react.renderHook)(function () {
2510
2556
  return (0, _.useUseCase)(mockUseCase);
2511
2557
  }),
2512
- rerender = _renderHook37.rerender;
2558
+ rerender = _renderHook38.rerender;
2513
2559
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
2514
2560
  rerender();
2515
2561
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
2516
2562
  });
2517
2563
  (0, _globals.test)('`usecase` should be called only once if deps has not changed', function () {
2518
2564
  var mockUseCase = _globals.jest.fn(mathUseCase);
2519
- var _renderHook38 = (0, _react.renderHook)(function () {
2565
+ var _renderHook39 = (0, _react.renderHook)(function () {
2520
2566
  return (0, _.useUseCase)(mockUseCase, {}, [1, 'x']);
2521
2567
  }),
2522
- rerender = _renderHook38.rerender;
2568
+ rerender = _renderHook39.rerender;
2523
2569
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
2524
2570
  rerender();
2525
2571
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
@@ -2527,10 +2573,10 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2527
2573
  (0, _globals.test)('`usecase` should be called if deps has changed', function () {
2528
2574
  var i = 0;
2529
2575
  var mockUseCase = _globals.jest.fn(mathUseCase);
2530
- var _renderHook39 = (0, _react.renderHook)(function () {
2576
+ var _renderHook40 = (0, _react.renderHook)(function () {
2531
2577
  return (0, _.useUseCase)(mockUseCase, {}, [i++, 'x']);
2532
2578
  }),
2533
- rerender = _renderHook39.rerender;
2579
+ rerender = _renderHook40.rerender;
2534
2580
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(1);
2535
2581
  rerender();
2536
2582
  (0, _globals.expect)(mockUseCase).toHaveBeenCalledTimes(2);
@@ -2538,8 +2584,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2538
2584
  (0, _globals.test)('reducer call should not be cached if component is at rendering phase', function () {
2539
2585
  var buttonText = 'button';
2540
2586
  var CacheTestComponent = function CacheTestComponent() {
2541
- var _useUseCase62 = (0, _.useUseCase)(mathUseCase),
2542
- subtraction = _useUseCase62.subtraction;
2587
+ var _useUseCase66 = (0, _.useUseCase)(mathUseCase),
2588
+ subtraction = _useUseCase66.subtraction;
2543
2589
  var update = (0, _ahooks.useUpdate)();
2544
2590
  var onClick = function onClick() {
2545
2591
  update();
@@ -2562,8 +2608,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2562
2608
  (0, _globals.test)('reducer call should not be cached if component is not at rendering phase', function () {
2563
2609
  var buttonText = 'button';
2564
2610
  var CacheTestComponent = function CacheTestComponent() {
2565
- var _useUseCase63 = (0, _.useUseCase)(mathUseCase),
2566
- subtraction = _useUseCase63.subtraction;
2611
+ var _useUseCase67 = (0, _.useUseCase)(mathUseCase),
2612
+ subtraction = _useUseCase67.subtraction;
2567
2613
  var onClick = function onClick() {
2568
2614
  subtraction(5, 3);
2569
2615
  };
@@ -2591,8 +2637,8 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2591
2637
  var count = 0;
2592
2638
  var buttonText = 'button';
2593
2639
  var StringUseCaseTestComponent = function StringUseCaseTestComponent() {
2594
- var _useUseCase64 = (0, _.useUseCase)(mathUseCase),
2595
- subtraction = _useUseCase64.subtraction;
2640
+ var _useUseCase68 = (0, _.useUseCase)(mathUseCase),
2641
+ subtraction = _useUseCase68.subtraction;
2596
2642
  var update = (0, _ahooks.useUpdate)();
2597
2643
  subtraction(5, count++);
2598
2644
  var onUpdate = function onUpdate() {
@@ -2614,12 +2660,12 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2614
2660
  (0, _globals.expect)(subtractionReducer).toHaveReturnedWith(4);
2615
2661
  });
2616
2662
  (0, _globals.test)('`options.extraValue` should be added after call `add` method', function () {
2617
- var _renderHook40 = (0, _react.renderHook)(function () {
2663
+ var _renderHook41 = (0, _react.renderHook)(function () {
2618
2664
  return (0, _.useUseCase)(mathUseCase, {
2619
2665
  extraValue: 5
2620
2666
  });
2621
2667
  }),
2622
- result = _renderHook40.result;
2668
+ result = _renderHook41.result;
2623
2669
  var reducers = result.current;
2624
2670
  var add = reducers.add;
2625
2671
  (0, _globals.expect)(add(1, 2)).toBe(8);
@@ -2627,7 +2673,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2627
2673
  (0, _globals.test)('when `options` has changed, it should not trigger update', function () {
2628
2674
  var onUpdate = _globals.jest.fn();
2629
2675
  var onDeepUpdate = _globals.jest.fn();
2630
- var _renderHook41 = (0, _react.renderHook)(function () {
2676
+ var _renderHook42 = (0, _react.renderHook)(function () {
2631
2677
  var _useState7 = (0, _react2.useState)(0),
2632
2678
  _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
2633
2679
  extraValue = _useState8[0],
@@ -2643,7 +2689,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2643
2689
  }, [reducers]);
2644
2690
  return setExtraValue;
2645
2691
  }),
2646
- result = _renderHook41.result;
2692
+ result = _renderHook42.result;
2647
2693
  (0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
2648
2694
  (0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
2649
2695
  (0, _react.act)(function () {
@@ -2655,7 +2701,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2655
2701
  (0, _globals.test)('when `deps` change, it should update reducers', function () {
2656
2702
  var onUpdate = _globals.jest.fn();
2657
2703
  var onDeepUpdate = _globals.jest.fn();
2658
- var _renderHook42 = (0, _react.renderHook)(function () {
2704
+ var _renderHook43 = (0, _react.renderHook)(function () {
2659
2705
  var _useState9 = (0, _react2.useState)(0),
2660
2706
  _useState0 = (0, _slicedToArray2["default"])(_useState9, 2),
2661
2707
  extraValue = _useState0[0],
@@ -2671,7 +2717,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2671
2717
  }, [reducers]);
2672
2718
  return setExtraValue;
2673
2719
  }),
2674
- result = _renderHook42.result;
2720
+ result = _renderHook43.result;
2675
2721
  (0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
2676
2722
  (0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
2677
2723
  (0, _react.act)(function () {
@@ -2683,7 +2729,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2683
2729
  (0, _globals.test)('empty `deps` should not update reducers', function () {
2684
2730
  var onUpdate = _globals.jest.fn();
2685
2731
  var onDeepUpdate = _globals.jest.fn();
2686
- var _renderHook43 = (0, _react.renderHook)(function () {
2732
+ var _renderHook44 = (0, _react.renderHook)(function () {
2687
2733
  var _useState1 = (0, _react2.useState)(0),
2688
2734
  _useState10 = (0, _slicedToArray2["default"])(_useState1, 2),
2689
2735
  extraValue = _useState10[0],
@@ -2699,7 +2745,7 @@ var useDeepCompareUpdate = function useDeepCompareUpdate(callback, deps) {
2699
2745
  }, [reducers]);
2700
2746
  return setExtraValue;
2701
2747
  }),
2702
- result = _renderHook43.result;
2748
+ result = _renderHook44.result;
2703
2749
  (0, _globals.expect)(onUpdate).toHaveBeenCalledTimes(0);
2704
2750
  (0, _globals.expect)(onDeepUpdate).toHaveBeenCalledTimes(0);
2705
2751
  (0, _react.act)(function () {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mic-rexjs/usecases-react",
3
- "version": "2.13.6",
3
+ "version": "2.14.0",
4
4
  "description": "React-based solution for use usecases of Clean Architecture",
5
5
  "private": false,
6
6
  "sideEffects": false,