diff --git a/dist/buildMiddleware/index.d.ts b/dist/buildMiddleware/index.d.ts index b8ca978..e7fc742 100644 --- a/dist/buildMiddleware/index.d.ts +++ b/dist/buildMiddleware/index.d.ts @@ -1,5 +1,4 @@ -import { Middleware } from 'redux'; -import { Dictionary, ActionCreator, UpduxDispatch } from '../types'; -declare function buildMiddleware(effects?: Dictionary>, actions?: Dictionary, subMiddlewares?: Middleware<{}, S, UpduxDispatch>[]): Middleware<{}, S, UpduxDispatch>; +import { Dictionary, ActionCreator, UpduxMiddleware } from '../types'; +declare function buildMiddleware(effects?: Dictionary>, actions?: Dictionary, subduxes?: any): UpduxMiddleware; export default buildMiddleware; //# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/buildMiddleware/index.d.ts.map b/dist/buildMiddleware/index.d.ts.map index 4dfca7b..6189eba 100644 --- a/dist/buildMiddleware/index.d.ts.map +++ b/dist/buildMiddleware/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/buildMiddleware/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAA2B,MAAM,OAAO,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,aAAa,EAAU,aAAa,EAAE,MAAM,UAAU,CAAC;AAU5E,iBAAS,eAAe,CAAC,CAAC,GAAC,GAAG,EAC1B,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,EAAE,EAAC,CAAC,EAAC,aAAa,CAAC,CAAK,EACxD,OAAO,GAAG,UAAU,CAAC,aAAa,CAAK,EACvC,cAAc,GAAE,UAAU,CAAC,EAAE,EAAC,CAAC,EAAC,aAAa,CAAC,EAAO,GACtD,UAAU,CAAC,EAAE,EAAC,CAAC,EAAC,aAAa,CAAC,CAoBhC;AAED,eAAe,eAAe,CAAC"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/buildMiddleware/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAyB,eAAe,EAAsB,MAAM,UAAU,CAAC;AAkBjH,iBAAS,eAAe,CAAC,CAAC,GAAC,GAAG,EAC1B,OAAO,GAAG,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAK,EAC5C,OAAO,GAAG,UAAU,CAAC,aAAa,CAAK,EACvC,QAAQ,GAAE,GAAQ,GACnB,eAAe,CAAC,CAAC,CAAC,CA4BpB;AAED,eAAe,eAAe,CAAC"} \ No newline at end of file diff --git a/dist/buildMiddleware/index.js b/dist/buildMiddleware/index.js index a270e82..9edcdc2 100644 --- a/dist/buildMiddleware/index.js +++ b/dist/buildMiddleware/index.js @@ -9,7 +9,15 @@ const MiddlewareFor = (type, mw) => api => next => action => { return next(action); return mw(api)(next)(action); }; -function buildMiddleware(effects = {}, actions = {}, subMiddlewares = []) { +function sliceMw(slice, mw) { + return (api) => { + const getSliceState = () => fp_1.default.get(slice, api.getState()); + const getRootState = api.getRootState || api.getState; + return mw({ ...api, getState: getSliceState, getRootState }); + }; +} +function buildMiddleware(effects = {}, actions = {}, subduxes = {}) { + const subMiddlewares = fp_1.default.flow(fp_1.default.mapValues(fp_1.default.get('middleware')), fp_1.default.toPairs, fp_1.default.filter(x => x[1]), fp_1.default.map(([slice, mw]) => sliceMw(slice, mw)))(subduxes); return (api) => { for (let type in actions) { const ac = actions[type]; diff --git a/dist/buildMiddleware/index.js.map b/dist/buildMiddleware/index.js.map index 49f0da9..c28f3d8 100644 --- a/dist/buildMiddleware/index.js.map +++ b/dist/buildMiddleware/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/buildMiddleware/index.ts"],"names":[],"mappings":";;;;;AAAA,mDAA2B;AAK3B,MAAM,aAAa,GAAG,CAAC,IAAS,EAAE,EAAc,EAAe,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;IACtF,IAAI,IAAI,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IAE9D,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AACjC,CAAC,CAAC;AAIF,SAAS,eAAe,CACpB,UAAsD,EAAE,EACxD,UAAqC,EAAE,EACvC,iBAAmD,EAAE;IAGvD,OAAO,CAAC,GAAmC,EAAE,EAAE;QAE7C,KAAK,IAAI,IAAI,IAAI,OAAO,EAAE;YACxB,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YACzB,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAU,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;SACnE;QAED,OAAO,CAAC,aAAmB,EAAC,EAAE;YAC5B,OAAO;gBACL,GAAG,YAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAC1C,aAAa,CAAC,IAAI,EAAC,MAAoB,CAAC,CAC3C;gBACD,GAAG,cAAc;aAClB;iBACE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACd,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,CAAC;QAC7D,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,kBAAe,eAAe,CAAC"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/buildMiddleware/index.ts"],"names":[],"mappings":";;;;;AAAA,mDAA2B;AAK3B,MAAM,aAAa,GAAG,CAAC,IAAS,EAAE,EAAc,EAAe,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;IACtF,IAAI,IAAI,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IAE9D,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AACjC,CAAC,CAAC;AAIF,SAAS,OAAO,CAAE,KAAa,EAAE,EAAc;IAC3C,OAAO,CAAC,GAAG,EAAE,EAAE;QACX,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,YAAE,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAE,CAAC;QAC3D,MAAM,YAAY,GAAI,GAAW,CAAC,YAAY,IAAI,GAAG,CAAC,QAAQ,CAAC;QAC/D,OAAO,EAAE,CAAC,EAAC,GAAG,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAQ,CAAE,CAAA;IACtE,CAAC,CAAC;AACN,CAAC;AAED,SAAS,eAAe,CACpB,UAA0C,EAAE,EAC5C,UAAqC,EAAE,EACvC,WAAgB,EAAE;IAIlB,MAAM,cAAc,GAAG,YAAE,CAAC,IAAI,CAC1B,YAAE,CAAC,SAAS,CAAE,YAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAE,EACpC,YAAE,CAAC,OAAO,EACV,YAAE,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC,EAClB,YAAE,CAAC,GAAG,CAAE,CAAC,CAAE,KAAK,EAAE,EAAE,CAAyB,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAC,EAAE,CAAC,CAAE,CACxE,CAAE,QAAQ,CAAE,CAAC;IAEhB,OAAO,CAAC,GAA0B,EAAE,EAAE;QAEpC,KAAK,IAAI,IAAI,IAAI,OAAO,EAAE;YACxB,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YACzB,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAU,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;SACnE;QAED,OAAO,CAAC,aAAmB,EAAC,EAAE;YAC5B,OAAO;gBACL,GAAG,YAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAC1C,aAAa,CAAC,IAAI,EAAC,MAAoB,CAAC,CAC3C;gBACD,GAAG,cAAc;aAClB;iBACE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACd,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC,CAAC;QAC7D,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,kBAAe,eAAe,CAAC"} \ No newline at end of file diff --git a/dist/middleware.test.js b/dist/middleware.test.js index 2cf0ada..52aec91 100644 --- a/dist/middleware.test.js +++ b/dist/middleware.test.js @@ -6,14 +6,14 @@ Object.defineProperty(exports, "__esModule", { value: true }); const _1 = __importDefault(require(".")); test('simple effect', () => { const tracer = jest.fn(); - const store = (new _1.default({ + const store = new _1.default({ effects: { foo: (api) => (next) => (action) => { tracer(); next(action); }, }, - })).createStore(); + }).createStore(); expect(tracer).not.toHaveBeenCalled(); store.dispatch({ type: 'bar' }); expect(tracer).not.toHaveBeenCalled(); @@ -26,17 +26,18 @@ test('effect and sub-effect', () => { tracer(signature); next(action); }; - const store = (new _1.default({ + const store = new _1.default({ effects: { foo: tracerEffect('root'), }, subduxes: { - zzz: { effects: { + zzz: { + effects: { foo: tracerEffect('child'), - } - } + }, + }, }, - })).createStore(); + }).createStore(); expect(tracer).not.toHaveBeenCalled(); store.dispatch({ type: 'bar' }); expect(tracer).not.toHaveBeenCalled(); @@ -46,14 +47,14 @@ test('effect and sub-effect', () => { }); test('"*" effect', () => { const tracer = jest.fn(); - const store = (new _1.default({ + const store = new _1.default({ effects: { '*': api => next => action => { tracer(); next(action); }, }, - })).createStore(); + }).createStore(); expect(tracer).not.toHaveBeenCalled(); store.dispatch({ type: 'bar' }); expect(tracer).toHaveBeenCalled(); @@ -63,7 +64,7 @@ test('async effect', async () => { return new Promise(resolve => setTimeout(resolve, ms)); } const tracer = jest.fn(); - const store = (new _1.default({ + const store = new _1.default({ effects: { foo: api => next => async (action) => { next(action); @@ -71,11 +72,41 @@ test('async effect', async () => { tracer(); }, }, - })).createStore(); + }).createStore(); expect(tracer).not.toHaveBeenCalled(); store.dispatch.foo(); expect(tracer).not.toHaveBeenCalled(); await timeout(1000); expect(tracer).toHaveBeenCalled(); }); +test('getState is local', () => { + let childState; + let rootState; + let rootFromChild; + const child = new _1.default({ + initial: { alpha: 12 }, + effects: { + doIt: ({ getState, getRootState }) => next => action => { + childState = getState(); + rootFromChild = getRootState(); + next(action); + }, + }, + }); + const root = new _1.default({ + initial: { beta: 24 }, + subduxes: { child }, + effects: { + doIt: ({ getState }) => next => action => { + rootState = getState(); + next(action); + }, + }, + }); + const store = root.createStore(); + store.dispatch.doIt(); + expect(rootState).toEqual({ beta: 24, child: { alpha: 12 } }); + expect(rootFromChild).toEqual({ beta: 24, child: { alpha: 12 } }); + expect(childState).toEqual({ alpha: 12 }); +}); //# sourceMappingURL=middleware.test.js.map \ No newline at end of file diff --git a/dist/middleware.test.js.map b/dist/middleware.test.js.map index 0a2a778..c848e5b 100644 --- a/dist/middleware.test.js.map +++ b/dist/middleware.test.js.map @@ -1 +1 @@ -{"version":3,"file":"middleware.test.js","sourceRoot":"","sources":["../src/middleware.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"middleware.test.js","sourceRoot":"","sources":["../src/middleware.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/types.d.ts b/dist/types.d.ts index 0243f67..94dd363 100644 --- a/dist/types.d.ts +++ b/dist/types.d.ts @@ -1,4 +1,4 @@ -import { Dispatch, Middleware } from 'redux'; +import { Dispatch } from 'redux'; declare type MaybePayload

= P extends object | string | boolean | number ? { payload: P; } : { @@ -25,8 +25,14 @@ export declare type UpduxConfig = { }; mutations?: any; groomMutations?: (m: Mutation) => Mutation; - effects?: Dictionary>; + effects?: Dictionary>; }; export declare type Upreducer = (action: Action) => (state: S) => S; +export interface UpduxMiddlewareAPI { + dispatch: UpduxDispatch; + getState(): any; + getRootState(): S; +} +export declare type UpduxMiddleware = (api: UpduxMiddlewareAPI) => (next: UpduxDispatch) => (action: Action) => any; export {}; //# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/dist/types.d.ts.map b/dist/types.d.ts.map index 3ef363f..209a6f8 100644 --- a/dist/types.d.ts.map +++ b/dist/types.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAE,UAAU,EAAC,MAAM,OAAO,CAAC;AAE3C,aAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAC/D;IACE,OAAO,EAAE,CAAC,CAAC;CACZ,GACD;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA;CAAC,CAAC;AAElB,oBAAY,MAAM,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,GAAG,IAAI;IACvD,IAAI,EAAE,CAAC,CAAC;CACT,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;AAEpB,oBAAY,UAAU,CAAC,CAAC,IAAI;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAA;CAAC,CAAC;AAE/C,oBAAY,QAAQ,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,CACzD,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,EACrB,MAAM,EAAE,CAAC,KACN,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;AAErB,oBAAY,sBAAsB,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;AAE7D,oBAAY,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,GAAG,IAAI;IAC9D,IAAI,EAAE,CAAC,CAAC;IACR,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAEvC,oBAAY,aAAa,GAAG,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;AAO5D,oBAAY,WAAW,CAAC,CAAC,GAAC,GAAG,IAAI;IAK/B,OAAO,CAAC,EAAE,CAAC,CAAC;IA+BZ,QAAQ,CAAC,EAAE,EAAE,CAAC;IAsBd,OAAO,CAAC,EAAE;QACR,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAAC;KAC/B,CAAC;IAgEF,SAAS,CAAC,EAAE,GAAG,CAAC;IAEhB,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC;IAqBjD,OAAO,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC;CACxD,CAAC;AAEF,oBAAY,SAAS,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAa,MAAM,OAAO,CAAC;AAE3C,aAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAC/D;IACE,OAAO,EAAE,CAAC,CAAC;CACZ,GACD;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA;CAAC,CAAC;AAElB,oBAAY,MAAM,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,GAAG,IAAI;IACvD,IAAI,EAAE,CAAC,CAAC;CACT,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;AAEpB,oBAAY,UAAU,CAAC,CAAC,IAAI;IAAC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAA;CAAC,CAAC;AAE/C,oBAAY,QAAQ,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI,CACzD,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,EACrB,MAAM,EAAE,CAAC,KACN,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;AAErB,oBAAY,sBAAsB,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;AAE7D,oBAAY,aAAa,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,GAAG,IAAI;IAC9D,IAAI,EAAE,CAAC,CAAC;IACR,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAEvC,oBAAY,aAAa,GAAG,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;AAO5D,oBAAY,WAAW,CAAC,CAAC,GAAC,GAAG,IAAI;IAK/B,OAAO,CAAC,EAAE,CAAC,CAAC;IA+BZ,QAAQ,CAAC,EAAE,EAAE,CAAC;IAsBd,OAAO,CAAC,EAAE;QACR,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAAC;KAC/B,CAAC;IAgEF,SAAS,CAAC,EAAE,GAAG,CAAC;IAEhB,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC;IAqBjD,OAAO,CAAC,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;CAC1C,CAAC;AAEF,oBAAY,SAAS,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;AAErE,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACjC,QAAQ,EAAE,aAAa,CAAC;IACxB,QAAQ,IAAI,GAAG,CAAC;IAChB,YAAY,IAAI,CAAC,CAAA;CAEpB;AACD,oBAAY,eAAe,CAAC,CAAC,GAAC,GAAG,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,CAAC,KAAM,CAAE,IAAI,EAAE,aAAa,KAAM,CAAE,MAAM,EAAE,MAAM,KAAM,GAAG,CAAC"} \ No newline at end of file diff --git a/dist/updux.d.ts b/dist/updux.d.ts index ab27eb8..4053f87 100644 --- a/dist/updux.d.ts +++ b/dist/updux.d.ts @@ -1,5 +1,5 @@ -import { UpduxConfig, Dictionary, Action, ActionCreator, Mutation, Upreducer, UpduxDispatch } from './types'; -import { Middleware, Store } from 'redux'; +import { UpduxConfig, Dictionary, Action, ActionCreator, Mutation, Upreducer, UpduxMiddleware } from './types'; +import { Store } from 'redux'; export { actionCreator } from './buildActions'; declare type StoreWithDispatchActions Action; @@ -17,7 +17,7 @@ export declare class Updux { private localActions; private localMutations; constructor(config?: UpduxConfig); - readonly middleware: Middleware<{}, S, UpduxDispatch>; + readonly middleware: UpduxMiddleware; readonly actions: Dictionary; readonly upreducer: Upreducer; readonly reducer: (state: S | undefined, action: Action) => S; diff --git a/dist/updux.d.ts.map b/dist/updux.d.ts.map index 62694ad..a232c77 100644 --- a/dist/updux.d.ts.map +++ b/dist/updux.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"updux.d.ts","sourceRoot":"","sources":["../src/updux.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,WAAW,EACX,UAAU,EACV,MAAM,EACN,aAAa,EACb,QAAQ,EACR,SAAS,EACT,aAAa,EACd,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAC,UAAU,EAAE,KAAK,EAAC,MAAM,OAAO,CAAC;AACxC,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAE7C,aAAK,wBAAwB,CAC3B,CAAC,GAAG,GAAG,EACP,OAAO,GAAG;IAAC,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,CAAA;CAAC,IACpD,KAAK,CAAC,CAAC,CAAC,GAAG;IACb,QAAQ,EAAE;SAAE,IAAI,IAAI,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI;KAAC,CAAC;CAC7D,CAAC;AAEF,oBAAY,GAAG,CAAC,CAAC,IAAI,IAAI,CACvB,KAAK,CAAC,CAAC,CAAC,EACN,UAAU,GACV,SAAS,GACT,SAAS,GACT,WAAW,GACX,SAAS,GACT,YAAY,GACZ,aAAa,GACb,WAAW,CACd,CAAC;AASF,qBAAa,KAAK,CAAC,CAAC,GAAG,GAAG;IACxB,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IAS5B,OAAO,EAAE,CAAC,CAAC;IAqCX,cAAc,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE3C,OAAO,CAAC,YAAY,CAE9B;IAEU,OAAO,CAAC,YAAY,CAA4B;IAEhD,OAAO,CAAC,cAAc,CAEhC;gBAEU,MAAM,GAAE,WAAgB;aA0BtB,UAAU,EAAI,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,aAAa,CAAC;aAsB9C,OAAO,EAAI,UAAU,CAAC,aAAa,CAAC;aAYpC,SAAS,EAAI,SAAS,CAAC,CAAC,CAAC;aAQzB,OAAO,EAAI,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;aAStD,SAAS,EAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;aAqBpC,eAAe;aA6Bf,WAAW,EAAI,MAAM,wBAAwB,CAAC,CAAC,CAAC;aAiB1D,KAAK,EAAI,GAAG,CAAC,CAAC,CAAC;IAyBnB,WAAW,CAAC,CAAC,SAAS,aAAa,EACjC,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EACxE,MAAM,CAAC,EAAE,OAAO;CAQnB;AAED,eAAe,KAAK,CAAC"} \ No newline at end of file +{"version":3,"file":"updux.d.ts","sourceRoot":"","sources":["../src/updux.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,WAAW,EACX,UAAU,EACV,MAAM,EACN,aAAa,EACb,QAAQ,EACR,SAAS,EAET,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAa,KAAK,EAAC,MAAM,OAAO,CAAC;AACxC,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAE7C,aAAK,wBAAwB,CAC3B,CAAC,GAAG,GAAG,EACP,OAAO,GAAG;IAAC,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,CAAA;CAAC,IACpD,KAAK,CAAC,CAAC,CAAC,GAAG;IACb,QAAQ,EAAE;SAAE,IAAI,IAAI,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI;KAAC,CAAC;CAC7D,CAAC;AAEF,oBAAY,GAAG,CAAC,CAAC,IAAI,IAAI,CACvB,KAAK,CAAC,CAAC,CAAC,EACN,UAAU,GACV,SAAS,GACT,SAAS,GACT,WAAW,GACX,SAAS,GACT,YAAY,GACZ,aAAa,GACb,WAAW,CACd,CAAC;AASF,qBAAa,KAAK,CAAC,CAAC,GAAG,GAAG;IACxB,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IAS5B,OAAO,EAAE,CAAC,CAAC;IAqCX,cAAc,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE3C,OAAO,CAAC,YAAY,CAE9B;IAEU,OAAO,CAAC,YAAY,CAA4B;IAEhD,OAAO,CAAC,cAAc,CAEhC;gBAEU,MAAM,GAAE,WAAgB;aA6BtB,UAAU,EAAI,eAAe,CAAC,CAAC,CAAC;aAsBhC,OAAO,EAAI,UAAU,CAAC,aAAa,CAAC;aAYpC,SAAS,EAAI,SAAS,CAAC,CAAC,CAAC;aAQzB,OAAO,EAAI,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;aAStD,SAAS,EAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;aAqBpC,eAAe;aA6Bf,WAAW,EAAI,MAAM,wBAAwB,CAAC,CAAC,CAAC;aAiB1D,KAAK,EAAI,GAAG,CAAC,CAAC,CAAC;IAyBnB,WAAW,CAAC,CAAC,SAAS,aAAa,EACjC,OAAO,EAAE,CAAC,EACV,QAAQ,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EACxE,MAAM,CAAC,EAAE,OAAO;CAQnB;AAED,eAAe,KAAK,CAAC"} \ No newline at end of file diff --git a/dist/updux.js b/dist/updux.js index 8a0ed8e..2f48132 100644 --- a/dist/updux.js +++ b/dist/updux.js @@ -29,7 +29,7 @@ class Updux { this.localMutations = fp_1.default.mapValues((m) => this.groomMutations(m))(fp_1.default.getOr({}, 'mutations', config)); } get middleware() { - return buildMiddleware_1.default(this.localEffects, this.actions, Object.values(this.subduxes).map(sd => sd.middleware)); + return buildMiddleware_1.default(this.localEffects, this.actions, this.subduxes); } get actions() { return buildActions_1.default(this.localActions, [...Object.keys(this.localMutations), ...Object.keys(this.localEffects)], fp_1.default.flatten(Object.values(this.subduxes).map(({ actions }) => Object.entries(actions)))); diff --git a/dist/updux.js.map b/dist/updux.js.map index fa1f544..e4afbe4 100644 --- a/dist/updux.js.map +++ b/dist/updux.js.map @@ -1 +1 @@ -{"version":3,"file":"updux.js","sourceRoot":"","sources":["../src/updux.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"updux.js","sourceRoot":"","sources":["../src/updux.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/docs/assets/js/search.js b/docs/assets/js/search.js index d0aa632..66f0aaa 100644 --- a/docs/assets/js/search.js +++ b/docs/assets/js/search.js @@ -1,3 +1,3 @@ var typedoc = typedoc || {}; typedoc.search = typedoc.search || {}; - typedoc.search.data = {"kinds":{"32":"Variable","64":"Function","128":"Class","512":"Constructor","1024":"Property","2048":"Method","65536":"Type literal","262144":"Accessor","4194304":"Type alias"},"rows":[{"id":0,"kind":4194304,"name":"MaybePayload","url":"globals.html#maybepayload","classes":"tsd-kind-type-alias tsd-has-type-parameter tsd-is-not-exported"},{"id":1,"kind":4194304,"name":"Action","url":"globals.html#action","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":2,"kind":4194304,"name":"Dictionary","url":"globals.html#dictionary","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":3,"kind":65536,"name":"__type","url":"globals.html#dictionary.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"Dictionary"},{"id":4,"kind":4194304,"name":"Mutation","url":"globals.html#mutation","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":5,"kind":65536,"name":"__type","url":"globals.html#mutation.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"Mutation"},{"id":6,"kind":4194304,"name":"ActionPayloadGenerator","url":"globals.html#actionpayloadgenerator","classes":"tsd-kind-type-alias"},{"id":7,"kind":65536,"name":"__type","url":"globals.html#actionpayloadgenerator.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"ActionPayloadGenerator"},{"id":8,"kind":4194304,"name":"ActionCreator","url":"globals.html#actioncreator","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":9,"kind":4194304,"name":"UpduxDispatch","url":"globals.html#upduxdispatch","classes":"tsd-kind-type-alias"},{"id":10,"kind":4194304,"name":"UpduxConfig","url":"globals.html#upduxconfig","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":11,"kind":65536,"name":"__type","url":"globals.html#upduxconfig.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"UpduxConfig"},{"id":12,"kind":32,"name":"initial","url":"globals.html#upduxconfig.__type.initial","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":13,"kind":32,"name":"subduxes","url":"globals.html#upduxconfig.__type.subduxes","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":14,"kind":32,"name":"actions","url":"globals.html#upduxconfig.__type.actions","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":15,"kind":32,"name":"mutations","url":"globals.html#upduxconfig.__type.mutations","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":16,"kind":32,"name":"groomMutations","url":"globals.html#upduxconfig.__type.groommutations","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":17,"kind":32,"name":"effects","url":"globals.html#upduxconfig.__type.effects","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":18,"kind":4194304,"name":"Upreducer","url":"globals.html#upreducer","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":19,"kind":65536,"name":"__type","url":"globals.html#upreducer.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"Upreducer"},{"id":20,"kind":64,"name":"actionCreator","url":"globals.html#actioncreator","classes":"tsd-kind-function tsd-has-type-parameter"},{"id":21,"kind":64,"name":"actionFor","url":"globals.html#actionfor","classes":"tsd-kind-function tsd-is-not-exported"},{"id":22,"kind":4194304,"name":"ActionPair","url":"globals.html#actionpair","classes":"tsd-kind-type-alias tsd-is-not-exported"},{"id":23,"kind":64,"name":"buildActions","url":"globals.html#buildactions","classes":"tsd-kind-function"},{"id":24,"kind":64,"name":"buildInitial","url":"globals.html#buildinitial","classes":"tsd-kind-function tsd-has-type-parameter"},{"id":25,"kind":64,"name":"composeMutations","url":"globals.html#composemutations","classes":"tsd-kind-function tsd-is-not-exported"},{"id":26,"kind":4194304,"name":"SubMutations","url":"globals.html#submutations","classes":"tsd-kind-type-alias tsd-is-not-exported"},{"id":27,"kind":65536,"name":"__type","url":"globals.html#submutations.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"SubMutations"},{"id":28,"kind":64,"name":"buildMutations","url":"globals.html#buildmutations","classes":"tsd-kind-function"},{"id":29,"kind":64,"name":"buildCreateStore","url":"globals.html#buildcreatestore","classes":"tsd-kind-function tsd-has-type-parameter"},{"id":30,"kind":64,"name":"MiddlewareFor","url":"globals.html#middlewarefor","classes":"tsd-kind-function tsd-is-not-exported"},{"id":31,"kind":4194304,"name":"Next","url":"globals.html#next","classes":"tsd-kind-type-alias tsd-is-not-exported"},{"id":32,"kind":65536,"name":"__type","url":"globals.html#next.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"Next"},{"id":33,"kind":64,"name":"buildMiddleware","url":"globals.html#buildmiddleware","classes":"tsd-kind-function tsd-has-type-parameter"},{"id":34,"kind":64,"name":"buildUpreducer","url":"globals.html#buildupreducer","classes":"tsd-kind-function tsd-has-type-parameter"},{"id":35,"kind":128,"name":"Updux","url":"classes/updux.html","classes":"tsd-kind-class tsd-has-type-parameter"},{"id":36,"kind":1024,"name":"subduxes","url":"classes/updux.html#subduxes","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Updux"},{"id":37,"kind":1024,"name":"initial","url":"classes/updux.html#initial","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Updux"},{"id":38,"kind":1024,"name":"groomMutations","url":"classes/updux.html#groommutations","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Updux"},{"id":39,"kind":65536,"name":"__type","url":"classes/updux.html#groommutations.__type","classes":"tsd-kind-type-literal tsd-parent-kind-property","parent":"Updux.groomMutations"},{"id":40,"kind":512,"name":"constructor","url":"classes/updux.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"Updux"},{"id":41,"kind":262144,"name":"middleware","url":"classes/updux.html#middleware","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":42,"kind":262144,"name":"actions","url":"classes/updux.html#actions","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":43,"kind":262144,"name":"upreducer","url":"classes/updux.html#upreducer","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":44,"kind":262144,"name":"reducer","url":"classes/updux.html#reducer","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":45,"kind":262144,"name":"mutations","url":"classes/updux.html#mutations","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":46,"kind":262144,"name":"subduxUpreducer","url":"classes/updux.html#subduxupreducer","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":47,"kind":262144,"name":"createStore","url":"classes/updux.html#createstore","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":48,"kind":262144,"name":"asDux","url":"classes/updux.html#asdux","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":49,"kind":2048,"name":"addMutation","url":"classes/updux.html#addmutation","classes":"tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter","parent":"Updux"},{"id":50,"kind":4194304,"name":"StoreWithDispatchActions","url":"globals.html#storewithdispatchactions","classes":"tsd-kind-type-alias tsd-has-type-parameter tsd-is-not-exported"},{"id":51,"kind":4194304,"name":"Dux","url":"globals.html#dux","classes":"tsd-kind-type-alias tsd-has-type-parameter"}]}; \ No newline at end of file + typedoc.search.data = {"kinds":{"32":"Variable","64":"Function","128":"Class","256":"Interface","512":"Constructor","1024":"Property","2048":"Method","65536":"Type literal","262144":"Accessor","4194304":"Type alias"},"rows":[{"id":0,"kind":256,"name":"UpduxMiddlewareAPI","url":"interfaces/upduxmiddlewareapi.html","classes":"tsd-kind-interface tsd-has-type-parameter"},{"id":1,"kind":1024,"name":"dispatch","url":"interfaces/upduxmiddlewareapi.html#dispatch","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"UpduxMiddlewareAPI"},{"id":2,"kind":2048,"name":"getState","url":"interfaces/upduxmiddlewareapi.html#getstate","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"UpduxMiddlewareAPI"},{"id":3,"kind":2048,"name":"getRootState","url":"interfaces/upduxmiddlewareapi.html#getrootstate","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"UpduxMiddlewareAPI"},{"id":4,"kind":4194304,"name":"MaybePayload","url":"globals.html#maybepayload","classes":"tsd-kind-type-alias tsd-has-type-parameter tsd-is-not-exported"},{"id":5,"kind":4194304,"name":"Action","url":"globals.html#action","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":6,"kind":4194304,"name":"Dictionary","url":"globals.html#dictionary","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":7,"kind":65536,"name":"__type","url":"globals.html#dictionary.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"Dictionary"},{"id":8,"kind":4194304,"name":"Mutation","url":"globals.html#mutation","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":9,"kind":65536,"name":"__type","url":"globals.html#mutation.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"Mutation"},{"id":10,"kind":4194304,"name":"ActionPayloadGenerator","url":"globals.html#actionpayloadgenerator","classes":"tsd-kind-type-alias"},{"id":11,"kind":65536,"name":"__type","url":"globals.html#actionpayloadgenerator.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"ActionPayloadGenerator"},{"id":12,"kind":4194304,"name":"ActionCreator","url":"globals.html#actioncreator","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":13,"kind":4194304,"name":"UpduxDispatch","url":"globals.html#upduxdispatch","classes":"tsd-kind-type-alias"},{"id":14,"kind":4194304,"name":"UpduxConfig","url":"globals.html#upduxconfig","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":15,"kind":65536,"name":"__type","url":"globals.html#upduxconfig.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"UpduxConfig"},{"id":16,"kind":32,"name":"initial","url":"globals.html#upduxconfig.__type.initial","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":17,"kind":32,"name":"subduxes","url":"globals.html#upduxconfig.__type.subduxes","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":18,"kind":32,"name":"actions","url":"globals.html#upduxconfig.__type.actions","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":19,"kind":32,"name":"mutations","url":"globals.html#upduxconfig.__type.mutations","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":20,"kind":32,"name":"groomMutations","url":"globals.html#upduxconfig.__type.groommutations","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":21,"kind":32,"name":"effects","url":"globals.html#upduxconfig.__type.effects","classes":"tsd-kind-variable tsd-parent-kind-type-literal tsd-is-not-exported","parent":"UpduxConfig.__type"},{"id":22,"kind":4194304,"name":"Upreducer","url":"globals.html#upreducer","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":23,"kind":65536,"name":"__type","url":"globals.html#upreducer.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"Upreducer"},{"id":24,"kind":4194304,"name":"UpduxMiddleware","url":"globals.html#upduxmiddleware","classes":"tsd-kind-type-alias tsd-has-type-parameter"},{"id":25,"kind":65536,"name":"__type","url":"globals.html#upduxmiddleware.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"UpduxMiddleware"},{"id":26,"kind":64,"name":"actionCreator","url":"globals.html#actioncreator","classes":"tsd-kind-function tsd-has-type-parameter"},{"id":27,"kind":64,"name":"actionFor","url":"globals.html#actionfor","classes":"tsd-kind-function tsd-is-not-exported"},{"id":28,"kind":4194304,"name":"ActionPair","url":"globals.html#actionpair","classes":"tsd-kind-type-alias tsd-is-not-exported"},{"id":29,"kind":64,"name":"buildActions","url":"globals.html#buildactions","classes":"tsd-kind-function"},{"id":30,"kind":64,"name":"buildInitial","url":"globals.html#buildinitial","classes":"tsd-kind-function tsd-has-type-parameter"},{"id":31,"kind":64,"name":"composeMutations","url":"globals.html#composemutations","classes":"tsd-kind-function tsd-is-not-exported"},{"id":32,"kind":4194304,"name":"SubMutations","url":"globals.html#submutations","classes":"tsd-kind-type-alias tsd-is-not-exported"},{"id":33,"kind":65536,"name":"__type","url":"globals.html#submutations.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"SubMutations"},{"id":34,"kind":64,"name":"buildMutations","url":"globals.html#buildmutations","classes":"tsd-kind-function"},{"id":35,"kind":64,"name":"buildCreateStore","url":"globals.html#buildcreatestore","classes":"tsd-kind-function tsd-has-type-parameter"},{"id":36,"kind":64,"name":"MiddlewareFor","url":"globals.html#middlewarefor","classes":"tsd-kind-function tsd-is-not-exported"},{"id":37,"kind":4194304,"name":"Next","url":"globals.html#next","classes":"tsd-kind-type-alias tsd-is-not-exported"},{"id":38,"kind":65536,"name":"__type","url":"globals.html#next.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias tsd-is-not-exported","parent":"Next"},{"id":39,"kind":64,"name":"sliceMw","url":"globals.html#slicemw","classes":"tsd-kind-function tsd-is-not-exported"},{"id":40,"kind":64,"name":"buildMiddleware","url":"globals.html#buildmiddleware","classes":"tsd-kind-function tsd-has-type-parameter"},{"id":41,"kind":64,"name":"buildUpreducer","url":"globals.html#buildupreducer","classes":"tsd-kind-function tsd-has-type-parameter"},{"id":42,"kind":128,"name":"Updux","url":"classes/updux.html","classes":"tsd-kind-class tsd-has-type-parameter"},{"id":43,"kind":1024,"name":"subduxes","url":"classes/updux.html#subduxes","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Updux"},{"id":44,"kind":1024,"name":"initial","url":"classes/updux.html#initial","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Updux"},{"id":45,"kind":1024,"name":"groomMutations","url":"classes/updux.html#groommutations","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Updux"},{"id":46,"kind":65536,"name":"__type","url":"classes/updux.html#groommutations.__type","classes":"tsd-kind-type-literal tsd-parent-kind-property","parent":"Updux.groomMutations"},{"id":47,"kind":512,"name":"constructor","url":"classes/updux.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"Updux"},{"id":48,"kind":262144,"name":"middleware","url":"classes/updux.html#middleware","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":49,"kind":262144,"name":"actions","url":"classes/updux.html#actions","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":50,"kind":262144,"name":"upreducer","url":"classes/updux.html#upreducer","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":51,"kind":262144,"name":"reducer","url":"classes/updux.html#reducer","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":52,"kind":262144,"name":"mutations","url":"classes/updux.html#mutations","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":53,"kind":262144,"name":"subduxUpreducer","url":"classes/updux.html#subduxupreducer","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":54,"kind":262144,"name":"createStore","url":"classes/updux.html#createstore","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":55,"kind":262144,"name":"asDux","url":"classes/updux.html#asdux","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Updux"},{"id":56,"kind":2048,"name":"addMutation","url":"classes/updux.html#addmutation","classes":"tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter","parent":"Updux"},{"id":57,"kind":4194304,"name":"StoreWithDispatchActions","url":"globals.html#storewithdispatchactions","classes":"tsd-kind-type-alias tsd-has-type-parameter tsd-is-not-exported"},{"id":58,"kind":4194304,"name":"Dux","url":"globals.html#dux","classes":"tsd-kind-type-alias tsd-has-type-parameter"}]}; \ No newline at end of file diff --git a/docs/classes/updux.html b/docs/classes/updux.html index 0336f25..5adb32e 100644 --- a/docs/classes/updux.html +++ b/docs/classes/updux.html @@ -149,7 +149,7 @@

  • Parameters

    @@ -171,7 +171,7 @@
    groomMutations: function
    @@ -230,7 +230,7 @@
    initial: S
    @@ -248,7 +248,7 @@
    subduxes: Dictionary<Updux>
    @@ -265,7 +265,7 @@
  • @@ -295,7 +295,7 @@ payload,meta}) (with the extra sugar that if meta or p
  • @@ -320,7 +320,7 @@ payload,meta}) (with the extra sugar that if meta or p
  • @@ -363,23 +363,26 @@ store.dispatch( actions.addTodo(...) );

    middleware

    • A middleware aggregating all the effects defined in the updux and its subduxes. Effects of the updux itself are - done before the subduxes effects.

      + done before the subduxes effects. + Note that getState will always return the state of the + local updux. The function getRootState is provided + alongside getState to get the root state.

      -

      Returns Middleware<__type, S, UpduxDispatch>

      +

      Returns UpduxMiddleware<S>

    @@ -393,7 +396,7 @@ store.dispatch( actions.addTodo(...) );
  • @@ -417,7 +420,7 @@ store.dispatch( actions.addTodo(...) );
  • @@ -461,7 +464,7 @@ store.dispatch( actions.addTodo(...) );
  • @@ -533,7 +536,7 @@ todos.addMutation(
  • Returns Upreducer<S>

    @@ -553,7 +556,7 @@ todos.addMutation(
  • @@ -653,6 +656,9 @@ todos.addMutation(
  • diff --git a/docs/globals.html b/docs/globals.html index d350fa7..bbe9716 100644 --- a/docs/globals.html +++ b/docs/globals.html @@ -73,6 +73,12 @@
  • Updux
  • +
    +

    Interfaces

    + +

    Type aliases

    @@ -105,6 +112,7 @@
  • buildMutations
  • buildUpreducer
  • composeMutations
  • +
  • sliceMw
  • @@ -118,7 +126,7 @@
    Action<T, P>: object & MaybePayload<P>

    Type parameters

    @@ -137,7 +145,7 @@
    ActionCreator<T, P>: object & function

    Type parameters

    @@ -156,7 +164,7 @@
    ActionPair: [string, ActionCreator]
    @@ -166,7 +174,7 @@
    ActionPayloadGenerator: function
    @@ -197,7 +205,7 @@
    Dictionary<T>: object

    Type parameters

    @@ -221,7 +229,7 @@
    Dux<S>: Pick<Updux<S>, "subduxes" | "actions" | "initial" | "mutations" | "reducer" | "middleware" | "createStore" | "upreducer">

    Type parameters

    @@ -237,7 +245,7 @@
    MaybePayload<P>: MaybePayload<P>

    Type parameters

    @@ -253,7 +261,7 @@
    Mutation<S, A>: function

    Type parameters

    @@ -314,7 +322,7 @@
    Next: function
    @@ -345,7 +353,7 @@
    StoreWithDispatchActions<S, Actions>: Store<S> & object

    Type parameters

    @@ -364,7 +372,7 @@
    SubMutations: object
    @@ -382,7 +390,7 @@
    UpduxConfig<S>: object
    @@ -426,7 +434,7 @@
  • -
    Optional effects?: Dictionary<Middleware<__type, S, UpduxDispatch>>
    +
    Optional effects?: Dictionary<UpduxMiddleware<S>>

    Plain object defining asynchronous actions and side-effects triggered by actions. @@ -536,17 +544,90 @@ const rootUpdux = updux({

    UpduxDispatch: Dispatch & Dictionary<Function>
    +
    + +

    UpduxMiddleware

    +
    UpduxMiddleware<S>: function
    + +

    Type parameters

    +
      +
    • +

      S

      +
    • +
    +
    +

    Type declaration

    + +
    +

    Upreducer

    Upreducer<S>: function

    Type parameters

    @@ -608,7 +689,7 @@ const rootUpdux = updux({
  • Parameters

    @@ -636,7 +717,7 @@ const rootUpdux = updux({
  • Type parameters

    @@ -680,7 +761,7 @@ const rootUpdux = updux({
  • Type parameters

    @@ -703,7 +784,7 @@ const rootUpdux = updux({
  • Type parameters

    @@ -735,7 +816,7 @@ const rootUpdux = updux({
  • Parameters

    @@ -758,7 +839,7 @@ const rootUpdux = updux({
  • Parameters

    @@ -787,7 +868,7 @@ const rootUpdux = updux({
  • Type parameters

    @@ -826,7 +907,7 @@ const rootUpdux = updux({
  • Type parameters

    @@ -849,7 +930,7 @@ const rootUpdux = updux({
  • Type parameters

    @@ -875,13 +956,13 @@ const rootUpdux = updux({

    buildMiddleware

  • @@ -916,7 +997,7 @@ const rootUpdux = updux({
  • Parameters

    @@ -944,7 +1025,7 @@ const rootUpdux = updux({
  • Type parameters

    @@ -976,7 +1057,7 @@ const rootUpdux = updux({
  • Parameters

    @@ -1028,6 +1109,32 @@ const rootUpdux = updux({
  • +
    + +

    sliceMw

    +
      +
    • sliceMw(slice: string, mw: Middleware): Middleware
    • +
    +
      +
    • + +

      Parameters

      +
        +
      • +
        slice: string
        +
      • +
      • +
        mw: Middleware
        +
      • +
      +

      Returns Middleware

      +
    • +
    +
    diff --git a/docs/index.html b/docs/index.html index 79645b4..6a9af4b 100644 --- a/docs/index.html +++ b/docs/index.html @@ -263,6 +263,9 @@ todos.addMutation(
  • Updux
  • +
  • + UpduxMiddlewareAPI +
  • Action
  • @@ -302,6 +305,9 @@ todos.addMutation(
  • UpduxDispatch
  • +
  • + UpduxMiddleware +
  • Upreducer
  • @@ -335,6 +341,9 @@ todos.addMutation(
  • composeMutations
  • +
  • + sliceMw +
  • diff --git a/docs/interfaces/upduxmiddlewareapi.html b/docs/interfaces/upduxmiddlewareapi.html new file mode 100644 index 0000000..2f77403 --- /dev/null +++ b/docs/interfaces/upduxmiddlewareapi.html @@ -0,0 +1,337 @@ + + + + + + UpduxMiddlewareAPI | updux + + + + + +
    +
    +
    +
    + +
    +
    + Options +
    +
    + All +
      +
    • Public
    • +
    • Public/Protected
    • +
    • All
    • +
    +
    + + + + + + +
    +
    + Menu +
    +
    +
    +
    +
    +
    + +

    Interface UpduxMiddlewareAPI<S>

    +
    +
    +
    +
    +
    +
    +
    +

    Type parameters

    +
      +
    • +

      S

      +
    • +
    +
    +
    +

    Hierarchy

    +
      +
    • + UpduxMiddlewareAPI +
    • +
    +
    +
    +

    Index

    +
    +
    +
    +

    Properties

    + +
    +
    +

    Methods

    + +
    +
    +
    +
    +
    +

    Properties

    +
    + +

    dispatch

    +
    dispatch: UpduxDispatch
    + +
    +
    +
    +

    Methods

    +
    + +

    getRootState

    +
      +
    • getRootState(): S
    • +
    + +
    +
    + +

    getState

    +
      +
    • getState(): any
    • +
    + +
    +
    +
    + +
    +
    +
    +
    +

    Legend

    +
    +
      +
    • Module
    • +
    • Object literal
    • +
    • Variable
    • +
    • Function
    • +
    • Function with type parameter
    • +
    • Index signature
    • +
    • Type alias
    • +
    • Type alias with type parameter
    • +
    +
      +
    • Enumeration
    • +
    • Enumeration member
    • +
    • Property
    • +
    • Method
    • +
    +
      +
    • Interface
    • +
    • Interface with type parameter
    • +
    • Constructor
    • +
    • Property
    • +
    • Method
    • +
    • Index signature
    • +
    +
      +
    • Class
    • +
    • Class with type parameter
    • +
    • Constructor
    • +
    • Property
    • +
    • Method
    • +
    • Accessor
    • +
    • Index signature
    • +
    +
      +
    • Inherited constructor
    • +
    • Inherited property
    • +
    • Inherited method
    • +
    • Inherited accessor
    • +
    +
      +
    • Protected property
    • +
    • Protected method
    • +
    • Protected accessor
    • +
    +
      +
    • Private property
    • +
    • Private method
    • +
    • Private accessor
    • +
    +
      +
    • Static property
    • +
    • Static method
    • +
    +
    +
    +
    +
    +

    Generated using TypeDoc

    +
    +
    + + + + \ No newline at end of file