@fails-components/webtransport 1.0.4 → 1.0.6

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 (115) hide show
  1. package/dist/main/lib/client.d.ts +95 -0
  2. package/dist/main/lib/client.d.ts.map +1 -0
  3. package/dist/main/lib/dom.d.ts +88 -0
  4. package/dist/main/lib/dom.d.ts.map +1 -0
  5. package/dist/main/lib/error.d.ts +8 -0
  6. package/dist/main/lib/error.d.ts.map +1 -0
  7. package/dist/main/lib/http2/browser/browser.d.ts +30 -0
  8. package/dist/main/lib/http2/browser/browser.d.ts.map +1 -0
  9. package/dist/main/lib/http2/browser/browserparser.d.ts +41 -0
  10. package/dist/main/lib/http2/browser/browserparser.d.ts.map +1 -0
  11. package/dist/main/lib/http2/flowcontroller.d.ts +70 -0
  12. package/dist/main/lib/http2/flowcontroller.d.ts.map +1 -0
  13. package/dist/main/lib/http2/node/capsuleparser.d.ts +24 -0
  14. package/dist/main/lib/http2/node/capsuleparser.d.ts.map +1 -0
  15. package/dist/main/lib/http2/node/client.d.ts +29 -0
  16. package/dist/main/lib/http2/node/client.d.ts.map +1 -0
  17. package/dist/main/lib/http2/node/index.d.ts +3 -0
  18. package/dist/main/lib/http2/node/index.d.ts.map +1 -0
  19. package/dist/main/lib/http2/node/server.d.ts +57 -0
  20. package/dist/main/lib/http2/node/server.d.ts.map +1 -0
  21. package/dist/main/lib/http2/node/websocketparser.d.ts +86 -0
  22. package/dist/main/lib/http2/node/websocketparser.d.ts.map +1 -0
  23. package/dist/main/lib/http2/parserbase.d.ts +84 -0
  24. package/dist/main/lib/http2/parserbase.d.ts.map +1 -0
  25. package/dist/main/lib/http2/parserbasehttp2.d.ts +31 -0
  26. package/dist/main/lib/http2/parserbasehttp2.d.ts.map +1 -0
  27. package/dist/main/lib/http2/session.d.ts +71 -0
  28. package/dist/main/lib/http2/session.d.ts.map +1 -0
  29. package/dist/main/lib/http2/stream.d.ts +112 -0
  30. package/dist/main/lib/http2/stream.d.ts.map +1 -0
  31. package/dist/main/lib/http2/websocketcommon.d.ts +2 -0
  32. package/dist/main/lib/http2/websocketcommon.d.ts.map +1 -0
  33. package/dist/main/lib/index.browser.d.ts +58 -0
  34. package/dist/main/lib/index.browser.d.ts.map +1 -0
  35. package/dist/main/lib/index.node.d.ts +59 -0
  36. package/dist/main/lib/index.node.d.ts.map +1 -0
  37. package/dist/main/lib/server.d.ts +102 -0
  38. package/dist/main/lib/server.d.ts.map +1 -0
  39. package/dist/main/lib/session.d.ts +296 -0
  40. package/dist/main/lib/session.d.ts.map +1 -0
  41. package/dist/main/lib/stream.d.ts +132 -0
  42. package/dist/main/lib/stream.d.ts.map +1 -0
  43. package/dist/main/lib/types.d.ts +277 -0
  44. package/dist/main/lib/types.d.ts.map +1 -0
  45. package/dist/main/lib/utils.d.ts +11 -0
  46. package/dist/main/lib/utils.d.ts.map +1 -0
  47. package/dist/main/lib/webstreams.browser.d.ts +5 -0
  48. package/dist/main/lib/webstreams.browser.d.ts.map +1 -0
  49. package/dist/main/lib/webstreams.d.ts +10 -0
  50. package/dist/main/lib/webstreams.d.ts.map +1 -0
  51. package/dist/main/lib/webtransport.browser.d.ts +60 -0
  52. package/dist/main/lib/webtransport.browser.d.ts.map +1 -0
  53. package/dist/main/lib/webtransport.node.d.ts +26 -0
  54. package/dist/main/lib/webtransport.node.d.ts.map +1 -0
  55. package/dist/main/lib/webtransportbase.d.ts +70 -0
  56. package/dist/main/lib/webtransportbase.d.ts.map +1 -0
  57. package/dist/main/test/bidirectional-streams.spec.d.ts +5 -0
  58. package/dist/main/test/bidirectional-streams.spec.d.ts.map +1 -0
  59. package/dist/main/test/datagrams.spec.d.ts +5 -0
  60. package/dist/main/test/datagrams.spec.d.ts.map +1 -0
  61. package/dist/main/test/fixtures/certificate.d.ts +21 -0
  62. package/dist/main/test/fixtures/certificate.d.ts.map +1 -0
  63. package/dist/main/test/fixtures/chai.d.ts +2 -0
  64. package/dist/main/test/fixtures/chai.d.ts.map +1 -0
  65. package/dist/main/test/fixtures/known-bytes.d.ts +8 -0
  66. package/dist/main/test/fixtures/known-bytes.d.ts.map +1 -0
  67. package/dist/main/test/fixtures/p-timeout.d.ts +8 -0
  68. package/dist/main/test/fixtures/p-timeout.d.ts.map +1 -0
  69. package/dist/main/test/fixtures/read-cert-hash.d.ts +6 -0
  70. package/dist/main/test/fixtures/read-cert-hash.d.ts.map +1 -0
  71. package/dist/main/test/fixtures/read-stream.d.ts +18 -0
  72. package/dist/main/test/fixtures/read-stream.d.ts.map +1 -0
  73. package/dist/main/test/fixtures/reader-value.d.ts +21 -0
  74. package/dist/main/test/fixtures/reader-value.d.ts.map +1 -0
  75. package/dist/main/test/fixtures/server.d.ts +5 -0
  76. package/dist/main/test/fixtures/server.d.ts.map +1 -0
  77. package/dist/main/test/fixtures/webtransport.browser.d.ts +4 -0
  78. package/dist/main/test/fixtures/webtransport.browser.d.ts.map +1 -0
  79. package/dist/main/test/fixtures/webtransport.d.ts +3 -0
  80. package/dist/main/test/fixtures/webtransport.d.ts.map +1 -0
  81. package/dist/main/test/fixtures/write-stream.d.ts +10 -0
  82. package/dist/main/test/fixtures/write-stream.d.ts.map +1 -0
  83. package/dist/main/test/index.d.ts +2 -0
  84. package/dist/main/test/index.d.ts.map +1 -0
  85. package/dist/main/test/session.spec.d.ts +5 -0
  86. package/dist/main/test/session.spec.d.ts.map +1 -0
  87. package/dist/main/test/unidirectional-streams.spec.d.ts +2 -0
  88. package/dist/main/test/unidirectional-streams.spec.d.ts.map +1 -0
  89. package/dist/main/tsconfig.tsbuildinfo +1 -0
  90. package/dist/transports/http3-quiche/lib/clientsocket.d.ts +19 -0
  91. package/dist/transports/http3-quiche/lib/clientsocket.d.ts.map +1 -0
  92. package/dist/transports/http3-quiche/lib/index.d.ts +11 -0
  93. package/dist/transports/http3-quiche/lib/index.d.ts.map +1 -0
  94. package/dist/transports/http3-quiche/lib/serversocket.d.ts +12 -0
  95. package/dist/transports/http3-quiche/lib/serversocket.d.ts.map +1 -0
  96. package/dist/transports/http3-quiche/lib/socket.d.ts +19 -0
  97. package/dist/transports/http3-quiche/lib/socket.d.ts.map +1 -0
  98. package/dist/transports/http3-quiche/lib/types.d.ts +21 -0
  99. package/dist/transports/http3-quiche/lib/types.d.ts.map +1 -0
  100. package/dist/transports/http3-quiche/lib/utils.d.ts +6 -0
  101. package/dist/transports/http3-quiche/lib/utils.d.ts.map +1 -0
  102. package/lib/http2/browser/browser.js +52 -0
  103. package/lib/http2/node/capsuleparser.js +8 -0
  104. package/lib/http2/node/server.js +10 -4
  105. package/lib/http2/node/websocketparser.js +17 -3
  106. package/lib/http2/parserbase.js +7 -0
  107. package/lib/http2/session.js +1 -5
  108. package/lib/webtransport.browser.js +8 -2
  109. package/package.json +5 -3
  110. package/test/bidirectional-streams.spec.js +17 -31
  111. package/test/datagrams.spec.js +17 -20
  112. package/test/index.js +13 -4
  113. package/test/session.spec.js +43 -48
  114. package/test/unidirectional-streams.spec.js +17 -30
  115. package/tsconfig.json +15 -0
@@ -0,0 +1,5 @@
1
+ export function createServer(): Promise<{
2
+ server: Http3Server | Http2Server;
3
+ certificate: import("./certificate.js").Certificate;
4
+ }>;
5
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../../test/fixtures/server.js"],"names":[],"mappings":"AASA;;;GAgQC"}
@@ -0,0 +1,4 @@
1
+ export default webtransport;
2
+ /** @type {import('../../lib/dom').WebTransport} */
3
+ declare let webtransport: import('../../lib/dom').WebTransport;
4
+ //# sourceMappingURL=webtransport.browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webtransport.browser.d.ts","sourceRoot":"","sources":["../../../../test/fixtures/webtransport.browser.js"],"names":[],"mappings":";AAKA,mDAAmD;AAGnD,0BAHW,OAAO,eAAe,EAAE,YAAY,CAGhB"}
@@ -0,0 +1,3 @@
1
+ export default WebTransport;
2
+ import { WebTransport } from "../../lib/index.node.js";
3
+ //# sourceMappingURL=webtransport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webtransport.d.ts","sourceRoot":"","sources":["../../../../test/fixtures/webtransport.js"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Write contents to a stream and close it
3
+ *
4
+ * @template T
5
+ * @param {WritableStream<T>} writable
6
+ * @param {T[]} input
7
+ * @returns
8
+ */
9
+ export function writeStream<T>(writable: WritableStream<T>, input: T[]): Promise<void>;
10
+ //# sourceMappingURL=write-stream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-stream.d.ts","sourceRoot":"","sources":["../../../../test/fixtures/write-stream.js"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,uFAeC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../test/index.js"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * <T>
3
+ */
4
+ export type Deferred<T> = import('../lib/types').Deferred<T>;
5
+ //# sourceMappingURL=session.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.spec.d.ts","sourceRoot":"","sources":["../../../test/session.spec.js"],"names":[],"mappings":";;;0BAQa,OAAO,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=unidirectional-streams.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unidirectional-streams.spec.d.ts","sourceRoot":"","sources":["../../../test/unidirectional-streams.spec.js"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../lib/error.js","../../../node_modules/@types/ms/index.d.ts","../../../node_modules/@types/debug/index.d.ts","../../lib/dom.ts","../../lib/http2/flowcontroller.js","../../lib/webstreams.js","../../lib/http2/session.js","../../lib/http2/parserbasehttp2.js","../../lib/http2/node/capsuleparser.js","../../lib/http2/node/client.js","../../lib/http2/node/websocketparser.js","../../lib/http2/websocketcommon.js","../../lib/http2/node/server.js","../../lib/http2/node/index.js","../../lib/server.js","../../lib/session.js","../../lib/stream.js","../../lib/http2/stream.js","../../lib/http2/parserbase.js","../../lib/types.ts","../../lib/utils.js","../../lib/client.js","../../lib/webtransportbase.js","../../lib/http2/browser/browserparser.js","../../lib/http2/browser/browser.js","../../lib/webtransport.browser.js","../../lib/index.browser.js","../../lib/webtransport.node.js","../../lib/index.node.js","../../lib/webstreams.browser.js","../../test/fixtures/reader-value.js","../../../node_modules/@types/chai/index.d.ts","../../../node_modules/@types/chai-as-promised/index.d.ts","../../../node_modules/@types/dirty-chai/index.d.ts","../../test/fixtures/chai.js","../../test/fixtures/read-stream.js","../../test/fixtures/write-stream.js","../../test/fixtures/read-cert-hash.js","../../test/fixtures/webtransport.js","../../../node_modules/uint8arrays/dist/src/compare.d.ts","../../../node_modules/uint8arrays/dist/src/concat.d.ts","../../../node_modules/uint8arrays/dist/src/equals.d.ts","../../../node_modules/multiformats/dist/types/src/bases/interface.d.ts","../../../node_modules/multiformats/dist/types/src/hashes/interface.d.ts","../../../node_modules/multiformats/dist/types/src/link/interface.d.ts","../../../node_modules/multiformats/dist/types/src/cid.d.ts","../../../node_modules/multiformats/dist/types/src/block/interface.d.ts","../../../node_modules/multiformats/dist/types/src/codecs/interface.d.ts","../../../node_modules/multiformats/dist/types/src/interface.d.ts","../../../node_modules/multiformats/dist/types/src/hashes/digest.d.ts","../../../node_modules/multiformats/dist/types/src/hashes/hasher.d.ts","../../../node_modules/multiformats/dist/types/src/varint.d.ts","../../../node_modules/multiformats/dist/types/src/bytes.d.ts","../../../node_modules/multiformats/dist/types/src/index.d.ts","../../../node_modules/multiformats/dist/types/src/codecs/raw.d.ts","../../../node_modules/multiformats/dist/types/src/codecs/json.d.ts","../../../node_modules/multiformats/dist/types/src/bases/base.d.ts","../../../node_modules/multiformats/dist/types/src/basics.d.ts","../../../node_modules/uint8arrays/dist/src/util/bases.d.ts","../../../node_modules/uint8arrays/dist/src/from-string.d.ts","../../../node_modules/uint8arrays/dist/src/to-string.d.ts","../../../node_modules/uint8arrays/dist/src/xor.d.ts","../../../node_modules/uint8arrays/dist/src/index.d.ts","../../test/fixtures/known-bytes.js","../../test/bidirectional-streams.spec.js","../../test/fixtures/p-timeout.js","../../test/datagrams.spec.js","../../../node_modules/execa/index.d.ts","../../test/index.js","../../test/session.spec.js","../../test/unidirectional-streams.spec.js","../../test/fixtures/certificate.js","../../test/fixtures/server.js","../../test/fixtures/webtransport.browser.js","../../../transports/http3-quiche/lib/types.ts","../../../transports/http3-quiche/lib/utils.js","../../../transports/http3-quiche/lib/socket.js","../../../transports/http3-quiche/lib/clientsocket.js","../../../transports/http3-quiche/lib/serversocket.js","../../../transports/http3-quiche/lib/index.js","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/json5/index.d.ts","../../../node_modules/@types/mocha/index.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/buffer/index.d.ts","../../../node_modules/undici-types/header.d.ts","../../../node_modules/undici-types/readable.d.ts","../../../node_modules/undici-types/file.d.ts","../../../node_modules/undici-types/fetch.d.ts","../../../node_modules/undici-types/formdata.d.ts","../../../node_modules/undici-types/connector.d.ts","../../../node_modules/undici-types/client.d.ts","../../../node_modules/undici-types/errors.d.ts","../../../node_modules/undici-types/dispatcher.d.ts","../../../node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/undici-types/global-origin.d.ts","../../../node_modules/undici-types/pool-stats.d.ts","../../../node_modules/undici-types/pool.d.ts","../../../node_modules/undici-types/handlers.d.ts","../../../node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/undici-types/agent.d.ts","../../../node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/undici-types/mock-agent.d.ts","../../../node_modules/undici-types/mock-client.d.ts","../../../node_modules/undici-types/mock-pool.d.ts","../../../node_modules/undici-types/mock-errors.d.ts","../../../node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/undici-types/api.d.ts","../../../node_modules/undici-types/cookies.d.ts","../../../node_modules/undici-types/patch.d.ts","../../../node_modules/undici-types/filereader.d.ts","../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/undici-types/websocket.d.ts","../../../node_modules/undici-types/content-type.d.ts","../../../node_modules/undici-types/cache.d.ts","../../../node_modules/undici-types/interceptors.d.ts","../../../node_modules/undici-types/index.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/dom-events.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/readline/promises.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/test.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"8730f4bf322026ff5229336391a18bcaa1f94d4f82416c8b2f3954e2ccaae2ba","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","4b421cbfb3a38a27c279dec1e9112c3d1da296f77a1a85ddadf7e7a425d45d18","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f",{"version":"3aafcb693fe5b5c3bd277bd4c3a617b53db474fe498fc5df067c5603b1eebde7","affectsGlobalScope":true},{"version":"f3d4da15233e593eacb3965cde7960f3fddf5878528d882bcedd5cbaba0193c7","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"5f406584aef28a331c36523df688ca3650288d14f39c5d2e555c95f0d2ff8f6f","affectsGlobalScope":true},{"version":"22f230e544b35349cfb3bd9110b6ef37b41c6d6c43c3314a31bd0d9652fcec72","affectsGlobalScope":true},{"version":"7ea0b55f6b315cf9ac2ad622b0a7813315bb6e97bf4bb3fbf8f8affbca7dc695","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"eb26de841c52236d8222f87e9e6a235332e0788af8c87a71e9e210314300410a","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"5e5e095c4470c8bab227dbbc61374878ecead104c74ab9960d3adcccfee23205","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"2768ef564cfc0689a1b76106c421a2909bdff0acbe87da010785adab80efdd5c","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"34c839eaaa6d78c8674ae2c37af2236dee6831b13db7b4ef4df3ec889a04d4f2","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},{"version":"c4352126dc08b95a3c8223ea5e9e88181926d2c5fc48c0bba88ae59e2185dca2","signature":"63a5cc9a046de27986cbebbae2abe65b02dc872b3bf2e5c3016f87fcde7fbf6c"},"68cc8d6fcc2f270d7108f02f3ebc59480a54615be3e09a47e14527f349e9d53e","3eb11dbf3489064a47a2e1cf9d261b1f100ef0b3b50ffca6c44dd99d6dd81ac1",{"version":"7c432275b63a2eb24b73158e11ebddde1c71c9c6cc3448c9d755a339aba4b277","signature":"5f2be203378606155cc72f9bd7346c16253a9094d577f50f3f15e24956fc3736"},{"version":"5dc3000a5c6e7ae598ecf1561e221d7a3e0fff0f0161deb2bae2e23c0f8685b4","signature":"fc1ef0dbe7d9467c7cc33c3b3de87779e3fcd5a268733701d580e15f76b50bbf"},{"version":"2713c21b0077ae1acaf48fcd079f180cd9d7c294053b4c24b88378583aaa63c2","signature":"84c018a3169ff229e060cf0b99ba7e743d8d8b1cd4a9d754905c1e6cbcf2401f"},{"version":"ff6bb07bc908ed8d2db68b19ddd5114796e313a3389aad94f877f4ff6292f22d","signature":"826c81f9f900e7b56ac24f7e994b37caf4c4dc67c2efa8f87d4ad7198de9a402"},{"version":"6381c8e604f30d7f5fcd176f1aa246df6a22fc6a8cdbc2ef9bdbd736eb948692","signature":"dc6fb8b79c5ebd64ff76b2d092817d7866266d461b36160fa2c26e9bd1c3cb50"},{"version":"3984e3c9b376a5b5a00131b4c086a895c0249cbd87520a39ec7818fd1d71e4c5","signature":"cdde30d7bfd04f9f3485c384e3b10a3f9c8318c1eeccf3b16a9672d0a026cc86"},{"version":"5556b21788b0488ea307087c4f4753898937121f21d2c9a112f6961abcc73fce","signature":"30d9267115c04d64dda0edcad1c8ebce39b29fa949bf69d1099839e7ffec6c46"},{"version":"212924fdf5acde8b60ba91fa5a65ce0353fc8f1329280cf04f2d185a3b057398","signature":"edbdf1e026de78e60b969962867efac994ca0f7170e7e09358e47bf4aeee98ae"},{"version":"f59b7d07889ee74c3989a3bbdb375588c5ffeecb786beeaa8ce7e6d8bab33733","signature":"6b277559ffb2accd5335c0856efd487806e0172335c8ec2e4dc846a3fd21bce9"},{"version":"9e6be377003e16be9189d37176d6ddd542c27f94d33e43decb2b65c08437dc09","signature":"cd4762d6f2654f089fbe0d98300780b7628b72a0000485af144c854ffda457cd"},{"version":"84a00d85759932d524cab5dfebb0cd05c88aced4732fd96e3bf00076dafe6fd8","signature":"c35a5a91b50646cd32d63cf79f7a48febc7c880dbc811d924f2b0244a57aa064"},{"version":"610788705d09f4c43d0a98e3de8a9134506dd79356dba139b4eb0828a57cb4f6","signature":"72a4c7cacacc90ba99269ade3e237fdda6ae0763ff445c1e9f1ead3ccbabf811"},{"version":"48939d4a2b4b6ea0d4e2f5ae9a5423bb75244be9b948cfdb2fa5bd56330bf132","signature":"a896a2efc3f71dce907ff753da32fe5cf3fb1cdce826fdda4a63214a9d562cc3"},{"version":"4b60c1cf11a037db568cfb006a042ac67bd19b4af3b19834b9aca5df149b4068","signature":"d36d0271794817a17d4d4b16512124d63598d63865f0b463198df277efeeb50c"},{"version":"081ccfb71026154f54b6b84fc650ae26eadbe3479db5db6a19129b32a18f7a44","signature":"9cd0538f92670225ec705f807a60230305f4f0c5d692f335f3559ef8e5cae5bb"},{"version":"fc3a94f85a27ce812f2be55e9c437110a0db0f54667a48333c642dc3880233db","signature":"f55ef8bc0d08f60bb2d78d7ed6fe16841dae1b28fc6c90312965fd0be7a4f2e3"},{"version":"5808c9bbba0ab03eb130630bc32b6692c3390855db1f2e748f97cbc29b8fd964","signature":"38dea9a33e02e90decc87c92aedb9d8c67235d0cbe688eef76b097a2ab816c40"},{"version":"ae91e0d01ed4660d98c3d6e13ea4702a644c845e4da567ea4f60186be03a807c","signature":"c9c95f3a911f293a7f0543489e4e9f5cbae5c2a48512f2558f410e837954c84a"},{"version":"5b5b94ce3583cc1d499291cd5af25b4317edd30d8f357d7d5b663ccad67e7f43","signature":"02adea311a13d428b2cfc745b1cd66262a0e73baaaff60db61cf15385ea68a0f"},{"version":"db74e32261245d20431463dd99cd80b7aac5210e908853795e2c930c4efe6247","signature":"cf48523de787efc9ac71127acd2ef55583c59ecb7a065547663c528011585002"},{"version":"50afedc71ae02213d0d9c6d9ac33c1b9bd368111f10c4fc009b31683735a4821","signature":"2c4ab958639d3ac36d19642481b22f3d8d7e4cda46b32f3bbc1899c8c76cab77"},{"version":"41d9abef63d1bff758812f7e929951685fa5aac2bf8025c8aebcd766ce835515","signature":"2c3a4a44a47ee674a2d2ad23992c3ac3248afa2d4cbe303dd1db33a1cbdfdc67"},{"version":"93d77d0de925265d7b799cc640e54b6cecdb8848bc3053c466960af764403bff","signature":"f476fcd257806c4eeb0f091eade780be128ec3ff1e4c2650ecb3230f905663cf"},{"version":"ced9a92cc10f37f5e5404ce0a9f3a9cbbf4437cd42cad653c6c42d117c7bbcd8","signature":"5046cfb2433ec4266d7d43d7a9e37eec06910ec03d874705ddaedbde0c399b81"},{"version":"996e96cb435d4f03c2327581490045b0bc7e86e1a0189b0002c87855bc5bb742","signature":"bc3c4741cce078c5fcafb904ed4406a8f924398fd0b0105619b321a8236939e0"},{"version":"d6418e84acd80f7992ec99561c92443a454ae7ba88014779e1822345dfddff5d","signature":"a5e5e09e1a2fa50805e49ead553ce6bbc0a900ab1c1529da36a1125c8cde636c"},{"version":"c1fbd353a499bbee666f6a4df772fe3e7ecca074967691f8612b7abfc63c6126","signature":"ff7ccdd97c6146e8c18b258f38819e32a65c67372e6d8e95c7cbdde1b08a63c0"},{"version":"fb2d13d1c1a698dab6d29e729f5580ade199d53e3ce030c83e100572fd301a9d","signature":"fb29a358c7c69a89fdda03377186cb07db0d1fe9f23136404e647cb4c1bbf2f0"},{"version":"4a2c144ea6f441e9616ec77fe9b1009b0cdf6db0cd9727b8d99623975cd6c693","affectsGlobalScope":true},{"version":"86e56d97b13ef0a58bc9c59aee782ae7d47d63802b5b32129ec5e5d62c20dbfa","affectsGlobalScope":true},{"version":"e78f77d6773a6fe045e871b11f905b1578f1591f6406e2d7e675fb38e30f5d38","affectsGlobalScope":true},{"version":"b3fce266ad5f8b1a3c574e9cd3bbdb01530220fec09cbbbcea88284a6e9caefb","signature":"572ecc70305e3cc8e956ca07ecceb03b8078182fbfe9d7417d59fc0204065204"},{"version":"79f693d9e4b799e195beb9a76c12413e648d417747926728c620891a6e17209c","signature":"234ce206d873fad2c650f378a16aa7ffac7f9b8be70cef954d592b194090cdf4"},{"version":"0a27165964bab83323f9f413002308be932f79e9e9b6a961e1855f582352d75c","signature":"b621976a2b5327d217244a73ab29bfb2fec039c2f993cc2317e9b6c1aa944e97"},{"version":"fa7a9fa20ed04b4fe4761bb99cb7ff4d5b4ecf8fd77ee374ed85568c7c09cf71","signature":"df7fe58add570dcc400ec01d582edb4d2d8103d752355183fd5ccbcc29f0f382"},{"version":"42c4df4fb69e235624faf0b07e4861fed986359b012b3f00d27c189a7b760b26","signature":"05ede20ab1bd88aa64739732796b00b2b056ab9bacc11de2fe162b2f4f85570b"},"75b2c58d19200315e913f9d1743c7665062b60bd4b66fc8992f944ba5030ed0b","b978810946bdb81e042ed0d6a4d9a43aa31b74ab95cee06d18ae1ef95989bb27","41faca5faa6859bbe93224fdd4007353393807527d2fb674fbd83b2edfd16af3","438ad3eed057c98e23b55ffa592f96269f07242cce80ecb8ed823574de77aab0","8eef7568d606bb74f6fa6411b6c067637777f85c00079723a9397120dd92b350","2b74d6d9875fc0b0b512b5c6f1f1ca53d050da82909f72b4cc2cdef317695aba","2a4905817a3f71d0739ed8bfb7399ec43994c9a11b20ff872b1a958edbad1cba","ae330d2797dc8a25dc36f0ade8a4a84c826d6dd4f108af61448327c9e8acac4a","fc018e192395d4243f43355c9eec40d33b8e7e7b461d693b84472aba9b099e98","e1fe04ff1ffecfb18420f0895d0cd2652f98a27def5c33aae5ef328f186c905b","635e7c978a30ab2013a37c4d05d0d081e58e4ad867db46a009412ad24ee426d7","9ebc2216a784e7fc97775fb7ab6976c6e2eb88662ff02a1a3c89a10546dac173","87b44430497cae7542bbd5ac2fb6663df6a465dea7a46be58a49cd9416530439","32b67d761db3999f1e482d0add405b695d3ec5607e07ae4c963a96334c331814","4e3ffdea3d82359fb81c9187e3d1f3ca4101963ae5e664ab47484cf61af50ee9","474ab86e676e0c1b664bfcd21b1e58bed351f3390ba1d892e8da703f371b7a4e","fb7a601066e19b5d0c173b564bd46b358cf00c9040e79fb6fd427b7aa223eed1","cf59d474e0bb4c2f3bb3be647b435891c75115f1aa9e2908b28df9dea1604be2","1535a7688c7368b2d187873760dd26c14ed28fbc0802e521aae65c30bfbb434e","c0fdc1c9e8770da790089cb0d263670cb7a22ff4193b352717936d0dd08fe26b","ee4f1e199e9d9ef5dc833b2e86d612cb152ff2c7e0e818bd117d43d791a009f3","a7975589eea94f2a13153955364398522d9a265aa2a52def61d29f752b48cc91","505fc5216cbc33392601267fa3267bf3ab582bcd8658a0c9df440f20bbd28eb8","915eb1ccca9749232f561793d1d5bbee60018edeeefe60582e23bed9cc21a866",{"version":"b3a23f34c244034103ae30c83a4f60673d3ce937c8760bdba099ca7359edb047","signature":"db703e881db6210eff0885c810406deac036ee74e9f8f108726087c19865ffef"},{"version":"26d96a2a31e1b6ffd20a5384fc33e0ae00941c83e52ac47438d4e6f2f4b8dd8b","signature":"b5c1d6282e82618c6e3f76f27cb95b4f77317ff3256e543205104667f9e49e75"},{"version":"18b74304da90c9c443c5f4adc6bf62597ad160267baeabfa7c68d68b93e122b8","signature":"8eabf89b26db8ed9b0b21fb9b293a86491953f3541ae3724f1f94b09efd50f0f"},{"version":"586a9e4cf976911f4a6ae71bdf134851e4e5bb6d73a4e47c45fccb519a772460","signature":"b5c1d6282e82618c6e3f76f27cb95b4f77317ff3256e543205104667f9e49e75"},"b64130f62287a8a5a9b9f6b95176fdbe2fae14c3a38021e8418c991805605208",{"version":"d06e7f6997be205bf07076c819d1d6e81893dfe5804dd8e5ccd3f8ca852567da","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"b89e9542d27eebc95519a06d1216e30bbaf80c397e5c99892200ed95dbb9b8c1","signature":"b5c1d6282e82618c6e3f76f27cb95b4f77317ff3256e543205104667f9e49e75"},{"version":"e015c382b4e6b80f9441c57162c1a8ba00ad8473836a008276fb24a8b1332b61","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"b0e4287bd6f35e181c6c9d425ad749a90597d6500d12145550b222bbfe320e03","signature":"2b5c9332994209d32c196cffe397048aed4c703a33f56acd60b4c874c7820a1d"},{"version":"0cca0ce18b15aff5651858ba3010cbf8049f178515c619f92dc4be32a7f16ed5","signature":"3726144e16b728be581391927125e7646972bf03d16da53765a110074aec4f46"},{"version":"db468a54498029e79559fd6a137da2853b37b02d5657f14d5c0b9b834ebdace4","signature":"35c0c52329b46bfde35d66bba45a8a8d0baaef14c22ccae54aac35d051d1933f"},{"version":"999f249ad6593c0b0d56cc46a856fd3cd80c733797edc55cca5afc096a91d062","signature":"1ef439177515fe39f96186999604cd50bf32841e8bb92733db8dc82faa511da3"},{"version":"1c9034264192f82c33eebd0a307998b7129cfff3ef898042d87de112a900bb3a","signature":"b2ec3b16946182dc902d0ed34682889cc745eeac6ea7bf3b9e85aedef00f9ce6"},{"version":"a1a82c2abd348803ff8d4d3a21528cde55d08f827acc23b611ee1fbf02432c53","signature":"aeeed088eb4c918d5ae70da407d11c8c3844e6ee15bb77036e080d85fbe87b86"},{"version":"29e8bd2ad1a898f11c10c458408561cc169de729e5f654150cb4269aa0927c0a","signature":"68bfea5e9e81fba63fb2b2f0741c7764fe7032c978937edeb5efb4b7e024e234"},{"version":"444edc62c3abe588a14e77b932a18b78a5dffed24bd5e15a5a7041b0b3290810","signature":"96b25de43fef4d114812993b253d511e037f3239ebc542141b0734fb2f408b41"},{"version":"089cdffc4b79a5323e34817fc82f43e0d43abbb45a6043917aac02fedcba433b","signature":"877582b6d874e2cb021bc44ca81670cafaca7bae6c5e884de3dc1934bdcf8404"},"035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538",{"version":"0ea93d01083b3d5863cc98cb589b5d0eac55d14417487f9e5e455dfa0b17c660","affectsGlobalScope":true},"3846d0dcf468a1d1a07e6d00eaa37ec542956fb5fe0357590a6407af20d2ff90","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","4967529644e391115ca5592184d4b63980569adf60ee685f968fd59ab1557188","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"49026435d21e3d7559d723af3ae48f73ec28f9cba651b41bd2ac991012836122","affectsGlobalScope":true},"39b1a50d543770780b0409a4caacb87f3ff1d510aedfeb7dc06ed44188256f89",{"version":"b6a4a51bc749ad882c33d98563ff5a94716ca884bfde949a8c97bad530e4ee2c","affectsGlobalScope":true},"16b872cf5432818bdbf405428b4a1d77bb2a7ab908e8bd6609f9a541cea92f81","fe39ceafa361b6d339b518936275eff89a77e7dfe92f2efa5fb97abf9a95ca49",{"version":"4009dd21843fe4a62d1d97b584a2937ca9f045df6fbd65c8b264d8dd04b656fd","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","c9e6ea53a25729dbb5b5bb6960db4387df2f8e88add9cbf36b6ff590481134f9","3e95e6310d49db6d575ac6c2896c02761426aa5aab0b18169f971151c709b770","7eb0662b995994db248290a0f0a1d8ed685991a162ff9eb4dee36f099cccd0d9","bea5c9fc0843a6961411ab4a04df856a8372448bc0d180da0c3a054ff31044b8","715873cecbfcebb49f293f0521bd0955d6298486e2eeb9c7bbf5e9f20a6ed152","c6cf9428f45f3d78b07df7d7aab1569994c177d36549e3a962f952d89f026bc4",{"version":"2c71199d1fc83bf17636ad5bf63a945633406b7b94887612bba4ef027c662b3e","affectsGlobalScope":true},{"version":"6c7b9d2139abd8f2e83ed8fa018c3799ab3187755a6665621feb6e93d3429ac3","affectsGlobalScope":true},"a019c9782ea4e21c83881c780cebce8ad86e3f78122619336eacbd87e47fe674","021ca24be8eb8c46f99b4e03ebf872931f590c9b07b88d715c68bd30495b6c44","5899ab1898582115c432cccef063298f75477bf2cebe5473360043fddd67bcc6","6b97f4106d72ae6b4ebf4e46d2fe90f4d04dd04b3dbff6e294572440a428209d","e3baa0c5780c2c805ec33a999722a2f740b572eb3746fd0a5f93a0a5c3dbf7f6","48fedd2f8549a2ae7e62f30fdb015779c2a7b536760730c5269406cd3d17cab2",{"version":"089867511b37a534ae71f3d9bc97acc0b925b7f5dbec113f98c4b49224c694eb","affectsGlobalScope":true},"c874bfffe38a94b129077eaba4e26575972d545d5d04cd64e90c02d2c029ead6","f5ce35485541e817c2d4105d3eb78e3e538bbb009515ed014694363fa3e94ceb","323506ce173f7f865f42f493885ee3dacd18db6359ea1141d57676d3781ce10c",{"version":"bd88055918cf8bf30ad7c9269177f7ebeafd4c5f0d28919edccd1c1d24f7e73c","affectsGlobalScope":true},{"version":"4ee9304173804c2c6dff4fcb8ad900619a4078b30d37f7e455236836e8e87a45","affectsGlobalScope":true},"ea3ab3727cd6c222d94003ecafa30e8550c61eadcdabbf59514aee76e86211a5","d3cdd41693c5ed6bec4f1a1c399d9501372b14bd341bc46eedacf2854c5df5a7","2de7a21c92226fb8abbeed7a0a9bd8aa6d37e4c68a8c7ff7938c644267e9fcc1","6d6070c5c81ba0bfe58988c69e3ba3149fc86421fd383f253aeb071cbf29cd41","48dab0d6e633b8052e7eaa0efb0bb3d58a733777b248765eafcb0b0349439834","6e4b2642721462bf62d19593770659f268a6ca1e9fd15543747efb3ac471cee3","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","cdaaf046791d7d588f28f32197c5d6acc43343e62540a67eed194c9c20535fdc","4b1ff655bd8edd879dd4f04f15338ce0109f58ccb424165d44fa07e7ea39c4bf",{"version":"6fa61015444e843013443f2e5ca6bee5f033cbf361f953fd932abb0c029b73b2","affectsGlobalScope":true},{"version":"300f8e9de0b0c3482be3e749462b6ebc3dab8a316801f1da0def94aed0cd2018","affectsGlobalScope":true},"4e228e78c1e9b0a75c70588d59288f63a6258e8b1fe4a67b0c53fe03461421d9","24b8c93eb91a64a6fbb877a295cfac4c10aa4660599970c954a99d33697534a3","76a89af04f2ba1807309320dab5169c0d1243b80738b4a2005989e40a136733e","c045b664abf3fc2a4750fa96117ab2735e4ed45ddd571b2a6a91b9917e231a02",{"version":"ca619678b887ae262316673b55bb358c517593d3b6b96c1271972716c699da32","affectsGlobalScope":true},{"version":"40ed27386f21a739bd0d2e2cfed563760588f2aeaa7ad149c1bf1454a7ec743a","affectsGlobalScope":true},"d1ef1d8516286380fd0a6f498f1650d374a8cb5f03d91633b6124e4fb8fb131d","fecdf44bec4ee9c5188e5f2f58c292c9689c02520900dceaaa6e76594de6da90","2641e5e19268b6f5038ad48a6e2598965301df8a77c48c99d8df760a6a154204",{"version":"6a4a80787c57c10b3ea8314c80d9cc6e1deb99d20adca16106a337825f582420","affectsGlobalScope":true},"f2b9440f98d6f94c8105883a2b65aee2fce0248f71f41beafd0a80636f3a565d",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447"],"options":{"composite":true,"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"module":7,"noEmitOnError":true,"noFallthroughCasesInSwitch":true,"noImplicitReturns":false,"noUnusedLocals":true,"noUnusedParameters":false,"outDir":"..","removeComments":false,"rootDir":"../../..","skipLibCheck":true,"sourceMap":true,"strict":true,"stripInternal":true,"target":7},"fileIdsList":[[49,64,68,69,211],[211],[55,60,64,68,69,72,211],[67,68,69,211],[68,69,211],[56,67,68,211],[55,57,64,68,69,185,207,211],[58,61,211],[55,57,59,60,64,68,172,174,185,189,205,211],[56,67,68,69,174,185,211],[66,68,211],[67,68,185,211],[53,67,68,69,185,211],[53,65,67,68,69,211],[52,68,74,211],[52,63,68,76,211],[49,62,64,68,69,189,202,211],[49,52,54,63,65,68,69,70,202,211],[49,52,54,64,68,69,202,211],[52,55,67,70,185,211],[51,68,211],[202,211],[49,52,64,68,69,70,71,73,202,211],[52,62,64,68,69,70,71,202,211],[52,64,68,202,211],[52,68,79,83,84,85,86,87,111,112,211],[52,68,83,84,86,87,114,211],[174,211],[80,81,82,211],[54,211],[77,79,84,85,111,112,114,120,211],[52,74,211],[77,211],[116,211],[52,68,83,86,87,211],[52,79,80,84,85,86,87,111,112,211],[80,211],[50,211],[80,81,211],[132,211],[168,211],[169,174,202,211],[170,181,182,189,199,210,211],[170,171,181,189,211],[172,211],[173,174,182,190,211],[174,199,207,211],[175,177,181,189,211],[176,211],[177,178,211],[181,211],[179,181,211],[168,181,211],[181,182,183,199,210,211],[181,182,183,196,199,202,211],[166,211,215],[177,181,184,189,199,210,211],[181,182,184,185,189,199,207,210,211],[184,186,199,207,210,211],[132,133,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217],[181,187,211],[188,210,211,215],[177,181,189,199,211],[190,211],[191,211],[168,192,211],[193,209,211,215],[194,211],[195,211],[181,196,197,211],[196,198,211,213],[169,181,199,200,201,202,211],[169,199,201,211],[199,200,211],[203,211],[168,199,211],[181,205,206,211],[205,206,211],[174,189,199,207,211],[208,211],[189,209,211],[169,184,195,210,211],[199,211,212],[188,211,213],[211,214],[169,174,181,183,192,199,210,211,213,215],[199,211,216],[169,170,199,211],[91,211],[102,103,104,105,211],[93,94,211],[93,211],[95,211],[96,211],[92,211],[92,98,211],[94,97,98,99,100,101,211],[91,92,93,95,96,211],[91,92,95,211],[107,211],[88,89,90,107,108,109,110,211],[102,106,211],[143,147,210,211],[143,199,210,211],[138,211],[140,143,207,210,211],[189,207,211],[211,218],[138,211,218],[140,143,189,210,211],[135,136,139,142,169,181,199,210,211],[135,141,211],[139,143,169,202,210,211,218],[169,211,218],[159,169,211,218],[137,138,211,218],[143,211],[137,138,139,140,141,142,143,144,145,147,148,149,150,151,152,153,154,155,156,157,158,160,161,162,163,164,165,211],[143,150,151,211],[141,143,151,152,211],[142,211],[135,138,143,211],[143,147,151,152,211],[147,211],[141,143,146,210,211],[135,140,141,143,147,150,211],[169,199,211],[138,143,159,169,211,215,218],[64,68,124,125,175,178,211],[124,126,127,182,188,191,193,210,211],[64,68,124,125,175,177,178,211],[68,123,124,174,175,207,211],[52,211],[51,123,211],[64,68],[68],[52,64,68,185],[64,68,185,189],[185],[68,185],[65,68],[52,68],[52,63,68,70,202],[52,64,68,202],[52,55,67,70,185],[49,52,202],[52,202],[52],[64,68,177],[64,177],[68,123,175],[123]],"referencedMap":[[70,1],[52,2],[49,2],[73,3],[72,4],[53,5],[57,6],[58,7],[62,8],[61,9],[59,10],[67,11],[56,12],[55,13],[66,14],[60,2],[75,15],[77,16],[63,17],[64,18],[65,19],[68,20],[69,21],[78,2],[54,22],[74,23],[76,24],[71,25],[113,26],[115,27],[120,28],[83,29],[112,2],[114,2],[86,2],[84,30],[79,30],[121,31],[122,32],[87,33],[85,2],[117,34],[118,35],[119,36],[81,37],[80,2],[51,38],[82,39],[129,2],[130,2],[131,2],[50,2],[132,40],[133,40],[168,41],[169,42],[170,43],[171,44],[172,45],[173,46],[174,47],[175,48],[176,49],[177,50],[178,50],[180,51],[179,52],[181,53],[182,54],[183,55],[167,56],[217,2],[184,57],[185,58],[186,59],[218,60],[187,61],[188,62],[189,63],[190,64],[191,65],[192,66],[193,67],[194,68],[195,69],[196,70],[197,70],[198,71],[199,72],[201,73],[200,74],[202,22],[203,75],[204,76],[205,77],[206,78],[207,79],[208,80],[209,81],[210,82],[211,28],[212,83],[213,84],[214,85],[215,86],[216,87],[134,2],[116,88],[105,89],[91,2],[106,90],[95,91],[101,2],[94,92],[96,93],[104,94],[103,94],[98,95],[99,96],[92,2],[102,97],[97,98],[93,99],[100,2],[9,2],[10,2],[12,2],[11,2],[2,2],[13,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[3,2],[4,2],[24,2],[21,2],[22,2],[23,2],[25,2],[26,2],[27,2],[5,2],[28,2],[29,2],[30,2],[31,2],[6,2],[35,2],[32,2],[33,2],[34,2],[36,2],[7,2],[37,2],[42,2],[43,2],[38,2],[39,2],[40,2],[41,2],[8,2],[47,2],[44,2],[45,2],[46,2],[1,2],[48,2],[88,2],[89,2],[90,2],[108,100],[111,101],[109,100],[107,102],[110,2],[150,103],[157,104],[149,103],[164,105],[141,106],[140,107],[163,108],[158,109],[161,110],[143,111],[142,112],[138,113],[137,114],[160,115],[139,116],[144,117],[145,2],[148,117],[135,2],[166,118],[165,117],[152,119],[153,120],[155,121],[151,122],[154,123],[159,108],[146,124],[147,125],[156,126],[136,127],[162,128],[126,129],[128,130],[127,131],[125,132],[123,133],[124,134]],"exportedModulesMap":[[70,135],[73,135],[72,136],[53,136],[58,137],[61,138],[59,139],[67,136],[56,140],[55,140],[66,141],[75,142],[77,142],[63,136],[64,143],[65,144],[68,145],[69,136],[74,146],[76,147],[71,144],[113,136],[115,136],[122,148],[118,136],[81,37],[80,2],[51,38],[82,39],[129,2],[130,2],[131,2],[50,2],[132,40],[133,40],[168,41],[169,42],[170,43],[171,44],[172,45],[173,46],[174,47],[175,48],[176,49],[177,50],[178,50],[180,51],[179,52],[181,53],[182,54],[183,55],[167,56],[217,2],[184,57],[185,58],[186,59],[218,60],[187,61],[188,62],[189,63],[190,64],[191,65],[192,66],[193,67],[194,68],[195,69],[196,70],[197,70],[198,71],[199,72],[201,73],[200,74],[202,22],[203,75],[204,76],[205,77],[206,78],[207,79],[208,80],[209,81],[210,82],[211,28],[212,83],[213,84],[214,85],[215,86],[216,87],[134,2],[116,88],[105,89],[91,2],[106,90],[95,91],[101,2],[94,92],[96,93],[104,94],[103,94],[98,95],[99,96],[92,2],[102,97],[97,98],[93,99],[100,2],[9,2],[10,2],[12,2],[11,2],[2,2],[13,2],[14,2],[15,2],[16,2],[17,2],[18,2],[19,2],[20,2],[3,2],[4,2],[24,2],[21,2],[22,2],[23,2],[25,2],[26,2],[27,2],[5,2],[28,2],[29,2],[30,2],[31,2],[6,2],[35,2],[32,2],[33,2],[34,2],[36,2],[7,2],[37,2],[42,2],[43,2],[38,2],[39,2],[40,2],[41,2],[8,2],[47,2],[44,2],[45,2],[46,2],[1,2],[48,2],[88,2],[89,2],[90,2],[108,100],[111,101],[109,100],[107,102],[110,2],[150,103],[157,104],[149,103],[164,105],[141,106],[140,107],[163,108],[158,109],[161,110],[143,111],[142,112],[138,113],[137,114],[160,115],[139,116],[144,117],[145,2],[148,117],[135,2],[166,118],[165,117],[152,119],[153,120],[155,121],[151,122],[154,123],[159,108],[146,124],[147,125],[156,126],[136,127],[162,128],[126,149],[127,150],[125,151],[123,148],[124,152]],"semanticDiagnosticsPerFile":[70,52,49,73,72,53,57,58,62,61,59,67,56,55,66,60,75,77,63,64,65,68,69,78,54,74,76,71,113,115,120,83,112,114,86,84,79,121,122,87,85,117,118,119,81,80,51,82,129,130,131,50,132,133,168,169,170,171,172,173,174,175,176,177,178,180,179,181,182,183,167,217,184,185,186,218,187,188,189,190,191,192,193,194,195,196,197,198,199,201,200,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,134,116,105,91,106,95,101,94,96,104,103,98,99,92,102,97,93,100,9,10,12,11,2,13,14,15,16,17,18,19,20,3,4,24,21,22,23,25,26,27,5,28,29,30,31,6,35,32,33,34,36,7,37,42,43,38,39,40,41,8,47,44,45,46,1,48,88,89,90,108,111,109,107,110,150,157,149,164,141,140,163,158,161,143,142,138,137,160,139,144,145,148,135,166,165,152,153,155,151,154,159,146,147,156,136,162,126,128,127,125,123,124],"latestChangedDtsFile":"../transports/http3-quiche/lib/index.d.ts"},"version":"4.9.5"}
@@ -0,0 +1,19 @@
1
+ /// <reference types="node" />
2
+ export class Http3WebTransportClientSocket extends Http3WebTransportSocket {
3
+ /**
4
+ * @param {import('../../../main/lib/types.js').HttpWebTransportInit} args
5
+ */
6
+ constructor(args: import('../../../main/lib/types.js').HttpWebTransportInit);
7
+ port: number;
8
+ host: string;
9
+ localPort: number | undefined;
10
+ forceIpv6: boolean;
11
+ /** @type {import('../../../main/lib/session.js').HttpClient} */
12
+ jsobj: import('../../../main/lib/session.js').HttpClient;
13
+ args: import("../../../main/lib/types.js").HttpWebTransportInit;
14
+ init(): void;
15
+ address: import("dns").LookupAddress | undefined;
16
+ closeClient(): void;
17
+ }
18
+ import { Http3WebTransportSocket } from "./socket.js";
19
+ //# sourceMappingURL=clientsocket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clientsocket.d.ts","sourceRoot":"","sources":["../../../../../transports/http3-quiche/lib/clientsocket.js"],"names":[],"mappings":";AAQA;IACE;;OAEG;IACH,kBAFW,OAAO,4BAA4B,EAAE,oBAAoB,EAenE;IATC,aAAwB;IACxB,aAAqC;IACrC,8BAAgC;IAChC,mBAAyC;IACzC,gEAAgE;IAEhE,OAFW,OAAO,8BAA8B,EAAE,UAAU,CAEtC;IAEtB,gEAAgB;IAGlB,aAyCC;IAtCK,iDAAqB;IAwC3B,oBAQC;CACF"}
@@ -0,0 +1,11 @@
1
+ export const wtrouter: any;
2
+ export const quicheInit: any;
3
+ export function checkQuicheInit(args?: {
4
+ quicheLogVerbose?: number | undefined;
5
+ path?: string | undefined;
6
+ } | undefined): void;
7
+ export const Http3WebTransportClient: any;
8
+ export const Http3WebTransportServer: any;
9
+ export { Http3WebTransportClientSocket } from "./clientsocket.js";
10
+ export { Http3WebTransportServerSocket } from "./serversocket.js";
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../transports/http3-quiche/lib/index.js"],"names":[],"mappings":"AA0BA,2BAAuC;AACvC,6BAA6C;AAOtC;;;qBAON;AAED,0CAAuE;AACvE,0CAAuE"}
@@ -0,0 +1,12 @@
1
+ export class Http3WebTransportServerSocket extends Http3WebTransportSocket {
2
+ port: number;
3
+ host: string;
4
+ /** @type {import('../../../main/lib/session.js').HttpServer} */
5
+ jsobj: import('../../../main/lib/session.js').HttpServer;
6
+ /** @type {import('node:dns').LookupAddress|undefined} */
7
+ address: import('node:dns').LookupAddress | undefined;
8
+ init(): void;
9
+ stopServer(): void;
10
+ }
11
+ import { Http3WebTransportSocket } from "./socket.js";
12
+ //# sourceMappingURL=serversocket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serversocket.d.ts","sourceRoot":"","sources":["../../../../../transports/http3-quiche/lib/serversocket.js"],"names":[],"mappings":"AAQA;IAQI,aAAwB;IACxB,aAAqC;IACrC,gEAAgE;IAEhE,OAFW,OAAO,8BAA8B,EAAE,UAAU,CAEtC;IAEtB,yDAAyD;IACzD,SADW,OAAO,UAAU,EAAE,aAAa,GAAC,SAAS,CAC7B;IAG1B,aA6CC;IAED,mBAKC;CACF"}
@@ -0,0 +1,19 @@
1
+ export class Http3WebTransportSocket {
2
+ /**
3
+ * @param {import('../../../main/lib/types.js').HttpWebTransportInit|undefined} args
4
+ */
5
+ constructor(args: import('../../../main/lib/types.js').HttpWebTransportInit | undefined);
6
+ /** @type {import('node:dgram').Socket} */
7
+ socketInt: import('node:dgram').Socket;
8
+ cobj: any;
9
+ chlosSched: boolean;
10
+ packetSendCB(): void;
11
+ doProcessBufferedChlos(): void;
12
+ blocked: boolean;
13
+ closed: boolean;
14
+ /**
15
+ * @param {import('./types').UDPServerSocketSend} args
16
+ */
17
+ sendPacket({ msg, offset, length, port, address }: import('./types').UDPServerSocketSend): boolean;
18
+ }
19
+ //# sourceMappingURL=socket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../../../../transports/http3-quiche/lib/socket.js"],"names":[],"mappings":"AAqEA;IACE;;OAEG;IACH,kBAFW,OAAO,4BAA4B,EAAE,oBAAoB,GAAC,SAAS,EAa7E;IAVC,0CAA0C;IAE1C,WAFW,OAAO,YAAY,EAAE,MAAM,CAEZ;IAE1B,UAAqB;IACrB,oBAAuB;IAgCzB,qBAKC;IA9BD,+BAGC;IAPC,iBAAoB;IACpB,gBAAmB;IAQrB;;OAEG;IAEH,mDAHW,OAAO,SAAS,EAAE,mBAAmB,WAiB/C;CAQF"}
@@ -0,0 +1,21 @@
1
+ import type { WebTransportOptions } from '../../../main/lib/dom';
2
+ export interface UDPServerSocketSend {
3
+ msg: Uint8Array;
4
+ offset: number;
5
+ length: number;
6
+ port: number;
7
+ address: string;
8
+ }
9
+ export interface Logger {
10
+ (formatter: any, ...args: any[]): void;
11
+ error: (formatter: any, ...args: any[]) => void;
12
+ trace: (formatter: any, ...args: any[]) => void;
13
+ }
14
+ export interface HttpWebTransportInit extends WebTransportOptions {
15
+ host: string;
16
+ port: string | number;
17
+ quicheLogVerbose?: number;
18
+ forceIpv6?: boolean;
19
+ localPort?: number;
20
+ }
21
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../transports/http3-quiche/lib/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACpB,MAAM,uBAAuB,CAAA;AAE9B,MAAM,WAAW,mBAAmB;IAChC,GAAG,EAAG,UAAU,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAC,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;IACtC,KAAK,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;IAC/C,KAAK,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;CAChD;AAED,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @param {string} name
3
+ * @returns {import('./types').Logger}
4
+ */
5
+ export function logger(name: string): import('./types').Logger;
6
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../transports/http3-quiche/lib/utils.js"],"names":[],"mappings":"AAEA;;;GAGG;AACH,6BAHW,MAAM,GACJ,OAAO,SAAS,EAAE,MAAM,CAOpC"}
@@ -140,6 +140,58 @@ export class Http2WebTransportBrowser {
140
140
  tokens = tokens.slice(1)
141
141
  }
142
142
  error = tokens.join(':')
143
+ } else {
144
+ switch (code) {
145
+ case 1001:
146
+ error = 'Going Away'
147
+ break
148
+ case 1002:
149
+ error = 'Protocol error'
150
+ break
151
+ case 1003:
152
+ error = 'Unsupported data'
153
+ break
154
+ case 1004:
155
+ error = 'Reserved'
156
+ break
157
+ case 1005:
158
+ error = 'No Status Rcvd'
159
+ break
160
+ case 1006:
161
+ error = 'Abnormal Closure'
162
+ break
163
+ case 1007:
164
+ error = 'Invalid frame payload data'
165
+ break
166
+ case 1008:
167
+ error = 'Policy Violation'
168
+ break
169
+ case 1009:
170
+ error = 'Message Too Big'
171
+ break
172
+ case 1010:
173
+ error = 'Mandatory Ext.'
174
+ break
175
+ case 1011:
176
+ error = 'Internal error'
177
+ break
178
+ case 1012:
179
+ error = 'Service Restart'
180
+ break
181
+ case 1013:
182
+ error = 'Try Again Later'
183
+ break
184
+ case 1014:
185
+ error = 'Bad Gateway'
186
+ break
187
+ case 1015:
188
+ error = 'TLS handshake'
189
+ break
190
+ case 1000:
191
+ default:
192
+ error = ''
193
+ break
194
+ }
143
195
  }
144
196
  nativesession.jsobj.onClose({
145
197
  errorcode: code,
@@ -288,4 +288,12 @@ export class Http2CapsuleParser extends ParserBaseHttp2 {
288
288
  if (blocked) this.blocked = true
289
289
  return blocked
290
290
  }
291
+
292
+ /**
293
+ * @param {number} code
294
+ */
295
+ closeHttp2Stream(code) {
296
+ this.stream.close(code)
297
+ this.stream.destroy()
298
+ }
291
299
  }
@@ -193,6 +193,9 @@ export class Http2WebTransportServer {
193
193
  )
194
194
 
195
195
  this.serverInt.on('stream', (stream, header) => {
196
+ stream.on('error', () => {
197
+ // we ignore errors, here, another handler is installed later
198
+ })
196
199
  if (header[':method'] !== 'CONNECT') {
197
200
  // Only accept CONNECT requests
198
201
  stream.respond({
@@ -207,7 +210,7 @@ export class Http2WebTransportServer {
207
210
  let websocketProt
208
211
  if (
209
212
  header[':protocol'] === 'websocket' &&
210
- header['Sec-WebSocket-Protocol']
213
+ header['sec-websocket-protocol']
211
214
  ) {
212
215
  websocketProt = this.checkProtocolHeader(header)
213
216
  }
@@ -225,7 +228,10 @@ export class Http2WebTransportServer {
225
228
  stream.close(constants.NGHTTP2_REFUSED_STREAM)
226
229
  return
227
230
  }
228
- const path = header[':path']
231
+ let path = header[':path']
232
+ while (path.length > 1 && path[0] === '/' && path[1] === '/') {
233
+ path = path?.slice(1)
234
+ }
229
235
  if (this.paths[path]) {
230
236
  const retObj = {
231
237
  session: new Http2WebTransportSession({
@@ -279,7 +285,7 @@ export class Http2WebTransportServer {
279
285
  ':status': '200'
280
286
  }
281
287
  // @ts-ignore
282
- if (websocketProt) resp['Sec-WebSocket-Protocol'] = websocketProt
288
+ if (websocketProt) resp['sec-websocket-protocol'] = websocketProt
283
289
  stream.respond(resp)
284
290
  this.jsobj.onHttpWTSessionVisitor(retObj)
285
291
  } else if (this.hasrequesthandler) {
@@ -292,7 +298,7 @@ export class Http2WebTransportServer {
292
298
  ':status': '200'
293
299
  }
294
300
  // @ts-ignore
295
- if (websocketProt) resp['Sec-WebSocket-Protocol'] = websocketProt
301
+ if (websocketProt) resp['sec-websocket-protocol'] = websocketProt
296
302
  stream.respond(resp)
297
303
  this.jsobj.onSessionRequest(retObj)
298
304
  } else {
@@ -81,6 +81,7 @@ function readQWord(bs) {
81
81
  * @param{number} length
82
82
  */
83
83
  function applyMask(ms, buffer, offset, length) {
84
+ // Note offset: includes the byteOffset into the buffer
84
85
  if (length > 24) {
85
86
  let run = 0
86
87
  // alignment preamble, inspired from ws bufferutil
@@ -102,11 +103,11 @@ function applyMask(ms, buffer, offset, length) {
102
103
  const data64 = new BigUint64Array(
103
104
  buffer.buffer,
104
105
  run + offset,
105
- Math.floor((buffer.length - run - offset) / 8)
106
+ Math.floor((length - run) / 8)
106
107
  )
107
108
  const workmask64 = new BigUint64Array(workmask.buffer)
108
109
  let run64 = 0
109
- while (run + 8 <= length) {
110
+ while (run + 8 < length) {
110
111
  data64[run64] ^= workmask64[0]
111
112
  run += 8
112
113
  run64++
@@ -740,7 +741,7 @@ export class WebSocketParser extends ParserBaseHttp2 {
740
741
  applyMask(
741
742
  maskstate,
742
743
  bufferstate.buffer,
743
- bufferstate.offset,
744
+ bufferstate.offset + bufferstate.buffer.byteOffset,
744
745
  endmask - beginmask
745
746
  )
746
747
  if (payload)
@@ -826,4 +827,17 @@ export class WebSocketParser extends ParserBaseHttp2 {
826
827
  if (blocked) this.blocked = true
827
828
  return blocked
828
829
  }
830
+
831
+ /**
832
+ * @param {number} code
833
+ */
834
+ closeHttp2Stream(code) {
835
+ const stream = this.stream
836
+ if (stream.close) {
837
+ stream.setTimeout(1000, () =>
838
+ stream.close(0x00 /* aka NGHTTP2_NO_ERROR */)
839
+ )
840
+ } else if (stream.end) stream.end()
841
+ else throw new Error('http2:session not close method')
842
+ }
829
843
  }
@@ -136,4 +136,11 @@ export class ParserBase {
136
136
  const object = this.wtstreams.get(Number(streamid))
137
137
  if (object && offset) object.flowController.reportBlocked(offset)
138
138
  }
139
+
140
+ /**
141
+ * @param {number} code
142
+ */
143
+ closeHttp2Stream(code) {
144
+ throw new Error('Implement closeHttp2Stream in derived Class')
145
+ }
139
146
  }
@@ -157,11 +157,7 @@ export class Http2WebTransportSession {
157
157
  this.capsParser.sendClose({ code, reason }) // this includes for ws closing the session!
158
158
  // what to do with the reason
159
159
  if (this.stream) {
160
- if (this.stream.close) {
161
- this.stream.close(code)
162
- this.stream.destroy()
163
- } else if (this.stream.end) this.stream.end()
164
- else throw new Error('http2:session not close method')
160
+ this.capsParser.closeHttp2Stream(code)
165
161
  }
166
162
  }
167
163
 
@@ -28,10 +28,16 @@ if (globalThis.WebTransport) {
28
28
  try {
29
29
  // @ts-ignore
30
30
  // eslint-disable-next-line no-undef
31
- const transport = new WebTransport('https://example.org/test', {
31
+ const transport = new WebTransport('https://127.0.0.1:23333/test', {
32
32
  serverCertificateHashes: []
33
33
  })
34
- transport.close()
34
+ transport.ready
35
+ .then(() => {
36
+ try {
37
+ transport.close()
38
+ } catch (error) {}
39
+ })
40
+ .catch(() => {})
35
41
  } catch (error) {
36
42
  // @ts-ignore
37
43
  if (error?.name === 'NotSupportedError') {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fails-components/webtransport",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "A component to add webtransport support (server and client) to node.js using libquiche",
5
5
  "exports": {
6
6
  ".": {
@@ -15,15 +15,17 @@
15
15
  "types": "./dist/lib/index.d.ts",
16
16
  "scripts": {
17
17
  "start": "node test/echoserver.js",
18
- "test": "npm run test:node && npm run test:node:http2 && npm run test:chromium && npm run test:chromium:http2:polyfill && npm run test:chromium:http2:ponyfill",
18
+ "test": "npm run test:node && npm run test:node:http2 && npm run test:chromium && npm run test:chromium:http2:polyfill && npm run test:chromium:http2:ponyfill && npm run test:firefox && npm run test:firefox:http2:polyfill && npm run test:firefox:http2:ponyfill",
19
19
  "test:node": "node test/index.js node http3",
20
20
  "test:node:http2": "node test/index.js node http2",
21
21
  "test:chromium": "node test/index.js chromium http3",
22
22
  "test:chromium:http2:polyfill": "node test/index.js chromium http2 polyfill",
23
23
  "test:chromium:http2:ponyfill": "node test/index.js chromium http2 ponyfill",
24
+ "test:firefox": "node test/index.js firefox http3",
25
+ "test:firefox:http2:polyfill": "node test/index.js firefox http2 polyfill",
26
+ "test:firefox:http2:ponyfill": "node test/index.js firefox http2 ponyfill",
24
27
  "oldtest": "node old_test/test.js",
25
28
  "oldtesthttp2": "node old_test/test.js http2",
26
- "types": "tsc",
27
29
  "lint": "eslint lib test old_test"
28
30
  },
29
31
  "repository": {