Odoo GraphQL Subscription using Node, Express JS for Sample
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

38 lines
1.2 KiB

'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var tslib = require('tslib');
var core = require('../core');
var utilities = require('../../utilities');
function setContext(setter) {
return new core.ApolloLink(function (operation, forward) {
var request = tslib.__rest(operation, []);
return new utilities.Observable(function (observer) {
var handle;
var closed = false;
Promise.resolve(request)
.then(function (req) { return setter(req, operation.getContext()); })
.then(operation.setContext)
.then(function () {
if (closed)
return;
handle = forward(operation).subscribe({
next: observer.next.bind(observer),
error: observer.error.bind(observer),
complete: observer.complete.bind(observer),
});
})
.catch(observer.error.bind(observer));
return function () {
closed = true;
if (handle)
handle.unsubscribe();
};
});
});
}
exports.setContext = setContext;
//# sourceMappingURL=context.cjs.map