Remove stampit in favour of a factory function

This commit is contained in:
Stuart Taylor
2016-11-12 17:09:07 +00:00
parent 27d4671493
commit 16863d9641
3 changed files with 30 additions and 35 deletions

View File

@ -46,7 +46,7 @@ export default function createApp({
}) { }) {
const sagaOptions = { const sagaOptions = {
...sideSagaOptions, ...sideSagaOptions,
services: servicesCreator(null, serviceOptions) services: servicesCreator(serviceOptions)
}; };
const sagaMiddleware = createEpic( const sagaMiddleware = createEpic(

View File

@ -1,6 +1,5 @@
import { Observable, Disposable } from 'rx'; import { Observable, Disposable } from 'rx';
import Fetchr from 'fetchr'; import Fetchr from 'fetchr';
import stampit from 'stampit';
function callbackObserver(observer) { function callbackObserver(observer) {
return (err, res) => { return (err, res) => {
@ -13,36 +12,33 @@ function callbackObserver(observer) {
}; };
} }
export default function servicesCreator(options) {
export default stampit({ const services = new Fetchr(options);
init({ args: [ options ] }) { function readService$({ service: resource, params, config }) {
this.services = new Fetchr(options); return Observable.create(observer => {
}, services.read(
methods: { resource,
readService$({ service: resource, params, config }) { params,
return Observable.create(observer => { config,
this.services.read( callbackObserver(observer)
resource, );
params, return Disposable.create(() => observer.dispose());
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());
});
}
} }
}); 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$
};
}

View File

@ -117,7 +117,6 @@
"rx": "^4.0.0", "rx": "^4.0.0",
"sanitize-html": "^1.11.1", "sanitize-html": "^1.11.1",
"snyk": "^1.19.1", "snyk": "^1.19.1",
"stampit": "^2.1.1",
"store": "https://github.com/berkeleytrue/store.js.git#feature/noop-server", "store": "https://github.com/berkeleytrue/store.js.git#feature/noop-server",
"validator": "^6.0.0" "validator": "^6.0.0"
}, },