From 23312d2f15ac1a67254c82eb699c707127d4aa2a Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Mon, 28 Oct 2019 18:09:14 -0400 Subject: [PATCH 1/5] add type for function updux --- src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/index.ts b/src/index.ts index d7458cb..07b799b 100644 --- a/src/index.ts +++ b/src/index.ts @@ -5,6 +5,6 @@ import Updux from './updux'; import { UpduxConfig } from './types'; -export default function updux(config: UpduxConfig) { - return new Updux(config); +export default function updux(config: UpduxConfig) { + return new Updux(config); } From 87d8a4de3869740b218bea0dbe44c24b5aab11cb Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Mon, 28 Oct 2019 18:09:51 -0400 Subject: [PATCH 2/5] point types to right place --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c5da6b5..44c8ecf 100644 --- a/package.json +++ b/package.json @@ -38,5 +38,5 @@ "url": "https://github.com/yanick/updux/issues" }, "homepage": "https://github.com/yanick/updux#readme", - "types": "./index.d.ts" + "types": "./dist/index.d.ts" } From fb61c9bc1e87c0765cd4a9092f0cdbcbb64d7dc9 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Tue, 29 Oct 2019 11:34:20 -0400 Subject: [PATCH 3/5] update changelog --- Changes | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Changes b/Changes index ff88353..a9a38bb 100644 --- a/Changes +++ b/Changes @@ -1,5 +1,9 @@ # Revision history for Updux +NEXT + - point types to right file. + - add state to updux type. + 0.2.0 2019-10-24 - Converted everything to Typescript. From a6b83bbfa0fbca52f3f112c08e79ce03893f40c0 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Tue, 29 Oct 2019 11:34:42 -0400 Subject: [PATCH 4/5] fix test to match signature --- src/test.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test.ts b/src/test.ts index 4468d57..e34a2ee 100644 --- a/src/test.ts +++ b/src/test.ts @@ -28,7 +28,7 @@ test('reducer', () => { }, }); - let state = reducer(null, {type:'noop'}); + let state = reducer(undefined, {type:'noop'}); expect(state).toEqual({counter: 1}); @@ -116,7 +116,7 @@ test('precedence between root and sub-reducers', () => { foo: { bar: 4, quux: 3 } }); - expect( reducer(null,actions.inc() ) ).toEqual({ + expect( reducer(undefined,actions.inc() ) ).toEqual({ foo: { bar: 5, quux: 3 }, surprise: 5 }); From 1642bab09afad3b904d3d50a33aea928db739ca8 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Tue, 29 Oct 2019 11:34:53 -0400 Subject: [PATCH 5/5] build --- dist/buildMutations/test.d.ts | 2 ++ dist/buildMutations/test.d.ts.map | 1 + dist/buildMutations/test.js | 13 +++++++++++++ dist/buildMutations/test.js.map | 1 + dist/index.d.ts | 2 +- dist/index.d.ts.map | 2 +- dist/index.js.map | 2 +- dist/test.js | 4 ++-- dist/test.js.map | 2 +- 9 files changed, 23 insertions(+), 6 deletions(-) create mode 100644 dist/buildMutations/test.d.ts create mode 100644 dist/buildMutations/test.d.ts.map create mode 100644 dist/buildMutations/test.js create mode 100644 dist/buildMutations/test.js.map diff --git a/dist/buildMutations/test.d.ts b/dist/buildMutations/test.d.ts new file mode 100644 index 0000000..9bcc471 --- /dev/null +++ b/dist/buildMutations/test.d.ts @@ -0,0 +1,2 @@ +export {}; +//# sourceMappingURL=test.d.ts.map \ No newline at end of file diff --git a/dist/buildMutations/test.d.ts.map b/dist/buildMutations/test.d.ts.map new file mode 100644 index 0000000..dffe080 --- /dev/null +++ b/dist/buildMutations/test.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../../src/buildMutations/test.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/dist/buildMutations/test.js b/dist/buildMutations/test.js new file mode 100644 index 0000000..d4b2ef1 --- /dev/null +++ b/dist/buildMutations/test.js @@ -0,0 +1,13 @@ +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const _1 = __importDefault(require(".")); +const actions = { + multiply: (factor) => ({ factor }), +}; +const mutations = _1.default({ + multiply: ({ factor }) => ({ counter }) => factor * counter, +}); +//# sourceMappingURL=test.js.map \ No newline at end of file diff --git a/dist/buildMutations/test.js.map b/dist/buildMutations/test.js.map new file mode 100644 index 0000000..771a352 --- /dev/null +++ b/dist/buildMutations/test.js.map @@ -0,0 +1 @@ +{"version":3,"file":"test.js","sourceRoot":"","sources":["../../src/buildMutations/test.ts"],"names":[],"mappings":";;;;;AAAA,yCAA+B;AAE/B,MAAM,OAAO,GAAG;IACZ,QAAQ,EAAE,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,EAAC,MAAM,EAAC,CAAC;CAC3C,CAAC;AAEF,MAAM,SAAS,GAAG,UAAc,CAC5B;IACI,QAAQ,EAAE,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE,CAAC,CAAC,EAAC,OAAO,EAAC,EAAE,EAAE,CAAC,MAAM,GAAG,OAAO;CAC1D,CACJ,CAAC"} \ No newline at end of file diff --git a/dist/index.d.ts b/dist/index.d.ts index bc88b6e..4f094ab 100644 --- a/dist/index.d.ts +++ b/dist/index.d.ts @@ -1,4 +1,4 @@ import Updux from './updux'; import { UpduxConfig } from './types'; -export default function updux(config: UpduxConfig): Updux; +export default function updux(config: UpduxConfig): Updux; //# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/dist/index.d.ts.map b/dist/index.d.ts.map index 921c006..f2d2137 100644 --- a/dist/index.d.ts.map +++ b/dist/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,MAAM,EAAE,WAAW,cAEhD"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,CAAC,GAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,YAE1D"} \ No newline at end of file diff --git a/dist/index.js.map b/dist/index.js.map index bb586ca..1e3561f 100644 --- a/dist/index.js.map +++ b/dist/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAGA,oDAA4B;AAI5B,SAAwB,KAAK,CAAC,MAAmB;IAC/C,OAAO,IAAI,eAAK,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC;AAFD,wBAEC"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAGA,oDAA4B;AAI5B,SAAwB,KAAK,CAAQ,MAAsB;IACzD,OAAO,IAAI,eAAK,CAAI,MAAM,CAAC,CAAC;AAC9B,CAAC;AAFD,wBAEC"} \ No newline at end of file diff --git a/dist/test.js b/dist/test.js index c5ac448..4ee83cd 100644 --- a/dist/test.js +++ b/dist/test.js @@ -25,7 +25,7 @@ test('reducer', () => { inc: () => ({ counter }) => ({ counter: counter + 1 }), }, }); - let state = reducer(null, { type: 'noop' }); + let state = reducer(undefined, { type: 'noop' }); expect(state).toEqual({ counter: 1 }); state = reducer(state, actions.inc()); expect(state).toEqual({ counter: 2 }); @@ -89,7 +89,7 @@ test('precedence between root and sub-reducers', () => { expect(initial).toEqual({ foo: { bar: 4, quux: 3 } }); - expect(reducer(null, actions.inc())).toEqual({ + expect(reducer(undefined, actions.inc())).toEqual({ foo: { bar: 5, quux: 3 }, surprise: 5 }); }); diff --git a/dist/test.js.map b/dist/test.js.map index f6fb1f9..2fed5a9 100644 --- a/dist/test.js.map +++ b/dist/test.js.map @@ -1 +1 @@ -{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"} \ No newline at end of file