vite-plugin-react-server 1.4.1 → 1.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/README.md +3 -3
  2. package/dist/package.json +1 -1
  3. package/dist/plugin/dev-server/configureReactServer.server.d.ts.map +1 -1
  4. package/dist/plugin/dev-server/configureReactServer.server.js +5 -8
  5. package/dist/plugin/dev-server/plugin.client.d.ts.map +1 -1
  6. package/dist/plugin/dev-server/plugin.client.js +2 -1
  7. package/dist/plugin/dev-server/plugin.server.d.ts.map +1 -1
  8. package/dist/plugin/dev-server/plugin.server.js +2 -36
  9. package/dist/plugin/error/index.d.ts +1 -2
  10. package/dist/plugin/error/index.d.ts.map +1 -1
  11. package/dist/plugin/error/index.js +2 -3
  12. package/dist/plugin/error/panicThresholdHandler.js +14 -3
  13. package/dist/plugin/error/setupGlobalErrorHandler.d.ts.map +1 -1
  14. package/dist/plugin/error/setupGlobalErrorHandler.js +23 -16
  15. package/dist/plugin/helpers/createRscRenderHelpers.d.ts +0 -5
  16. package/dist/plugin/helpers/createRscRenderHelpers.d.ts.map +1 -1
  17. package/dist/plugin/helpers/createRscRenderHelpers.js +0 -22
  18. package/dist/plugin/helpers/headlessStreamState.d.ts +0 -38
  19. package/dist/plugin/helpers/headlessStreamState.d.ts.map +1 -1
  20. package/dist/plugin/helpers/headlessStreamState.js +0 -48
  21. package/dist/plugin/helpers/index.d.ts +0 -3
  22. package/dist/plugin/helpers/index.d.ts.map +1 -1
  23. package/dist/plugin/helpers/index.js +1 -4
  24. package/dist/plugin/helpers/requestInfo.d.ts.map +1 -1
  25. package/dist/plugin/helpers/requestInfo.js +3 -3
  26. package/dist/plugin/helpers/workerCleanup.d.ts +1 -12
  27. package/dist/plugin/helpers/workerCleanup.d.ts.map +1 -1
  28. package/dist/plugin/helpers/workerCleanup.js +1 -1
  29. package/dist/plugin/loader/directives/index.d.ts +0 -1
  30. package/dist/plugin/loader/directives/index.d.ts.map +1 -1
  31. package/dist/plugin/loader/directives/index.js +1 -2
  32. package/dist/tsconfig.tsbuildinfo +1 -1
  33. package/package.json +1 -1
  34. package/plugin/dev-server/configureReactServer.server.ts +7 -10
  35. package/plugin/dev-server/plugin.client.ts +2 -0
  36. package/plugin/dev-server/plugin.server.ts +2 -49
  37. package/plugin/error/index.ts +1 -2
  38. package/plugin/error/setupGlobalErrorHandler.ts +24 -25
  39. package/plugin/helpers/createRscRenderHelpers.ts +0 -29
  40. package/plugin/helpers/headlessStreamState.ts +0 -69
  41. package/plugin/helpers/index.ts +0 -3
  42. package/plugin/helpers/requestInfo.ts +1 -2
  43. package/plugin/helpers/workerCleanup.ts +1 -38
  44. package/plugin/loader/directives/index.ts +0 -1
  45. package/plugin/transformer/README.md +1 -1
  46. package/plugin/worker/html/README.md +1 -1
  47. package/plugin/worker/rsc/README.md +1 -1
  48. package/dist/plugin/error/assertPanic.d.ts +0 -2
  49. package/dist/plugin/error/assertPanic.d.ts.map +0 -1
  50. package/dist/plugin/error/assertPanic.js +0 -15
  51. package/dist/plugin/error/directiveError.d.ts +0 -13
  52. package/dist/plugin/error/directiveError.d.ts.map +0 -1
  53. package/dist/plugin/error/directiveError.js +0 -21
  54. package/dist/plugin/error/enhanceError.d.ts +0 -14
  55. package/dist/plugin/error/enhanceError.d.ts.map +0 -1
  56. package/dist/plugin/error/enhanceError.js +0 -24
  57. package/dist/plugin/helpers/createSafePageComponent.d.ts +0 -36
  58. package/dist/plugin/helpers/createSafePageComponent.d.ts.map +0 -1
  59. package/dist/plugin/helpers/createSafePageComponent.js +0 -50
  60. package/dist/plugin/helpers/moduleResolver.d.ts +0 -25
  61. package/dist/plugin/helpers/moduleResolver.d.ts.map +0 -1
  62. package/dist/plugin/helpers/moduleResolver.js +0 -64
  63. package/dist/plugin/helpers/stashReturnValue.d.ts +0 -3
  64. package/dist/plugin/helpers/stashReturnValue.d.ts.map +0 -1
  65. package/dist/plugin/helpers/stashReturnValue.js +0 -23
  66. package/dist/plugin/helpers/workerManager.d.ts +0 -5
  67. package/dist/plugin/helpers/workerManager.d.ts.map +0 -1
  68. package/dist/plugin/helpers/workerManager.js +0 -18
  69. package/dist/plugin/loader/directives/collectExportsFromModule.d.ts +0 -6
  70. package/dist/plugin/loader/directives/collectExportsFromModule.d.ts.map +0 -1
  71. package/dist/plugin/loader/directives/collectExportsFromModule.js +0 -24
  72. package/plugin/error/assertPanic.ts +0 -9
  73. package/plugin/error/directiveError.ts +0 -29
  74. package/plugin/error/enhanceError.ts +0 -41
  75. package/plugin/helpers/createSafePageComponent.ts +0 -64
  76. package/plugin/helpers/moduleResolver.ts +0 -91
  77. package/plugin/helpers/stashReturnValue.ts +0 -19
  78. package/plugin/helpers/workerManager.ts +0 -16
  79. package/plugin/loader/directives/collectExportsFromModule.ts +0 -25
@@ -4,6 +4,8 @@
4
4
  * MIT License
5
5
  */
6
6
  let isGlobalHandlerSetup = false;
7
+ let uncaughtExceptionHandler = null;
8
+ let unhandledRejectionHandler = null;
7
9
  const setupGlobalErrorHandler = function _setupGlobalErrorHandler(options) {
8
10
  const { panicThreshold, logger, verbose = false } = options;
9
11
  if (isGlobalHandlerSetup) {
@@ -14,7 +16,7 @@ const setupGlobalErrorHandler = function _setupGlobalErrorHandler(options) {
14
16
  `Setting up global error handler for panic threshold: ${panicThreshold}`
15
17
  );
16
18
  }
17
- process.on("uncaughtException", (error) => {
19
+ uncaughtExceptionHandler = (error) => {
18
20
  if (verbose) {
19
21
  logger.info(
20
22
  `Global error handler caught uncaught exception: ${error.message}`
@@ -23,30 +25,35 @@ const setupGlobalErrorHandler = function _setupGlobalErrorHandler(options) {
23
25
  logger.warn(
24
26
  `Uncaught exception handled by panic threshold (${panicThreshold}): ${error.message}`
25
27
  );
26
- });
27
- process.on(
28
- "unhandledRejection",
29
- (reason, _promise) => {
30
- if (verbose) {
31
- logger.info(
32
- `Global error handler caught unhandled rejection: ${reason}`
33
- );
34
- }
35
- logger.warn(
36
- `Unhandled rejection handled by panic threshold (${panicThreshold}): ${reason}`
28
+ };
29
+ unhandledRejectionHandler = (reason, _promise) => {
30
+ if (verbose) {
31
+ logger.info(
32
+ `Global error handler caught unhandled rejection: ${reason}`
37
33
  );
38
34
  }
39
- );
35
+ logger.warn(
36
+ `Unhandled rejection handled by panic threshold (${panicThreshold}): ${reason}`
37
+ );
38
+ };
39
+ process.on("uncaughtException", uncaughtExceptionHandler);
40
+ process.on("unhandledRejection", unhandledRejectionHandler);
40
41
  isGlobalHandlerSetup = true;
41
42
  };
42
43
  const cleanupGlobalErrorHandler = function _cleanupGlobalErrorHandler() {
43
44
  if (!isGlobalHandlerSetup) {
44
45
  return;
45
46
  }
46
- process.removeAllListeners("uncaughtException");
47
- process.removeAllListeners("unhandledRejection");
47
+ if (uncaughtExceptionHandler) {
48
+ process.removeListener("uncaughtException", uncaughtExceptionHandler);
49
+ uncaughtExceptionHandler = null;
50
+ }
51
+ if (unhandledRejectionHandler) {
52
+ process.removeListener("unhandledRejection", unhandledRejectionHandler);
53
+ unhandledRejectionHandler = null;
54
+ }
48
55
  isGlobalHandlerSetup = false;
49
56
  };
50
57
 
51
58
  export { cleanupGlobalErrorHandler, setupGlobalErrorHandler };
52
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXBHbG9iYWxFcnJvckhhbmRsZXIuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BsdWdpbi9lcnJvci9zZXR1cEdsb2JhbEVycm9ySGFuZGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIENsZWFudXBHbG9iYWxFcnJvckhhbmRsZXJGbixcbiAgU2V0dXBHbG9iYWxFcnJvckhhbmRsZXJGbixcbn0gZnJvbSBcIi4vdHlwZXMuanNcIjtcblxubGV0IGlzR2xvYmFsSGFuZGxlclNldHVwID0gZmFsc2U7XG5cbmV4cG9ydCBjb25zdCBzZXR1cEdsb2JhbEVycm9ySGFuZGxlcjogU2V0dXBHbG9iYWxFcnJvckhhbmRsZXJGbiA9XG4gIGZ1bmN0aW9uIF9zZXR1cEdsb2JhbEVycm9ySGFuZGxlcihvcHRpb25zKSB7XG4gICAgY29uc3QgeyBwYW5pY1RocmVzaG9sZCwgbG9nZ2VyLCB2ZXJib3NlID0gZmFsc2UgfSA9IG9wdGlvbnM7XG5cbiAgICAvLyBTZXQgdXAgZ2xvYmFsIGVycm9yIGhhbmRsaW5nIGZvciBhbGwgcGFuaWMgdGhyZXNob2xkIGxldmVsc1xuICAgIGlmIChpc0dsb2JhbEhhbmRsZXJTZXR1cCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2ZXJib3NlKSB7XG4gICAgICBsb2dnZXIuaW5mbyhcbiAgICAgICAgYFNldHRpbmcgdXAgZ2xvYmFsIGVycm9yIGhhbmRsZXIgZm9yIHBhbmljIHRocmVzaG9sZDogJHtwYW5pY1RocmVzaG9sZH1gXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIFNldCB1cCBvdXIgZXJyb3IgaGFuZGxlcnNcbiAgICBwcm9jZXNzLm9uKFwidW5jYXVnaHRFeGNlcHRpb25cIiwgKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgaWYgKHZlcmJvc2UpIHtcbiAgICAgICAgbG9nZ2VyLmluZm8oXG4gICAgICAgICAgYEdsb2JhbCBlcnJvciBoYW5kbGVyIGNhdWdodCB1bmNhdWdodCBleGNlcHRpb246ICR7ZXJyb3IubWVzc2FnZX1gXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSB0aGUgZXJyb3IgZ3JhY2VmdWxseSBiYXNlZCBvbiBwYW5pYyB0aHJlc2hvbGRcbiAgICAgIGxvZ2dlci53YXJuKFxuICAgICAgICBgVW5jYXVnaHQgZXhjZXB0aW9uIGhhbmRsZWQgYnkgcGFuaWMgdGhyZXNob2xkICgke3BhbmljVGhyZXNob2xkfSk6ICR7ZXJyb3IubWVzc2FnZX1gXG4gICAgICApO1xuXG4gICAgICAvLyBEb24ndCBjYWxsIHByb2Nlc3MuZXhpdCAtIGxldCB0aGUgZXJyb3IgYmUgaGFuZGxlZCBncmFjZWZ1bGx5XG4gICAgfSk7XG5cbiAgICBwcm9jZXNzLm9uKFxuICAgICAgXCJ1bmhhbmRsZWRSZWplY3Rpb25cIixcbiAgICAgIChyZWFzb246IHVua25vd24sIF9wcm9taXNlOiBQcm9taXNlPHVua25vd24+KSA9PiB7XG4gICAgICAgIGlmICh2ZXJib3NlKSB7XG4gICAgICAgICAgbG9nZ2VyLmluZm8oXG4gICAgICAgICAgICBgR2xvYmFsIGVycm9yIGhhbmRsZXIgY2F1Z2h0IHVuaGFuZGxlZCByZWplY3Rpb246ICR7cmVhc29ufWBcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSGFuZGxlIHRoZSByZWplY3Rpb24gZ3JhY2VmdWxseSBiYXNlZCBvbiBwYW5pYyB0aHJlc2hvbGRcbiAgICAgICAgbG9nZ2VyLndhcm4oXG4gICAgICAgICAgYFVuaGFuZGxlZCByZWplY3Rpb24gaGFuZGxlZCBieSBwYW5pYyB0aHJlc2hvbGQgKCR7cGFuaWNUaHJlc2hvbGR9KTogJHtyZWFzb259YFxuICAgICAgICApO1xuXG4gICAgICAgIC8vIERvbid0IGNhbGwgcHJvY2Vzcy5leGl0IC0gbGV0IHRoZSByZWplY3Rpb24gYmUgaGFuZGxlZCBncmFjZWZ1bGx5XG4gICAgICB9XG4gICAgKTtcblxuICAgIGlzR2xvYmFsSGFuZGxlclNldHVwID0gdHJ1ZTtcbiAgfTtcblxuZXhwb3J0IGNvbnN0IGNsZWFudXBHbG9iYWxFcnJvckhhbmRsZXI6IENsZWFudXBHbG9iYWxFcnJvckhhbmRsZXJGbiA9XG4gIGZ1bmN0aW9uIF9jbGVhbnVwR2xvYmFsRXJyb3JIYW5kbGVyKCkge1xuICAgIGlmICghaXNHbG9iYWxIYW5kbGVyU2V0dXApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgb3VyIGhhbmRsZXJzXG4gICAgcHJvY2Vzcy5yZW1vdmVBbGxMaXN0ZW5lcnMoXCJ1bmNhdWdodEV4Y2VwdGlvblwiKTtcbiAgICBwcm9jZXNzLnJlbW92ZUFsbExpc3RlbmVycyhcInVuaGFuZGxlZFJlamVjdGlvblwiKTtcblxuICAgIGlzR2xvYmFsSGFuZGxlclNldHVwID0gZmFsc2U7XG4gIH07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFLQSxJQUFJLG9CQUF1QixHQUFBLEtBQUE7QUFFZCxNQUFBLHVCQUFBLEdBQ1gsU0FBUyx3QkFBQSxDQUF5QixPQUFTLEVBQUE7QUFDekMsRUFBQSxNQUFNLEVBQUUsY0FBQSxFQUFnQixNQUFRLEVBQUEsT0FBQSxHQUFVLE9BQVUsR0FBQSxPQUFBO0FBR3BELEVBQUEsSUFBSSxvQkFBc0IsRUFBQTtBQUN4QixJQUFBO0FBQUE7QUFHRixFQUFBLElBQUksT0FBUyxFQUFBO0FBQ1gsSUFBTyxNQUFBLENBQUEsSUFBQTtBQUFBLE1BQ0wsd0RBQXdELGNBQWMsQ0FBQTtBQUFBLEtBQ3hFO0FBQUE7QUFJRixFQUFRLE9BQUEsQ0FBQSxFQUFBLENBQUcsbUJBQXFCLEVBQUEsQ0FBQyxLQUFpQixLQUFBO0FBQ2hELElBQUEsSUFBSSxPQUFTLEVBQUE7QUFDWCxNQUFPLE1BQUEsQ0FBQSxJQUFBO0FBQUEsUUFDTCxDQUFBLGdEQUFBLEVBQW1ELE1BQU0sT0FBTyxDQUFBO0FBQUEsT0FDbEU7QUFBQTtBQUlGLElBQU8sTUFBQSxDQUFBLElBQUE7QUFBQSxNQUNMLENBQWtELCtDQUFBLEVBQUEsY0FBYyxDQUFNLEdBQUEsRUFBQSxLQUFBLENBQU0sT0FBTyxDQUFBO0FBQUEsS0FDckY7QUFBQSxHQUdELENBQUE7QUFFRCxFQUFRLE9BQUEsQ0FBQSxFQUFBO0FBQUEsSUFDTixvQkFBQTtBQUFBLElBQ0EsQ0FBQyxRQUFpQixRQUErQixLQUFBO0FBQy9DLE1BQUEsSUFBSSxPQUFTLEVBQUE7QUFDWCxRQUFPLE1BQUEsQ0FBQSxJQUFBO0FBQUEsVUFDTCxvREFBb0QsTUFBTSxDQUFBO0FBQUEsU0FDNUQ7QUFBQTtBQUlGLE1BQU8sTUFBQSxDQUFBLElBQUE7QUFBQSxRQUNMLENBQUEsZ0RBQUEsRUFBbUQsY0FBYyxDQUFBLEdBQUEsRUFBTSxNQUFNLENBQUE7QUFBQSxPQUMvRTtBQUFBO0FBR0YsR0FDRjtBQUVBLEVBQXVCLG9CQUFBLEdBQUEsSUFBQTtBQUN6QjtBQUVXLE1BQUEseUJBQUEsR0FDWCxTQUFTLDBCQUE2QixHQUFBO0FBQ3BDLEVBQUEsSUFBSSxDQUFDLG9CQUFzQixFQUFBO0FBQ3pCLElBQUE7QUFBQTtBQUlGLEVBQUEsT0FBQSxDQUFRLG1CQUFtQixtQkFBbUIsQ0FBQTtBQUM5QyxFQUFBLE9BQUEsQ0FBUSxtQkFBbUIsb0JBQW9CLENBQUE7QUFFL0MsRUFBdUIsb0JBQUEsR0FBQSxLQUFBO0FBQ3pCOzs7OyJ9
59
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXBHbG9iYWxFcnJvckhhbmRsZXIuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BsdWdpbi9lcnJvci9zZXR1cEdsb2JhbEVycm9ySGFuZGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIENsZWFudXBHbG9iYWxFcnJvckhhbmRsZXJGbixcbiAgU2V0dXBHbG9iYWxFcnJvckhhbmRsZXJGbixcbn0gZnJvbSBcIi4vdHlwZXMuanNcIjtcblxubGV0IGlzR2xvYmFsSGFuZGxlclNldHVwID0gZmFsc2U7XG5sZXQgdW5jYXVnaHRFeGNlcHRpb25IYW5kbGVyOiAoKGVycm9yOiBFcnJvcikgPT4gdm9pZCkgfCBudWxsID0gbnVsbDtcbmxldCB1bmhhbmRsZWRSZWplY3Rpb25IYW5kbGVyOiAoKHJlYXNvbjogdW5rbm93biwgcHJvbWlzZTogUHJvbWlzZTx1bmtub3duPikgPT4gdm9pZCkgfCBudWxsID0gbnVsbDtcblxuZXhwb3J0IGNvbnN0IHNldHVwR2xvYmFsRXJyb3JIYW5kbGVyOiBTZXR1cEdsb2JhbEVycm9ySGFuZGxlckZuID1cbiAgZnVuY3Rpb24gX3NldHVwR2xvYmFsRXJyb3JIYW5kbGVyKG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IHBhbmljVGhyZXNob2xkLCBsb2dnZXIsIHZlcmJvc2UgPSBmYWxzZSB9ID0gb3B0aW9ucztcblxuICAgIGlmIChpc0dsb2JhbEhhbmRsZXJTZXR1cCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2ZXJib3NlKSB7XG4gICAgICBsb2dnZXIuaW5mbyhcbiAgICAgICAgYFNldHRpbmcgdXAgZ2xvYmFsIGVycm9yIGhhbmRsZXIgZm9yIHBhbmljIHRocmVzaG9sZDogJHtwYW5pY1RocmVzaG9sZH1gXG4gICAgICApO1xuICAgIH1cblxuICAgIHVuY2F1Z2h0RXhjZXB0aW9uSGFuZGxlciA9IChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIGlmICh2ZXJib3NlKSB7XG4gICAgICAgIGxvZ2dlci5pbmZvKFxuICAgICAgICAgIGBHbG9iYWwgZXJyb3IgaGFuZGxlciBjYXVnaHQgdW5jYXVnaHQgZXhjZXB0aW9uOiAke2Vycm9yLm1lc3NhZ2V9YFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBsb2dnZXIud2FybihcbiAgICAgICAgYFVuY2F1Z2h0IGV4Y2VwdGlvbiBoYW5kbGVkIGJ5IHBhbmljIHRocmVzaG9sZCAoJHtwYW5pY1RocmVzaG9sZH0pOiAke2Vycm9yLm1lc3NhZ2V9YFxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgdW5oYW5kbGVkUmVqZWN0aW9uSGFuZGxlciA9IChyZWFzb246IHVua25vd24sIF9wcm9taXNlOiBQcm9taXNlPHVua25vd24+KSA9PiB7XG4gICAgICBpZiAodmVyYm9zZSkge1xuICAgICAgICBsb2dnZXIuaW5mbyhcbiAgICAgICAgICBgR2xvYmFsIGVycm9yIGhhbmRsZXIgY2F1Z2h0IHVuaGFuZGxlZCByZWplY3Rpb246ICR7cmVhc29ufWBcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgbG9nZ2VyLndhcm4oXG4gICAgICAgIGBVbmhhbmRsZWQgcmVqZWN0aW9uIGhhbmRsZWQgYnkgcGFuaWMgdGhyZXNob2xkICgke3BhbmljVGhyZXNob2xkfSk6ICR7cmVhc29ufWBcbiAgICAgICk7XG4gICAgfTtcblxuICAgIHByb2Nlc3Mub24oXCJ1bmNhdWdodEV4Y2VwdGlvblwiLCB1bmNhdWdodEV4Y2VwdGlvbkhhbmRsZXIpO1xuICAgIHByb2Nlc3Mub24oXCJ1bmhhbmRsZWRSZWplY3Rpb25cIiwgdW5oYW5kbGVkUmVqZWN0aW9uSGFuZGxlcik7XG5cbiAgICBpc0dsb2JhbEhhbmRsZXJTZXR1cCA9IHRydWU7XG4gIH07XG5cbmV4cG9ydCBjb25zdCBjbGVhbnVwR2xvYmFsRXJyb3JIYW5kbGVyOiBDbGVhbnVwR2xvYmFsRXJyb3JIYW5kbGVyRm4gPVxuICBmdW5jdGlvbiBfY2xlYW51cEdsb2JhbEVycm9ySGFuZGxlcigpIHtcbiAgICBpZiAoIWlzR2xvYmFsSGFuZGxlclNldHVwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHVuY2F1Z2h0RXhjZXB0aW9uSGFuZGxlcikge1xuICAgICAgcHJvY2Vzcy5yZW1vdmVMaXN0ZW5lcihcInVuY2F1Z2h0RXhjZXB0aW9uXCIsIHVuY2F1Z2h0RXhjZXB0aW9uSGFuZGxlcik7XG4gICAgICB1bmNhdWdodEV4Y2VwdGlvbkhhbmRsZXIgPSBudWxsO1xuICAgIH1cbiAgICBpZiAodW5oYW5kbGVkUmVqZWN0aW9uSGFuZGxlcikge1xuICAgICAgcHJvY2Vzcy5yZW1vdmVMaXN0ZW5lcihcInVuaGFuZGxlZFJlamVjdGlvblwiLCB1bmhhbmRsZWRSZWplY3Rpb25IYW5kbGVyKTtcbiAgICAgIHVuaGFuZGxlZFJlamVjdGlvbkhhbmRsZXIgPSBudWxsO1xuICAgIH1cblxuICAgIGlzR2xvYmFsSGFuZGxlclNldHVwID0gZmFsc2U7XG4gIH07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFLQSxJQUFJLG9CQUF1QixHQUFBLEtBQUE7QUFDM0IsSUFBSSx3QkFBNEQsR0FBQSxJQUFBO0FBQ2hFLElBQUkseUJBQTJGLEdBQUEsSUFBQTtBQUVsRixNQUFBLHVCQUFBLEdBQ1gsU0FBUyx3QkFBQSxDQUF5QixPQUFTLEVBQUE7QUFDekMsRUFBQSxNQUFNLEVBQUUsY0FBQSxFQUFnQixNQUFRLEVBQUEsT0FBQSxHQUFVLE9BQVUsR0FBQSxPQUFBO0FBRXBELEVBQUEsSUFBSSxvQkFBc0IsRUFBQTtBQUN4QixJQUFBO0FBQUE7QUFHRixFQUFBLElBQUksT0FBUyxFQUFBO0FBQ1gsSUFBTyxNQUFBLENBQUEsSUFBQTtBQUFBLE1BQ0wsd0RBQXdELGNBQWMsQ0FBQTtBQUFBLEtBQ3hFO0FBQUE7QUFHRixFQUFBLHdCQUFBLEdBQTJCLENBQUMsS0FBaUIsS0FBQTtBQUMzQyxJQUFBLElBQUksT0FBUyxFQUFBO0FBQ1gsTUFBTyxNQUFBLENBQUEsSUFBQTtBQUFBLFFBQ0wsQ0FBQSxnREFBQSxFQUFtRCxNQUFNLE9BQU8sQ0FBQTtBQUFBLE9BQ2xFO0FBQUE7QUFHRixJQUFPLE1BQUEsQ0FBQSxJQUFBO0FBQUEsTUFDTCxDQUFrRCwrQ0FBQSxFQUFBLGNBQWMsQ0FBTSxHQUFBLEVBQUEsS0FBQSxDQUFNLE9BQU8sQ0FBQTtBQUFBLEtBQ3JGO0FBQUEsR0FDRjtBQUVBLEVBQTRCLHlCQUFBLEdBQUEsQ0FBQyxRQUFpQixRQUErQixLQUFBO0FBQzNFLElBQUEsSUFBSSxPQUFTLEVBQUE7QUFDWCxNQUFPLE1BQUEsQ0FBQSxJQUFBO0FBQUEsUUFDTCxvREFBb0QsTUFBTSxDQUFBO0FBQUEsT0FDNUQ7QUFBQTtBQUdGLElBQU8sTUFBQSxDQUFBLElBQUE7QUFBQSxNQUNMLENBQUEsZ0RBQUEsRUFBbUQsY0FBYyxDQUFBLEdBQUEsRUFBTSxNQUFNLENBQUE7QUFBQSxLQUMvRTtBQUFBLEdBQ0Y7QUFFQSxFQUFRLE9BQUEsQ0FBQSxFQUFBLENBQUcscUJBQXFCLHdCQUF3QixDQUFBO0FBQ3hELEVBQVEsT0FBQSxDQUFBLEVBQUEsQ0FBRyxzQkFBc0IseUJBQXlCLENBQUE7QUFFMUQsRUFBdUIsb0JBQUEsR0FBQSxJQUFBO0FBQ3pCO0FBRVcsTUFBQSx5QkFBQSxHQUNYLFNBQVMsMEJBQTZCLEdBQUE7QUFDcEMsRUFBQSxJQUFJLENBQUMsb0JBQXNCLEVBQUE7QUFDekIsSUFBQTtBQUFBO0FBR0YsRUFBQSxJQUFJLHdCQUEwQixFQUFBO0FBQzVCLElBQVEsT0FBQSxDQUFBLGNBQUEsQ0FBZSxxQkFBcUIsd0JBQXdCLENBQUE7QUFDcEUsSUFBMkIsd0JBQUEsR0FBQSxJQUFBO0FBQUE7QUFFN0IsRUFBQSxJQUFJLHlCQUEyQixFQUFBO0FBQzdCLElBQVEsT0FBQSxDQUFBLGNBQUEsQ0FBZSxzQkFBc0IseUJBQXlCLENBQUE7QUFDdEUsSUFBNEIseUJBQUEsR0FBQSxJQUFBO0FBQUE7QUFHOUIsRUFBdUIsb0JBQUEsR0FBQSxLQUFBO0FBQ3pCOzs7OyJ9
@@ -8,9 +8,4 @@ export declare function createReactElement(options: CreateHandlerOptions, contex
8
8
  /**
9
9
  * Pure function for storing headless stream data
10
10
  */
11
- export declare function storeHeadlessStreamData(context: RscRenderContext, finalOptions: CreateHandlerOptions): void;
12
- export declare const createRscRenderHelpers: {
13
- createReactElement: typeof createReactElement;
14
- storeHeadlessStreamData: typeof storeHeadlessStreamData;
15
- };
16
11
  //# sourceMappingURL=createRscRenderHelpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createRscRenderHelpers.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/createRscRenderHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAK3E;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,oBAAoB,EAC7B,OAAO,EAAE,gBAAgB,8FA+B1B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,oBAAoB,GACjC,IAAI,CAoBN;AAED,eAAO,MAAM,sBAAsB;;;CAGlC,CAAC"}
1
+ {"version":3,"file":"createRscRenderHelpers.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/createRscRenderHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAK3E;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,oBAAoB,EAC7B,OAAO,EAAE,gBAAgB,8FA+B1B;AAED;;GAEG"}
@@ -36,25 +36,3 @@ export function createReactElement(options, context) {
36
36
  /**
37
37
  * Pure function for storing headless stream data
38
38
  */
39
- export function storeHeadlessStreamData(context, finalOptions) {
40
- // Determine if this is a headless stream by checking if htmlPath is empty
41
- const isHeadless = finalOptions.htmlPath === "";
42
- if (context.headlessStreamElements &&
43
- isHeadless &&
44
- !context.headlessStreamErrors?.has(context.route)) {
45
- // Store the rendered elements for reuse
46
- const element = createElementWithReact(React, {
47
- ...finalOptions,
48
- Html: React.Fragment,
49
- as: React.Fragment,
50
- });
51
- context.headlessStreamElements.set(context.id, {
52
- elements: element,
53
- errored: false,
54
- });
55
- }
56
- }
57
- export const createRscRenderHelpers = {
58
- createReactElement,
59
- storeHeadlessStreamData,
60
- };
@@ -30,42 +30,4 @@ export declare function trackHeadlessStreamError(state: HeadlessStreamState, rou
30
30
  * @returns true if the route has a headless stream error
31
31
  */
32
32
  export declare function hasHeadlessStreamError(state: HeadlessStreamState, route: string): boolean;
33
- /**
34
- * Gets the headless stream error for a route.
35
- *
36
- * @param state - The headless stream state
37
- * @param route - The route to get the error for
38
- * @returns The error if it exists, undefined otherwise
39
- */
40
- export declare function getHeadlessStreamError(state: HeadlessStreamState, route: string): Error | undefined;
41
- /**
42
- * Stores headless stream elements for reuse.
43
- *
44
- * @param state - The headless stream state
45
- * @param streamId - The stream ID
46
- * @param data - The stream data to store
47
- */
48
- export declare function storeHeadlessStreamElements(state: HeadlessStreamState, streamId: string, data: HeadlessStreamData): void;
49
- /**
50
- * Gets headless stream elements for reuse.
51
- *
52
- * @param state - The headless stream state
53
- * @param streamId - The stream ID
54
- * @returns The stream data if it exists, undefined otherwise
55
- */
56
- export declare function getHeadlessStreamElements(state: HeadlessStreamState, streamId: string): HeadlessStreamData | undefined;
57
- /**
58
- * Cleans up headless stream elements after use.
59
- *
60
- * @param state - The headless stream state
61
- * @param streamId - The stream ID to clean up
62
- */
63
- export declare function cleanupHeadlessStreamElements(state: HeadlessStreamState, streamId: string): void;
64
- /**
65
- * Clears all headless stream errors for a route.
66
- *
67
- * @param state - The headless stream state
68
- * @param route - The route to clear errors for
69
- */
70
- export declare function clearHeadlessStreamErrors(state: HeadlessStreamState, route: string): void;
71
33
  //# sourceMappingURL=headlessStreamState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"headlessStreamState.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/headlessStreamState.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,GAAG,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC1C,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,mBAAmB,CAK/D;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,KAAK,GACX,IAAI,CAEN;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,GACZ,OAAO,CAET;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,GACZ,KAAK,GAAG,SAAS,CAEnB;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,mBAAmB,EAC1B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,kBAAkB,GACvB,IAAI,CAEN;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,mBAAmB,EAC1B,QAAQ,EAAE,MAAM,GACf,kBAAkB,GAAG,SAAS,CAEhC;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,mBAAmB,EAC1B,QAAQ,EAAE,MAAM,GACf,IAAI,CAEN;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,GACZ,IAAI,CAEN"}
1
+ {"version":3,"file":"headlessStreamState.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/headlessStreamState.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,GAAG,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC1C,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,mBAAmB,CAK/D;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,KAAK,GACX,IAAI,CAEN;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,GACZ,OAAO,CAET"}
@@ -31,51 +31,3 @@ export function trackHeadlessStreamError(state, route, error) {
31
31
  export function hasHeadlessStreamError(state, route) {
32
32
  return state.errors.has(route);
33
33
  }
34
- /**
35
- * Gets the headless stream error for a route.
36
- *
37
- * @param state - The headless stream state
38
- * @param route - The route to get the error for
39
- * @returns The error if it exists, undefined otherwise
40
- */
41
- export function getHeadlessStreamError(state, route) {
42
- return state.errors.get(route);
43
- }
44
- /**
45
- * Stores headless stream elements for reuse.
46
- *
47
- * @param state - The headless stream state
48
- * @param streamId - The stream ID
49
- * @param data - The stream data to store
50
- */
51
- export function storeHeadlessStreamElements(state, streamId, data) {
52
- state.elements.set(streamId, data);
53
- }
54
- /**
55
- * Gets headless stream elements for reuse.
56
- *
57
- * @param state - The headless stream state
58
- * @param streamId - The stream ID
59
- * @returns The stream data if it exists, undefined otherwise
60
- */
61
- export function getHeadlessStreamElements(state, streamId) {
62
- return state.elements.get(streamId);
63
- }
64
- /**
65
- * Cleans up headless stream elements after use.
66
- *
67
- * @param state - The headless stream state
68
- * @param streamId - The stream ID to clean up
69
- */
70
- export function cleanupHeadlessStreamElements(state, streamId) {
71
- state.elements.delete(streamId);
72
- }
73
- /**
74
- * Clears all headless stream errors for a route.
75
- *
76
- * @param state - The headless stream state
77
- * @param route - The route to clear errors for
78
- */
79
- export function clearHeadlessStreamErrors(state, route) {
80
- state.errors.delete(route);
81
- }
@@ -16,9 +16,6 @@ export * from "./metrics.js";
16
16
  export * from "./tryManifest.js";
17
17
  export * from "./getBundleManifest.js";
18
18
  export * from "./moduleRefs.js";
19
- export * from "./moduleResolver.js";
20
- export * from "./stashReturnValue.js";
21
- export * from "./workerManager.js";
22
19
  export * from "./validateRscRenderMessage.js";
23
20
  export * from "./resolveRenderUrl.js";
24
21
  export * from "./mergeMessageWithDefaults.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/index.ts"],"names":[],"mappings":"AAGA,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AAMpC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAG7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oCAAoC,CAAC;AACnD,OAAO,EAAE,iBAAiB,IAAI,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAE7F,cAAc,qBAAqB,CAAC;AACpC,cAAc,uCAAuC,CAAC;AAEtD,cAAc,2BAA2B,CAAC;AAE1C,cAAc,gCAAgC,CAAC;AAO/C,QAAA,MAAQ,kBAAkB,KAIzB,CAAC;AAEF,OAAO,EAAG,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/index.ts"],"names":[],"mappings":"AAGA,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AAMpC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAG7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,iBAAiB,CAAC;AAKhC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oCAAoC,CAAC;AACnD,OAAO,EAAE,iBAAiB,IAAI,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAE7F,cAAc,qBAAqB,CAAC;AACpC,cAAc,uCAAuC,CAAC;AAEtD,cAAc,2BAA2B,CAAC;AAE1C,cAAc,gCAAgC,CAAC;AAO/C,QAAA,MAAQ,kBAAkB,KAIzB,CAAC;AAEF,OAAO,EAAG,kBAAkB,EAAE,CAAC"}
@@ -20,9 +20,6 @@ export { hydrateUserOptions } from './hydrateUserOptions.js';
20
20
  export { tryManifest } from './tryManifest.js';
21
21
  export { getBundleManifest } from './getBundleManifest.js';
22
22
  export { getModuleRef, moduleRefs } from './moduleRefs.js';
23
- export { getSource, loadClientSource, resolve, resolveClientImport, setStashedGetSource, setStashedResolve } from './moduleResolver.js';
24
- export { clearStashedReturnValues, stashReturnValue } from './stashReturnValue.js';
25
- export { clearWorker, getWorker, setWorker } from './workerManager.js';
26
23
  export { validateRscRenderMessage } from './validateRscRenderMessage.js';
27
24
  export { resolveRenderUrl } from './resolveRenderUrl.js';
28
25
  export { mergeMessageWithDefaults } from './mergeMessageWithDefaults.js';
@@ -42,4 +39,4 @@ const dirname = new URL("./", import.meta.url).pathname.replace(/\/$/, "");
42
39
  const { handleServerAction } = await import(`${dirname}/handleServerAction.${condition}.js`);
43
40
 
44
41
  export { handleServerAction };
45
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BsdWdpbi9oZWxwZXJzL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldENvbmRpdGlvbiB9IGZyb20gXCIuLi9jb25maWcvZ2V0Q29uZGl0aW9uLmpzXCI7XG5cbi8vIFJvdXRlIGFuZCBmaWxlIGhhbmRsaW5nXG5leHBvcnQgKiBmcm9tIFwiLi9nZXRSb3V0ZUZpbGVzLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXNvbHZlUGFnZS5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vcmVzb2x2ZVByb3BzLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXNvbHZlUGFnZUFuZFByb3BzLmpzXCI7XG5cbmV4cG9ydCAqIGZyb20gXCIuL3JlcXVlc3RJbmZvLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXF1ZXN0VG9Sb3V0ZS5qc1wiO1xuXG4vLyBDb25maWd1cmF0aW9uIGFuZCBvcHRpb25zXG5leHBvcnQgKiBmcm9tIFwiLi9zZXJpYWxpemVVc2VyT3B0aW9ucy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY2xlYW5PYmplY3QuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2lucHV0Tm9ybWFsaXplci5qc1wiO1xuXG4vLyBDU1MgaGFuZGxpbmdcbmV4cG9ydCAqIGZyb20gXCIuL2NvbGxlY3RNYW5pZmVzdENzcy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29sbGVjdFZpdGVNb2R1bGVHcmFwaENzcy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY3JlYXRlQ3NzUHJvcHMuanNcIjtcblxuLy8gU3RyZWFtIGFuZCBoYW5kbGVyIGNyZWF0aW9uXG4vLyBTdHJlYW0tcmVsYXRlZCBmdW5jdGlvbnMgYXJlIG5vdyBleHBvcnRlZCBmcm9tIC4uL3N0cmVhbS9pbmRleC5qc1xuXG4vLyBIeWRyYXRlIHVzZXIgb3B0aW9uc1xuZXhwb3J0ICogZnJvbSBcIi4vaHlkcmF0ZVVzZXJPcHRpb25zLmpzXCI7XG5cbi8vIE1ldHJpY3MgYW5kIG1vbml0b3JpbmdcbmV4cG9ydCAqIGZyb20gXCIuL2Zvcm1hdE1ldHJpY3MuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL21ldHJpY3MuanNcIjtcblxuLy8gTWFuaWZlc3QgaGFuZGxpbmdcbmV4cG9ydCAqIGZyb20gXCIuL3RyeU1hbmlmZXN0LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9nZXRCdW5kbGVNYW5pZmVzdC5qc1wiO1xuXG4vLyBNb2R1bGUgaGFuZGxpbmdcbmV4cG9ydCAqIGZyb20gXCIuL21vZHVsZVJlZnMuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL21vZHVsZVJlc29sdmVyLmpzXCI7XG5cbi8vIFV0aWxpdHkgZnVuY3Rpb25zXG5leHBvcnQgKiBmcm9tIFwiLi9zdGFzaFJldHVyblZhbHVlLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi93b3JrZXJNYW5hZ2VyLmpzXCI7XG5cbi8vIFVuaWZpZWQgcmVuZGVyIGhlbHBlcnNcbmV4cG9ydCAqIGZyb20gXCIuL3ZhbGlkYXRlUnNjUmVuZGVyTWVzc2FnZS5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vcmVzb2x2ZVJlbmRlclVybC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vbWVyZ2VNZXNzYWdlV2l0aERlZmF1bHRzLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXNvbHZlV2l0aERlZmF1bHRSb290QW5kSHRtbC5qc1wiO1xuZXhwb3J0IHsgcmVzb2x2ZUNvbXBvbmVudHMgYXMgcmVzb2x2ZUNvbXBvbmVudHNDbGllbnQgfSBmcm9tIFwiLi9yZXNvbHZlQ29tcG9uZW50cy5jbGllbnQuanNcIjtcblxuZXhwb3J0ICogZnJvbSBcIi4vbG9nUmVuZGVyU3RhcnQuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NyZWF0ZVNlcmlhbGl6YWJsZUhhbmRsZXJPcHRpb25zLmpzXCI7XG5cbmV4cG9ydCAqIGZyb20gXCIuL2NyZWF0ZVBhdHRlcm5NYXRjaGVyLmpzXCI7XG5cbmV4cG9ydCAqIGZyb20gXCIuL2NyZWF0ZVVuaWZpZWRDc3NQcm9jZXNzb3IuanNcIjtcblxuLy8gU2VydmVyIGFjdGlvbiBoYW5kbGluZ1xuXG5jb25zdCBjb25kaXRpb24gPSBnZXRDb25kaXRpb24oXCJcIik7XG5jb25zdCBkaXJuYW1lID0gbmV3IFVSTChcIi4vXCIsIGltcG9ydC5tZXRhLnVybCkucGF0aG5hbWUucmVwbGFjZSgvXFwvJC8sIFwiXCIpO1xuXG5jb25zdCB7IGhhbmRsZVNlcnZlckFjdGlvbiB9ID0gKGF3YWl0IGltcG9ydChcbiAgYCR7ZGlybmFtZX0vaGFuZGxlU2VydmVyQWN0aW9uLiR7Y29uZGl0aW9ufS5qc2BcbikpIGFzIHtcbiAgaGFuZGxlU2VydmVyQWN0aW9uOiBhbnlcbn07XG5cbmV4cG9ydCB7ICBoYW5kbGVTZXJ2ZXJBY3Rpb24gfTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUEyREEsTUFBTSxTQUFBLEdBQVksYUFBYSxFQUFFLENBQUE7QUFDakMsTUFBTSxPQUFBLEdBQVUsSUFBSSxHQUFBLENBQUksSUFBTSxFQUFBLE1BQUEsQ0FBQSxJQUFBLENBQVksR0FBRyxDQUFFLENBQUEsUUFBQSxDQUFTLE9BQVEsQ0FBQSxLQUFBLEVBQU8sRUFBRSxDQUFBO0FBRW5FLE1BQUEsRUFBRSxvQkFBd0IsR0FBQSxNQUFNLE9BQ3BDLENBQUcsRUFBQSxPQUFPLHVCQUF1QixTQUFTLENBQUEsR0FBQSxDQUFBOzs7OyJ9
42
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BsdWdpbi9oZWxwZXJzL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldENvbmRpdGlvbiB9IGZyb20gXCIuLi9jb25maWcvZ2V0Q29uZGl0aW9uLmpzXCI7XG5cbi8vIFJvdXRlIGFuZCBmaWxlIGhhbmRsaW5nXG5leHBvcnQgKiBmcm9tIFwiLi9nZXRSb3V0ZUZpbGVzLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXNvbHZlUGFnZS5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vcmVzb2x2ZVByb3BzLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXNvbHZlUGFnZUFuZFByb3BzLmpzXCI7XG5cbmV4cG9ydCAqIGZyb20gXCIuL3JlcXVlc3RJbmZvLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXF1ZXN0VG9Sb3V0ZS5qc1wiO1xuXG4vLyBDb25maWd1cmF0aW9uIGFuZCBvcHRpb25zXG5leHBvcnQgKiBmcm9tIFwiLi9zZXJpYWxpemVVc2VyT3B0aW9ucy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY2xlYW5PYmplY3QuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2lucHV0Tm9ybWFsaXplci5qc1wiO1xuXG4vLyBDU1MgaGFuZGxpbmdcbmV4cG9ydCAqIGZyb20gXCIuL2NvbGxlY3RNYW5pZmVzdENzcy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29sbGVjdFZpdGVNb2R1bGVHcmFwaENzcy5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY3JlYXRlQ3NzUHJvcHMuanNcIjtcblxuLy8gU3RyZWFtIGFuZCBoYW5kbGVyIGNyZWF0aW9uXG4vLyBTdHJlYW0tcmVsYXRlZCBmdW5jdGlvbnMgYXJlIG5vdyBleHBvcnRlZCBmcm9tIC4uL3N0cmVhbS9pbmRleC5qc1xuXG4vLyBIeWRyYXRlIHVzZXIgb3B0aW9uc1xuZXhwb3J0ICogZnJvbSBcIi4vaHlkcmF0ZVVzZXJPcHRpb25zLmpzXCI7XG5cbi8vIE1ldHJpY3MgYW5kIG1vbml0b3JpbmdcbmV4cG9ydCAqIGZyb20gXCIuL2Zvcm1hdE1ldHJpY3MuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL21ldHJpY3MuanNcIjtcblxuLy8gTWFuaWZlc3QgaGFuZGxpbmdcbmV4cG9ydCAqIGZyb20gXCIuL3RyeU1hbmlmZXN0LmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9nZXRCdW5kbGVNYW5pZmVzdC5qc1wiO1xuXG4vLyBNb2R1bGUgaGFuZGxpbmdcbmV4cG9ydCAqIGZyb20gXCIuL21vZHVsZVJlZnMuanNcIjtcblxuLy8gVXRpbGl0eSBmdW5jdGlvbnNcblxuLy8gVW5pZmllZCByZW5kZXIgaGVscGVyc1xuZXhwb3J0ICogZnJvbSBcIi4vdmFsaWRhdGVSc2NSZW5kZXJNZXNzYWdlLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9yZXNvbHZlUmVuZGVyVXJsLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9tZXJnZU1lc3NhZ2VXaXRoRGVmYXVsdHMuanNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3Jlc29sdmVXaXRoRGVmYXVsdFJvb3RBbmRIdG1sLmpzXCI7XG5leHBvcnQgeyByZXNvbHZlQ29tcG9uZW50cyBhcyByZXNvbHZlQ29tcG9uZW50c0NsaWVudCB9IGZyb20gXCIuL3Jlc29sdmVDb21wb25lbnRzLmNsaWVudC5qc1wiO1xuXG5leHBvcnQgKiBmcm9tIFwiLi9sb2dSZW5kZXJTdGFydC5qc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY3JlYXRlU2VyaWFsaXphYmxlSGFuZGxlck9wdGlvbnMuanNcIjtcblxuZXhwb3J0ICogZnJvbSBcIi4vY3JlYXRlUGF0dGVybk1hdGNoZXIuanNcIjtcblxuZXhwb3J0ICogZnJvbSBcIi4vY3JlYXRlVW5pZmllZENzc1Byb2Nlc3Nvci5qc1wiO1xuXG4vLyBTZXJ2ZXIgYWN0aW9uIGhhbmRsaW5nXG5cbmNvbnN0IGNvbmRpdGlvbiA9IGdldENvbmRpdGlvbihcIlwiKTtcbmNvbnN0IGRpcm5hbWUgPSBuZXcgVVJMKFwiLi9cIiwgaW1wb3J0Lm1ldGEudXJsKS5wYXRobmFtZS5yZXBsYWNlKC9cXC8kLywgXCJcIik7XG5cbmNvbnN0IHsgaGFuZGxlU2VydmVyQWN0aW9uIH0gPSAoYXdhaXQgaW1wb3J0KFxuICBgJHtkaXJuYW1lfS9oYW5kbGVTZXJ2ZXJBY3Rpb24uJHtjb25kaXRpb259LmpzYFxuKSkgYXMge1xuICBoYW5kbGVTZXJ2ZXJBY3Rpb246IGFueVxufTtcblxuZXhwb3J0IHsgIGhhbmRsZVNlcnZlckFjdGlvbiB9O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXdEQSxNQUFNLFNBQUEsR0FBWSxhQUFhLEVBQUUsQ0FBQTtBQUNqQyxNQUFNLE9BQUEsR0FBVSxJQUFJLEdBQUEsQ0FBSSxJQUFNLEVBQUEsTUFBQSxDQUFBLElBQUEsQ0FBWSxHQUFHLENBQUUsQ0FBQSxRQUFBLENBQVMsT0FBUSxDQUFBLEtBQUEsRUFBTyxFQUFFLENBQUE7QUFFbkUsTUFBQSxFQUFFLG9CQUF3QixHQUFBLE1BQU0sT0FDcEMsQ0FBRyxFQUFBLE9BQU8sdUJBQXVCLFNBQVMsQ0FBQSxHQUFBLENBQUE7Ozs7In0=
@@ -1 +1 @@
1
- {"version":3,"file":"requestInfo.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/requestInfo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAKpC;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,OAAO,CAAC,eAAe,EAC5B,cAAc,EAAE,IAAI,CAClB,oBAAoB,EAClB,YAAY,GACZ,OAAO,GACP,cAAc,GACd,SAAS,GACT,gBAAgB,GAChB,eAAe,GACf,SAAS,GACT,QAAQ,CACX,EACD,OAAO,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6MhB"}
1
+ {"version":3,"file":"requestInfo.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/requestInfo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAKpC;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CACzB,GAAG,EAAE,OAAO,CAAC,eAAe,EAC5B,cAAc,EAAE,IAAI,CAClB,oBAAoB,EAClB,YAAY,GACZ,OAAO,GACP,cAAc,GACd,SAAS,GACT,gBAAgB,GAChB,eAAe,GACf,SAAS,GACT,QAAQ,CACX,EACD,OAAO,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4MhB"}
@@ -59,7 +59,7 @@ function requestInfo(req, handlerOptions, hostDir) {
59
59
  const isFormActionRequest = !isServerActionRequest && (req.method === "POST" || isFormContentType && req.headers["sec-fetch-dest"] === "document" && req.headers["sec-fetch-mode"] === "navigate");
60
60
  const isJsRequest = !isFormActionRequest && !isJson && !isHtml && !isCss && !isRsc && (isJS || hasJsHeader);
61
61
  const isJsonRequest = isJson || hasJsonHeader && !isJsRequest;
62
- const isHtmlRequest = !hasRscQueryParam && (isHtml || hasHtmlHeader || isFolder && !hasRscHeader && !hasRscQueryParam && !isRsc && !isJsRequest && !isFormActionRequest);
62
+ const isHtmlRequest = !hasRscQueryParam && (isHtml || hasHtmlHeader || isFolder && !hasRscHeader && !isRsc && !isJsRequest && !isFormActionRequest);
63
63
  const isRscRequest = hasRscQueryParam || !isJsRequest && !isHtmlRequest && (isRsc || hasRscHeader);
64
64
  const isCssRequest = !isHtmlRequest && !isRscRequest && !isJsRequest && !isJsonRequest && (isCss || hasCssHeader);
65
65
  const routeForFilePath = value;
@@ -106,7 +106,7 @@ function requestInfo(req, handlerOptions, hostDir) {
106
106
  if (mimeType) {
107
107
  contentType = mimeType + "; charset=utf-8";
108
108
  } else {
109
- contentType = "application/octet-stream; charset=utf-8";
109
+ contentType = "application/octet-stream";
110
110
  }
111
111
  }
112
112
  if (handlerOptions.verbose) {
@@ -160,4 +160,4 @@ function requestInfo(req, handlerOptions, hostDir) {
160
160
  }
161
161
 
162
162
  export { requestInfo };
163
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdEluZm8uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BsdWdpbi9oZWxwZXJzL3JlcXVlc3RJbmZvLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgdHlwZSB7IENyZWF0ZUhhbmRsZXJPcHRpb25zIH0gZnJvbSBcIi4uL3R5cGVzLmpzXCI7XG5pbXBvcnQgeyB0eXBlIENvbm5lY3QgfSBmcm9tIFwidml0ZVwiO1xuaW1wb3J0IHsgTUlNRV9UWVBFUyB9IGZyb20gXCIuLi9jb25maWcvbWltZVR5cGVzLmpzXCI7XG5pbXBvcnQgeyByZXF1ZXN0VG9Sb3V0ZSB9IGZyb20gXCIuL3JlcXVlc3RUb1JvdXRlLmpzXCI7XG5pbXBvcnQgeyByb3V0ZVRvVVJMIH0gZnJvbSBcIi4uL3V0aWxzL3JvdXRlVG9VUkwuanNcIjtcblxuLyoqXG4gKiAjIFJlcXVlc3QgaW5mb1xuICpcbiAqIERvZXMgdGhlIGluaXRpYWwgd29yayB0byBjaGVjayBpZiB0aGUgcmVxdWVzdCBpcyBmb3IgaHRtbCwgcnNjLCBqc29uLCBqcywgY3NzLCBzZXJ2ZXItYWN0aW9uLCBvciBzb21ldGhpbmcgZWxzZSBub3QgaGFuZGxlZCBieSB0aGlzIHBsdWdpbi5cbiAqXG4gKiBAcGFyYW0gcmVxXG4gKiBAcGFyYW0gaGFuZGxlck9wdGlvbnNcbiAqIEBwYXJhbSBob3N0RGlyXG4gKiBAcmV0dXJuc1xuICovXG5leHBvcnQgZnVuY3Rpb24gcmVxdWVzdEluZm8oXG4gIHJlcTogQ29ubmVjdC5JbmNvbWluZ01lc3NhZ2UsXG4gIGhhbmRsZXJPcHRpb25zOiBQaWNrPFxuICAgIENyZWF0ZUhhbmRsZXJPcHRpb25zLFxuICAgIHwgXCJub3JtYWxpemVyXCJcbiAgICB8IFwiYnVpbGRcIlxuICAgIHwgXCJhdXRvRGlzY292ZXJcIlxuICAgIHwgXCJ2ZXJib3NlXCJcbiAgICB8IFwibW9kdWxlQmFzZVBhdGhcIlxuICAgIHwgXCJtb2R1bGVCYXNlVVJMXCJcbiAgICB8IFwidmVyYm9zZVwiXG4gICAgfCBcImxvZ2dlclwiXG4gID4sXG4gIGhvc3REaXI6IHN0cmluZyxcbikge1xuICBjb25zdCByb3V0ZSA9IHJlcXVlc3RUb1JvdXRlKHJlcSwge1xuICAgIG1vZHVsZUJhc2VQYXRoOiBoYW5kbGVyT3B0aW9ucy5tb2R1bGVCYXNlUGF0aCxcbiAgICBtb2R1bGVCYXNlVVJMOiBoYW5kbGVyT3B0aW9ucy5tb2R1bGVCYXNlVVJMLFxuICAgIGJ1aWxkOiBoYW5kbGVyT3B0aW9ucy5idWlsZCxcbiAgfSk7XG5cbiAgaWYgKCFyb3V0ZSkge1xuICAgIHJldHVybiB7XG4gICAgICByb3V0ZTogXCIvXCIsXG4gICAgICB1cmw6IHJvdXRlVG9VUkwoXCIvXCIsIGhhbmRsZXJPcHRpb25zLm1vZHVsZUJhc2VVUkwsIGhhbmRsZXJPcHRpb25zLmJ1aWxkLnJzY091dHB1dFBhdGgpLFxuICAgICAgZXh0OiBcIlwiLFxuICAgIH07XG4gIH1cblxuICAvLyBVc2UgdGhlIGNsZWFuZWQgcm91dGUgZm9yIG5vcm1hbGl6YXRpb24sIG5vdCB0aGUgcmF3IHJlcS51cmxcbiAgLy8gVGhpcyBlbnN1cmVzIGJhc2UgVVJMIGlzIHByb3Blcmx5IHN0cmlwcGVkIGJlZm9yZSBub3JtYWxpemF0aW9uXG4gIGNvbnN0IFssIHZhbHVlXSA9IGhhbmRsZXJPcHRpb25zLm5vcm1hbGl6ZXIocm91dGUpO1xuICBpZiAoaGFuZGxlck9wdGlvbnMudmVyYm9zZSkge1xuICAgIGlmICh2YWx1ZSAmJiB2YWx1ZSAhPT0gXCJcIikge1xuICAgICAgaGFuZGxlck9wdGlvbnMubG9nZ2VyLmluZm8oYFtyZXF1ZXN0SW5mb10gVmFsdWU6IFxcXCIke3ZhbHVlfVxcXCJgKTtcbiAgICB9XG4gICAgaWYgKGhvc3REaXIgJiYgaG9zdERpciAhPT0gXCJcIikge1xuICAgICAgaGFuZGxlck9wdGlvbnMubG9nZ2VyLmluZm8oYFtyZXF1ZXN0SW5mb10gSG9zdCBEaXI6IFxcXCIke2hvc3REaXJ9XFxcImApO1xuICAgIH1cbiAgICBpZiAocmVxLnVybCAmJiByZXEudXJsICE9PSBcIlwiKSB7XG4gICAgICBoYW5kbGVyT3B0aW9ucy5sb2dnZXIuaW5mbyhgW3JlcXVlc3RJbmZvXSBSZXF1ZXN0IFVSTDogXFxcIiR7cmVxLnVybH1cXFwiYCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgZG90SW5kZXggPSB2YWx1ZS5sYXN0SW5kZXhPZihcIi5cIik7XG4gIGNvbnN0IGV4dCA9IGRvdEluZGV4ID09PSAtMSA/IFwiXCIgOiB2YWx1ZS5zbGljZShkb3RJbmRleCk7XG4gIC8vIGhhbmRsZSBpbmRleC5odG1sXG4gIGNvbnN0IGlzVmVuZG9yID0gaGFuZGxlck9wdGlvbnMuYXV0b0Rpc2NvdmVyLnZlbmRvclBhdHRlcm4udGVzdCh2YWx1ZSk7XG4gIGNvbnN0IGlzVmlydHVhbCA9IGhhbmRsZXJPcHRpb25zLmF1dG9EaXNjb3Zlci52aXJ0dWFsUGF0dGVybi50ZXN0KHZhbHVlKTtcbiAgY29uc3QgaXNKUyA9IGhhbmRsZXJPcHRpb25zLmF1dG9EaXNjb3Zlci5tb2R1bGVQYXR0ZXJuLnRlc3QodmFsdWUpO1xuICBjb25zdCBpc0h0bWwgPSBoYW5kbGVyT3B0aW9ucy5hdXRvRGlzY292ZXIuaHRtbFBhdHRlcm4udGVzdCh2YWx1ZSk7XG4gIGNvbnN0IGlzQ3NzID0gaGFuZGxlck9wdGlvbnMuYXV0b0Rpc2NvdmVyLmNzc1BhdHRlcm4udGVzdCh2YWx1ZSk7XG4gIGNvbnN0IGlzSnNvbiA9IGhhbmRsZXJPcHRpb25zLmF1dG9EaXNjb3Zlci5qc29uUGF0dGVybi50ZXN0KHZhbHVlKTtcbiAgY29uc3QgaXNSc2MgPSBoYW5kbGVyT3B0aW9ucy5hdXRvRGlzY292ZXIucnNjUGF0dGVybi50ZXN0KHZhbHVlKTtcbiAgY29uc3QgaGFzSnNIZWFkZXIgPVxuICAgIHJlcS5oZWFkZXJzW1wic2VjLWZldGNoLWRlc3RcIl0gPT09IFwic2NyaXB0XCIgfHxcbiAgICByZXEuaGVhZGVyc1tcImFjY2VwdFwiXT8uaW5jbHVkZXMoXCIqLypcIikgfHxcbiAgICByZXEuaGVhZGVyc1tcImFjY2VwdFwiXT8uaW5jbHVkZXMoXCJ0ZXh0L2phdmFzY3JpcHRcIik7XG4gIGNvbnN0IGhhc0pzb25IZWFkZXIgPSByZXEuaGVhZGVyc1tcImFjY2VwdFwiXT8uaW5jbHVkZXMoXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xuICBjb25zdCBoYXNIdG1sSGVhZGVyID0gcmVxLmhlYWRlcnMuYWNjZXB0Py5pbmNsdWRlcyhcInRleHQvaHRtbFwiKTtcbiAgY29uc3QgaGFzUnNjSGVhZGVyID0gcmVxLmhlYWRlcnMuYWNjZXB0Py5pbmNsdWRlcyhcInRleHQveC1jb21wb25lbnRcIik7XG4gIC8vIFN1cHBvcnQgP19yc2MgcXVlcnkgcGFyYW0gKGUuZy4gLz9fcnNjIGZvciBicm93c2VyIGRlYnVnZ2luZykgYXMgYWx0ZXJuYXRpdmUgdG8gQWNjZXB0IGhlYWRlciAodXNlZnVsIGZvciBicm93c2VyIGRlYnVnZ2luZylcbiAgY29uc3QgaGFzUnNjUXVlcnlQYXJhbSA9IC9bPyZdX3JzY1xcYi8udGVzdChyZXEudXJsIHx8IFwiXCIpO1xuICBjb25zdCBoYXNDc3NIZWFkZXIgPSByZXEuaGVhZGVycy5hY2NlcHQ/LmluY2x1ZGVzKFwidGV4dC9jc3NcIik7XG4gIGNvbnN0IGlzRm9sZGVyID0gIWV4dDtcbiAgY29uc3QgaXNGb3JtQ29udGVudFR5cGUgPVxuICAgIHJlcS5oZWFkZXJzW1wiY29udGVudC10eXBlXCJdPy5pbmNsdWRlcyhcbiAgICAgIFwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkXCJcbiAgICApIHx8ICEhcmVxLmhlYWRlcnNbXCJjb250ZW50LXR5cGVcIl0/LmluY2x1ZGVzKFwibXVsdGlwYXJ0L2Zvcm0tZGF0YVwiKTtcblxuICAvLyBTZXJ2ZXIgYWN0aW9uIGRldGVjdGlvblxuICBjb25zdCBoYXNSc2NBY3Rpb25IZWFkZXIgPSAhIXJlcS5oZWFkZXJzW1wieC1yc2MtYWN0aW9uXCJdO1xuICBjb25zdCBoYXNTZXJ2ZXJBY3Rpb25IZWFkZXJzID1cbiAgICByZXEubWV0aG9kID09PSBcIlBPU1RcIiAmJlxuICAgIChoYXNSc2NBY3Rpb25IZWFkZXIgfHwgKFxuICAgICAgKHJlcS5oZWFkZXJzW1wic2VjLWZldGNoLWRlc3RcIl0gPT09IFwiZW1wdHlcIiB8fFxuICAgICAgICByZXEuaGVhZGVyc1tcInNlYy1mZXRjaC1kZXN0XCJdID09PSBcIlwiKSAmJlxuICAgICAgcmVxLmhlYWRlcnNbXCJzZWMtZmV0Y2gtbW9kZVwiXSA9PT0gXCJjb3JzXCJcbiAgICApKTtcbiAgY29uc3QgaXNTZXJ2ZXJBY3Rpb25SZXF1ZXN0ID0gaGFzU2VydmVyQWN0aW9uSGVhZGVycztcblxuICBjb25zdCBpc0Zvcm1BY3Rpb25SZXF1ZXN0ID1cbiAgICAhaXNTZXJ2ZXJBY3Rpb25SZXF1ZXN0ICYmXG4gICAgKHJlcS5tZXRob2QgPT09IFwiUE9TVFwiIHx8XG4gICAgICAoaXNGb3JtQ29udGVudFR5cGUgJiZcbiAgICAgICAgcmVxLmhlYWRlcnNbXCJzZWMtZmV0Y2gtZGVzdFwiXSA9PT0gXCJkb2N1bWVudFwiICYmXG4gICAgICAgIHJlcS5oZWFkZXJzW1wic2VjLWZldGNoLW1vZGVcIl0gPT09IFwibmF2aWdhdGVcIikpO1xuXG4gIGNvbnN0IGlzSnNSZXF1ZXN0ID1cbiAgICAhaXNGb3JtQWN0aW9uUmVxdWVzdCAmJlxuICAgICFpc0pzb24gJiZcbiAgICAhaXNIdG1sICYmXG4gICAgIWlzQ3NzICYmXG4gICAgIWlzUnNjICYmXG4gICAgKGlzSlMgfHwgaGFzSnNIZWFkZXIpO1xuICBjb25zdCBpc0pzb25SZXF1ZXN0ID0gaXNKc29uIHx8IChoYXNKc29uSGVhZGVyICYmICFpc0pzUmVxdWVzdCk7XG4gIC8vIEZvcm0gYWN0aW9uIGRldGVjdGlvblxuXG4gIGNvbnN0IGlzSHRtbFJlcXVlc3QgPVxuICAgICFoYXNSc2NRdWVyeVBhcmFtICYmIChpc0h0bWwgfHxcbiAgICBoYXNIdG1sSGVhZGVyIHx8XG4gICAgKGlzRm9sZGVyICYmXG4gICAgICAhaGFzUnNjSGVhZGVyICYmXG4gICAgICAhaGFzUnNjUXVlcnlQYXJhbSAmJlxuICAgICAgIWlzUnNjICYmXG4gICAgICAhaXNKc1JlcXVlc3QgJiZcbiAgICAgICFpc0Zvcm1BY3Rpb25SZXF1ZXN0KSk7XG4gIGNvbnN0IGlzUnNjUmVxdWVzdCA9XG4gICAgaGFzUnNjUXVlcnlQYXJhbSB8fCAoIWlzSnNSZXF1ZXN0ICYmICFpc0h0bWxSZXF1ZXN0ICYmIChpc1JzYyB8fCBoYXNSc2NIZWFkZXIpKTtcbiAgY29uc3QgaXNDc3NSZXF1ZXN0ID1cbiAgICAhaXNIdG1sUmVxdWVzdCAmJlxuICAgICFpc1JzY1JlcXVlc3QgJiZcbiAgICAhaXNKc1JlcXVlc3QgJiZcbiAgICAhaXNKc29uUmVxdWVzdCAmJlxuICAgIChpc0NzcyB8fCBoYXNDc3NIZWFkZXIpO1xuXG4gIC8vIFVzZSB0aGUgbm9ybWFsaXplZCB2YWx1ZSBmb3IgZmlsZSBwYXRoIGNvbnN0cnVjdGlvblxuICAvLyBUaGUgbm9ybWFsaXplciBzaG91bGQgaGF2ZSBhbHJlYWR5IHN0cmlwcGVkIGJhc2UgVVJMcyBwcm9wZXJseVxuICBjb25zdCByb3V0ZUZvckZpbGVQYXRoID0gdmFsdWU7XG5cbiAgbGV0IGZpbGVQYXRoID0gcmVzb2x2ZShob3N0RGlyLCByb3V0ZUZvckZpbGVQYXRoKTtcbiAgbGV0IGNvbnRlbnRUeXBlO1xuICBpZiAoaXNTZXJ2ZXJBY3Rpb25SZXF1ZXN0KSB7XG4gICAgLy8gRm9yIHNlcnZlciBhY3Rpb25zLCB3ZSdsbCBnZXQgdGhlIGFjdHVhbCBmaWxlIHBhdGggZnJvbSB0aGUgcmVxdWVzdCBib2R5XG4gICAgLy8gVGhlIHJvdXRlIGlzIGp1c3QgYSBwbGFjZWhvbGRlclxuICAgIGZpbGVQYXRoID0gcmVzb2x2ZShob3N0RGlyLCByb3V0ZUZvckZpbGVQYXRoKTtcbiAgICBjb250ZW50VHlwZSA9IFwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOFwiO1xuICB9IGVsc2UgaWYgKGlzSHRtbFJlcXVlc3QpIHtcbiAgICBpZiAoIWlzSHRtbCkge1xuICAgICAgZmlsZVBhdGggPSByZXNvbHZlKFxuICAgICAgICBob3N0RGlyLFxuICAgICAgICByb3V0ZUZvckZpbGVQYXRoLFxuICAgICAgICBoYW5kbGVyT3B0aW9ucy5idWlsZC5odG1sT3V0cHV0UGF0aFxuICAgICAgKTtcbiAgICB9XG4gICAgY29udGVudFR5cGUgPSBcInRleHQvaHRtbDsgY2hhcnNldD11dGYtOFwiO1xuICB9IGVsc2UgaWYgKGlzUnNjUmVxdWVzdCkge1xuICAgIGlmICghaXNSc2MpIHtcbiAgICAgIC8vIFZhbHVlIGRvZXNuJ3QgZW5kIHdpdGggLnJzYywgYXBwZW5kIHRoZSByc2Mgb3V0cHV0IHBhdGhcbiAgICAgIGZpbGVQYXRoID0gcmVzb2x2ZShcbiAgICAgICAgaG9zdERpcixcbiAgICAgICAgcm91dGVGb3JGaWxlUGF0aCxcbiAgICAgICAgaGFuZGxlck9wdGlvbnMuYnVpbGQucnNjT3V0cHV0UGF0aFxuICAgICAgKTtcbiAgICB9XG4gICAgY29udGVudFR5cGUgPSBcInRleHQveC1jb21wb25lbnQ7IGNoYXJzZXQ9dXRmLThcIjtcbiAgfSBlbHNlIGlmIChpc0Nzc1JlcXVlc3QpIHtcbiAgICBpZiAoIWlzQ3NzKSB7XG4gICAgICBmaWxlUGF0aCA9IHJlc29sdmUoaG9zdERpciwgcm91dGVGb3JGaWxlUGF0aCArIFwiLmNzc1wiKTtcbiAgICB9XG4gICAgY29udGVudFR5cGUgPSBcInRleHQvY3NzOyBjaGFyc2V0PXV0Zi04XCI7XG4gIH0gZWxzZSBpZiAoaXNKc1JlcXVlc3QpIHtcbiAgICBpZiAoIWlzSlMpIHtcbiAgICAgIGZpbGVQYXRoID0gcmVzb2x2ZShob3N0RGlyLCByb3V0ZUZvckZpbGVQYXRoICsgXCIuanNcIik7XG4gICAgfVxuICAgIGNvbnRlbnRUeXBlID0gXCJhcHBsaWNhdGlvbi9qYXZhc2NyaXB0OyBjaGFyc2V0PXV0Zi04XCI7XG4gIH0gZWxzZSBpZiAoaXNKc29uUmVxdWVzdCkge1xuICAgIGlmICghaXNKc29uKSB7XG4gICAgICBmaWxlUGF0aCA9IHJlc29sdmUoaG9zdERpciwgcm91dGVGb3JGaWxlUGF0aCArIFwiLmpzb25cIik7XG4gICAgfVxuICAgIGNvbnRlbnRUeXBlID0gXCJhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04XCI7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgbWltZVR5cGUgPSBNSU1FX1RZUEVTW2V4dF07XG4gICAgaWYgKG1pbWVUeXBlKSB7XG4gICAgICBjb250ZW50VHlwZSA9IG1pbWVUeXBlICsgXCI7IGNoYXJzZXQ9dXRmLThcIjtcbiAgICB9IGVsc2Uge1xuICAgICAgY29udGVudFR5cGUgPSBcImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTsgY2hhcnNldD11dGYtOFwiO1xuICAgIH1cbiAgfVxuXG4gIGlmIChoYW5kbGVyT3B0aW9ucy52ZXJib3NlKSB7XG4gICAgaWYgKGlzRm9ybUFjdGlvblJlcXVlc3QpIHtcbiAgICAgIGhhbmRsZXJPcHRpb25zLmxvZ2dlci5pbmZvKGBbcmVhY3QtZGV2LXNlcnZlcl0gKGZvcm0tYWN0aW9uKSAke3JvdXRlfWApO1xuICAgIH0gZWxzZSBpZiAoaXNTZXJ2ZXJBY3Rpb25SZXF1ZXN0KSB7XG4gICAgICBoYW5kbGVyT3B0aW9ucy5sb2dnZXIuaW5mbyhgW3JlYWN0LWRldi1zZXJ2ZXJdIChzZXJ2ZXItYWN0aW9uKSAke3JvdXRlfWApO1xuICAgIH0gZWxzZSBpZiAoaXNIdG1sUmVxdWVzdCkge1xuICAgICAgaGFuZGxlck9wdGlvbnMubG9nZ2VyLmluZm8oYFtyZWFjdC1kZXYtc2VydmVyXSAoaHRtbCkgJHtyb3V0ZX1gKTtcbiAgICB9IGVsc2UgaWYgKGlzUnNjUmVxdWVzdCkge1xuICAgICAgaGFuZGxlck9wdGlvbnMubG9nZ2VyLmluZm8oYFtyZWFjdC1kZXYtc2VydmVyXSAocnNjKSAke3JvdXRlfWApO1xuICAgIH0gZWxzZSBpZiAoaXNDc3NSZXF1ZXN0KSB7XG4gICAgICBoYW5kbGVyT3B0aW9ucy5sb2dnZXIuaW5mbyhgW3JlYWN0LWRldi1zZXJ2ZXJdIChjc3MpICR7cm91dGV9YCk7XG4gICAgfSBlbHNlIGlmIChpc0pzUmVxdWVzdCkge1xuICAgICAgaGFuZGxlck9wdGlvbnMubG9nZ2VyLmluZm8oYFtyZWFjdC1kZXYtc2VydmVyXSAoanMpICR7cm91dGV9YCk7XG4gICAgfSBlbHNlIGlmIChpc0pzb25SZXF1ZXN0KSB7XG4gICAgICBoYW5kbGVyT3B0aW9ucy5sb2dnZXIuaW5mbyhgW3JlYWN0LWRldi1zZXJ2ZXJdIChqc29uKSAke3JvdXRlfWApO1xuICAgIH0gZWxzZSB7XG4gICAgICBoYW5kbGVyT3B0aW9ucy5sb2dnZXIuaW5mbyhgW3JlYWN0LWRldi1zZXJ2ZXJdIChvdGhlcikgJHtyb3V0ZX1gKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHtcbiAgICByb3V0ZSxcbiAgICB1cmw6IHJvdXRlVG9VUkwocm91dGUsIGhhbmRsZXJPcHRpb25zLm1vZHVsZUJhc2VVUkwsIGhhbmRsZXJPcHRpb25zLmJ1aWxkLnJzY091dHB1dFBhdGgpLFxuICAgIGV4dCxcbiAgICBpc0h0bWxSZXF1ZXN0LFxuICAgIGlzUnNjUmVxdWVzdCxcbiAgICBpc0Nzc1JlcXVlc3QsXG4gICAgaXNDc3MsXG4gICAgaXNIdG1sLFxuICAgIGlzUnNjLFxuICAgIGlzRm9sZGVyLFxuICAgIGNvbnRlbnRUeXBlLFxuICAgIGZpbGVQYXRoLFxuICAgIGlzSlMsXG4gICAgaXNWZW5kb3IsXG4gICAgaXNWaXJ0dWFsLFxuICAgIGhhc0pzSGVhZGVyLFxuICAgIGlzSnNSZXF1ZXN0LFxuICAgIGlzSnNvbixcbiAgICBpc0pzb25SZXF1ZXN0LFxuICAgIGhhc0Nzc0hlYWRlcixcbiAgICBoYXNKc29uSGVhZGVyLFxuICAgIGhhc0h0bWxIZWFkZXIsXG4gICAgaGFzUnNjSGVhZGVyLFxuICAgIGhhc1NlcnZlckFjdGlvbkhlYWRlcnMsXG4gICAgaXNTZXJ2ZXJBY3Rpb25SZXF1ZXN0LFxuICAgIGlzRm9y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
163
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdEluZm8uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BsdWdpbi9oZWxwZXJzL3JlcXVlc3RJbmZvLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgdHlwZSB7IENyZWF0ZUhhbmRsZXJPcHRpb25zIH0gZnJvbSBcIi4uL3R5cGVzLmpzXCI7XG5pbXBvcnQgeyB0eXBlIENvbm5lY3QgfSBmcm9tIFwidml0ZVwiO1xuaW1wb3J0IHsgTUlNRV9UWVBFUyB9IGZyb20gXCIuLi9jb25maWcvbWltZVR5cGVzLmpzXCI7XG5pbXBvcnQgeyByZXF1ZXN0VG9Sb3V0ZSB9IGZyb20gXCIuL3JlcXVlc3RUb1JvdXRlLmpzXCI7XG5pbXBvcnQgeyByb3V0ZVRvVVJMIH0gZnJvbSBcIi4uL3V0aWxzL3JvdXRlVG9VUkwuanNcIjtcblxuLyoqXG4gKiAjIFJlcXVlc3QgaW5mb1xuICpcbiAqIERvZXMgdGhlIGluaXRpYWwgd29yayB0byBjaGVjayBpZiB0aGUgcmVxdWVzdCBpcyBmb3IgaHRtbCwgcnNjLCBqc29uLCBqcywgY3NzLCBzZXJ2ZXItYWN0aW9uLCBvciBzb21ldGhpbmcgZWxzZSBub3QgaGFuZGxlZCBieSB0aGlzIHBsdWdpbi5cbiAqXG4gKiBAcGFyYW0gcmVxXG4gKiBAcGFyYW0gaGFuZGxlck9wdGlvbnNcbiAqIEBwYXJhbSBob3N0RGlyXG4gKiBAcmV0dXJuc1xuICovXG5leHBvcnQgZnVuY3Rpb24gcmVxdWVzdEluZm8oXG4gIHJlcTogQ29ubmVjdC5JbmNvbWluZ01lc3NhZ2UsXG4gIGhhbmRsZXJPcHRpb25zOiBQaWNrPFxuICAgIENyZWF0ZUhhbmRsZXJPcHRpb25zLFxuICAgIHwgXCJub3JtYWxpemVyXCJcbiAgICB8IFwiYnVpbGRcIlxuICAgIHwgXCJhdXRvRGlzY292ZXJcIlxuICAgIHwgXCJ2ZXJib3NlXCJcbiAgICB8IFwibW9kdWxlQmFzZVBhdGhcIlxuICAgIHwgXCJtb2R1bGVCYXNlVVJMXCJcbiAgICB8IFwidmVyYm9zZVwiXG4gICAgfCBcImxvZ2dlclwiXG4gID4sXG4gIGhvc3REaXI6IHN0cmluZyxcbikge1xuICBjb25zdCByb3V0ZSA9IHJlcXVlc3RUb1JvdXRlKHJlcSwge1xuICAgIG1vZHVsZUJhc2VQYXRoOiBoYW5kbGVyT3B0aW9ucy5tb2R1bGVCYXNlUGF0aCxcbiAgICBtb2R1bGVCYXNlVVJMOiBoYW5kbGVyT3B0aW9ucy5tb2R1bGVCYXNlVVJMLFxuICAgIGJ1aWxkOiBoYW5kbGVyT3B0aW9ucy5idWlsZCxcbiAgfSk7XG5cbiAgaWYgKCFyb3V0ZSkge1xuICAgIHJldHVybiB7XG4gICAgICByb3V0ZTogXCIvXCIsXG4gICAgICB1cmw6IHJvdXRlVG9VUkwoXCIvXCIsIGhhbmRsZXJPcHRpb25zLm1vZHVsZUJhc2VVUkwsIGhhbmRsZXJPcHRpb25zLmJ1aWxkLnJzY091dHB1dFBhdGgpLFxuICAgICAgZXh0OiBcIlwiLFxuICAgIH07XG4gIH1cblxuICAvLyBVc2UgdGhlIGNsZWFuZWQgcm91dGUgZm9yIG5vcm1hbGl6YXRpb24sIG5vdCB0aGUgcmF3IHJlcS51cmxcbiAgLy8gVGhpcyBlbnN1cmVzIGJhc2UgVVJMIGlzIHByb3Blcmx5IHN0cmlwcGVkIGJlZm9yZSBub3JtYWxpemF0aW9uXG4gIGNvbnN0IFssIHZhbHVlXSA9IGhhbmRsZXJPcHRpb25zLm5vcm1hbGl6ZXIocm91dGUpO1xuICBpZiAoaGFuZGxlck9wdGlvbnMudmVyYm9zZSkge1xuICAgIGlmICh2YWx1ZSAmJiB2YWx1ZSAhPT0gXCJcIikge1xuICAgICAgaGFuZGxlck9wdGlvbnMubG9nZ2VyLmluZm8oYFtyZXF1ZXN0SW5mb10gVmFsdWU6IFxcXCIke3ZhbHVlfVxcXCJgKTtcbiAgICB9XG4gICAgaWYgKGhvc3REaXIgJiYgaG9zdERpciAhPT0gXCJcIikge1xuICAgICAgaGFuZGxlck9wdGlvbnMubG9nZ2VyLmluZm8oYFtyZXF1ZXN0SW5mb10gSG9zdCBEaXI6IFxcXCIke2hvc3REaXJ9XFxcImApO1xuICAgIH1cbiAgICBpZiAocmVxLnVybCAmJiByZXEudXJsICE9PSBcIlwiKSB7XG4gICAgICBoYW5kbGVyT3B0aW9ucy5sb2dnZXIuaW5mbyhgW3JlcXVlc3RJbmZvXSBSZXF1ZXN0IFVSTDogXFxcIiR7cmVxLnVybH1cXFwiYCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgZG90SW5kZXggPSB2YWx1ZS5sYXN0SW5kZXhPZihcIi5cIik7XG4gIGNvbnN0IGV4dCA9IGRvdEluZGV4ID09PSAtMSA/IFwiXCIgOiB2YWx1ZS5zbGljZShkb3RJbmRleCk7XG4gIC8vIGhhbmRsZSBpbmRleC5odG1sXG4gIGNvbnN0IGlzVmVuZG9yID0gaGFuZGxlck9wdGlvbnMuYXV0b0Rpc2NvdmVyLnZlbmRvclBhdHRlcm4udGVzdCh2YWx1ZSk7XG4gIGNvbnN0IGlzVmlydHVhbCA9IGhhbmRsZXJPcHRpb25zLmF1dG9EaXNjb3Zlci52aXJ0dWFsUGF0dGVybi50ZXN0KHZhbHVlKTtcbiAgY29uc3QgaXNKUyA9IGhhbmRsZXJPcHRpb25zLmF1dG9EaXNjb3Zlci5tb2R1bGVQYXR0ZXJuLnRlc3QodmFsdWUpO1xuICBjb25zdCBpc0h0bWwgPSBoYW5kbGVyT3B0aW9ucy5hdXRvRGlzY292ZXIuaHRtbFBhdHRlcm4udGVzdCh2YWx1ZSk7XG4gIGNvbnN0IGlzQ3NzID0gaGFuZGxlck9wdGlvbnMuYXV0b0Rpc2NvdmVyLmNzc1BhdHRlcm4udGVzdCh2YWx1ZSk7XG4gIGNvbnN0IGlzSnNvbiA9IGhhbmRsZXJPcHRpb25zLmF1dG9EaXNjb3Zlci5qc29uUGF0dGVybi50ZXN0KHZhbHVlKTtcbiAgY29uc3QgaXNSc2MgPSBoYW5kbGVyT3B0aW9ucy5hdXRvRGlzY292ZXIucnNjUGF0dGVybi50ZXN0KHZhbHVlKTtcbiAgY29uc3QgaGFzSnNIZWFkZXIgPVxuICAgIHJlcS5oZWFkZXJzW1wic2VjLWZldGNoLWRlc3RcIl0gPT09IFwic2NyaXB0XCIgfHxcbiAgICByZXEuaGVhZGVyc1tcImFjY2VwdFwiXT8uaW5jbHVkZXMoXCIqLypcIikgfHxcbiAgICByZXEuaGVhZGVyc1tcImFjY2VwdFwiXT8uaW5jbHVkZXMoXCJ0ZXh0L2phdmFzY3JpcHRcIik7XG4gIGNvbnN0IGhhc0pzb25IZWFkZXIgPSByZXEuaGVhZGVyc1tcImFjY2VwdFwiXT8uaW5jbHVkZXMoXCJhcHBsaWNhdGlvbi9qc29uXCIpO1xuICBjb25zdCBoYXNIdG1sSGVhZGVyID0gcmVxLmhlYWRlcnMuYWNjZXB0Py5pbmNsdWRlcyhcInRleHQvaHRtbFwiKTtcbiAgY29uc3QgaGFzUnNjSGVhZGVyID0gcmVxLmhlYWRlcnMuYWNjZXB0Py5pbmNsdWRlcyhcInRleHQveC1jb21wb25lbnRcIik7XG4gIC8vIFN1cHBvcnQgP19yc2MgcXVlcnkgcGFyYW0gKGUuZy4gLz9fcnNjIGZvciBicm93c2VyIGRlYnVnZ2luZykgYXMgYWx0ZXJuYXRpdmUgdG8gQWNjZXB0IGhlYWRlciAodXNlZnVsIGZvciBicm93c2VyIGRlYnVnZ2luZylcbiAgY29uc3QgaGFzUnNjUXVlcnlQYXJhbSA9IC9bPyZdX3JzY1xcYi8udGVzdChyZXEudXJsIHx8IFwiXCIpO1xuICBjb25zdCBoYXNDc3NIZWFkZXIgPSByZXEuaGVhZGVycy5hY2NlcHQ/LmluY2x1ZGVzKFwidGV4dC9jc3NcIik7XG4gIGNvbnN0IGlzRm9sZGVyID0gIWV4dDtcbiAgY29uc3QgaXNGb3JtQ29udGVudFR5cGUgPVxuICAgIHJlcS5oZWFkZXJzW1wiY29udGVudC10eXBlXCJdPy5pbmNsdWRlcyhcbiAgICAgIFwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkXCJcbiAgICApIHx8ICEhcmVxLmhlYWRlcnNbXCJjb250ZW50LXR5cGVcIl0/LmluY2x1ZGVzKFwibXVsdGlwYXJ0L2Zvcm0tZGF0YVwiKTtcblxuICAvLyBTZXJ2ZXIgYWN0aW9uIGRldGVjdGlvblxuICBjb25zdCBoYXNSc2NBY3Rpb25IZWFkZXIgPSAhIXJlcS5oZWFkZXJzW1wieC1yc2MtYWN0aW9uXCJdO1xuICBjb25zdCBoYXNTZXJ2ZXJBY3Rpb25IZWFkZXJzID1cbiAgICByZXEubWV0aG9kID09PSBcIlBPU1RcIiAmJlxuICAgIChoYXNSc2NBY3Rpb25IZWFkZXIgfHwgKFxuICAgICAgKHJlcS5oZWFkZXJzW1wic2VjLWZldGNoLWRlc3RcIl0gPT09IFwiZW1wdHlcIiB8fFxuICAgICAgICByZXEuaGVhZGVyc1tcInNlYy1mZXRjaC1kZXN0XCJdID09PSBcIlwiKSAmJlxuICAgICAgcmVxLmhlYWRlcnNbXCJzZWMtZmV0Y2gtbW9kZVwiXSA9PT0gXCJjb3JzXCJcbiAgICApKTtcbiAgY29uc3QgaXNTZXJ2ZXJBY3Rpb25SZXF1ZXN0ID0gaGFzU2VydmVyQWN0aW9uSGVhZGVycztcblxuICBjb25zdCBpc0Zvcm1BY3Rpb25SZXF1ZXN0ID1cbiAgICAhaXNTZXJ2ZXJBY3Rpb25SZXF1ZXN0ICYmXG4gICAgKHJlcS5tZXRob2QgPT09IFwiUE9TVFwiIHx8XG4gICAgICAoaXNGb3JtQ29udGVudFR5cGUgJiZcbiAgICAgICAgcmVxLmhlYWRlcnNbXCJzZWMtZmV0Y2gtZGVzdFwiXSA9PT0gXCJkb2N1bWVudFwiICYmXG4gICAgICAgIHJlcS5oZWFkZXJzW1wic2VjLWZldGNoLW1vZGVcIl0gPT09IFwibmF2aWdhdGVcIikpO1xuXG4gIGNvbnN0IGlzSnNSZXF1ZXN0ID1cbiAgICAhaXNGb3JtQWN0aW9uUmVxdWVzdCAmJlxuICAgICFpc0pzb24gJiZcbiAgICAhaXNIdG1sICYmXG4gICAgIWlzQ3NzICYmXG4gICAgIWlzUnNjICYmXG4gICAgKGlzSlMgfHwgaGFzSnNIZWFkZXIpO1xuICBjb25zdCBpc0pzb25SZXF1ZXN0ID0gaXNKc29uIHx8IChoYXNKc29uSGVhZGVyICYmICFpc0pzUmVxdWVzdCk7XG4gIC8vIEZvcm0gYWN0aW9uIGRldGVjdGlvblxuXG4gIGNvbnN0IGlzSHRtbFJlcXVlc3QgPVxuICAgICFoYXNSc2NRdWVyeVBhcmFtICYmIChpc0h0bWwgfHxcbiAgICBoYXNIdG1sSGVhZGVyIHx8XG4gICAgKGlzRm9sZGVyICYmXG4gICAgICAhaGFzUnNjSGVhZGVyICYmXG4gICAgICAhaXNSc2MgJiZcbiAgICAgICFpc0pzUmVxdWVzdCAmJlxuICAgICAgIWlzRm9ybUFjdGlvblJlcXVlc3QpKTtcbiAgY29uc3QgaXNSc2NSZXF1ZXN0ID1cbiAgICBoYXNSc2NRdWVyeVBhcmFtIHx8ICghaXNKc1JlcXVlc3QgJiYgIWlzSHRtbFJlcXVlc3QgJiYgKGlzUnNjIHx8IGhhc1JzY0hlYWRlcikpO1xuICBjb25zdCBpc0Nzc1JlcXVlc3QgPVxuICAgICFpc0h0bWxSZXF1ZXN0ICYmXG4gICAgIWlzUnNjUmVxdWVzdCAmJlxuICAgICFpc0pzUmVxdWVzdCAmJlxuICAgICFpc0pzb25SZXF1ZXN0ICYmXG4gICAgKGlzQ3NzIHx8IGhhc0Nzc0hlYWRlcik7XG5cbiAgLy8gVXNlIHRoZSBub3JtYWxpemVkIHZhbHVlIGZvciBmaWxlIHBhdGggY29uc3RydWN0aW9uXG4gIC8vIFRoZSBub3JtYWxpemVyIHNob3VsZCBoYXZlIGFscmVhZHkgc3RyaXBwZWQgYmFzZSBVUkxzIHByb3Blcmx5XG4gIGNvbnN0IHJvdXRlRm9yRmlsZVBhdGggPSB2YWx1ZTtcblxuICBsZXQgZmlsZVBhdGggPSByZXNvbHZlKGhvc3REaXIsIHJvdXRlRm9yRmlsZVBhdGgpO1xuICBsZXQgY29udGVudFR5cGU7XG4gIGlmIChpc1NlcnZlckFjdGlvblJlcXVlc3QpIHtcbiAgICAvLyBGb3Igc2VydmVyIGFjdGlvbnMsIHdlJ2xsIGdldCB0aGUgYWN0dWFsIGZpbGUgcGF0aCBmcm9tIHRoZSByZXF1ZXN0IGJvZHlcbiAgICAvLyBUaGUgcm91dGUgaXMganVzdCBhIHBsYWNlaG9sZGVyXG4gICAgZmlsZVBhdGggPSByZXNvbHZlKGhvc3REaXIsIHJvdXRlRm9yRmlsZVBhdGgpO1xuICAgIGNvbnRlbnRUeXBlID0gXCJhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04XCI7XG4gIH0gZWxzZSBpZiAoaXNIdG1sUmVxdWVzdCkge1xuICAgIGlmICghaXNIdG1sKSB7XG4gICAgICBmaWxlUGF0aCA9IHJlc29sdmUoXG4gICAgICAgIGhvc3REaXIsXG4gICAgICAgIHJvdXRlRm9yRmlsZVBhdGgsXG4gICAgICAgIGhhbmRsZXJPcHRpb25zLmJ1aWxkLmh0bWxPdXRwdXRQYXRoXG4gICAgICApO1xuICAgIH1cbiAgICBjb250ZW50VHlwZSA9IFwidGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04XCI7XG4gIH0gZWxzZSBpZiAoaXNSc2NSZXF1ZXN0KSB7XG4gICAgaWYgKCFpc1JzYykge1xuICAgICAgLy8gVmFsdWUgZG9lc24ndCBlbmQgd2l0aCAucnNjLCBhcHBlbmQgdGhlIHJzYyBvdXRwdXQgcGF0aFxuICAgICAgZmlsZVBhdGggPSByZXNvbHZlKFxuICAgICAgICBob3N0RGlyLFxuICAgICAgICByb3V0ZUZvckZpbGVQYXRoLFxuICAgICAgICBoYW5kbGVyT3B0aW9ucy5idWlsZC5yc2NPdXRwdXRQYXRoXG4gICAgICApO1xuICAgIH1cbiAgICBjb250ZW50VHlwZSA9IFwidGV4dC94LWNvbXBvbmVudDsgY2hhcnNldD11dGYtOFwiO1xuICB9IGVsc2UgaWYgKGlzQ3NzUmVxdWVzdCkge1xuICAgIGlmICghaXNDc3MpIHtcbiAgICAgIGZpbGVQYXRoID0gcmVzb2x2ZShob3N0RGlyLCByb3V0ZUZvckZpbGVQYXRoICsgXCIuY3NzXCIpO1xuICAgIH1cbiAgICBjb250ZW50VHlwZSA9IFwidGV4dC9jc3M7IGNoYXJzZXQ9dXRmLThcIjtcbiAgfSBlbHNlIGlmIChpc0pzUmVxdWVzdCkge1xuICAgIGlmICghaXNKUykge1xuICAgICAgZmlsZVBhdGggPSByZXNvbHZlKGhvc3REaXIsIHJvdXRlRm9yRmlsZVBhdGggKyBcIi5qc1wiKTtcbiAgICB9XG4gICAgY29udGVudFR5cGUgPSBcImFwcGxpY2F0aW9uL2phdmFzY3JpcHQ7IGNoYXJzZXQ9dXRmLThcIjtcbiAgfSBlbHNlIGlmIChpc0pzb25SZXF1ZXN0KSB7XG4gICAgaWYgKCFpc0pzb24pIHtcbiAgICAgIGZpbGVQYXRoID0gcmVzb2x2ZShob3N0RGlyLCByb3V0ZUZvckZpbGVQYXRoICsgXCIuanNvblwiKTtcbiAgICB9XG4gICAgY29udGVudFR5cGUgPSBcImFwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLThcIjtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBtaW1lVHlwZSA9IE1JTUVfVFlQRVNbZXh0XTtcbiAgICBpZiAobWltZVR5cGUpIHtcbiAgICAgIGNvbnRlbnRUeXBlID0gbWltZVR5cGUgKyBcIjsgY2hhcnNldD11dGYtOFwiO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb250ZW50VHlwZSA9IFwiYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtXCI7XG4gICAgfVxuICB9XG5cbiAgaWYgKGhhbmRsZXJPcHRpb25zLnZlcmJvc2UpIHtcbiAgICBpZiAoaXNGb3JtQWN0aW9uUmVxdWVzdCkge1xuICAgICAgaGFuZGxlck9wdGlvbnMubG9nZ2VyLmluZm8oYFtyZWFjdC1kZXYtc2VydmVyXSAoZm9ybS1hY3Rpb24pICR7cm91dGV9YCk7XG4gICAgfSBlbHNlIGlmIChpc1NlcnZlckFjdGlvblJlcXVlc3QpIHtcbiAgICAgIGhhbmRsZXJPcHRpb25zLmxvZ2dlci5pbmZvKGBbcmVhY3QtZGV2LXNlcnZlcl0gKHNlcnZlci1hY3Rpb24pICR7cm91dGV9YCk7XG4gICAgfSBlbHNlIGlmIChpc0h0bWxSZXF1ZXN0KSB7XG4gICAgICBoYW5kbGVyT3B0aW9ucy5sb2dnZXIuaW5mbyhgW3JlYWN0LWRldi1zZXJ2ZXJdIChodG1sKSAke3JvdXRlfWApO1xuICAgIH0gZWxzZSBpZiAoaXNSc2NSZXF1ZXN0KSB7XG4gICAgICBoYW5kbGVyT3B0aW9ucy5sb2dnZXIuaW5mbyhgW3JlYWN0LWRldi1zZXJ2ZXJdIChyc2MpICR7cm91dGV9YCk7XG4gICAgfSBlbHNlIGlmIChpc0Nzc1JlcXVlc3QpIHtcbiAgICAgIGhhbmRsZXJPcHRpb25zLmxvZ2dlci5pbmZvKGBbcmVhY3QtZGV2LXNlcnZlcl0gKGNzcykgJHtyb3V0ZX1gKTtcbiAgICB9IGVsc2UgaWYgKGlzSnNSZXF1ZXN0KSB7XG4gICAgICBoYW5kbGVyT3B0aW9ucy5sb2dnZXIuaW5mbyhgW3JlYWN0LWRldi1zZXJ2ZXJdIChqcykgJHtyb3V0ZX1gKTtcbiAgICB9IGVsc2UgaWYgKGlzSnNvblJlcXVlc3QpIHtcbiAgICAgIGhhbmRsZXJPcHRpb25zLmxvZ2dlci5pbmZvKGBbcmVhY3QtZGV2LXNlcnZlcl0gKGpzb24pICR7cm91dGV9YCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGhhbmRsZXJPcHRpb25zLmxvZ2dlci5pbmZvKGBbcmVhY3QtZGV2LXNlcnZlcl0gKG90aGVyKSAke3JvdXRlfWApO1xuICAgIH1cbiAgfVxuICByZXR1cm4ge1xuICAgIHJvdXRlLFxuICAgIHVybDogcm91dGVUb1VSTChyb3V0ZSwgaGFuZGxlck9wdGlvbnMubW9kdWxlQmFzZVVSTCwgaGFuZGxlck9wdGlvbnMuYnVpbGQucnNjT3V0cHV0UGF0aCksXG4gICAgZXh0LFxuICAgIGlzSHRtbFJlcXVlc3QsXG4gICAgaXNSc2NSZXF1ZXN0LFxuICAgIGlzQ3NzUmVxdWVzdCxcbiAgICBpc0NzcyxcbiAgICBpc0h0bWwsXG4gICAgaXNSc2MsXG4gICAgaXNGb2xkZXIsXG4gICAgY29udGVudFR5cGUsXG4gICAgZmlsZVBhdGgsXG4gICAgaXNKUyxcbiAgICBpc1ZlbmRvcixcbiAgICBpc1ZpcnR1YWwsXG4gICAgaGFzSnNIZWFkZXIsXG4gICAgaXNKc1JlcXVlc3QsXG4gICAgaXNKc29uLFxuICAgIGlzSnNvblJlcXVlc3QsXG4gICAgaGFzQ3NzSGVhZGVyLFxuICAgIGhhc0pzb25IZWFkZXIsXG4gICAgaGFzSHRtbEhlYWRlcixcbiAgICBoYXNSc2NIZWFkZXIsXG4gICAgaGFzU2VydmVyQWN0aW9uSGVhZGVycyxcbiAgICBpc1NlcnZlckFjdGlvblJlcXVlc3QsXG4gICAgaXNGb3JtQ29udGVudFR5cGUsXG4gICAgaXNGb3JtQWN0aW9uUmVxdWVzdCxcbiAg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
@@ -1,4 +1,4 @@
1
- import type { Worker, MessagePort } from "node:worker_threads";
1
+ import type { Worker } from "node:worker_threads";
2
2
  /**
3
3
  * Centralized worker cleanup utilities
4
4
  * Provides consistent cleanup patterns across the codebase
@@ -15,15 +15,4 @@ export interface WorkerCleanupOptions {
15
15
  * Safely cleans up a worker with consistent error handling
16
16
  */
17
17
  export declare function cleanupWorker(worker: Worker | null | undefined, options?: WorkerCleanupOptions): void;
18
- /**
19
- * Safely cleans up MessagePorts with consistent error handling
20
- */
21
- export declare function cleanupMessagePorts(ports: (MessagePort | null | undefined)[], options?: {
22
- logErrors?: boolean;
23
- }): void;
24
- /**
25
- * Comprehensive cleanup for worker + MessagePorts combination
26
- * This is the most common cleanup pattern in the codebase
27
- */
28
- export declare function cleanupWorkerAndPorts(worker: Worker | null | undefined, ports: (MessagePort | null | undefined)[], options?: WorkerCleanupOptions): void;
29
18
  //# sourceMappingURL=workerCleanup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workerCleanup.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/workerCleanup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAE/D;;;GAGG;AAEH,MAAM,WAAW,oBAAoB;IACnC,sDAAsD;IACtD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sDAAsD;IACtD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qDAAqD;IACrD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACjC,OAAO,GAAE,oBAAyB,GACjC,IAAI,CAuBN;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,CAAC,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,EACzC,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAO,GACpC,IAAI,CAkBN;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACjC,KAAK,EAAE,CAAC,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,EACzC,OAAO,GAAE,oBAAyB,GACjC,IAAI,CAGN"}
1
+ {"version":3,"file":"workerCleanup.d.ts","sourceRoot":"","sources":["../../../plugin/helpers/workerCleanup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD;;;GAGG;AAEH,MAAM,WAAW,oBAAoB;IACnC,sDAAsD;IACtD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sDAAsD;IACtD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qDAAqD;IACrD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACjC,OAAO,GAAE,oBAAyB,GACjC,IAAI,CAuBN"}
@@ -25,4 +25,4 @@ function cleanupWorker(worker, options = {}) {
25
25
  }
26
26
 
27
27
  export { cleanupWorker };
28
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2VyQ2xlYW51cC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGx1Z2luL2hlbHBlcnMvd29ya2VyQ2xlYW51cC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFdvcmtlciwgTWVzc2FnZVBvcnQgfSBmcm9tIFwibm9kZTp3b3JrZXJfdGhyZWFkc1wiO1xuXG4vKipcbiAqIENlbnRyYWxpemVkIHdvcmtlciBjbGVhbnVwIHV0aWxpdGllc1xuICogUHJvdmlkZXMgY29uc2lzdGVudCBjbGVhbnVwIHBhdHRlcm5zIGFjcm9zcyB0aGUgY29kZWJhc2VcbiAqL1xuXG5leHBvcnQgaW50ZXJmYWNlIFdvcmtlckNsZWFudXBPcHRpb25zIHtcbiAgLyoqIFdoZXRoZXIgdG8gdGVybWluYXRlIHRoZSB3b3JrZXIgKGRlZmF1bHQ6IHRydWUpICovXG4gIHRlcm1pbmF0ZT86IGJvb2xlYW47XG4gIC8qKiBXaGV0aGVyIHRvIHJlbW92ZSBhbGwgbGlzdGVuZXJzIChkZWZhdWx0OiB0cnVlKSAqL1xuICByZW1vdmVMaXN0ZW5lcnM/OiBib29sZWFuO1xuICAvKiogV2hldGhlciB0byBsb2cgY2xlYW51cCBlcnJvcnMgKGRlZmF1bHQ6IGZhbHNlKSAqL1xuICBsb2dFcnJvcnM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFNhZmVseSBjbGVhbnMgdXAgYSB3b3JrZXIgd2l0aCBjb25zaXN0ZW50IGVycm9yIGhhbmRsaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjbGVhbnVwV29ya2VyKFxuICB3b3JrZXI6IFdvcmtlciB8IG51bGwgfCB1bmRlZmluZWQsXG4gIG9wdGlvbnM6IFdvcmtlckNsZWFudXBPcHRpb25zID0ge31cbik6IHZvaWQge1xuICBpZiAoIXdvcmtlcikgcmV0dXJuO1xuXG4gIGNvbnN0IHtcbiAgICB0ZXJtaW5hdGUgPSB0cnVlLFxuICAgIHJlbW92ZUxpc3RlbmVycyA9IHRydWUsXG4gICAgbG9nRXJyb3JzID0gZmFsc2VcbiAgfSA9IG9wdGlvbnM7XG5cbiAgdHJ5IHtcbiAgICBpZiAocmVtb3ZlTGlzdGVuZXJzKSB7XG4gICAgICB3b3JrZXIucmVtb3ZlQWxsTGlzdGVuZXJzKCk7XG4gICAgfVxuICAgIFxuICAgIGlmICh0ZXJtaW5hdGUpIHtcbiAgICAgIHdvcmtlci50ZXJtaW5hdGUoKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgaWYgKGxvZ0Vycm9ycykge1xuICAgICAgY29uc29sZS53YXJuKCdbd29ya2VyQ2xlYW51cF0gRXJyb3IgZHVyaW5nIHdvcmtlciBjbGVhbnVwOicsIGVycm9yKTtcbiAgICB9XG4gICAgLy8gQWx3YXlzIGlnbm9yZSBjbGVhbnVwIGVycm9ycyB0byBwcmV2ZW50IGNhc2NhZGluZyBmYWlsdXJlc1xuICB9XG59XG5cbi8qKlxuICogU2FmZWx5IGNsZWFucyB1cCBNZXNzYWdlUG9ydHMgd2l0aCBjb25zaXN0ZW50IGVycm9yIGhhbmRsaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjbGVhbnVwTWVzc2FnZVBvcnRzKFxuICBwb3J0czogKE1lc3NhZ2VQb3J0IHwgbnVsbCB8IHVuZGVmaW5lZClbXSxcbiAgb3B0aW9uczogeyBsb2dFcnJvcnM/OiBib29sZWFuIH0gPSB7fVxuKTogdm9pZCB7XG4gIGNvbnN0IHsgbG9nRXJyb3JzID0gZmFsc2UgfSA9IG9wdGlvbnM7XG5cbiAgZm9yIChjb25zdCBwb3J0IG9mIHBvcnRzKSB7XG4gICAgaWYgKCFwb3J0KSBjb250aW51ZTtcblxuICAgIHRyeSB7XG4gICAgICAvLyBSZW1vdmUgb25tZXNzYWdlIGhhbmRsZXJzIChwcm9wZXJ0eSBhc3NpZ25tZW50IGNsZWFudXApXG4gICAgICAocG9ydCBhcyBhbnkpLm9ubWVzc2FnZSA9IG51bGw7XG4gICAgICAvLyBDbG9zZSB0aGUgcG9ydFxuICAgICAgcG9ydC5jbG9zZSgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBpZiAobG9nRXJyb3JzKSB7XG4gICAgICAgIGNvbnNvbGUud2FybignW3dvcmtlckNsZWFudXBdIEVycm9yIGR1cmluZyBNZXNzYWdlUG9ydCBjbGVhbnVwOicsIGVycm9yKTtcbiAgICAgIH1cbiAgICAgIC8vIEFsd2F5cyBpZ25vcmUgY2xlYW51cCBlcnJvcnNcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBDb21wcmVoZW5zaXZlIGNsZWFudXAgZm9yIHdvcmtlciArIE1lc3NhZ2VQb3J0cyBjb21iaW5hdGlvblxuICogVGhpcyBpcyB0aGUgbW9zdCBjb21tb24gY2xlYW51cCBwYXR0ZXJuIGluIHRoZSBjb2RlYmFzZVxuICovXG5leHBvcnQgZnVuY3Rpb24gY2xlYW51cFdvcmtlckFuZFBvcnRzKFxuICB3b3JrZXI6IFdvcmtlciB8IG51bGwgfCB1bmRlZmluZWQsXG4gIHBvcnRzOiAoTWVzc2FnZVBvcnQgfCBudWxsIHwgdW5kZWZpbmVkKVtdLFxuICBvcHRpb25zOiBXb3JrZXJDbGVhbnVwT3B0aW9ucyA9IHt9XG4pOiB2b2lkIHtcbiAgY2xlYW51cE1lc3NhZ2VQb3J0cyhwb3J0cywgeyBsb2dFcnJvcnM6IG9wdGlvbnMubG9nRXJyb3JzIH0pO1xuICBjbGVhbnVwV29ya2VyKHdvcmtlciwgb3B0aW9ucyk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFtQk8sU0FBUyxhQUNkLENBQUEsTUFBQSxFQUNBLE9BQWdDLEdBQUEsRUFDMUIsRUFBQTtBQUNOLEVBQUEsSUFBSSxDQUFDLE1BQVEsRUFBQTtBQUViLEVBQU0sTUFBQTtBQUFBLElBQ0osU0FBWSxHQUFBLElBQUE7QUFBQSxJQUNaLGVBQWtCLEdBQUEsSUFBQTtBQUFBLElBQ2xCLFNBQVksR0FBQTtBQUFBLEdBQ1YsR0FBQSxPQUFBO0FBRUosRUFBSSxJQUFBO0FBQ0YsSUFBQSxJQUFJLGVBQWlCLEVBQUE7QUFDbkIsTUFBQSxNQUFBLENBQU8sa0JBQW1CLEVBQUE7QUFBQTtBQUc1QixJQUFBLElBQUksU0FBVyxFQUFBO0FBQ2IsTUFBQSxNQUFBLENBQU8sU0FBVSxFQUFBO0FBQUE7QUFDbkIsV0FDTyxLQUFPLEVBQUE7QUFDZCxJQUFBLElBQUksU0FBVyxFQUFBO0FBQ2IsTUFBUSxPQUFBLENBQUEsSUFBQSxDQUFLLGdEQUFnRCxLQUFLLENBQUE7QUFBQTtBQUNwRTtBQUdKOzs7OyJ9
28
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2VyQ2xlYW51cC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGx1Z2luL2hlbHBlcnMvd29ya2VyQ2xlYW51cC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFdvcmtlciB9IGZyb20gXCJub2RlOndvcmtlcl90aHJlYWRzXCI7XG5cbi8qKlxuICogQ2VudHJhbGl6ZWQgd29ya2VyIGNsZWFudXAgdXRpbGl0aWVzXG4gKiBQcm92aWRlcyBjb25zaXN0ZW50IGNsZWFudXAgcGF0dGVybnMgYWNyb3NzIHRoZSBjb2RlYmFzZVxuICovXG5cbmV4cG9ydCBpbnRlcmZhY2UgV29ya2VyQ2xlYW51cE9wdGlvbnMge1xuICAvKiogV2hldGhlciB0byB0ZXJtaW5hdGUgdGhlIHdvcmtlciAoZGVmYXVsdDogdHJ1ZSkgKi9cbiAgdGVybWluYXRlPzogYm9vbGVhbjtcbiAgLyoqIFdoZXRoZXIgdG8gcmVtb3ZlIGFsbCBsaXN0ZW5lcnMgKGRlZmF1bHQ6IHRydWUpICovXG4gIHJlbW92ZUxpc3RlbmVycz86IGJvb2xlYW47XG4gIC8qKiBXaGV0aGVyIHRvIGxvZyBjbGVhbnVwIGVycm9ycyAoZGVmYXVsdDogZmFsc2UpICovXG4gIGxvZ0Vycm9ycz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogU2FmZWx5IGNsZWFucyB1cCBhIHdvcmtlciB3aXRoIGNvbnNpc3RlbnQgZXJyb3IgaGFuZGxpbmdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsZWFudXBXb3JrZXIoXG4gIHdvcmtlcjogV29ya2VyIHwgbnVsbCB8IHVuZGVmaW5lZCxcbiAgb3B0aW9uczogV29ya2VyQ2xlYW51cE9wdGlvbnMgPSB7fVxuKTogdm9pZCB7XG4gIGlmICghd29ya2VyKSByZXR1cm47XG5cbiAgY29uc3Qge1xuICAgIHRlcm1pbmF0ZSA9IHRydWUsXG4gICAgcmVtb3ZlTGlzdGVuZXJzID0gdHJ1ZSxcbiAgICBsb2dFcnJvcnMgPSBmYWxzZVxuICB9ID0gb3B0aW9ucztcblxuICB0cnkge1xuICAgIGlmIChyZW1vdmVMaXN0ZW5lcnMpIHtcbiAgICAgIHdvcmtlci5yZW1vdmVBbGxMaXN0ZW5lcnMoKTtcbiAgICB9XG4gICAgXG4gICAgaWYgKHRlcm1pbmF0ZSkge1xuICAgICAgd29ya2VyLnRlcm1pbmF0ZSgpO1xuICAgIH1cbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBpZiAobG9nRXJyb3JzKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1t3b3JrZXJDbGVhbnVwXSBFcnJvciBkdXJpbmcgd29ya2VyIGNsZWFudXA6JywgZXJyb3IpO1xuICAgIH1cbiAgICAvLyBBbHdheXMgaWdub3JlIGNsZWFudXAgZXJyb3JzIHRvIHByZXZlbnQgY2FzY2FkaW5nIGZhaWx1cmVzXG4gIH1cbn1cblxuXG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFtQk8sU0FBUyxhQUNkLENBQUEsTUFBQSxFQUNBLE9BQWdDLEdBQUEsRUFDMUIsRUFBQTtBQUNOLEVBQUEsSUFBSSxDQUFDLE1BQVEsRUFBQTtBQUViLEVBQU0sTUFBQTtBQUFBLElBQ0osU0FBWSxHQUFBLElBQUE7QUFBQSxJQUNaLGVBQWtCLEdBQUEsSUFBQTtBQUFBLElBQ2xCLFNBQVksR0FBQTtBQUFBLEdBQ1YsR0FBQSxPQUFBO0FBRUosRUFBSSxJQUFBO0FBQ0YsSUFBQSxJQUFJLGVBQWlCLEVBQUE7QUFDbkIsTUFBQSxNQUFBLENBQU8sa0JBQW1CLEVBQUE7QUFBQTtBQUc1QixJQUFBLElBQUksU0FBVyxFQUFBO0FBQ2IsTUFBQSxNQUFBLENBQU8sU0FBVSxFQUFBO0FBQUE7QUFDbkIsV0FDTyxLQUFPLEVBQUE7QUFDZCxJQUFBLElBQUksU0FBVyxFQUFBO0FBQ2IsTUFBUSxPQUFBLENBQUEsSUFBQSxDQUFLLGdEQUFnRCxLQUFLLENBQUE7QUFBQTtBQUNwRTtBQUdKOzs7OyJ9
@@ -1,6 +1,5 @@
1
1
  export * from "./addLocalExportedNames.js";
2
2
  export * from "./getExports.js";
3
- export * from "./collectExportsFromModule.js";
4
3
  export * from "./analyzeDirectives.js";
5
4
  export * from "./analyzeModule.js";
6
5
  export * from "./collectExports.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../plugin/loader/directives/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../plugin/loader/directives/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
@@ -5,7 +5,6 @@
5
5
  */
6
6
  export { addLocalExportedNames } from './addLocalExportedNames.js';
7
7
  export { getExports } from './getExports.js';
8
- export { collectExportsFromModule } from './collectExportsFromModule.js';
9
8
  export { analyzeDirectives } from './analyzeDirectives.js';
10
9
  export { analyzeModule } from './analyzeModule.js';
11
10
  export { collectExports } from './collectExports.js';
@@ -15,4 +14,4 @@ export { getQualifiedName } from './getQualifiedName.js';
15
14
  export { processFunctionNode } from './processFunctionNode.js';
16
15
  export { canHaveDirective, isArrowFunctionExpression, isAsyncFunction, isBlockStatement, isClassBody, isClassDeclaration, isDirective, isExportDeclaration, isExportDefaultDeclaration, isExportNamedDeclaration, isExportSpecifier, isExpressionStatement, isFunctionDeclaration, isFunctionExpression, isFunctionLikeWithBlock, isFunctionNode, isIdentifier, isLiteral, isMethodDefinition, isNodeWithParent, isObjectExpression, isProgram, isProperty, isPropertyDefinition, isStringLiteral, isVariableDeclaration, isVariableDeclarator } from './typeGuards.js';
17
16
  export { getDirectiveValue, isDirectiveAtStart, matchOverlapsDirective } from './utils.js';
18
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OyJ9
17
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7In0=