fetch-event.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.waitUntilSymbol = void 0;
  6. var _error = require("../error");
  7. const responseSymbol = Symbol("response");
  8. const passThroughSymbol = Symbol("passThrough");
  9. const waitUntilSymbol = Symbol("waitUntil");
  10. exports.waitUntilSymbol = waitUntilSymbol;
  11. class FetchEvent {
  12. [waitUntilSymbol] = [];
  13. [passThroughSymbol] = false;
  14. // eslint-disable-next-line @typescript-eslint/no-useless-constructor
  15. constructor(_request){}
  16. respondWith(response) {
  17. if (!this[responseSymbol]) {
  18. this[responseSymbol] = Promise.resolve(response);
  19. }
  20. }
  21. passThroughOnException() {
  22. this[passThroughSymbol] = true;
  23. }
  24. waitUntil(promise) {
  25. this[waitUntilSymbol].push(promise);
  26. }
  27. }
  28. class NextFetchEvent extends FetchEvent {
  29. constructor(params){
  30. super(params.request);
  31. this.sourcePage = params.page;
  32. }
  33. /**
  34. * @deprecated The `request` is now the first parameter and the API is now async.
  35. *
  36. * Read more: https://nextjs.org/docs/messages/middleware-new-signature
  37. */ get request() {
  38. throw new _error.PageSignatureError({
  39. page: this.sourcePage
  40. });
  41. }
  42. /**
  43. * @deprecated Using `respondWith` is no longer needed.
  44. *
  45. * Read more: https://nextjs.org/docs/messages/middleware-new-signature
  46. */ respondWith() {
  47. throw new _error.PageSignatureError({
  48. page: this.sourcePage
  49. });
  50. }
  51. }
  52. exports.NextFetchEvent = NextFetchEvent;
  53. //# sourceMappingURL=fetch-event.js.map