From 16863d9641ec6e2915467d320ed5a5800d9376bc Mon Sep 17 00:00:00 2001 From: Stuart Taylor Date: Sat, 12 Nov 2016 17:09:07 +0000 Subject: [PATCH] Remove stampit in favour of a factory function --- common/app/create-app.jsx | 2 +- common/utils/services-creator.js | 62 +++++++++++++++----------------- package.json | 1 - 3 files changed, 30 insertions(+), 35 deletions(-) diff --git a/common/app/create-app.jsx b/common/app/create-app.jsx index 90fc76afe1..edb63d29fc 100644 --- a/common/app/create-app.jsx +++ b/common/app/create-app.jsx @@ -46,7 +46,7 @@ export default function createApp({ }) { const sagaOptions = { ...sideSagaOptions, - services: servicesCreator(null, serviceOptions) + services: servicesCreator(serviceOptions) }; const sagaMiddleware = createEpic( diff --git a/common/utils/services-creator.js b/common/utils/services-creator.js index fa12eac123..454cf2e3d8 100644 --- a/common/utils/services-creator.js +++ b/common/utils/services-creator.js @@ -1,6 +1,5 @@ import { Observable, Disposable } from 'rx'; import Fetchr from 'fetchr'; -import stampit from 'stampit'; function callbackObserver(observer) { return (err, res) => { @@ -13,36 +12,33 @@ function callbackObserver(observer) { }; } - -export default stampit({ - init({ args: [ options ] }) { - this.services = new Fetchr(options); - }, - methods: { - readService$({ service: resource, params, config }) { - return Observable.create(observer => { - this.services.read( - resource, - params, - config, - callbackObserver(observer) - ); - - return Disposable.create(() => observer.dispose()); - }); - }, - createService$({ service: resource, params, body, config }) { - return Observable.create(observer => { - this.services.create( - resource, - params, - body, - config, - callbackObserver(observer) - ); - - return Disposable.create(() => observer.dispose()); - }); - } +export default function servicesCreator(options) { + const services = new Fetchr(options); + function readService$({ service: resource, params, config }) { + return Observable.create(observer => { + services.read( + resource, + params, + config, + callbackObserver(observer) + ); + return Disposable.create(() => observer.dispose()); + }); } -}); + function createService$({ service: resource, params, body, config }) { + return Observable.create(observer => { + services.create( + resource, + params, + body, + config, + callbackObserver(observer) + ); + return Disposable.create(() => observer.dispose()); + }); + } + return { + readService$, + createService$ + }; +} diff --git a/package.json b/package.json index 7b25ef34fe..d847fea616 100644 --- a/package.json +++ b/package.json @@ -117,7 +117,6 @@ "rx": "^4.0.0", "sanitize-html": "^1.11.1", "snyk": "^1.19.1", - "stampit": "^2.1.1", "store": "https://github.com/berkeleytrue/store.js.git#feature/noop-server", "validator": "^6.0.0" },