@data-client/core
Version:
Async State Management without the Management. REST, GraphQL, SSE, Websockets, Fetch
15 lines • 2 kB
JavaScript
export default function initManager(managers, controller, initialState) {
return () => {
managers.forEach(manager => {
manager.init == null || manager.init(initialState);
});
controller.gcPolicy.init(controller);
return () => {
managers.forEach(manager => {
manager.cleanup();
});
controller.gcPolicy.cleanup();
};
};
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpbml0TWFuYWdlciIsIm1hbmFnZXJzIiwiY29udHJvbGxlciIsImluaXRpYWxTdGF0ZSIsImZvckVhY2giLCJtYW5hZ2VyIiwiaW5pdCIsImdjUG9saWN5IiwiY2xlYW51cCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYW5hZ2VyL2luaXRNYW5hZ2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIENvbnRyb2xsZXIgZnJvbSAnLi4vY29udHJvbGxlci9Db250cm9sbGVyLmpzJztcbmltcG9ydCB7IE1hbmFnZXIsIFN0YXRlIH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBpbml0TWFuYWdlcihcbiAgbWFuYWdlcnM6IE1hbmFnZXJbXSxcbiAgY29udHJvbGxlcjogQ29udHJvbGxlcixcbiAgaW5pdGlhbFN0YXRlOiBTdGF0ZTx1bmtub3duPixcbikge1xuICByZXR1cm4gKCkgPT4ge1xuICAgIG1hbmFnZXJzLmZvckVhY2gobWFuYWdlciA9PiB7XG4gICAgICBtYW5hZ2VyLmluaXQ/Lihpbml0aWFsU3RhdGUpO1xuICAgIH0pO1xuICAgIGNvbnRyb2xsZXIuZ2NQb2xpY3kuaW5pdChjb250cm9sbGVyKTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgbWFuYWdlcnMuZm9yRWFjaChtYW5hZ2VyID0+IHtcbiAgICAgICAgbWFuYWdlci5jbGVhbnVwKCk7XG4gICAgICB9KTtcbiAgICAgIGNvbnRyb2xsZXIuZ2NQb2xpY3kuY2xlYW51cCgpO1xuICAgIH07XG4gIH07XG59XG4iXSwibWFwcGluZ3MiOiJBQUdBLGVBQWUsU0FBU0EsV0FBV0EsQ0FDakNDLFFBQW1CLEVBQ25CQyxVQUFzQixFQUN0QkMsWUFBNEIsRUFDNUI7RUFDQSxPQUFPLE1BQU07SUFDWEYsUUFBUSxDQUFDRyxPQUFPLENBQUNDLE9BQU8sSUFBSTtNQUMxQkEsT0FBTyxDQUFDQyxJQUFJLFlBQVpELE9BQU8sQ0FBQ0MsSUFBSSxDQUFHSCxZQUFZLENBQUM7SUFDOUIsQ0FBQyxDQUFDO0lBQ0ZELFVBQVUsQ0FBQ0ssUUFBUSxDQUFDRCxJQUFJLENBQUNKLFVBQVUsQ0FBQztJQUNwQyxPQUFPLE1BQU07TUFDWEQsUUFBUSxDQUFDRyxPQUFPLENBQUNDLE9BQU8sSUFBSTtRQUMxQkEsT0FBTyxDQUFDRyxPQUFPLENBQUMsQ0FBQztNQUNuQixDQUFDLENBQUM7TUFDRk4sVUFBVSxDQUFDSyxRQUFRLENBQUNDLE9BQU8sQ0FBQyxDQUFDO0lBQy9CLENBQUM7RUFDSCxDQUFDO0FBQ0giLCJpZ25vcmVMaXN0IjpbXX0=