state-decorator 8.0.0 → 9.0.0-rc.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.
Files changed (55) hide show
  1. package/README.md +34 -168
  2. package/development.js +2 -2
  3. package/development.js.map +1 -1
  4. package/helpers.js +2 -2
  5. package/helpers.js.map +1 -1
  6. package/impl.js +2 -2
  7. package/impl.js.map +1 -1
  8. package/index.js +42 -2
  9. package/index.js.map +1 -1
  10. package/middlewares.js +2 -2
  11. package/middlewares.js.map +1 -1
  12. package/package.json +2 -2
  13. package/test.js +2 -2
  14. package/test.js.map +1 -1
  15. package/es/development.d.ts +0 -10
  16. package/es/development.js +0 -2
  17. package/es/development.js.map +0 -1
  18. package/es/graph.d.ts +0 -8
  19. package/es/helpers.d.ts +0 -67
  20. package/es/helpers.js +0 -2
  21. package/es/helpers.js.map +0 -1
  22. package/es/impl.d.ts +0 -204
  23. package/es/impl.js +0 -2
  24. package/es/impl.js.map +0 -1
  25. package/es/index.d.ts +0 -182
  26. package/es/index.js +0 -2
  27. package/es/index.js.map +0 -1
  28. package/es/middlewares.d.ts +0 -3
  29. package/es/middlewares.js +0 -2
  30. package/es/middlewares.js.map +0 -1
  31. package/es/shallow.d.ts +0 -1
  32. package/es/test.d.ts +0 -126
  33. package/es/test.js +0 -2
  34. package/es/test.js.map +0 -1
  35. package/es/types.d.ts +0 -387
  36. package/es/v5.d.ts +0 -45
  37. package/es/v5.js +0 -2
  38. package/es/v5.js.map +0 -1
  39. package/es/v5_test.d.ts +0 -57
  40. package/es/v5_test.js +0 -2
  41. package/es/v5_test.js.map +0 -1
  42. package/es/v5_types.d.ts +0 -213
  43. package/es/v6.d.ts +0 -21
  44. package/es/v6.js +0 -2
  45. package/es/v6.js.map +0 -1
  46. package/v5.d.ts +0 -45
  47. package/v5.js +0 -2
  48. package/v5.js.map +0 -1
  49. package/v5_test.d.ts +0 -57
  50. package/v5_test.js +0 -2
  51. package/v5_test.js.map +0 -1
  52. package/v5_types.d.ts +0 -213
  53. package/v6.d.ts +0 -21
  54. package/v6.js +0 -2
  55. package/v6.js.map +0 -1
package/README.md CHANGED
@@ -11,6 +11,7 @@ The StateDecorator is a set of React hooks that manage a complex component state
11
11
  - [Features](#features)
12
12
  - [V7: Partial state and new hooks](#v7-partial-state-and-new-hooks)
13
13
  - [V8: Better React 19 compatibility](#v8-better-react-19-compatibility)
14
+ - [V9: ES-only build and legacy removal](#v9-es-only-build-and-legacy-removal)
14
15
  - [Getting started](#getting-started)
15
16
  - [React hooks](#react-hooks)
16
17
  - [StoreApi](#storeapi)
@@ -36,9 +37,9 @@ The StateDecorator is a set of React hooks that manage a complex component state
36
37
  - [Build](#build)
37
38
  - [Limitations](#limitations)
38
39
  - [Migration](#migration)
40
+ - [V8 to V9](#v8-to-v9)
39
41
  - [V7 to V8](#v7-to-v8)
40
42
  - [V6 to V7](#v6-to-v7)
41
- - [V5 to V6](#v5-to-v6)
42
43
  - [Examples](#examples)
43
44
  - [Visual Studio Code user snippet](#visual-studio-code-user-snippet)
44
45
 
@@ -69,6 +70,13 @@ The StateDecorator is a set of React hooks that manage a complex component state
69
70
  - Fixed a React 18+/19 concurrent rendering issue: **onMount** (and **onPropsChange** entries flagged **onMount: true**) used to run during **init()**, which can itself run during render. Under concurrent rendering, a discarded and retried render attempt could trigger these side effects (e.g. data fetches) more than once per real mount. They are now deferred to a new **runMountEffects()** store method, called once from a layout effect after the render that actually commits — see [Call actions on mount](#call-actions-on-mount).
70
71
  - See migration details in [migration section](#migration).
71
72
 
73
+ # V9: ES-only build and legacy removal
74
+
75
+ - The **v5** and **v6** compatibility layers were removed: the `state-decorator/v5`, `state-decorator/v5_test` and `state-decorator/v6` entry points no longer exist.
76
+ - The package is now ES modules only: the CommonJS build and the `es/` folder were removed, the output is not transpiled (ESNext, it was ES5) and the ES files are now at the package root. A bundler is required.
77
+ - The library is now built with [rolldown](https://rolldown.rs).
78
+ - See migration details in [migration section](#migration).
79
+
72
80
  # Getting started
73
81
 
74
82
  ## Installation
@@ -1757,17 +1765,15 @@ TypeError: Cannot set property 'crash' of null
1757
1765
 
1758
1766
  # Build
1759
1767
 
1760
- This library provides CJS and ES files.
1768
+ This library provides ES modules only, with untranspiled ESNext output: it is meant to be consumed through a bundler (webpack, Vite, Rollup, esbuild...) that transpiles it for your target browsers. Each entry point (`index`, `helpers`, `middlewares`, `development`, `test`) is a file at the package root, and no bundler alias is needed.
1761
1769
 
1762
- Webpack users should add this alias rule to prevent importing both (especially when importing another file than `index.js`):
1770
+ It is built with [rolldown](https://rolldown.rs):
1763
1771
 
1764
- ```js
1765
- resolve: {
1766
- alias: {
1767
- 'state-decorator': 'state-decorator/es',
1768
- },
1769
- },
1770
- ```
1772
+ - `yarn bundle` builds the production bundles (minified) in `lib` and emits the type declarations with `tsc`
1773
+ - `yarn bundle:dev` builds non-minified bundles
1774
+ - `yarn build` runs `yarn bundle` and prepares `lib` for publication
1775
+
1776
+ `process.env.NODE_ENV` is not replaced at build time: the development tools (`state-decorator/development`) rely on your own bundler defining it.
1771
1777
 
1772
1778
  # Limitations
1773
1779
 
@@ -1779,6 +1785,24 @@ resolve: {
1779
1785
 
1780
1786
  # Migration
1781
1787
 
1788
+ ## V8 to V9
1789
+
1790
+ ### Legacy compatibility layers removed
1791
+
1792
+ The following entry points were removed, along with everything they exported (**useStateDecorator**, **StateDecoratorActions**, the **testV6\*** helpers...):
1793
+
1794
+ - `state-decorator/v5`
1795
+ - `state-decorator/v5_test`
1796
+ - `state-decorator/v6`
1797
+
1798
+ If your code still imports one of them, migrate it to the current API **before** upgrading, using the guides of a previous release (the V5 to V6 guide only exists in the README of v8.0.0). The V6 to V7 guide below describes the code changes.
1799
+
1800
+ ### ES modules only
1801
+
1802
+ - The CommonJS build was removed: `main` and `module` now both point to the ES file `index.js`, so `require('state-decorator')` is no longer supported. A bundler (webpack, Vite, Rollup, esbuild...) is required.
1803
+ - The `es/` folder was removed: the ES files are now at the package root, like the former CommonJS ones. Imports like `state-decorator/helpers` or `state-decorator/middlewares` are unchanged, but deep imports of `state-decorator/es/...` must drop the `es/` segment (`state-decorator/es/helpers` becomes `state-decorator/helpers`). The webpack alias `'state-decorator': 'state-decorator/es'` must be removed.
1804
+ - The output is ESNext instead of ES5: it is not transpiled, so your bundler must transpile `state-decorator` (e.g. include it in your Babel/SWC rules if `node_modules` is excluded) for the browsers you support.
1805
+
1782
1806
  ## V7 to V8
1783
1807
 
1784
1808
  No breaking changes for **useLocalStore** / **useStore** / **useBindStore** users — they behave the same, no code change needed.
@@ -1795,17 +1819,6 @@ If you skip this, **onMount** (and `onMount`-flagged **onPropsChange** entries)
1795
1819
 
1796
1820
  ## V6 to V7
1797
1821
 
1798
- ### Step 1: V6 compatibility layer
1799
-
1800
- Only **useLocalStore** is supported by compatiblity layer.
1801
-
1802
- ```diff
1803
- -import useLocalStore from 'state-decorator';
1804
- +import useLocalStore from 'state-decorator/v6';
1805
- ```
1806
-
1807
- ### Step 2: Migrate code
1808
-
1809
1822
  - Merge _getInitialState_, _actions_, _options_ in a single object.
1810
1823
  - Remove state spread in effects
1811
1824
 
@@ -1850,153 +1863,6 @@ Only **useLocalStore** is supported by compatiblity layer.
1850
1863
  + }
1851
1864
  ```
1852
1865
 
1853
- ## V5 to V6
1854
-
1855
- ### Step 1: v5 compatibility layer
1856
-
1857
- To use the new engine while still using v5 API, juste import the v5 compatibility layer.
1858
- You can new store in new code.
1859
-
1860
- ```diff
1861
- -import useStateDecorator, { StateDecoratorActions } from 'state-decorator';
1862
- +import useStateDecorator, { StateDecoratorActions } from 'state-decorator/v5';
1863
- ```
1864
-
1865
- If you are using optimistic effects, make sure to set the **optimisticActions** middleware as a default middleware, see [Optimistic actions](#optimistic-actions).
1866
-
1867
- ```typescript
1868
- import { setGlobalConfig } from 'state-decorator';
1869
- import { optimisticActions } from 'state-decorator/middlewares';
1870
-
1871
- setGlobalConfig({
1872
- defaultMiddlewares: [optimisticActions()],
1873
- });
1874
- ```
1875
-
1876
- ### Step 2: Migrate code but keep v5 tests
1877
-
1878
- #### Code
1879
-
1880
- ##### Types
1881
-
1882
- | Before | After |
1883
- | --------------------- | ------------ |
1884
- | StateDecoratorActions | StoreActions |
1885
- | StateDecoratorOptions | StoreOptions |
1886
-
1887
- ##### Optimistic actions
1888
-
1889
- If you are using optimistic effects, make sure to set the **optimisticActions** middleware to your stores, see [Optimistic actions](#optimistic-actions).
1890
-
1891
- #### Hooks
1892
-
1893
- Choose one of _useLocalStore_, _useStore_, _useStoreSlice_.
1894
-
1895
- #### Actions
1896
-
1897
- - rename action properties
1898
-
1899
- | Before | After |
1900
- | ----------------- | ----------------- |
1901
- | action | effects |
1902
- | onActionDone | sideEffects |
1903
- | preReducer | preEffects |
1904
- | optimisticReducer | optimisticEffects |
1905
- | reducer | effects |
1906
- | errorReducer | errorEffects |
1907
- | onDone | sideEffects |
1908
- | onFail | errorSideEffects |
1909
- | promise | getPromise |
1910
- | promiseGet | getGetPromise |
1911
- | successMessage | getSuccessMessage |
1912
- | errorMessage | getErrorMessage |
1913
-
1914
- - replace argumtents by action context
1915
-
1916
- ```diff
1917
- - const actions: StateDecoratorActions<S, A, P> = {
1918
- + const actions: StoreActions<S, A, P> = {
1919
- loadList: {
1920
- - promise: ([id], s, p, a) => {
1921
- + getPromise: ({ s, args: [id], p, a }) => {
1922
- /* ... */
1923
- },
1924
- - reducer: (s, res) => ({
1925
- + effects: ({ s, res }) => ({
1926
- /* ... */
1927
- }),
1928
- - errorReducer: (s, err) => ({
1929
- + errorEffects: ({ s, err }) => ({
1930
- /* ... */
1931
- }),
1932
- },
1933
- };
1934
- ```
1935
-
1936
- #### Options
1937
-
1938
- ##### onMount
1939
-
1940
- ```diff
1941
- - const options: StateDecoratorOptions<S, A, P> = {
1942
- - onMount: (actions, props, state) => { /* initial side effects */ }
1943
- - };
1944
-
1945
- + const options: StoreOptions<S, A, P> = {
1946
- + onMount: ({state, props, actions}) => { /* initial side effects */ }
1947
- +} ;
1948
- ```
1949
-
1950
- ##### logEnabled
1951
-
1952
- ```diff
1953
- - function Container(props: Props) {
1954
- - const { state, actions } = useStateDecorator(getInitialState, actionsImpl, props, { logEnabled: true });
1955
- - return <div />;
1956
- - }
1957
-
1958
- + import { logDetailedEffects } from 'state-decorator/middlewares';
1959
- +
1960
- + function Container(props: Props) {
1961
- + const { state, actions } = useLocalStore(getInitialState, actionsImpl, props, {}, [logDetailedEffects()]);
1962
- + return <div />;
1963
- + }
1964
- ```
1965
-
1966
- ##### Props changes
1967
-
1968
- ```diff
1969
- - const options: StateDecoratorOptions<S, A, P> = {
1970
- - getPropsRefValues: (p) => [],
1971
- - onPropsChangeReducer: (s, p, indices) => ({ ...s /* new state */ }),
1972
- - onPropsChange: (s, p, a, indices) => {
1973
- - /* side effects */
1974
- - },
1975
- - };
1976
-
1977
- + const options: StoreOptions<S, A, P> = {
1978
- + onPropsChange: {
1979
- + getDeps: (p) => [],
1980
- + effects: ({ s, p, indices }) => ({ ...s /* new state */ }),
1981
- + sideEffects: ({ s, p, a, indices }) => {
1982
- + /* side effects */
1983
- + },
1984
- + },
1985
- +} ;
1986
- ```
1987
-
1988
- #### Reuse v5 tests with v6 actions
1989
-
1990
- ```diff
1991
- - import { testSyncAction, testAsyncAction } from 'state-decorator';
1992
-
1993
- + import { testV6SyncAction, testV6AsyncAction } from 'state-decorator/v5_test';
1994
- ```
1995
-
1996
- ### Step 3 (optional): Migrate tests
1997
-
1998
- 🎊 Congratulations! 🎊
1999
-
2000
1866
  # Examples
2001
1867
 
2002
1868
  ## TodoApp
package/development.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=function(){return e=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},e.apply(this,arguments)};"function"==typeof SuppressedError&&SuppressedError;var t=function e(t,n){if(t===n)return!0;if(t&&n&&"object"==typeof t&&"object"==typeof n){if(t.constructor!==n.constructor)return!1;var o,r,l;if(Array.isArray(t)){if((o=t.length)!=n.length)return!1;for(r=o;0!=r--;)if(!e(t[r],n[r]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if((o=(l=Object.keys(t)).length)!==Object.keys(n).length)return!1;for(r=o;0!=r--;)if(!Object.prototype.hasOwnProperty.call(n,l[r]))return!1;for(r=o;0!=r--;){var i=l[r];if(!e(t[i],n[i]))return!1}return!0}return t!=t&&n!=n};if(exports.logEffects=null,exports.logDetailedEffects=null,exports.devtools=null,"development"===process.env.NODE_ENV||"test"===process.env.NODE_ENV){exports.logEffects=function(e){void 0===e&&(e=console.log);return function(){var t=e,n="";return{init:function(e){var o,r;n=(null===(o=e.options)||void 0===o?void 0:o.name)?"[".concat(null===(r=e.options)||void 0===r?void 0:r.name,"]"):"";var l=e.state;t(n,"initialState",l)},destroy:null,effects:function(e,o,r,l){return t(n,e.name,e.type,null===r?"no effect":r,e.isAsync?"preEffects"!==e.type||l?"loading: ".concat(l):"Promise cancelled":""),null}}}},exports.logDetailedEffects=function(e){return void 0===e&&(e=console),function(){var n="",o=e,r=function(e,n){var o;if(n!==e){var r=null!=e?typeof e:typeof n;if("number"===r||"string"===r||"boolean"===r)o="".concat(e," => ").concat(""===n?'""':n);else if(e&&e.length||n&&n.length)if(null==e)o="was ".concat(e,", now contains ").concat(n.length," element(s)");else if(null==n)o="contained ".concat(e.length," element(s), now is ").concat(n);else if(0===e.length)o="was empty, now contains ".concat(n.length," elements");else if(0===n.length)o="contained ".concat(e.length," elements, now is empty");else{var l=n.filter((function(n){return!e.find((function(e){return t(n,e)}))})),i=e.filter((function(e){return!n.find((function(n){return t(e,n)}))}));l.length>10&&(l="".concat(l.length," element(s) added")),i.length>10&&(i="".concat(i.length," element(s) removed")),o={added:l,removed:i}}else o=n}return o},l=function(e){return"string"==typeof e?'"'.concat(e,'"'):e};return{init:function(t){var r,i;n=(null===(r=t.options)||void 0===r?void 0:r.name)?"[".concat(null===(i=t.options)||void 0===i?void 0:i.name,"]"):"";var u=t.state;e.group(n,"initialState"),Object.keys(u).forEach((function(e){o.log(e,":",l(u[e]))})),e.groupEnd()},destroy:null,effects:function(e,t,i,u){var c,s=null===(c=e.context)||void 0===c?void 0:c.args,a=[n,e.name.toString()];if(e.isAsync&&("preEffects"===e.type?a.push(u?"START":"CANCELLED"):"effects"===e.type?a.push("DONE"):a.push("FAILED")),null!=i||s&&0!==Object.keys(s).length?o.group.apply(o,a):o.log.apply(o,a),s&&Object.keys(s).length>0&&(o.group("Arguments"),s.forEach((function(e){o.log(e,":",l(e))})),o.groupEnd()),null!=i){if(o.groupCollapsed("Before"),null==t)o.log("was null");else Object.keys(t).forEach((function(e){o.log(e,":",l(t[e]))}));if(o.groupEnd(),o.groupCollapsed("After"),null==i)o.log("was null");else Object.keys(i).forEach((function(e){o.log(e,":",l(i[e]))}));if(o.groupEnd(),null!=i){o.group("Diff");var f=function(e,t){var n={};return e&&Object.keys(e).forEach((function(o){if(t.hasOwnProperty(o)){var l=e[o],i=t[o],u=r(l,i);u&&(n[o]=u)}else n[o]="was deleted"})),Object.keys(t).forEach((function(o){if(null==e||!e.hasOwnProperty(o)){var l=t[o];n[o]=r(void 0,l)}})),n}(t,i);Object.keys(f).forEach((function(e){return o.log(e,":",f[e])})),o.groupEnd()}}return o.groupEnd(),null}}}},exports.devtools=function(){return function(){var t,n,o;try{t=window.__REDUX_DEVTOOLS_EXTENSION__||window.top.__REDUX_DEVTOOLS_EXTENSION__}catch(e){}return t?{init:function(e){var r,l;(n=t.connect({name:null!==(l=null===(r=e.options)||void 0===r?void 0:r.name)&&void 0!==l?l:"StateDecorator"})).init(e.state);var i=null,u=e.state;o=n.subscribe((function(t){var n,o,r,l;if("DISPATCH"===t.type&&t.state&&"ROLLBACK"!==(null===(n=t.payload)||void 0===n?void 0:n.type)){var c=JSON.parse(t.state);e.setState(c)}else"COMMIT"===(null===(o=t.payload)||void 0===o?void 0:o.type)?i=e.state:"ROLLBACK"===(null===(r=t.payload)||void 0===r?void 0:r.type)?null!=i&&e.setState(i):"RESET"===(null===(l=t.payload)||void 0===l?void 0:l.type)&&e.setState(u)}))},effects:function(t,o,r){if(null!=r){var l=e({},t.context);delete l.a,delete l.s,delete l.p,delete l.res,delete l.err,delete l.ds,n.send({type:"".concat(t.name.toString()," ").concat(t.type),args:l.args,context:l},r)}return null},destroy:function(){o(),n=null}}:{init:function(){},destroy:null,effects:function(){return null}}}}}
2
- //# sourceMappingURL=development.js.map
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t,t.exports),e=null),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=/* @__PURE__ */ ((n,r,o)=>(o=n==null?{}:e(i(n)),s(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n)))((/* @__PURE__ */ o(((e,t)=>{t.exports=function e(t,n){if(t===n)return!0;if(t&&n&&typeof t==`object`&&typeof n==`object`){if(t.constructor!==n.constructor)return!1;var r,i,a;if(Array.isArray(t)){if(r=t.length,r!=n.length)return!1;for(i=r;i--!==0;)if(!e(t[i],n[i]))return!1;return!0}if(t.constructor===RegExp)return t.source===n.source&&t.flags===n.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===n.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===n.toString();if(a=Object.keys(t),r=a.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!Object.prototype.hasOwnProperty.call(n,a[i]))return!1;for(i=r;i--!==0;){var o=a[i];if(!e(t[o],n[o]))return!1}return!0}return t!==t&&n!==n}})))());let l=null,u=null,d=null;if(process.env.NODE_ENV===`development`||process.env.NODE_ENV===`test`){let e=()=>({init:()=>{},destroy:null,effects:()=>null});l=(e=console.log)=>()=>{let t=e,n=``;return{init:e=>{n=e.options?.name?`[${e.options?.name}]`:``;let r=e.state;t(n,`initialState`,r)},destroy:null,effects:(e,r,i,a)=>(t(n,e.name,e.type,i===null?`no effect`:i,e.isAsync?e.type===`preEffects`&&!a?`Promise cancelled`:`loading: ${a}`:``),null)}},u=(e=console)=>()=>{let t=``,n=e,r=(e,t)=>{let n;if(t!==e){let r=e==null?typeof t:typeof e;if(r===`number`||r===`string`||r===`boolean`)n=`${e} => ${t===``?`""`:t}`;else if(e&&e.length||t&&t.length){if(e==null)n=`was ${e}, now contains ${t.length} element(s)`;else if(t==null)n=`contained ${e.length} element(s), now is ${t}`;else if(e.length===0)n=`was empty, now contains ${t.length} elements`;else if(t.length===0)n=`contained ${e.length} elements, now is empty`;else{let r=t.filter(t=>!e.find(e=>(0,c.default)(t,e))),i=e.filter(e=>!t.find(t=>(0,c.default)(e,t)));r.length>10&&(r=`${r.length} element(s) added`),i.length>10&&(i=`${i.length} element(s) removed`),n={added:r,removed:i}}}else n=t}return n},i=(e,t)=>{let n={};return e&&Object.keys(e).forEach(i=>{if(t.hasOwnProperty(i)){let a=e[i],o=t[i],s=r(a,o);s&&(n[i]=s)}else n[i]=`was deleted`}),Object.keys(t).forEach(i=>{if(e==null||!e.hasOwnProperty(i)){let e=t[i];n[i]=r(void 0,e)}}),n},a=e=>typeof e==`string`?`"${e}"`:e;return{init:r=>{t=r.options?.name?`[${r.options?.name}]`:``;let i=r.state;e.group(t,`initialState`),Object.keys(i).forEach(e=>void n.log(e,`:`,a(i[e]))),e.groupEnd()},destroy:null,effects:(e,r,o,s)=>{let c=e.context?.args,l=[t,e.name.toString()];if(e.isAsync&&(e.type===`preEffects`?l.push(s?`START`:`CANCELLED`):e.type===`effects`?l.push(`DONE`):l.push(`FAILED`)),o==null&&(!c||Object.keys(c).length===0)?n.log(...l):n.group(...l),c&&Object.keys(c).length>0&&(n.group(`Arguments`),c.forEach(e=>void n.log(e,`:`,a(e))),n.groupEnd()),o!=null&&(n.groupCollapsed(`Before`),r==null?n.log(`was null`):Object.keys(r).forEach(e=>void n.log(e,`:`,a(r[e]))),n.groupEnd(),n.groupCollapsed(`After`),o==null?n.log(`was null`):Object.keys(o).forEach(e=>void n.log(e,`:`,a(o[e]))),n.groupEnd(),o!=null)){n.group(`Diff`);let e=i(r,o);Object.keys(e).forEach(t=>n.log(t,`:`,e[t])),n.groupEnd()}return n.groupEnd(),null}}},d=()=>()=>{let t;try{t=window.__REDUX_DEVTOOLS_EXTENSION__||window.top.__REDUX_DEVTOOLS_EXTENSION__}catch{}if(!t)return e();let n,r;return{init(e){n=t.connect({name:e.options?.name??`StateDecorator`}),n.init(e.state);let i=null,a=e.state;r=n.subscribe(t=>{if(t.type===`DISPATCH`&&t.state&&t.payload?.type!==`ROLLBACK`){let n=JSON.parse(t.state);e.setState(n)}else t.payload?.type===`COMMIT`?i=e.state:t.payload?.type===`ROLLBACK`?i!=null&&e.setState(i):t.payload?.type===`RESET`&&e.setState(a)})},effects(e,t,r){if(r!=null){let t={...e.context};delete t.a,delete t.s,delete t.p,delete t.res,delete t.err,delete t.ds,n.send({type:`${e.name.toString()} ${e.type}`,args:t.args,context:t},r)}return null},destroy(){r(),n=null}}}}export{d as devtools,u as logDetailedEffects,l as logEffects};
2
+ //# sourceMappingURL=development.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"development.js","sources":["../node_modules/tslib/tslib.es6.mjs","../node_modules/fast-deep-equal/index.js"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nvar ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\n });\n }\n return path;\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __esDecorate,\n __runInitializers,\n __propKey,\n __setFunctionName,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n __rewriteRelativeImportExtension,\n};\n","'use strict';\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","SuppressedError","equal","a","b","constructor","keys","Array","isArray","RegExp","source","flags","valueOf","toString","key"],"mappings":"oEA+BO,IAAIA,EAAW,WAQpB,OAPAA,EAAWC,OAAOC,QAAU,SAAkBC,GAC1C,IAAK,IAAIC,EAAGC,EAAI,EAAGC,EAAIC,UAAUC,OAAQH,EAAIC,EAAGD,IAE5C,IAAK,IAAII,KADTL,EAAIG,UAAUF,GACOJ,OAAOS,UAAUC,eAAeC,KAAKR,EAAGK,KAAIN,EAAEM,GAAKL,EAAEK,IAE9E,OAAON,CACV,EACMH,EAASa,MAAMC,KAAMP,UAC9B,EA+RkD,mBAApBQ,iBAAiCA,gBCjU/D,MAAiB,SAASC,EAAMC,EAAGC,GACjC,GAAID,IAAMC,EAAG,OAAO,EAEpB,GAAID,GAAKC,GAAiB,iBAALD,GAA6B,iBAALC,EAAe,CAC1D,GAAID,EAAEE,cAAgBD,EAAEC,YAAa,OAAO,EAE5C,IAAIX,EAAQH,EAAGe,EACf,GAAIC,MAAMC,QAAQL,GAAI,CAEpB,IADAT,EAASS,EAAET,SACGU,EAAEV,OAAQ,OAAO,EAC/B,IAAKH,EAAIG,EAAgB,GAARH,KACf,IAAKW,EAAMC,EAAEZ,GAAIa,EAAEb,IAAK,OAAO,EACjC,OAAO,CACR,CAID,GAAIY,EAAEE,cAAgBI,OAAQ,OAAON,EAAEO,SAAWN,EAAEM,QAAUP,EAAEQ,QAAUP,EAAEO,MAC5E,GAAIR,EAAES,UAAYzB,OAAOS,UAAUgB,QAAS,OAAOT,EAAES,YAAcR,EAAEQ,UACrE,GAAIT,EAAEU,WAAa1B,OAAOS,UAAUiB,SAAU,OAAOV,EAAEU,aAAeT,EAAES,WAIxE,IADAnB,GADAY,EAAOnB,OAAOmB,KAAKH,IACLT,UACCP,OAAOmB,KAAKF,GAAGV,OAAQ,OAAO,EAE7C,IAAKH,EAAIG,EAAgB,GAARH,KACf,IAAKJ,OAAOS,UAAUC,eAAeC,KAAKM,EAAGE,EAAKf,IAAK,OAAO,EAEhE,IAAKA,EAAIG,EAAgB,GAARH,KAAY,CAC3B,IAAIuB,EAAMR,EAAKf,GAEf,IAAKW,EAAMC,EAAEW,GAAMV,EAAEU,IAAO,OAAO,CACpC,CAED,OAAO,CACR,CAGD,OAAOX,GAAIA,GAAKC,GAAIA,CACtB"}
1
+ {"version":3,"file":"development.js","names":["isEqual","__create","__defProp","__getOwnPropDesc","__getOwnPropNames","__getProtoOf","__hasOwnProp","__commonJSMin","cb","mod","__copyProps","to","from","except","desc","keys","i","n","key","k","import_fast_deep_equal","isNodeMode","target","exports","module","equal","a","b","length","logEffects","logDetailedEffects","devtools","getNoopMiddleware","log","logger","storeName","storeContext","newState","action","_oldState","loading","console","computeDiffPropValue","oldValue","newValue","res","type","addedValues","removedValues","buildDiff","oldState","diff","getStr","v","prop","args","params","arg","extension","unsubscribe","savedState","initialState","message","ctx","cleanCtx"],"sources":["../node_modules/fast-deep-equal/index.js","../src/development.ts"],"sourcesContent":["'use strict';\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n","/* ! *****************************************************************************\nCopyright (c) GlobalSport SAS.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n\nimport type { DecoratedActions, Middleware, MiddlewareFactory } from './types';\nimport isEqual from 'fast-deep-equal';\n\nexport type Logger = {\n log: (...args: any[]) => void;\n group: (...args: any[]) => void;\n groupCollapsed: (...args: any[]) => void;\n groupEnd: (...args: any[]) => void;\n};\n\nexport let logEffects: <S, A extends DecoratedActions, P>(\n log?: (...msg: any[]) => void\n) => MiddlewareFactory<S, A, P> = null;\n\nexport let logDetailedEffects: <S, A extends DecoratedActions, P>(logger?: Logger) => MiddlewareFactory<S, A, P> = null;\n\nexport let devtools: <S, A extends DecoratedActions, P>() => MiddlewareFactory<S, A, P> = null;\n\n// @ts-ignore\nif (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test') {\n const getNoopMiddleware = <S, A extends DecoratedActions, P>(): Middleware<S, A, P> => {\n const middleware: Middleware<S, A, P> = {\n init: () => {},\n destroy: null,\n effects: () => null,\n };\n\n return middleware;\n };\n\n logEffects = <S, A extends DecoratedActions, P>(\n log: (...msg: any[]) => void = console.log\n ): MiddlewareFactory<S, A, P> => {\n const f = () => {\n const logger = log;\n let storeName = '';\n\n const middleware: Middleware<S, A, P> = {\n init: (storeContext) => {\n storeName = storeContext.options?.name ? `[${storeContext.options?.name}]` : '';\n const newState = storeContext.state;\n logger(storeName, 'initialState', newState);\n },\n destroy: null,\n effects: (action, _oldState, newState, loading: boolean) => {\n logger(\n storeName,\n action.name,\n action.type,\n newState === null ? 'no effect' : newState,\n action.isAsync\n ? action.type === 'preEffects' && !loading\n ? 'Promise cancelled'\n : `loading: ${loading}`\n : ''\n );\n return null;\n },\n };\n return middleware;\n };\n\n return f;\n };\n\n logDetailedEffects = <S, A extends DecoratedActions, P>(logger: Logger = console): MiddlewareFactory<S, A, P> => {\n return () => {\n let storeName = '';\n\n const console = logger;\n\n const computeDiffPropValue = (oldValue: any, newValue: any) => {\n let res: any;\n if (newValue !== oldValue) {\n const type = oldValue != null ? typeof oldValue : typeof newValue;\n if (type === 'number' || type === 'string' || type === 'boolean') {\n res = `${oldValue} => ${newValue === '' ? '\"\"' : newValue}`;\n } else if ((oldValue && oldValue.length) || (newValue && newValue.length)) {\n if (oldValue == null) {\n res = `was ${oldValue}, now contains ${newValue.length} element(s)`;\n } else if (newValue == null) {\n res = `contained ${oldValue.length} element(s), now is ${newValue}`;\n } else if (oldValue.length === 0) {\n res = `was empty, now contains ${newValue.length} elements`;\n } else if (newValue.length === 0) {\n res = `contained ${oldValue.length} elements, now is empty`;\n } else {\n let addedValues = newValue.filter((a: any) => !oldValue.find((b: any) => isEqual(a, b)));\n let removedValues = oldValue.filter((a: any) => !newValue.find((b: any) => isEqual(a, b)));\n\n if (addedValues.length > 10) {\n addedValues = `${addedValues.length} element(s) added`;\n }\n if (removedValues.length > 10) {\n removedValues = `${removedValues.length} element(s) removed`;\n }\n res = {\n added: addedValues,\n removed: removedValues,\n };\n }\n } else {\n res = newValue;\n }\n }\n return res;\n };\n\n const buildDiff = <S>(oldState: S, newState: S) => {\n const res: Record<string, any> = {};\n\n if (oldState) {\n const keys = Object.keys(oldState) as (keyof S)[];\n keys.forEach((k) => {\n if (newState.hasOwnProperty(k)) {\n const oldValue = oldState[k];\n const newValue = newState[k];\n const diff = computeDiffPropValue(oldValue, newValue);\n if (diff) {\n res[k as any] = diff;\n }\n } else {\n res[k as any] = 'was deleted';\n }\n });\n }\n\n const keys = Object.keys(newState) as (keyof S)[];\n keys.forEach((k) => {\n if (oldState == null || !oldState.hasOwnProperty(k)) {\n const newValue = newState[k];\n\n res[k as any] = computeDiffPropValue(undefined, newValue);\n }\n });\n\n return res;\n };\n\n const getStr = (v: any) => {\n if (typeof v === 'string') {\n return `\"${v}\"`;\n }\n return v;\n };\n\n const middleware: Middleware<S, A, P> = {\n init: (storeContext) => {\n storeName = storeContext.options?.name ? `[${storeContext.options?.name}]` : '';\n const newState = storeContext.state;\n logger.group(storeName, 'initialState');\n const keys = Object.keys(newState) as (keyof S)[];\n keys.forEach((prop) => void console.log(prop, ':', getStr(newState[prop])));\n logger.groupEnd();\n },\n destroy: null,\n effects: (action, oldState, newState, loading) => {\n const args: any[] = action.context?.args;\n\n const params: string[] = [storeName, action.name.toString()];\n\n if (action.isAsync) {\n if (action.type === 'preEffects') {\n params.push(loading ? 'START' : 'CANCELLED');\n } else if (action.type === 'effects') {\n params.push('DONE');\n } else {\n params.push('FAILED');\n }\n }\n\n if (newState == null && (!args || Object.keys(args).length === 0)) {\n console.log(...params);\n } else {\n console.group(...params);\n }\n\n if (args && Object.keys(args).length > 0) {\n console.group('Arguments');\n args.forEach((arg) => void console.log(arg, ':', getStr(arg)));\n console.groupEnd();\n }\n\n if (newState != null) {\n console.groupCollapsed('Before');\n if (oldState == null) {\n console.log('was null');\n } else {\n const keys = Object.keys(oldState) as (keyof S)[];\n keys.forEach((prop) => void console.log(prop, ':', getStr(oldState[prop])));\n }\n console.groupEnd();\n\n console.groupCollapsed('After');\n if (newState == null) {\n console.log('was null');\n } else {\n const keys = Object.keys(newState) as (keyof S)[];\n keys.forEach((prop) => void console.log(prop, ':', getStr(newState[prop])));\n }\n console.groupEnd();\n\n if (newState != null) {\n console.group('Diff');\n const diff = buildDiff(oldState, newState);\n Object.keys(diff).forEach((prop) => console.log(prop, ':', diff[prop]));\n console.groupEnd();\n }\n }\n //\n console.groupEnd();\n\n return null;\n },\n };\n return middleware;\n };\n };\n\n devtools = <S, A extends DecoratedActions, P>(): MiddlewareFactory<S, A, P> => {\n const getMiddleware = () => {\n let extension: any;\n try {\n extension = (window as any).__REDUX_DEVTOOLS_EXTENSION__ || (window as any).top.__REDUX_DEVTOOLS_EXTENSION__;\n } catch {}\n\n if (!extension) {\n return getNoopMiddleware<S, A, P>();\n }\n\n let devtools: any;\n let unsubscribe: () => void;\n\n const middleware: Middleware<S, A, P> = {\n init(storeContext) {\n devtools = extension.connect({ name: storeContext.options?.name ?? 'StateDecorator' });\n devtools.init(storeContext.state);\n let savedState: S = null;\n const initialState: S = storeContext.state;\n\n unsubscribe = devtools.subscribe((message: any) => {\n if (message.type === 'DISPATCH' && message.state && message.payload?.type !== 'ROLLBACK') {\n const newState = JSON.parse(message.state);\n storeContext.setState(newState);\n } else if (message.payload?.type === 'COMMIT') {\n savedState = storeContext.state;\n } else if (message.payload?.type === 'ROLLBACK') {\n if (savedState != null) {\n storeContext.setState(savedState);\n }\n } else if (message.payload?.type === 'RESET') {\n storeContext.setState(initialState);\n }\n });\n },\n\n effects(ctx, _oldState, newState) {\n if (newState != null) {\n const cleanCtx: any = {\n ...ctx.context,\n };\n\n delete cleanCtx.a;\n delete cleanCtx.s;\n delete cleanCtx.p;\n delete cleanCtx.res;\n delete cleanCtx.err;\n delete cleanCtx.ds;\n\n devtools.send(\n {\n type: `${ctx.name.toString()} ${ctx.type}`,\n args: cleanCtx.args,\n context: cleanCtx,\n },\n newState\n );\n }\n\n return null; // no op on state\n },\n\n destroy() {\n unsubscribe();\n devtools = null;\n },\n };\n\n return middleware;\n };\n\n return getMiddleware;\n };\n}\n"],"ignoreList":[0],"mappings":"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"}
package/helpers.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=function(){return r=Object.assign||function(r){for(var n,t=1,e=arguments.length;t<e;t++)for(var u in n=arguments[t])Object.prototype.hasOwnProperty.call(n,u)&&(r[u]=n[u]);return r},r.apply(this,arguments)};function n(r,n,t){if(t||2===arguments.length)for(var e,u=0,s=n.length;u<s;u++)!e&&u in n||(e||(e=Array.prototype.slice.call(n,0,u)),e[u]=n[u]);return r.concat(e||Array.prototype.slice.call(n))}function t(r,n){return n&&(r[n]=!0),r}"function"==typeof SuppressedError&&SuppressedError,exports.setArgIn=function(r,n){return function(e){var u,s=e.s,o=e.args[0];return s[r]===o?null:t(((u={})[r]=o,u),n)}},exports.setArgsInArray=function(r,e){return function(u){var s,o=u.s,c=u.args,a=c[0],i=c[1],f=n([],o[r],!0);return f[a]=i,t(((s={})[r]=f,s),e)}},exports.setArgsInMap=function(n,e){return function(u){var s,o,c=u.s,a=u.args,i=a[0],f=a[1];return t(((s={})[n]=r(r({},c[n]),((o={})[i]=f,o)),s),e)}},exports.setFalseIn=function(r,n){return function(e){var u;return e.s[r]?t(((u={})[r]=!1,u),n):null}},exports.setResIn=function(r,n){return function(e){var u,s=e.res;return t(((u={})[r]=s,u),n)}},exports.setResInArray=function(r,e){return function(u){var s,o=u.s,c=u.args[0],a=u.res,i=n([],o[r],!0);return i[c]=a,t(((s={})[r]=i,s),e)}},exports.setResInMap=function(n,e){return function(u){var s,o,c=u.s,a=u.args[0],i=u.res;return t(((s={})[n]=r(r({},c[n]),((o={})[a]=i,o)),s),e)}},exports.setTrueIn=function(r,n){return function(e){var u;return e.s[r]?null:t(((u={})[r]=!0,u),n)}},exports.toggleProp=function(r,n){return function(e){var u,s=e.s;return t(((u={})[r]=!s[r],u),n)}};
2
- //# sourceMappingURL=helpers.js.map
1
+ function e(e,t){return t&&(e[t]=!0),e}function t(t,n){return({s:r,args:[i]})=>r[t]===i?null:e({[t]:i},n)}function n(t,n){return({s:r})=>r[t]?null:e({[t]:!0},n)}function r(t,n){return({s:r})=>r[t]?e({[t]:!1},n):null}function i(t,n){return({s:r})=>e({[t]:!r[t]},n)}function a(t,n){return({s:r,args:[i,a]})=>e({[t]:{...r[t],[i]:a}},n)}function o(t,n){return({s:r,args:[i,a]})=>{let o=[...r[t]];return o[i]=a,e({[t]:o},n)}}function s(t,n){return({res:r})=>e({[t]:r},n)}function c(t,n){return({s:r,args:[i],res:a})=>{let o=[...r[t]];return o[i]=a,e({[t]:o},n)}}function l(t,n){return({s:r,args:[i],res:a})=>e({[t]:{...r[t],[i]:a}},n)}export{t as setArgIn,o as setArgsInArray,a as setArgsInMap,r as setFalseIn,s as setResIn,c as setResInArray,l as setResInMap,n as setTrueIn,i as toggleProp};
2
+ //# sourceMappingURL=helpers.js.map
package/helpers.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sources":["../node_modules/tslib/tslib.es6.mjs"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nvar ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\n });\n }\n return path;\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __esDecorate,\n __runInitializers,\n __propKey,\n __setFunctionName,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n __rewriteRelativeImportExtension,\n};\n"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__spreadArray","to","from","pack","ar","l","Array","slice","concat","SuppressedError"],"mappings":"oEA+BO,IAAIA,EAAW,WAQpB,OAPAA,EAAWC,OAAOC,QAAU,SAAkBC,GAC1C,IAAK,IAAIC,EAAGC,EAAI,EAAGC,EAAIC,UAAUC,OAAQH,EAAIC,EAAGD,IAE5C,IAAK,IAAII,KADTL,EAAIG,UAAUF,GACOJ,OAAOS,UAAUC,eAAeC,KAAKR,EAAGK,KAAIN,EAAEM,GAAKL,EAAEK,IAE9E,OAAON,CACV,EACMH,EAASa,MAAMC,KAAMP,UAC9B,EA6KO,SAASQ,EAAcC,EAAIC,EAAMC,GACtC,GAAIA,GAA6B,IAArBX,UAAUC,OAAc,IAAK,IAA4BW,EAAxBd,EAAI,EAAGe,EAAIH,EAAKT,OAAYH,EAAIe,EAAGf,KACxEc,GAAQd,KAAKY,IACRE,IAAIA,EAAKE,MAAMX,UAAUY,MAAMV,KAAKK,EAAM,EAAGZ,IAClDc,EAAGd,GAAKY,EAAKZ,IAGrB,OAAOW,EAAGO,OAAOJ,GAAME,MAAMX,UAAUY,MAAMV,KAAKK,GACpD,uCA0GkD,mBAApBO,iBAAiCA"}
1
+ {"version":3,"file":"helpers.js","names":["addDirty","s","dirtyProp","setArgIn","propName","v","setTrueIn","setFalseIn","toggleProp","setArgsInMap","id","setArgsInArray","idx","newArr","setResIn","res","setResInArray","setResInMap"],"sources":["../src/helpers.ts"],"sourcesContent":["function addDirty<S, K extends keyof S>(s: any, dirtyProp?: K) {\n if (dirtyProp) {\n (s[dirtyProp] as any) = true;\n }\n return (s as unknown) as Partial<S>;\n}\n\n/**\n * Effect function that sets the first action argument to the specified prop.\n * if dirtyProp is set\n */\nexport function setArgIn<S, K extends keyof S, K2 extends keyof S>(\n propName: K,\n dirtyProp?: K2\n): (ctx: { s: S; args: [S[K]] }) => Partial<S> {\n return ({ s, args: [v] }) =>\n s[propName] === v\n ? null\n : addDirty<S, any>(\n {\n [propName]: v,\n },\n dirtyProp\n );\n}\n\n/**\n * Effect function that sets <code>true</code> in the specified prop.\n */\nexport function setTrueIn<S, K extends keyof S, K2 extends keyof S>(\n propName: K,\n dirtyProp?: K2\n): (ctx: { s: S }) => Partial<S> {\n return ({ s }) =>\n s[propName]\n ? null\n : addDirty<S, any>(\n {\n [propName]: true,\n },\n dirtyProp\n );\n}\n\n/**\n * Effect function that sets <code>false</code> in the specified prop.\n */\nexport function setFalseIn<S, K extends keyof S, K2 extends keyof S>(\n propName: K,\n dirtyProp?: K2\n): (ctx: { s: S }) => Partial<S> {\n return ({ s }) =>\n !s[propName]\n ? null\n : addDirty<S, any>(\n {\n [propName]: false,\n },\n dirtyProp\n );\n}\n\n/**\n * Effect function that sets toggles the boolean value of the specified prop.\n */\nexport function toggleProp<S, K extends keyof S, K2 extends keyof S>(\n propName: K,\n dirtyProp?: K2\n): (ctx: { s: S }) => Partial<S> {\n return ({ s }) =>\n addDirty<S, any>(\n {\n [propName]: !s[propName],\n },\n dirtyProp\n );\n}\n\n/**\n * Effect function that sets the update the specifed prop as an array using first action argument as index\n * and second as value to set.\n */\nexport function setArgsInMap<S, K extends keyof S, K2 extends keyof S, T>(\n propName: K,\n dirtyProp?: K2\n): (ctx: { s: S; args: [string, T] }) => Partial<S> {\n return ({ s, args: [id, v] }) =>\n addDirty<S, any>(\n {\n [propName]: {\n ...s[propName],\n [id]: v,\n },\n },\n dirtyProp\n );\n}\n\n/**\n * Effect function that sets the update the specifed prop as an array using first action argument as index\n * and second as value to set.\n */\nexport function setArgsInArray<S, K extends keyof S, K2 extends keyof S, T>(\n propName: K,\n dirtyProp?: K2\n): (ctx: { s: S; args: [number, T] }) => Partial<S> {\n return ({ s, args: [idx, v] }) => {\n const arr = (s[propName] as any) as T[];\n\n const newArr = [...arr];\n newArr[idx] = v;\n return addDirty<S, any>(\n {\n [propName]: newArr,\n },\n dirtyProp\n );\n };\n}\n\n/**\n * Effect function that sets the asynchronous action result to the specified prop.\n */\nexport function setResIn<S, K extends keyof S, K2 extends keyof S>(\n propName: K,\n dirtyProp?: K2\n): (ctx: { s: S; res: S[K] }) => Partial<S> {\n return ({ res }) =>\n addDirty<S, any>(\n {\n [propName]: res,\n },\n dirtyProp\n );\n}\n\n/**\n * Effect function that sets the update the specifed prop as an array using first action argument as index\n * and second as value to set.\n */\nexport function setResInArray<S, K extends keyof S, K2 extends keyof S, T>(\n propName: K,\n dirtyProp?: K2\n): (ctx: { s: S; args: [number]; res: T }) => Partial<S> {\n return ({ s, args: [idx], res }) => {\n const arr = (s[propName] as any) as T[];\n\n const newArr = [...arr];\n newArr[idx] = res;\n return addDirty<S, any>(\n {\n [propName]: newArr,\n },\n dirtyProp\n );\n };\n}\n\n/**\n * Effect function that sets the update the specifed prop as an array using first action argument as index\n * and second as value to set.\n */\nexport function setResInMap<S, K extends keyof S, K2 extends keyof S, T>(\n propName: K,\n dirtyProp?: K2\n): (ctx: { s: S; args: [string]; res: T }) => Partial<S> {\n return ({ s, args: [id], res }) =>\n addDirty<S, any>(\n {\n [propName]: {\n ...s[propName],\n [id]: res,\n },\n },\n dirtyProp\n );\n}\n"],"mappings":"AAAA,SAASA,EAA+BC,EAAQC,EAAe,CAI7D,OAHIA,IACDD,EAAEC,GAAqB,IAElBD,CACV,CAMA,SAAgBE,EACdC,EACAF,EAC6C,CAC7C,OAAQ,CAAED,IAAG,KAAM,CAACI,MAClBJ,EAAEG,KAAcC,EACZ,KACAL,EACE,EACGI,GAAWC,CACd,EACAH,CACF,CACR,CAKA,SAAgBI,EACdF,EACAF,EAC+B,CAC/B,OAAQ,CAAED,OACRA,EAAEG,GACE,KACAJ,EACE,EACGI,GAAW,EACd,EACAF,CACF,CACR,CAKA,SAAgBK,EACdH,EACAF,EAC+B,CAC/B,OAAQ,CAAED,OACPA,EAAEG,GAECJ,EACE,EACGI,GAAW,EACd,EACAF,CACF,EANA,IAOR,CAKA,SAAgBM,EACdJ,EACAF,EAC+B,CAC/B,OAAQ,CAAED,OACRD,EACE,EACGI,GAAW,CAACH,EAAEG,EACjB,EACAF,CACF,CACJ,CAMA,SAAgBO,EACdL,EACAF,EACkD,CAClD,OAAQ,CAAED,IAAG,KAAM,CAACS,EAAIL,MACtBL,EACE,EACGI,GAAW,CACV,GAAGH,EAAEG,IACJM,GAAKL,CACR,CACF,EACAH,CACF,CACJ,CAMA,SAAgBS,EACdP,EACAF,EACkD,CAClD,OAAQ,CAAED,IAAG,KAAM,CAACW,EAAKP,MAAS,CAGhC,IAAMQ,EAAS,CAAC,GAFHZ,EAAEG,EAEO,EAEtB,MADAS,GAAOD,GAAOP,EACPL,EACL,EACGI,GAAWS,CACd,EACAX,CACF,CACF,CACF,CAKA,SAAgBY,EACdV,EACAF,EAC0C,CAC1C,OAAQ,CAAEa,SACRf,EACE,EACGI,GAAWW,CACd,EACAb,CACF,CACJ,CAMA,SAAgBc,EACdZ,EACAF,EACuD,CACvD,OAAQ,CAAED,IAAG,KAAM,CAACW,GAAMG,SAAU,CAGlC,IAAMF,EAAS,CAAC,GAFHZ,EAAEG,EAEO,EAEtB,MADAS,GAAOD,GAAOG,EACPf,EACL,EACGI,GAAWS,CACd,EACAX,CACF,CACF,CACF,CAMA,SAAgBe,EACdb,EACAF,EACuD,CACvD,OAAQ,CAAED,IAAG,KAAM,CAACS,GAAKK,SACvBf,EACE,EACGI,GAAW,CACV,GAAGH,EAAEG,IACJM,GAAKK,CACR,CACF,EACAb,CACF,CACJ,C"}
package/impl.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=function(r,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t])},e(r,t)};function r(r,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=r}e(r,t),r.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var t=function(){return t=Object.assign||function(e){for(var r,t=1,n=arguments.length;t<n;t++)for(var o in r=arguments[t])Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o]);return e},t.apply(this,arguments)};function n(e,r,t,n){return new(t||(t=Promise))((function(o,i){function c(e){try{a(n.next(e))}catch(e){i(e)}}function u(e){try{a(n.throw(e))}catch(e){i(e)}}function a(e){var r;e.done?o(e.value):(r=e.value,r instanceof t?r:new t((function(e){e(r)}))).then(c,u)}a((n=n.apply(e,r||[])).next())}))}function o(e,r){var t,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return c.next=u(0),c.throw=u(1),c.return=u(2),"function"==typeof Symbol&&(c[Symbol.iterator]=function(){return this}),c;function u(u){return function(a){return function(u){if(t)throw new TypeError("Generator is already executing.");for(;c&&(c=0,u[0]&&(i=0)),i;)try{if(t=1,n&&(o=2&u[0]?n.return:u[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,u[1])).done)return o;switch(n=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return i.label++,{value:u[1],done:!1};case 5:i.label++,n=u[1],u=[0];continue;case 7:u=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==u[0]&&2!==u[0])){i=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){i.label=u[1];break}if(6===u[0]&&i.label<o[1]){i.label=o[1],o=u;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(u);break}o[2]&&i.ops.pop(),i.trys.pop();continue}u=r.call(e,i)}catch(e){u=[6,e],n=0}finally{t=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,a])}}}function i(e,r,t){if(t||2===arguments.length)for(var n,o=0,i=r.length;o<i;o++)!n&&o in r||(n||(n=Array.prototype.slice.call(r,0,o)),n[o]=r[o]);return e.concat(n||Array.prototype.slice.call(r))}"function"==typeof SuppressedError&&SuppressedError;var c,u=function(){function e(e){this.keys=e,this.adj={}}return e.prototype.isCyclicUtil=function(e,r,t){var n;if(t.has(e))return!0;if(r.has(e))return!1;r.add(e),t.add(e);for(var o=0,i=null!==(n=this.adj[e])&&void 0!==n?n:[];o<i.length;o++){var c=i[o];if(this.isCyclicUtil(c,r,t))return!0}return t.delete(e),!1},e.prototype.setEdges=function(e,r){this.adj[e]=r},e.prototype.isCyclic=function(){for(var e=new Set,r=new Set,t=0,n=this.keys;t<n.length;t++){var o=n[t];if(this.isCyclicUtil(o,e,r))return!0}return!1},e}();!function(e){e.REJECT="reject",e.IGNORE="ignore",e.KEEP_LAST="keepLast",e.KEEP_ALL="keepAll",e.PARALLEL="parallel",e.REUSE="reuse",e.ABORT="abort"}(c||(c={}));var a=function(e){function t(r,n){var o=e.call(this,r.message)||this;return o.source=r,o.initialError=n,Object.setPrototypeOf(o,t.prototype),o}return r(t,e),t}(Error),l={clone:function(e){return JSON.parse(JSON.stringify(e))},comparator:function(e,r){if(Object.is(e,r))return!0;if("object"!=typeof e||null===e||"object"!=typeof r||null===r)return!1;if(e instanceof Set||r instanceof Set)return!1;var t=Object.keys(e),n=Object.keys(r);if(t.length!==n.length)return!1;for(var o=0;o<t.length;o++)if(!Object.prototype.hasOwnProperty.call(r,t[o])||!Object.is(e[t[o]],r[t[o]]))return!1;return!0},asyncErrorHandler:function(){},retryOnErrorFunction:function(e){return e instanceof TypeError},notifySuccess:void 0,notifyError:void 0,notifyWarning:void 0,getErrorMessage:void 0,defaultMiddlewares:[],autoRetryCount:void 0,autoRetryTimeout:void 0};function s(e){try{return l.clone(e)}catch(e){var r="StateDecorator: Cannot clone object. Set setCloneFunction on global global with another implementation like lodash/cloneDeep.";throw"development"===process.env.NODE_ENV&&(console.error(r),console.error(e.toString())),new Error(r)}}function f(e){return"function"!=typeof e&&!e.hasOwnProperty("getPromise")&&e.hasOwnProperty("getGetPromise")}function d(e,r,n,o){var i,c,u,a;return t(t({},e),o?((i={})[r]=t(t({},e[r]||{}),((c={})[n]=o,c)),i):((u={})[r]=t(t({},e[r]),((a={})[n]=!1,a)),u))}function v(e,r,n,o){var i,c,u,a;return t(t({},e),o?((i={})[r]=t(t({},e[r]||{}),((c={})[n]=o,c)),i):((u={})[r]=t(t({},e[r]),((a={})[n]=void 0,a)),u))}var p=function(e){function t(r){var n=e.call(this,"Error")||this;return n.promiseIds=r,Object.setPrototypeOf(n,t.prototype),n}return r(t,e),t}(Error);function y(e,r,t,i,c){return void 0===t&&(t=1),void 0===i&&(i=1e3),void 0===c&&(c=function(){return!0}),1===t?e:function(u){var a=e(u);return null===a?null:function a(l,s){return n(this,void 0,void 0,(function(){return o(this,(function(n){return null===s?[2,null]:[2,s.catch((function(n){return c(n)?l===t?Promise.reject(n):new Promise((function(t,n){r(setTimeout((function(){var r=e(u);a(l+1,r).then(t).catch(n)}),i*l))})):Promise.reject(n)}))]}))}))}(1,a)}}function g(e){return void 0===e&&(e=null),{current:e}}function h(e,r,t){var n,o;return{state:e.current,s:e.current,ds:null===(n=null==r?void 0:r.current)||void 0===n?void 0:n.state,derived:null===(o=null==r?void 0:r.current)||void 0===o?void 0:o.state,props:t.current,p:t.current}}function E(e,r,t,n,o){var i=h(e,r,t);return i.args=n,o&&(i.promiseId=o),i}function S(e,r,t,n,o,i){var c=E(e,r,t,n,i);return c.result=o,c.res=o,c}function m(e,r){var t=e;return t.state=r.current,t.s=r.current,t}function P(e,r){var t=e;return t.actions=r.current,t.a=r.current,t}function b(e,r,t,n,o,i){var c,u=P(e,n);m(e,r);var a=null===(c=null==t?void 0:t.current)||void 0===c?void 0:c.state;return u.derived=a,u.ds=a,u.notifyWarning=o,u.clearError=i,u}function w(e){"development"===process.env.NODE_ENV&&console.warn("[state-decorator] ".concat(e," action was called while store is not initialized or destroyed, this is probably a leak"))}function A(e,r,n){return n?r:null==r?null:t(t({},e.current),r)}function R(e,r,t,n,o,i,c,u,a,s,f,d,v){var p=S(t,n,o,v,void 0),y=null,g=!1;if(null!=r.effects){var h=A(t,r.effects(p),s.fullStateEffects);if(null===h)g=!0;else{var E=null!=r.debounceSideEffectsTimeout||null==r.sideEffects;a.current=!E,y=f(h,void 0,e,"effects",!1,p,!1,!1,!E)}}if(!g){var m=function(e){var o;null===(o=r.sideEffects)||void 0===o||o.call(r,b(p,t,n,i,s.notifyWarning,d)),e&&a.current&&(null==y||y());var c=s.notifySuccess||l.notifySuccess;if(c){var u=void 0;r.getSuccessMessage&&(u=r.getSuccessMessage(p)),u&&c(u)}};if(r.debounceSideEffectsTimeout>0&&r.sideEffects){var P=c.current[e];P&&clearTimeout(P),c.current[e]=setTimeout((function(){u.current&&(delete c.current[e],m(!1))}),r.debounceSideEffectsTimeout)}else m(!0)}}function O(e,r,t,n){var o=e.action,i=e.stateRef,c=e.derivedStateRef,u=e.propsRef,s=e.actionsRef,f=e.loadingParallelMapRef,p=e.errorMapRef,y=e.promisesRef,g=e.conflictActionsRef,h=e.actionName,S=e.options,m=e.clearError,P=e.setState;if(e.initializedRef.current){var w=null,R=t,O=function(e,r,t,n,o,i){var c=E(e,r,t,n,i);return c.error=o,c.err=o,c}(i,c,u,n,R,r);if(o.errorEffects)try{w=A(i,o.errorEffects(O),S.fullStateEffects)}catch(e){R=new a(e,t)}p.current=v(p.current,h,r,R),P(w,d(f.current,h,r,!1),h,"errorEffects",!0,O,!1);var x=!1;(null!=w||o.errorSideEffects||o.isErrorManaged||S.isErrorManaged)&&(x=!0);var j=S.notifyError||l.notifyError;if(j){var L=void 0;o.getErrorMessage&&(L=o.getErrorMessage(O)),void 0===L&&!x&&l.getErrorMessage&&(L=l.getErrorMessage(R)),L&&(x=!0,j(L))}return l.asyncErrorHandler(R,x||o.rejectPromiseOnError,i.current,u.current,h,n),delete y.current[h][r],o.errorSideEffects&&o.errorSideEffects(b(O,i,c,s,l.notifyWarning,m)),C(e.initializedRef,h,s.current,g.current),!x||o.rejectPromiseOnError?Promise.reject(R):Promise.resolve()}}var x="__def__";function j(e,r){return e.length===r.length&&-1===e.findIndex((function(e,t){return r[t]!==e}))}function C(e,r,t,n){if(e.current){var o=n[r];if((null==o?void 0:o.length)>0){var i=o.shift();if(i){var c=t[r].apply(t,i.args);null==c?C(e,r,t,n):c.then((function(o){null===o&&C(e,r,t,n),i.resolve(o)})).catch((function(e){return i.reject(e)}))}}}}exports.DEFAULT_PROMISE_ID=x,exports.EffectError=a,exports.ParallelActionError=p,exports.areSameArgs=j,exports.buildErrorMap=function(e){return Object.keys(e).reduce((function(r,t){var n=e[t];if(null==n[x]);else if(n[x])r[t]=n[x];else{var o=Object.keys(n).reduce((function(e,r){return null!=n[r]&&(e.hasErr=!0,e.map[r]=n[r]),e}),{hasErr:!1,map:{}});o.hasErr&&(r[t]=new p(o.map))}return r}),{})},exports.buildInvocationContextBase=h,exports.buildLoadingMap=d,exports.buildOnMountInvocationContext=function(e,r,t,n){return P(h(e,r,t),n)},exports.buildOnUnMountInvocationContext=function(e,r,n,o){return t(t({},h(e,r,n)),{abortedActions:o})},exports.computeAsyncActionInput=function(e){var r,n,o;return e.conflictPolicy===c.ABORT&&(e.abortable=!0),f(e)?t(t({},e),{getPromise:e.getGetPromise,retryDelaySeed:null!==(r=l.autoRetryTimeout)&&void 0!==r?r:1e3,retryCount:null!==(n=l.autoRetryCount)&&void 0!==n?n:3,conflictPolicy:null!==(o=e.conflictPolicy)&&void 0!==o?o:c.REUSE}):e},exports.computeDerivedValues=function(e,r,n,o,i){if(void 0===i&&(i=null),null==(null==o?void 0:o.derivedState))return!1;var c=!1,u=l.comparator,a=n.current.deps,s=h(e,null,r),f=Object.keys(o.derivedState);return n.current.state=f.reduce((function(e,r){var l,f,d,v,p=!1;if(null===(l=null==i?void 0:i.current)||void 0===l?void 0:l[r])e[r]=null===(f=i.current)||void 0===f?void 0:f[r];else{var y=o.derivedState[r],g=a[r],h=null!==(v=null===(d=y.getDeps)||void 0===d?void 0:d.call(y,s))&&void 0!==v?v:[];if(y.derivedDeps&&y.derivedDeps.forEach((function(r){var t,o,i;return h.push(null!==(t=e[r])&&void 0!==t?t:null===(i=null===(o=n.current)||void 0===o?void 0:o.state)||void 0===i?void 0:i[r])})),null==g)p=!0;else p=-1!==h.findIndex((function(e,r){return g.length<r||!u(g[r],e)}));c=c||p,a[r]=h,e[r]=p?o.derivedState[r].get(function(e,r){return t(t({},e),{ds:r,derived:r})}(s,e)):n.current.state[r]}return e}),{}),c},exports.createRef=g,exports.decorateAsyncAction=function(e){var r=e.action,n=e.stateRef,o=e.derivedStateRef,u=e.propsRef,f=e.actionsRef,p=e.timeoutRef,g=e.promisesRef,h=e.loadingParallelMapRef,m=e.errorMapRef,R=e.initializedRef,L=e.conflictActionsRef,M=e.actionName,T=e.setState,_=e.options;return function(){for(var I,D,k,G=[],N=0;N<arguments.length;N++)G[N]=arguments[N];if(!R.current)return w(M),null;var U=g.current,z=r.conflictPolicy,F=void 0===z?c.KEEP_ALL:z,K=F===c.PARALLEL,W=null;if(K){if(!r.getPromiseId)throw new Error("If conflict policy is set to ConflictPolicy.PARALLEL, getPromiseId must be set and return a string.");W=r.getPromiseId.apply(r,G)}else W=x;if(!K&&(null===(D=U[M])||void 0===D?void 0:D[W])){var B=function(e,r,t,n,o){var i=n;if(i===c.REUSE){if(j(e[t][x].refArgs,o))return e[t][x].promise;i=c.KEEP_ALL}return new Promise((function(n,u){var a,l={resolve:n,reject:u,args:s(o),timestamp:Date.now()};switch(i){case c.IGNORE:n(void 0);break;case c.REJECT:u(new Error("An asynchronous action ".concat(t," is already ongoing.")));break;case c.KEEP_LAST:r[t]=[l];break;case c.ABORT:var f=null===(a=e[t][x])||void 0===a?void 0:a.abortController;null==f||f.abort("conflict");case c.KEEP_ALL:var d=r[t];d||(r[t]=d=[]),d.push(l);case c.PARALLEL:}}))}(U,L.current,M,F,G);return B}var J=null,H=!1,V=E(n,o,u,G,W);if(r.preEffects){try{J=A(n,r.preEffects(V),_.fullStateEffects)}catch(e){return l.asyncErrorHandler(new a(e),!1,n.current,u.current,M,G),Promise.reject(new a(e))}J&&(H=!0,n.current=J)}var q=r.abortable,Q=r.retryCount,X=r.retryDelaySeed,Y=r.isTriggerRetryError,Z=q&&window.AbortController?new AbortController:null,$=null===(k=y(r.getPromise,(function(e){p.current&&(p.current[M]=e)}),Q?1+Q:1,X,Y||l.retryOnErrorFunction)(function(e,r,t,n,o,i,c){var u=P(E(e,r,t,n,c),o);return u.abortSignal=i,u}(n,o,u,G,f,null==Z?void 0:Z.signal)))||void 0===k?void 0:k.then((function(r){return function(e,r,t,n){var o=e.action,i=e.stateRef,c=e.needNotifyListenersRef,u=e.derivedStateRef,s=e.propsRef,f=e.promisesRef,v=e.actionsRef,p=e.loadingParallelMapRef,y=e.conflictActionsRef,g=e.actionName,h=e.options,E=e.setState,m=e.clearError;if(e.initializedRef.current){var P=null,w=S(i,u,s,n,t,r);if(o.effects)try{P=A(i,o.effects(w),h.fullStateEffects)}catch(e){return Promise.reject(new a(e))}c.current=!0;var R=E(P,d(p.current,g,r,!1),g,"effects",!0,w,!1,!1,!0),O=h.notifySuccess||l.notifySuccess;if(O){var x=void 0;o.getSuccessMessage&&(x=o.getSuccessMessage(w)),x&&O(x)}return delete f.current[g][r],o.sideEffects&&o.sideEffects(b(w,i,u,v,l.notifyWarning,m)),c.current&&R(),C(e.initializedRef,g,v.current,y.current),t}}(e,W,r,G)})).catch((function(r){return O(e,W,r,G)}));return null!=$&&(U[M]=t(t({},U[M]||{}),((I={})[W||x]={abortController:Z,promise:$,refArgs:F===c.REUSE&&G.length>0?i([],G,!0):[]},I))),m.current=v(m.current,M,W,null),T(null!=$||H?n.current:void 0,null==$?void 0:d(h.current,M,W,!0),M,"preEffects",!0,V,!1),$}},exports.decorateSimpleSyncAction=function(e,r,t,n,o,i,c,u){return function(){for(var a=[],l=0;l<arguments.length;l++)a[l]=arguments[l];if(i.current){var s=E(t,n,o,a),f=A(t,r(s),c.fullStateEffects);u(f,null,e,"effects",!1,s,!1)}else w(e)}},exports.decorateSyncAction=function(e,r,t,n,o,i,c,u,a,l,s,f){return function(){for(var d=[],v=0;v<arguments.length;v++)d[v]=arguments[v];if(c.current)if(r.debounceTimeout){var p=u.current[e];p&&clearTimeout(p),u.current[e]=setTimeout((function(){c.current&&(delete u.current[e],R(e,r,t,n,o,i,u,c,a,l,s,f,d))}),r.debounceTimeout)}else R(e,r,t,n,o,i,u,c,a,l,s,f,d);else w(e)}},exports.fixDerivedDeps=function(e){var r,t=Object.keys(e.derivedState),n=new u(t);if(t.forEach((function(r){n.setEdges(r,e.derivedState[r].derivedDeps)})),n.isCyclic())throw new Error("There are cycles in the derived state dependencies");for(var o=!1,i={},c=0,a=t;c<a.length;c++){var l=a[c],s=null!==(r=e.derivedState[l].derivedDeps)&&void 0!==r?r:[];o=o||s.length>0,i[l]=s.concat()}if(o){t.sort((function(e,r){return i[e].length-i[r].length}));for(var f=[],d=new Set,v=t.length;d.size!==v;){var p=t.pop();if(!d.has(p))i[p]=i[p].filter((function(e){return!d.has(e)})),0===i[p].length?(f.push(p),d.add(p)):t.splice(0,0,p)}for(var y={},g=0,h=f;g<h.length;g++){y[p=h[g]]=e.derivedState[p]}e.derivedState=y}},exports.globalConfig=l,exports.isAsyncAction=function(e){return!(e instanceof Function)&&(e.hasOwnProperty("getPromise")||e.hasOwnProperty("getGetPromise"))},exports.isAsyncGetPromiseAction=function(e){return"function"!=typeof e&&e.hasOwnProperty("getPromise")&&!e.hasOwnProperty("getGetPromise")},exports.isAsyncGetPromiseGetAction=f,exports.isFuncConfig=function(e){return e.hasOwnProperty("getInitialState")},exports.isLoadingImpl=function(e){for(var r=[],t=1;t<arguments.length;t++)r[t-1]=arguments[t];return r.some((function(r){var t,n=null,o=x;Array.isArray(r)?(n=r[0],o=void 0===(t=r[1])?x:t):n=r;var i=e[n];return null!=i&&(null!=i[o]&&i[o])}))},exports.isSimpleSyncAction=function(e){return"function"==typeof e},exports.isSyncAction=function(e){return"function"!=typeof e&&!e.hasOwnProperty("getPromise")&&!e.hasOwnProperty("getGetPromise")},exports.onPropChange=function(e,r,n,o,i,c,u,a,s,f){if(null!=e.current){var d=null!=(null==c?void 0:c.derivedState);if(null!=c.onPropsChange){var v;v=Array.isArray(c.onPropsChange)?c.onPropsChange:[c.onPropsChange];var p=!1,y=g(e.current),E=[],S=l.comparator;v.forEach((function(t,i){var l,d=t.getDeps;if(d){var v=!1,g=[];if(s){if(!(!f&&t.onMount||f&&t.onMountDeferred))return;v=!0}else{var m=d(o),P=d(n.current);m.length!==P.length?(console.warn("options.onPropsChange.getDeps returned array must be stable (same length)"),v=!0):m.forEach((function(e,r){S(e,P[r])||(v=!0,g.push(r))}))}if(v){var b=function(e,r,t,n,o,i,c){var u=h(e,r,t);return u.indices=n,u.index=o,u.isInit=i,u.getInitialState=c,u}(y,r,n,g,i,s,u),w=A(e,null===(l=t.effects)||void 0===l?void 0:l.call(t,b),c.fullStateEffects);null!=w&&(p=!0,y.current=w,a(y.current,void 0,"onPropsChange","effects",!1,b,!0,s)),t.sideEffects&&E.push({index:i,indices:g,ctx:b})}}})),!p&&d&&a(void 0,void 0,"onPropsChange","effects",!1,null,!0),E.length>0&&E.forEach((function(e){v[e.index].sideEffects(t(t({},m(P(e.ctx,i),y)),{indices:e.indices}))}))}else null!=(null==c?void 0:c.derivedState)&&a(void 0,void 0,"onPropsChange","effects",!1,null,!0)}},exports.retryPromiseDecorator=y,exports.runMiddlewares=function(e,r,t,n,o,i,c,u){if("onPropsChange"===o&&void 0===t)return{newState:null,newLoading:!1};if(e&&e.length>0){var a=e.reduce((function(e,r){var t=r.effects({isAsync:c,name:o,type:i,context:u},e.oldState,e.newState,n);return{newState:(null==t?void 0:t.state)||e.newState,oldState:(null==t?void 0:t.state)?e.newState:e.oldState,loading:null==(null==t?void 0:t.loading)?e.loading:t.loading}}),{oldState:r,newState:t,loading:n});return{newLoading:a.loading,newState:a.newState}}return{newState:t,newLoading:n}},exports.setGlobalConfig=function(e){Object.keys(e).forEach((function(r){null!=e[r]&&(l[r]=e[r])}))},exports.updateErrorMap=v;
2
- //# sourceMappingURL=impl.js.map
1
+ var e=class{keys;adj;constructor(e){this.keys=e,this.adj={}}isCyclicUtil(e,t,n){if(n.has(e))return!0;if(t.has(e))return!1;t.add(e),n.add(e);let r=this.adj[e]??[];for(let e of r)if(this.isCyclicUtil(e,t,n))return!0;return n.delete(e),!1}setEdges(e,t){this.adj[e]=t}isCyclic(){let e=/* @__PURE__ */ new Set,t=/* @__PURE__ */ new Set;for(let n of this.keys)if(this.isCyclicUtil(n,e,t))return!0;return!1}};function t(e,t){if(Object.is(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t||e instanceof Set||t instanceof Set)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r=0;r<n.length;r++)if(!Object.prototype.hasOwnProperty.call(t,n[r])||!Object.is(e[n[r]],t[n[r]]))return!1;return!0}var n=class e extends Error{source;initialError;constructor(t,n){super(t.message),this.source=t,this.initialError=n,Object.setPrototypeOf(this,e.prototype)}};const r={clone:a,comparator:t,asyncErrorHandler:()=>{},retryOnErrorFunction:e=>e instanceof TypeError,notifySuccess:void 0,notifyError:void 0,notifyWarning:void 0,getErrorMessage:void 0,defaultMiddlewares:[],autoRetryCount:void 0,autoRetryTimeout:void 0};function i(e){Object.keys(e).forEach(t=>{e[t]!=null&&(r[t]=e[t])})}function a(e){return JSON.parse(JSON.stringify(e))}function o(e){try{return r.clone(e)}catch(e){let t=`StateDecorator: Cannot clone object. Set setCloneFunction on global global with another implementation like lodash/cloneDeep.`;throw process.env.NODE_ENV===`development`&&(console.error(t),console.error(e.toString())),Error(t)}}function s(e){return!(e instanceof Function)&&(e.hasOwnProperty(`getPromise`)||e.hasOwnProperty(`getGetPromise`))}function c(e){return typeof e==`function`}function l(e){return typeof e!=`function`&&!e.hasOwnProperty(`getPromise`)&&!e.hasOwnProperty(`getGetPromise`)}function u(e){return typeof e!=`function`&&e.hasOwnProperty(`getPromise`)&&!e.hasOwnProperty(`getGetPromise`)}function d(e){return typeof e!=`function`&&!e.hasOwnProperty(`getPromise`)&&e.hasOwnProperty(`getGetPromise`)}function f(e){return e.conflictPolicy===`abort`&&(e.abortable=!0),d(e)?{...e,getPromise:e.getGetPromise,retryDelaySeed:r.autoRetryTimeout??1e3,retryCount:r.autoRetryCount??3,conflictPolicy:e.conflictPolicy??`reuse`}:e}function p(e,t,n,r){return r?{...e,[t]:{...e[t],[n]:r}}:{...e,[t]:{...e[t],[n]:!1}}}function m(e,t,n,r){return r?{...e,[t]:{...e[t],[n]:r}}:{...e,[t]:{...e[t],[n]:void 0}}}var h=class e extends Error{promiseIds;constructor(t){super(`Error`),this.promiseIds=t,Object.setPrototypeOf(this,e.prototype)}};function g(e){return Object.keys(e).reduce((t,n)=>{let r=e[n];if(r.__def__!=null){if(r.__def__)t[n]=r[V];else{let e=Object.keys(r).reduce((e,t)=>(r[t]!=null&&(e.hasErr=!0,e.map[t]=r[t]),e),{hasErr:!1,map:{}});e.hasErr&&(t[n]=new h(e.map))}}return t},{})}function _(e,t,n=1,r=1e3,i=()=>!0){return n===1?e:a=>{async function o(s,c){return c===null?null:c.catch(c=>i(c)?s===n?Promise.reject(c):new Promise((n,i)=>{t(setTimeout(()=>{let t=e(a);o(s+1,t).then(n).catch(i)},r*s))}):Promise.reject(c))}let s=e(a);return s===null?null:o(1,s)}}function v(e=null){return{current:e}}function y(e,t,n){return{state:e.current,s:e.current,ds:t?.current?.state,derived:t?.current?.state,props:n.current,p:n.current}}function b(e,t){return{...e,ds:t,derived:t}}function x(e,t,n,r){return k(y(e,t,n),r)}function S(e,t,n,r){return{...y(e,t,n),abortedActions:r}}function C(e,t,n,r,i,a,o){let s=y(e,t,n);return s.indices=r,s.index=i,s.isInit=a,s.getInitialState=o,s}function w(e,t,n,r,i){let a=y(e,t,n);return a.args=r,i&&(a.promiseId=i),a}function T(e,t,n,r,i,a){let o=w(e,t,n,r,a);return o.result=i,o.res=i,o}function E(e,t,n,r,i,a){let o=w(e,t,n,r,a);return o.error=i,o.err=i,o}function D(e,t,n,r,i,a,o){let s=k(w(e,t,n,r,o),i);return s.abortSignal=a,s}function O(e,t){let n=e;return n.state=t.current,n.s=t.current,n}function k(e,t){let n=e;return n.actions=t.current,n.a=t.current,n}function A(e,t,n,r,i,a){let o=k(e,r);O(e,t);let s=n?.current?.state;return o.derived=s,o.ds=s,o.notifyWarning=i,o.clearError=a,o}function j(e){process.env.NODE_ENV===`development`&&console.warn(`[state-decorator] ${e} action was called while store is not initialized or destroyed, this is probably a leak`)}function M(e,t,n){return n?t:t==null?null:{...e.current,...t}}function N(e){return e.hasOwnProperty(`getInitialState`)}function P(e,t,n,r,i,a,o,s){return(...c)=>{if(!a.current){j(e);return}let l=w(n,r,i,c);s(M(n,t(l),o.fullStateEffects),null,e,`effects`,!1,l,!1)}}function F(e,t,n,i,a,o,s,c,l,u,d,f,p){let m=T(n,i,a,p,void 0),h=null,g=!1;if(t.effects!=null){let r=M(n,t.effects(m),u.fullStateEffects);if(r===null)g=!0;else{let n=t.debounceSideEffectsTimeout!=null||t.sideEffects==null;l.current=!n,h=d(r,void 0,e,`effects`,!1,m,!1,!1,!n)}}if(!g){let a=e=>{t.sideEffects?.(A(m,n,i,o,u.notifyWarning,f)),e&&l.current&&h?.();let a=u.notifySuccess||r.notifySuccess;if(a){let e;t.getSuccessMessage&&(e=t.getSuccessMessage(m)),e&&a(e)}};if(t.debounceSideEffectsTimeout>0&&t.sideEffects){let n=s.current[e];n&&clearTimeout(n),s.current[e]=setTimeout(()=>{c.current&&(delete s.current[e],a(!1))},t.debounceSideEffectsTimeout)}else a(!0)}}function I(e,t,n,r,i,a,o,s,c,l,u,d){return(...f)=>{if(!o.current)j(e);else if(t.debounceTimeout){let p=s.current[e];p&&clearTimeout(p),s.current[e]=setTimeout(()=>{o.current&&(delete s.current[e],F(e,t,n,r,i,a,s,o,c,l,u,d,f))},t.debounceTimeout)}else F(e,t,n,r,i,a,s,o,c,l,u,d,f)}}function L(e,t,i,a){let{action:o,stateRef:s,needNotifyListenersRef:c,derivedStateRef:l,propsRef:u,promisesRef:d,actionsRef:f,loadingParallelMapRef:m,conflictActionsRef:h,actionName:g,options:_,setState:v,clearError:y}=e;if(!e.initializedRef.current)return;let b=null,x=T(s,l,u,a,i,t);if(o.effects)try{b=M(s,o.effects(x),_.fullStateEffects)}catch(e){return Promise.reject(new n(e))}c.current=!0;let S=v(b,p(m.current,g,t,!1),g,`effects`,!0,x,!1,!1,!0),C=_.notifySuccess||r.notifySuccess;if(C){let e;o.getSuccessMessage&&(e=o.getSuccessMessage(x)),e&&C(e)}return delete d.current[g][t],o.sideEffects&&o.sideEffects(A(x,s,l,f,r.notifyWarning,y)),c.current&&S(),W(e.initializedRef,g,f.current,h.current),i}function R(e,t,i,a){let{action:o,stateRef:s,derivedStateRef:c,propsRef:l,actionsRef:u,loadingParallelMapRef:d,errorMapRef:f,promisesRef:h,conflictActionsRef:g,actionName:_,options:v,clearError:y,setState:b}=e;if(!e.initializedRef.current)return;let x=null,S=i,C=E(s,c,l,a,S,t);if(o.errorEffects)try{x=M(s,o.errorEffects(C),v.fullStateEffects)}catch(e){S=new n(e,i)}f.current=m(f.current,_,t,S),b(x,p(d.current,_,t,!1),_,`errorEffects`,!0,C,!1);let w=!1;(x!=null||o.errorSideEffects||o.isErrorManaged||v.isErrorManaged)&&(w=!0);let T=v.notifyError||r.notifyError;if(T){let e;o.getErrorMessage&&(e=o.getErrorMessage(C)),e===void 0&&!w&&r.getErrorMessage&&(e=r.getErrorMessage(S)),e&&(w=!0,T(e))}return r.asyncErrorHandler(S,w||o.rejectPromiseOnError,s.current,l.current,_,a),delete h.current[_][t],o.errorSideEffects&&o.errorSideEffects(A(C,s,c,u,r.notifyWarning,y)),W(e.initializedRef,_,u.current,g.current),!w||o.rejectPromiseOnError?Promise.reject(S):Promise.resolve()}function z(e){let{action:t,stateRef:i,derivedStateRef:a,propsRef:o,actionsRef:s,timeoutRef:c,promisesRef:l,loadingParallelMapRef:u,errorMapRef:d,initializedRef:f,conflictActionsRef:h,actionName:g,setState:v,options:y}=e;return(...b)=>{if(!f.current)return j(g),null;let x=l.current,{conflictPolicy:S=`keepAll`}=t,C=S===`parallel`,T=null;if(C){if(!t.getPromiseId)throw Error(`If conflict policy is set to ConflictPolicy.PARALLEL, getPromiseId must be set and return a string.`);T=t.getPromiseId(...b)}else T=V;if(!C&&x[g]?.[T])return U(x,h.current,g,S,b);let E=null,O=!1,k=w(i,a,o,b,T);if(t.preEffects){try{E=M(i,t.preEffects(k),y.fullStateEffects)}catch(e){return r.asyncErrorHandler(new n(e),!1,i.current,o.current,g,b),Promise.reject(new n(e))}E&&(O=!0,i.current=E)}let{abortable:A,retryCount:N,retryDelaySeed:P,isTriggerRetryError:F}=t,I=A&&window.AbortController?new AbortController:null,z=_(t.getPromise,e=>{c.current&&(c.current[g]=e)},N?1+N:1,P,F||r.retryOnErrorFunction)(D(i,a,o,b,s,I?.signal))?.then(t=>L(e,T,t,b)).catch(t=>R(e,T,t,b));return z!=null&&(x[g]={...x[g],[T||`__def__`]:{abortController:I,promise:z,refArgs:S===`reuse`&&b.length>0?[...b]:[]}}),d.current=m(d.current,g,T,null),v(z==null&&!O?void 0:i.current,z==null?void 0:p(u.current,g,T,!0),g,`preEffects`,!0,k,!1),z}}function B(e,...t){return t.some(t=>{let n=null,r=V;Array.isArray(t)?[n,r=V]=t:n=t;let i=e[n];return i!=null&&i[r]!=null&&i[r]})}const V=`__def__`;function H(e,t){return e.length===t.length&&e.findIndex((e,n)=>t[n]!==e)===-1}function U(e,t,n,r,i){let a=r;if(a===`reuse`){if(H(e[n].__def__.refArgs,i))return e[n][V].promise;a=`keepAll`}return new Promise((r,s)=>{let c={resolve:r,reject:s,args:o(i),timestamp:Date.now()};switch(a){case`ignore`:r(void 0);break;case`reject`:s(/* @__PURE__ */ Error(`An asynchronous action ${n} is already ongoing.`));break;case`keepLast`:t[n]=[c];break;case`abort`:(e[n][V]?.abortController)?.abort(`conflict`);case`keepAll`:{let e=t[n];e||(t[n]=e=[]),e.push(c);break}}})}function W(e,t,n,r){if(!e.current)return;let i=r[t];if(i?.length>0){let a=i.shift();if(a){let i=n[t](...a.args);i==null?W(e,t,n,r):i.then(i=>{i===null&&W(e,t,n,r),a.resolve(i)}).catch(e=>a.reject(e))}}}function G(e,t,n,i,a=null){if(i?.derivedState==null)return!1;let o=!1,s=r.comparator,c=n.current.deps,l=y(e,null,t),u=Object.keys(i.derivedState);return n.current.state=u.reduce((e,t)=>{let r=!1;if(a?.current?.[t])e[t]=a.current?.[t];else{let a=i.derivedState[t],u=c[t],d=a.getDeps?.(l)??[];a.derivedDeps&&a.derivedDeps.forEach(t=>d.push(e[t]??n.current?.state?.[t])),r=u==null||d.findIndex((e,t)=>u.length<t||!s(u[t],e))!==-1,o||=r,c[t]=d,e[t]=r?i.derivedState[t].get(b(l,e)):n.current.state[t]}return e},{}),o}function K(t){let n=Object.keys(t.derivedState),r=new e(n);if(n.forEach(e=>{r.setEdges(e,t.derivedState[e].derivedDeps)}),r.isCyclic())throw Error(`There are cycles in the derived state dependencies`);let i=!1,a={};for(let e of n){let n=t.derivedState[e].derivedDeps??[];i||=n.length>0,a[e]=[...n]}if(i){n.sort((e,t)=>a[e].length-a[t].length);let e=[],r=/* @__PURE__ */ new Set,i=n.length;for(;r.size!==i;){let t=n.pop();r.has(t)||(a[t]=a[t].filter(e=>!r.has(e)),a[t].length===0?(e.push(t),r.add(t)):n.splice(0,0,t))}let o={};for(let n of e)o[n]=t.derivedState[n];t.derivedState=o}}function q(e,t,n,i,a,o,s,c,l,u){if(e.current==null)return;let d=o?.derivedState!=null;if(o.onPropsChange==null){o?.derivedState!=null&&c(void 0,void 0,`onPropsChange`,`effects`,!1,null,!0);return}let f;f=Array.isArray(o.onPropsChange)?o.onPropsChange:[o.onPropsChange];let p=!1,m=v(e.current),h=[],g=r.comparator;f.forEach((r,a)=>{let d=r.getDeps;if(d){let f=!1,_=[];if(l){if(!u&&r.onMount||u&&r.onMountDeferred)f=!0;else return}else{let e=d(i),t=d(n.current);e.length===t.length?e.forEach((e,n)=>{g(e,t[n])||(f=!0,_.push(n))}):(console.warn(`options.onPropsChange.getDeps returned array must be stable (same length)`),f=!0)}if(f){let i=C(m,t,n,_,a,l,s),u=M(e,r.effects?.(i),o.fullStateEffects);u!=null&&(p=!0,m.current=u,c(m.current,void 0,`onPropsChange`,`effects`,!1,i,!0,l)),r.sideEffects&&h.push({index:a,indices:_,ctx:i})}}}),!p&&d&&c(void 0,void 0,`onPropsChange`,`effects`,!1,null,!0),h.length>0&&h.forEach(e=>{f[e.index].sideEffects({...O(k(e.ctx,a),m),indices:e.indices})})}function J(e,t,n,r,i,a,o,s){if(i===`onPropsChange`&&n===void 0)return{newState:null,newLoading:!1};if(e&&e.length>0){let c=e.reduce((e,t)=>{let n=t.effects({isAsync:o,name:i,type:a,context:s},e.oldState,e.newState,r);return{newState:n?.state||e.newState,oldState:n?.state?e.newState:e.oldState,loading:n?.loading==null?e.loading:n.loading}},{oldState:t,newState:n,loading:r});return{newLoading:c.loading,newState:c.newState}}return{newState:n,newLoading:r}}export{V as DEFAULT_PROMISE_ID,n as EffectError,h as ParallelActionError,H as areSameArgs,g as buildErrorMap,y as buildInvocationContextBase,p as buildLoadingMap,x as buildOnMountInvocationContext,S as buildOnUnMountInvocationContext,f as computeAsyncActionInput,G as computeDerivedValues,v as createRef,z as decorateAsyncAction,P as decorateSimpleSyncAction,I as decorateSyncAction,K as fixDerivedDeps,r as globalConfig,s as isAsyncAction,u as isAsyncGetPromiseAction,d as isAsyncGetPromiseGetAction,N as isFuncConfig,B as isLoadingImpl,c as isSimpleSyncAction,l as isSyncAction,q as onPropChange,_ as retryPromiseDecorator,J as runMiddlewares,i as setGlobalConfig,m as updateErrorMap};
2
+ //# sourceMappingURL=impl.js.map