deepv-code 1.0.182 → 1.0.183

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 (193) hide show
  1. package/bundle/dvcode.js +635 -635
  2. package/package.json +1 -1
  3. package/bundle/assets/help/README.md +0 -113
  4. package/bundle/assets/sounds/README.md +0 -74
  5. package/bundle/node_modules/undici/LICENSE +0 -21
  6. package/bundle/node_modules/undici/README.md +0 -472
  7. package/bundle/node_modules/undici/docs/docs/api/Agent.md +0 -83
  8. package/bundle/node_modules/undici/docs/docs/api/BalancedPool.md +0 -99
  9. package/bundle/node_modules/undici/docs/docs/api/CacheStorage.md +0 -30
  10. package/bundle/node_modules/undici/docs/docs/api/CacheStore.md +0 -151
  11. package/bundle/node_modules/undici/docs/docs/api/Client.md +0 -281
  12. package/bundle/node_modules/undici/docs/docs/api/ClientStats.md +0 -27
  13. package/bundle/node_modules/undici/docs/docs/api/Connector.md +0 -115
  14. package/bundle/node_modules/undici/docs/docs/api/ContentType.md +0 -57
  15. package/bundle/node_modules/undici/docs/docs/api/Cookies.md +0 -101
  16. package/bundle/node_modules/undici/docs/docs/api/Debug.md +0 -62
  17. package/bundle/node_modules/undici/docs/docs/api/DiagnosticsChannel.md +0 -204
  18. package/bundle/node_modules/undici/docs/docs/api/Dispatcher.md +0 -1200
  19. package/bundle/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +0 -159
  20. package/bundle/node_modules/undici/docs/docs/api/Errors.md +0 -49
  21. package/bundle/node_modules/undici/docs/docs/api/EventSource.md +0 -45
  22. package/bundle/node_modules/undici/docs/docs/api/Fetch.md +0 -52
  23. package/bundle/node_modules/undici/docs/docs/api/H2CClient.md +0 -262
  24. package/bundle/node_modules/undici/docs/docs/api/MockAgent.md +0 -603
  25. package/bundle/node_modules/undici/docs/docs/api/MockCallHistory.md +0 -197
  26. package/bundle/node_modules/undici/docs/docs/api/MockCallHistoryLog.md +0 -43
  27. package/bundle/node_modules/undici/docs/docs/api/MockClient.md +0 -77
  28. package/bundle/node_modules/undici/docs/docs/api/MockErrors.md +0 -12
  29. package/bundle/node_modules/undici/docs/docs/api/MockPool.md +0 -548
  30. package/bundle/node_modules/undici/docs/docs/api/Pool.md +0 -84
  31. package/bundle/node_modules/undici/docs/docs/api/PoolStats.md +0 -35
  32. package/bundle/node_modules/undici/docs/docs/api/ProxyAgent.md +0 -227
  33. package/bundle/node_modules/undici/docs/docs/api/RedirectHandler.md +0 -96
  34. package/bundle/node_modules/undici/docs/docs/api/RetryAgent.md +0 -45
  35. package/bundle/node_modules/undici/docs/docs/api/RetryHandler.md +0 -117
  36. package/bundle/node_modules/undici/docs/docs/api/Util.md +0 -25
  37. package/bundle/node_modules/undici/docs/docs/api/WebSocket.md +0 -85
  38. package/bundle/node_modules/undici/docs/docs/api/api-lifecycle.md +0 -91
  39. package/bundle/node_modules/undici/docs/docs/best-practices/client-certificate.md +0 -64
  40. package/bundle/node_modules/undici/docs/docs/best-practices/mocking-request.md +0 -190
  41. package/bundle/node_modules/undici/docs/docs/best-practices/proxy.md +0 -127
  42. package/bundle/node_modules/undici/docs/docs/best-practices/writing-tests.md +0 -20
  43. package/bundle/node_modules/undici/index-fetch.js +0 -35
  44. package/bundle/node_modules/undici/index.d.ts +0 -3
  45. package/bundle/node_modules/undici/index.js +0 -183
  46. package/bundle/node_modules/undici/lib/api/abort-signal.js +0 -59
  47. package/bundle/node_modules/undici/lib/api/api-connect.js +0 -110
  48. package/bundle/node_modules/undici/lib/api/api-pipeline.js +0 -252
  49. package/bundle/node_modules/undici/lib/api/api-request.js +0 -199
  50. package/bundle/node_modules/undici/lib/api/api-stream.js +0 -209
  51. package/bundle/node_modules/undici/lib/api/api-upgrade.js +0 -110
  52. package/bundle/node_modules/undici/lib/api/index.js +0 -7
  53. package/bundle/node_modules/undici/lib/api/readable.js +0 -558
  54. package/bundle/node_modules/undici/lib/api/util.js +0 -95
  55. package/bundle/node_modules/undici/lib/cache/memory-cache-store.js +0 -234
  56. package/bundle/node_modules/undici/lib/cache/sqlite-cache-store.js +0 -461
  57. package/bundle/node_modules/undici/lib/core/connect.js +0 -164
  58. package/bundle/node_modules/undici/lib/core/constants.js +0 -143
  59. package/bundle/node_modules/undici/lib/core/diagnostics.js +0 -196
  60. package/bundle/node_modules/undici/lib/core/errors.js +0 -244
  61. package/bundle/node_modules/undici/lib/core/request.js +0 -397
  62. package/bundle/node_modules/undici/lib/core/symbols.js +0 -68
  63. package/bundle/node_modules/undici/lib/core/tree.js +0 -160
  64. package/bundle/node_modules/undici/lib/core/util.js +0 -988
  65. package/bundle/node_modules/undici/lib/dispatcher/agent.js +0 -135
  66. package/bundle/node_modules/undici/lib/dispatcher/balanced-pool.js +0 -206
  67. package/bundle/node_modules/undici/lib/dispatcher/client-h1.js +0 -1615
  68. package/bundle/node_modules/undici/lib/dispatcher/client-h2.js +0 -798
  69. package/bundle/node_modules/undici/lib/dispatcher/client.js +0 -614
  70. package/bundle/node_modules/undici/lib/dispatcher/dispatcher-base.js +0 -161
  71. package/bundle/node_modules/undici/lib/dispatcher/dispatcher.js +0 -48
  72. package/bundle/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +0 -151
  73. package/bundle/node_modules/undici/lib/dispatcher/fixed-queue.js +0 -159
  74. package/bundle/node_modules/undici/lib/dispatcher/h2c-client.js +0 -122
  75. package/bundle/node_modules/undici/lib/dispatcher/pool-base.js +0 -191
  76. package/bundle/node_modules/undici/lib/dispatcher/pool.js +0 -118
  77. package/bundle/node_modules/undici/lib/dispatcher/proxy-agent.js +0 -275
  78. package/bundle/node_modules/undici/lib/dispatcher/retry-agent.js +0 -35
  79. package/bundle/node_modules/undici/lib/global.js +0 -32
  80. package/bundle/node_modules/undici/lib/handler/cache-handler.js +0 -448
  81. package/bundle/node_modules/undici/lib/handler/cache-revalidation-handler.js +0 -124
  82. package/bundle/node_modules/undici/lib/handler/decorator-handler.js +0 -67
  83. package/bundle/node_modules/undici/lib/handler/redirect-handler.js +0 -227
  84. package/bundle/node_modules/undici/lib/handler/retry-handler.js +0 -342
  85. package/bundle/node_modules/undici/lib/handler/unwrap-handler.js +0 -96
  86. package/bundle/node_modules/undici/lib/handler/wrap-handler.js +0 -95
  87. package/bundle/node_modules/undici/lib/interceptor/cache.js +0 -372
  88. package/bundle/node_modules/undici/lib/interceptor/dns.js +0 -432
  89. package/bundle/node_modules/undici/lib/interceptor/dump.js +0 -111
  90. package/bundle/node_modules/undici/lib/interceptor/redirect.js +0 -21
  91. package/bundle/node_modules/undici/lib/interceptor/response-error.js +0 -95
  92. package/bundle/node_modules/undici/lib/interceptor/retry.js +0 -19
  93. package/bundle/node_modules/undici/lib/llhttp/.gitkeep +0 -0
  94. package/bundle/node_modules/undici/lib/llhttp/constants.d.ts +0 -97
  95. package/bundle/node_modules/undici/lib/llhttp/constants.js +0 -498
  96. package/bundle/node_modules/undici/lib/llhttp/constants.js.map +0 -1
  97. package/bundle/node_modules/undici/lib/llhttp/llhttp-wasm.js +0 -15
  98. package/bundle/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js +0 -15
  99. package/bundle/node_modules/undici/lib/llhttp/utils.d.ts +0 -2
  100. package/bundle/node_modules/undici/lib/llhttp/utils.js +0 -15
  101. package/bundle/node_modules/undici/lib/llhttp/utils.js.map +0 -1
  102. package/bundle/node_modules/undici/lib/mock/mock-agent.js +0 -224
  103. package/bundle/node_modules/undici/lib/mock/mock-call-history.js +0 -248
  104. package/bundle/node_modules/undici/lib/mock/mock-client.js +0 -64
  105. package/bundle/node_modules/undici/lib/mock/mock-errors.js +0 -19
  106. package/bundle/node_modules/undici/lib/mock/mock-interceptor.js +0 -209
  107. package/bundle/node_modules/undici/lib/mock/mock-pool.js +0 -64
  108. package/bundle/node_modules/undici/lib/mock/mock-symbols.js +0 -31
  109. package/bundle/node_modules/undici/lib/mock/mock-utils.js +0 -433
  110. package/bundle/node_modules/undici/lib/mock/pending-interceptors-formatter.js +0 -43
  111. package/bundle/node_modules/undici/lib/util/cache.js +0 -368
  112. package/bundle/node_modules/undici/lib/util/date.js +0 -259
  113. package/bundle/node_modules/undici/lib/util/stats.js +0 -32
  114. package/bundle/node_modules/undici/lib/util/timers.js +0 -423
  115. package/bundle/node_modules/undici/lib/web/cache/cache.js +0 -862
  116. package/bundle/node_modules/undici/lib/web/cache/cachestorage.js +0 -152
  117. package/bundle/node_modules/undici/lib/web/cache/util.js +0 -45
  118. package/bundle/node_modules/undici/lib/web/cookies/constants.js +0 -12
  119. package/bundle/node_modules/undici/lib/web/cookies/index.js +0 -199
  120. package/bundle/node_modules/undici/lib/web/cookies/parse.js +0 -322
  121. package/bundle/node_modules/undici/lib/web/cookies/util.js +0 -282
  122. package/bundle/node_modules/undici/lib/web/eventsource/eventsource-stream.js +0 -399
  123. package/bundle/node_modules/undici/lib/web/eventsource/eventsource.js +0 -484
  124. package/bundle/node_modules/undici/lib/web/eventsource/util.js +0 -37
  125. package/bundle/node_modules/undici/lib/web/fetch/LICENSE +0 -21
  126. package/bundle/node_modules/undici/lib/web/fetch/body.js +0 -532
  127. package/bundle/node_modules/undici/lib/web/fetch/constants.js +0 -131
  128. package/bundle/node_modules/undici/lib/web/fetch/data-url.js +0 -744
  129. package/bundle/node_modules/undici/lib/web/fetch/dispatcher-weakref.js +0 -46
  130. package/bundle/node_modules/undici/lib/web/fetch/formdata-parser.js +0 -501
  131. package/bundle/node_modules/undici/lib/web/fetch/formdata.js +0 -263
  132. package/bundle/node_modules/undici/lib/web/fetch/global.js +0 -40
  133. package/bundle/node_modules/undici/lib/web/fetch/headers.js +0 -719
  134. package/bundle/node_modules/undici/lib/web/fetch/index.js +0 -2258
  135. package/bundle/node_modules/undici/lib/web/fetch/request.js +0 -1099
  136. package/bundle/node_modules/undici/lib/web/fetch/response.js +0 -636
  137. package/bundle/node_modules/undici/lib/web/fetch/util.js +0 -1782
  138. package/bundle/node_modules/undici/lib/web/fetch/webidl.js +0 -740
  139. package/bundle/node_modules/undici/lib/web/websocket/connection.js +0 -325
  140. package/bundle/node_modules/undici/lib/web/websocket/constants.js +0 -126
  141. package/bundle/node_modules/undici/lib/web/websocket/events.js +0 -331
  142. package/bundle/node_modules/undici/lib/web/websocket/frame.js +0 -138
  143. package/bundle/node_modules/undici/lib/web/websocket/permessage-deflate.js +0 -70
  144. package/bundle/node_modules/undici/lib/web/websocket/receiver.js +0 -454
  145. package/bundle/node_modules/undici/lib/web/websocket/sender.js +0 -109
  146. package/bundle/node_modules/undici/lib/web/websocket/stream/websocketerror.js +0 -83
  147. package/bundle/node_modules/undici/lib/web/websocket/stream/websocketstream.js +0 -485
  148. package/bundle/node_modules/undici/lib/web/websocket/util.js +0 -338
  149. package/bundle/node_modules/undici/lib/web/websocket/websocket.js +0 -686
  150. package/bundle/node_modules/undici/package.json +0 -149
  151. package/bundle/node_modules/undici/scripts/strip-comments.js +0 -10
  152. package/bundle/node_modules/undici/types/README.md +0 -6
  153. package/bundle/node_modules/undici/types/agent.d.ts +0 -35
  154. package/bundle/node_modules/undici/types/api.d.ts +0 -43
  155. package/bundle/node_modules/undici/types/balanced-pool.d.ts +0 -29
  156. package/bundle/node_modules/undici/types/cache-interceptor.d.ts +0 -172
  157. package/bundle/node_modules/undici/types/cache.d.ts +0 -36
  158. package/bundle/node_modules/undici/types/client-stats.d.ts +0 -15
  159. package/bundle/node_modules/undici/types/client.d.ts +0 -110
  160. package/bundle/node_modules/undici/types/connector.d.ts +0 -34
  161. package/bundle/node_modules/undici/types/content-type.d.ts +0 -21
  162. package/bundle/node_modules/undici/types/cookies.d.ts +0 -30
  163. package/bundle/node_modules/undici/types/diagnostics-channel.d.ts +0 -66
  164. package/bundle/node_modules/undici/types/dispatcher.d.ts +0 -281
  165. package/bundle/node_modules/undici/types/env-http-proxy-agent.d.ts +0 -21
  166. package/bundle/node_modules/undici/types/errors.d.ts +0 -171
  167. package/bundle/node_modules/undici/types/eventsource.d.ts +0 -61
  168. package/bundle/node_modules/undici/types/fetch.d.ts +0 -210
  169. package/bundle/node_modules/undici/types/formdata.d.ts +0 -108
  170. package/bundle/node_modules/undici/types/global-dispatcher.d.ts +0 -9
  171. package/bundle/node_modules/undici/types/global-origin.d.ts +0 -7
  172. package/bundle/node_modules/undici/types/h2c-client.d.ts +0 -75
  173. package/bundle/node_modules/undici/types/handlers.d.ts +0 -15
  174. package/bundle/node_modules/undici/types/header.d.ts +0 -160
  175. package/bundle/node_modules/undici/types/index.d.ts +0 -75
  176. package/bundle/node_modules/undici/types/interceptors.d.ts +0 -34
  177. package/bundle/node_modules/undici/types/mock-agent.d.ts +0 -68
  178. package/bundle/node_modules/undici/types/mock-call-history.d.ts +0 -111
  179. package/bundle/node_modules/undici/types/mock-client.d.ts +0 -25
  180. package/bundle/node_modules/undici/types/mock-errors.d.ts +0 -12
  181. package/bundle/node_modules/undici/types/mock-interceptor.d.ts +0 -93
  182. package/bundle/node_modules/undici/types/mock-pool.d.ts +0 -25
  183. package/bundle/node_modules/undici/types/patch.d.ts +0 -29
  184. package/bundle/node_modules/undici/types/pool-stats.d.ts +0 -19
  185. package/bundle/node_modules/undici/types/pool.d.ts +0 -41
  186. package/bundle/node_modules/undici/types/proxy-agent.d.ts +0 -29
  187. package/bundle/node_modules/undici/types/readable.d.ts +0 -68
  188. package/bundle/node_modules/undici/types/retry-agent.d.ts +0 -8
  189. package/bundle/node_modules/undici/types/retry-handler.d.ts +0 -116
  190. package/bundle/node_modules/undici/types/util.d.ts +0 -18
  191. package/bundle/node_modules/undici/types/utility.d.ts +0 -7
  192. package/bundle/node_modules/undici/types/webidl.d.ts +0 -266
  193. package/bundle/node_modules/undici/types/websocket.d.ts +0 -184
@@ -1,331 +0,0 @@
1
- 'use strict'
2
-
3
- const { webidl } = require('../fetch/webidl')
4
- const { kEnumerableProperty } = require('../../core/util')
5
- const { kConstruct } = require('../../core/symbols')
6
-
7
- /**
8
- * @see https://html.spec.whatwg.org/multipage/comms.html#messageevent
9
- */
10
- class MessageEvent extends Event {
11
- #eventInit
12
-
13
- constructor (type, eventInitDict = {}) {
14
- if (type === kConstruct) {
15
- super(arguments[1], arguments[2])
16
- webidl.util.markAsUncloneable(this)
17
- return
18
- }
19
-
20
- const prefix = 'MessageEvent constructor'
21
- webidl.argumentLengthCheck(arguments, 1, prefix)
22
-
23
- type = webidl.converters.DOMString(type, prefix, 'type')
24
- eventInitDict = webidl.converters.MessageEventInit(eventInitDict, prefix, 'eventInitDict')
25
-
26
- super(type, eventInitDict)
27
-
28
- this.#eventInit = eventInitDict
29
- webidl.util.markAsUncloneable(this)
30
- }
31
-
32
- get data () {
33
- webidl.brandCheck(this, MessageEvent)
34
-
35
- return this.#eventInit.data
36
- }
37
-
38
- get origin () {
39
- webidl.brandCheck(this, MessageEvent)
40
-
41
- return this.#eventInit.origin
42
- }
43
-
44
- get lastEventId () {
45
- webidl.brandCheck(this, MessageEvent)
46
-
47
- return this.#eventInit.lastEventId
48
- }
49
-
50
- get source () {
51
- webidl.brandCheck(this, MessageEvent)
52
-
53
- return this.#eventInit.source
54
- }
55
-
56
- get ports () {
57
- webidl.brandCheck(this, MessageEvent)
58
-
59
- if (!Object.isFrozen(this.#eventInit.ports)) {
60
- Object.freeze(this.#eventInit.ports)
61
- }
62
-
63
- return this.#eventInit.ports
64
- }
65
-
66
- initMessageEvent (
67
- type,
68
- bubbles = false,
69
- cancelable = false,
70
- data = null,
71
- origin = '',
72
- lastEventId = '',
73
- source = null,
74
- ports = []
75
- ) {
76
- webidl.brandCheck(this, MessageEvent)
77
-
78
- webidl.argumentLengthCheck(arguments, 1, 'MessageEvent.initMessageEvent')
79
-
80
- return new MessageEvent(type, {
81
- bubbles, cancelable, data, origin, lastEventId, source, ports
82
- })
83
- }
84
-
85
- static createFastMessageEvent (type, init) {
86
- const messageEvent = new MessageEvent(kConstruct, type, init)
87
- messageEvent.#eventInit = init
88
- messageEvent.#eventInit.data ??= null
89
- messageEvent.#eventInit.origin ??= ''
90
- messageEvent.#eventInit.lastEventId ??= ''
91
- messageEvent.#eventInit.source ??= null
92
- messageEvent.#eventInit.ports ??= []
93
- return messageEvent
94
- }
95
- }
96
-
97
- const { createFastMessageEvent } = MessageEvent
98
- delete MessageEvent.createFastMessageEvent
99
-
100
- /**
101
- * @see https://websockets.spec.whatwg.org/#the-closeevent-interface
102
- */
103
- class CloseEvent extends Event {
104
- #eventInit
105
-
106
- constructor (type, eventInitDict = {}) {
107
- const prefix = 'CloseEvent constructor'
108
- webidl.argumentLengthCheck(arguments, 1, prefix)
109
-
110
- type = webidl.converters.DOMString(type, prefix, 'type')
111
- eventInitDict = webidl.converters.CloseEventInit(eventInitDict)
112
-
113
- super(type, eventInitDict)
114
-
115
- this.#eventInit = eventInitDict
116
- webidl.util.markAsUncloneable(this)
117
- }
118
-
119
- get wasClean () {
120
- webidl.brandCheck(this, CloseEvent)
121
-
122
- return this.#eventInit.wasClean
123
- }
124
-
125
- get code () {
126
- webidl.brandCheck(this, CloseEvent)
127
-
128
- return this.#eventInit.code
129
- }
130
-
131
- get reason () {
132
- webidl.brandCheck(this, CloseEvent)
133
-
134
- return this.#eventInit.reason
135
- }
136
- }
137
-
138
- // https://html.spec.whatwg.org/multipage/webappapis.html#the-errorevent-interface
139
- class ErrorEvent extends Event {
140
- #eventInit
141
-
142
- constructor (type, eventInitDict) {
143
- const prefix = 'ErrorEvent constructor'
144
- webidl.argumentLengthCheck(arguments, 1, prefix)
145
-
146
- super(type, eventInitDict)
147
- webidl.util.markAsUncloneable(this)
148
-
149
- type = webidl.converters.DOMString(type, prefix, 'type')
150
- eventInitDict = webidl.converters.ErrorEventInit(eventInitDict ?? {})
151
-
152
- this.#eventInit = eventInitDict
153
- }
154
-
155
- get message () {
156
- webidl.brandCheck(this, ErrorEvent)
157
-
158
- return this.#eventInit.message
159
- }
160
-
161
- get filename () {
162
- webidl.brandCheck(this, ErrorEvent)
163
-
164
- return this.#eventInit.filename
165
- }
166
-
167
- get lineno () {
168
- webidl.brandCheck(this, ErrorEvent)
169
-
170
- return this.#eventInit.lineno
171
- }
172
-
173
- get colno () {
174
- webidl.brandCheck(this, ErrorEvent)
175
-
176
- return this.#eventInit.colno
177
- }
178
-
179
- get error () {
180
- webidl.brandCheck(this, ErrorEvent)
181
-
182
- return this.#eventInit.error
183
- }
184
- }
185
-
186
- Object.defineProperties(MessageEvent.prototype, {
187
- [Symbol.toStringTag]: {
188
- value: 'MessageEvent',
189
- configurable: true
190
- },
191
- data: kEnumerableProperty,
192
- origin: kEnumerableProperty,
193
- lastEventId: kEnumerableProperty,
194
- source: kEnumerableProperty,
195
- ports: kEnumerableProperty,
196
- initMessageEvent: kEnumerableProperty
197
- })
198
-
199
- Object.defineProperties(CloseEvent.prototype, {
200
- [Symbol.toStringTag]: {
201
- value: 'CloseEvent',
202
- configurable: true
203
- },
204
- reason: kEnumerableProperty,
205
- code: kEnumerableProperty,
206
- wasClean: kEnumerableProperty
207
- })
208
-
209
- Object.defineProperties(ErrorEvent.prototype, {
210
- [Symbol.toStringTag]: {
211
- value: 'ErrorEvent',
212
- configurable: true
213
- },
214
- message: kEnumerableProperty,
215
- filename: kEnumerableProperty,
216
- lineno: kEnumerableProperty,
217
- colno: kEnumerableProperty,
218
- error: kEnumerableProperty
219
- })
220
-
221
- webidl.converters.MessagePort = webidl.interfaceConverter(
222
- webidl.is.MessagePort,
223
- 'MessagePort'
224
- )
225
-
226
- webidl.converters['sequence<MessagePort>'] = webidl.sequenceConverter(
227
- webidl.converters.MessagePort
228
- )
229
-
230
- const eventInit = [
231
- {
232
- key: 'bubbles',
233
- converter: webidl.converters.boolean,
234
- defaultValue: () => false
235
- },
236
- {
237
- key: 'cancelable',
238
- converter: webidl.converters.boolean,
239
- defaultValue: () => false
240
- },
241
- {
242
- key: 'composed',
243
- converter: webidl.converters.boolean,
244
- defaultValue: () => false
245
- }
246
- ]
247
-
248
- webidl.converters.MessageEventInit = webidl.dictionaryConverter([
249
- ...eventInit,
250
- {
251
- key: 'data',
252
- converter: webidl.converters.any,
253
- defaultValue: () => null
254
- },
255
- {
256
- key: 'origin',
257
- converter: webidl.converters.USVString,
258
- defaultValue: () => ''
259
- },
260
- {
261
- key: 'lastEventId',
262
- converter: webidl.converters.DOMString,
263
- defaultValue: () => ''
264
- },
265
- {
266
- key: 'source',
267
- // Node doesn't implement WindowProxy or ServiceWorker, so the only
268
- // valid value for source is a MessagePort.
269
- converter: webidl.nullableConverter(webidl.converters.MessagePort),
270
- defaultValue: () => null
271
- },
272
- {
273
- key: 'ports',
274
- converter: webidl.converters['sequence<MessagePort>'],
275
- defaultValue: () => new Array(0)
276
- }
277
- ])
278
-
279
- webidl.converters.CloseEventInit = webidl.dictionaryConverter([
280
- ...eventInit,
281
- {
282
- key: 'wasClean',
283
- converter: webidl.converters.boolean,
284
- defaultValue: () => false
285
- },
286
- {
287
- key: 'code',
288
- converter: webidl.converters['unsigned short'],
289
- defaultValue: () => 0
290
- },
291
- {
292
- key: 'reason',
293
- converter: webidl.converters.USVString,
294
- defaultValue: () => ''
295
- }
296
- ])
297
-
298
- webidl.converters.ErrorEventInit = webidl.dictionaryConverter([
299
- ...eventInit,
300
- {
301
- key: 'message',
302
- converter: webidl.converters.DOMString,
303
- defaultValue: () => ''
304
- },
305
- {
306
- key: 'filename',
307
- converter: webidl.converters.USVString,
308
- defaultValue: () => ''
309
- },
310
- {
311
- key: 'lineno',
312
- converter: webidl.converters['unsigned long'],
313
- defaultValue: () => 0
314
- },
315
- {
316
- key: 'colno',
317
- converter: webidl.converters['unsigned long'],
318
- defaultValue: () => 0
319
- },
320
- {
321
- key: 'error',
322
- converter: webidl.converters.any
323
- }
324
- ])
325
-
326
- module.exports = {
327
- MessageEvent,
328
- CloseEvent,
329
- ErrorEvent,
330
- createFastMessageEvent
331
- }
@@ -1,138 +0,0 @@
1
- 'use strict'
2
-
3
- const { maxUnsigned16Bit, opcodes } = require('./constants')
4
-
5
- const BUFFER_SIZE = 8 * 1024
6
-
7
- /** @type {import('crypto')} */
8
- let crypto
9
- let buffer = null
10
- let bufIdx = BUFFER_SIZE
11
-
12
- try {
13
- crypto = require('node:crypto')
14
- /* c8 ignore next 3 */
15
- } catch {
16
- crypto = {
17
- // not full compatibility, but minimum.
18
- randomFillSync: function randomFillSync (buffer, _offset, _size) {
19
- for (let i = 0; i < buffer.length; ++i) {
20
- buffer[i] = Math.random() * 255 | 0
21
- }
22
- return buffer
23
- }
24
- }
25
- }
26
-
27
- function generateMask () {
28
- if (bufIdx === BUFFER_SIZE) {
29
- bufIdx = 0
30
- crypto.randomFillSync((buffer ??= Buffer.allocUnsafeSlow(BUFFER_SIZE)), 0, BUFFER_SIZE)
31
- }
32
- return [buffer[bufIdx++], buffer[bufIdx++], buffer[bufIdx++], buffer[bufIdx++]]
33
- }
34
-
35
- class WebsocketFrameSend {
36
- /**
37
- * @param {Buffer|undefined} data
38
- */
39
- constructor (data) {
40
- this.frameData = data
41
- }
42
-
43
- createFrame (opcode) {
44
- const frameData = this.frameData
45
- const maskKey = generateMask()
46
- const bodyLength = frameData?.byteLength ?? 0
47
-
48
- /** @type {number} */
49
- let payloadLength = bodyLength // 0-125
50
- let offset = 6
51
-
52
- if (bodyLength > maxUnsigned16Bit) {
53
- offset += 8 // payload length is next 8 bytes
54
- payloadLength = 127
55
- } else if (bodyLength > 125) {
56
- offset += 2 // payload length is next 2 bytes
57
- payloadLength = 126
58
- }
59
-
60
- const buffer = Buffer.allocUnsafe(bodyLength + offset)
61
-
62
- // Clear first 2 bytes, everything else is overwritten
63
- buffer[0] = buffer[1] = 0
64
- buffer[0] |= 0x80 // FIN
65
- buffer[0] = (buffer[0] & 0xF0) + opcode // opcode
66
-
67
- /*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> */
68
- buffer[offset - 4] = maskKey[0]
69
- buffer[offset - 3] = maskKey[1]
70
- buffer[offset - 2] = maskKey[2]
71
- buffer[offset - 1] = maskKey[3]
72
-
73
- buffer[1] = payloadLength
74
-
75
- if (payloadLength === 126) {
76
- buffer.writeUInt16BE(bodyLength, 2)
77
- } else if (payloadLength === 127) {
78
- // Clear extended payload length
79
- buffer[2] = buffer[3] = 0
80
- buffer.writeUIntBE(bodyLength, 4, 6)
81
- }
82
-
83
- buffer[1] |= 0x80 // MASK
84
-
85
- // mask body
86
- for (let i = 0; i < bodyLength; ++i) {
87
- buffer[offset + i] = frameData[i] ^ maskKey[i & 3]
88
- }
89
-
90
- return buffer
91
- }
92
-
93
- /**
94
- * @param {Uint8Array} buffer
95
- */
96
- static createFastTextFrame (buffer) {
97
- const maskKey = generateMask()
98
-
99
- const bodyLength = buffer.length
100
-
101
- // mask body
102
- for (let i = 0; i < bodyLength; ++i) {
103
- buffer[i] ^= maskKey[i & 3]
104
- }
105
-
106
- let payloadLength = bodyLength
107
- let offset = 6
108
-
109
- if (bodyLength > maxUnsigned16Bit) {
110
- offset += 8 // payload length is next 8 bytes
111
- payloadLength = 127
112
- } else if (bodyLength > 125) {
113
- offset += 2 // payload length is next 2 bytes
114
- payloadLength = 126
115
- }
116
- const head = Buffer.allocUnsafeSlow(offset)
117
-
118
- head[0] = 0x80 /* FIN */ | opcodes.TEXT /* opcode TEXT */
119
- head[1] = payloadLength | 0x80 /* MASK */
120
- head[offset - 4] = maskKey[0]
121
- head[offset - 3] = maskKey[1]
122
- head[offset - 2] = maskKey[2]
123
- head[offset - 1] = maskKey[3]
124
-
125
- if (payloadLength === 126) {
126
- head.writeUInt16BE(bodyLength, 2)
127
- } else if (payloadLength === 127) {
128
- head[2] = head[3] = 0
129
- head.writeUIntBE(bodyLength, 4, 6)
130
- }
131
-
132
- return [head, buffer]
133
- }
134
- }
135
-
136
- module.exports = {
137
- WebsocketFrameSend
138
- }
@@ -1,70 +0,0 @@
1
- 'use strict'
2
-
3
- const { createInflateRaw, Z_DEFAULT_WINDOWBITS } = require('node:zlib')
4
- const { isValidClientWindowBits } = require('./util')
5
-
6
- const tail = Buffer.from([0x00, 0x00, 0xff, 0xff])
7
- const kBuffer = Symbol('kBuffer')
8
- const kLength = Symbol('kLength')
9
-
10
- class PerMessageDeflate {
11
- /** @type {import('node:zlib').InflateRaw} */
12
- #inflate
13
-
14
- #options = {}
15
-
16
- constructor (extensions) {
17
- this.#options.serverNoContextTakeover = extensions.has('server_no_context_takeover')
18
- this.#options.serverMaxWindowBits = extensions.get('server_max_window_bits')
19
- }
20
-
21
- decompress (chunk, fin, callback) {
22
- // An endpoint uses the following algorithm to decompress a message.
23
- // 1. Append 4 octets of 0x00 0x00 0xff 0xff to the tail end of the
24
- // payload of the message.
25
- // 2. Decompress the resulting data using DEFLATE.
26
-
27
- if (!this.#inflate) {
28
- let windowBits = Z_DEFAULT_WINDOWBITS
29
-
30
- if (this.#options.serverMaxWindowBits) { // empty values default to Z_DEFAULT_WINDOWBITS
31
- if (!isValidClientWindowBits(this.#options.serverMaxWindowBits)) {
32
- callback(new Error('Invalid server_max_window_bits'))
33
- return
34
- }
35
-
36
- windowBits = Number.parseInt(this.#options.serverMaxWindowBits)
37
- }
38
-
39
- this.#inflate = createInflateRaw({ windowBits })
40
- this.#inflate[kBuffer] = []
41
- this.#inflate[kLength] = 0
42
-
43
- this.#inflate.on('data', (data) => {
44
- this.#inflate[kBuffer].push(data)
45
- this.#inflate[kLength] += data.length
46
- })
47
-
48
- this.#inflate.on('error', (err) => {
49
- this.#inflate = null
50
- callback(err)
51
- })
52
- }
53
-
54
- this.#inflate.write(chunk)
55
- if (fin) {
56
- this.#inflate.write(tail)
57
- }
58
-
59
- this.#inflate.flush(() => {
60
- const full = Buffer.concat(this.#inflate[kBuffer], this.#inflate[kLength])
61
-
62
- this.#inflate[kBuffer].length = 0
63
- this.#inflate[kLength] = 0
64
-
65
- callback(null, full)
66
- })
67
- }
68
- }
69
-
70
- module.exports = { PerMessageDeflate }