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.
32 lines
1.5 KiB
32 lines
1.5 KiB
import { __extends } from "tslib"; |
|
import { ApolloLink } from "../core/index.js"; |
|
import { OperationBatcher } from "./batching.js"; |
|
export { OperationBatcher } from "./batching.js"; |
|
var BatchLink = /** @class */ (function (_super) { |
|
__extends(BatchLink, _super); |
|
function BatchLink(fetchParams) { |
|
var _this = _super.call(this) || this; |
|
var _a = fetchParams || {}, batchDebounce = _a.batchDebounce, _b = _a.batchInterval, batchInterval = _b === void 0 ? 10 : _b, _c = _a.batchMax, batchMax = _c === void 0 ? 0 : _c, _d = _a.batchHandler, batchHandler = _d === void 0 ? function () { return null; } : _d, _e = _a.batchKey, batchKey = _e === void 0 ? function () { return ""; } : _e; |
|
_this.batcher = new OperationBatcher({ |
|
batchDebounce: batchDebounce, |
|
batchInterval: batchInterval, |
|
batchMax: batchMax, |
|
batchHandler: batchHandler, |
|
batchKey: batchKey, |
|
}); |
|
//make this link terminating |
|
if (fetchParams.batchHandler.length <= 1) { |
|
_this.request = function (operation) { return _this.batcher.enqueueRequest({ operation: operation }); }; |
|
} |
|
return _this; |
|
} |
|
BatchLink.prototype.request = function (operation, forward) { |
|
return this.batcher.enqueueRequest({ |
|
operation: operation, |
|
forward: forward, |
|
}); |
|
}; |
|
return BatchLink; |
|
}(ApolloLink)); |
|
export { BatchLink }; |
|
//# sourceMappingURL=batchLink.js.map
|