@loaders.gl/polyfills 4.0.0-beta.2 → 4.0.0-beta.4

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 (275) hide show
  1. package/dist/buffer/btoa.node.d.ts.map +1 -0
  2. package/dist/buffer/btoa.node.js.map +1 -0
  3. package/dist/buffer/to-array-buffer.node.d.ts.map +1 -0
  4. package/dist/buffer/to-array-buffer.node.js.map +1 -0
  5. package/dist/crypto/node-hash.d.ts +28 -0
  6. package/dist/crypto/node-hash.d.ts.map +1 -0
  7. package/dist/crypto/node-hash.js +56 -0
  8. package/dist/crypto/node-hash.js.map +1 -0
  9. package/dist/dist.dev.js +43 -0
  10. package/dist/fetch/decode-data-uri.d.ts +16 -0
  11. package/dist/fetch/decode-data-uri.d.ts.map +1 -0
  12. package/dist/fetch/decode-data-uri.js +45 -0
  13. package/dist/fetch/decode-data-uri.js.map +1 -0
  14. package/dist/{node/fetch/fetch.node.d.ts → fetch/fetch-polyfill.d.ts} +2 -2
  15. package/dist/fetch/fetch-polyfill.d.ts.map +1 -0
  16. package/dist/{esm/node/fetch/fetch.node.js → fetch/fetch-polyfill.js} +4 -4
  17. package/dist/fetch/fetch-polyfill.js.map +1 -0
  18. package/dist/{node/fetch/headers.node.d.ts → fetch/headers-polyfill.d.ts} +1 -1
  19. package/dist/{node/fetch/headers.node.d.ts.map → fetch/headers-polyfill.d.ts.map} +1 -1
  20. package/dist/{esm/node/fetch/headers.node.js → fetch/headers-polyfill.js} +3 -4
  21. package/dist/fetch/headers-polyfill.js.map +1 -0
  22. package/dist/{node/fetch/response.node.d.ts → fetch/response-polyfill.d.ts} +2 -2
  23. package/dist/{node/fetch/response.node.d.ts.map → fetch/response-polyfill.d.ts.map} +1 -1
  24. package/dist/{esm/node/fetch/response.node.js → fetch/response-polyfill.js} +14 -15
  25. package/dist/fetch/response-polyfill.js.map +1 -0
  26. package/dist/fetch/utils/decode-data-uri.node.d.ts.map +1 -0
  27. package/dist/{esm/node/fetch → fetch}/utils/decode-data-uri.node.js +2 -2
  28. package/dist/fetch/utils/decode-data-uri.node.js.map +1 -0
  29. package/dist/file/blob-stream-controller.d.ts.map +1 -0
  30. package/dist/{esm/node/file → file}/blob-stream-controller.js +3 -4
  31. package/dist/file/blob-stream-controller.js.map +1 -0
  32. package/dist/file/blob-stream.d.ts.map +1 -0
  33. package/dist/{esm/node/file → file}/blob-stream.js +3 -4
  34. package/dist/file/blob-stream.js.map +1 -0
  35. package/dist/file/blob.d.ts.map +1 -0
  36. package/dist/{esm/node/file → file}/blob.js +4 -5
  37. package/dist/file/blob.js.map +1 -0
  38. package/dist/file/file-reader.d.ts.map +1 -0
  39. package/dist/file/file-reader.js +59 -0
  40. package/dist/file/file-reader.js.map +1 -0
  41. package/dist/{node/file → file}/file.d.ts +1 -2
  42. package/dist/file/file.d.ts.map +1 -0
  43. package/dist/{esm/node/file → file}/file.js +4 -6
  44. package/dist/file/file.js.map +1 -0
  45. package/dist/file/install-blob-polyfills.d.ts +9 -0
  46. package/dist/file/install-blob-polyfills.d.ts.map +1 -0
  47. package/dist/file/install-blob-polyfills.js +9 -0
  48. package/dist/file/install-blob-polyfills.js.map +1 -0
  49. package/dist/file/install-file-polyfills.d.ts +3 -0
  50. package/dist/file/install-file-polyfills.d.ts.map +1 -0
  51. package/dist/file/install-file-polyfills.js +13 -0
  52. package/dist/file/install-file-polyfills.js.map +1 -0
  53. package/dist/file/readable-stream.d.ts.map +1 -0
  54. package/dist/{esm/node/file → file}/readable-stream.js +1 -1
  55. package/dist/file/readable-stream.js.map +1 -0
  56. package/dist/filesystems/fetch-node.d.ts +8 -0
  57. package/dist/filesystems/fetch-node.d.ts.map +1 -0
  58. package/dist/filesystems/fetch-node.js +77 -0
  59. package/dist/filesystems/fetch-node.js.map +1 -0
  60. package/dist/filesystems/node-file.d.ts +13 -0
  61. package/dist/filesystems/node-file.d.ts.map +1 -0
  62. package/dist/filesystems/node-file.js +72 -0
  63. package/dist/filesystems/node-file.js.map +1 -0
  64. package/dist/filesystems/node-filesystem.d.ts +11 -31
  65. package/dist/filesystems/node-filesystem.d.ts.map +1 -1
  66. package/dist/filesystems/node-filesystem.js +40 -0
  67. package/dist/filesystems/node-filesystem.js.map +1 -0
  68. package/dist/{node/fetch/utils → filesystems}/stream-utils.node.d.ts +8 -1
  69. package/dist/filesystems/stream-utils.node.d.ts.map +1 -0
  70. package/dist/{esm/node/fetch/utils → filesystems}/stream-utils.node.js +24 -2
  71. package/dist/filesystems/stream-utils.node.js.map +1 -0
  72. package/dist/images/encode-image-node.d.ts +20 -0
  73. package/dist/images/encode-image-node.d.ts.map +1 -0
  74. package/dist/images/encode-image-node.js +20 -0
  75. package/dist/images/encode-image-node.js.map +1 -0
  76. package/dist/images/encode-image.node.d.ts.map +1 -0
  77. package/dist/{esm/node/images → images}/encode-image.node.js +1 -1
  78. package/dist/images/encode-image.node.js.map +1 -0
  79. package/dist/images/parse-image-node.d.ts +13 -0
  80. package/dist/images/parse-image-node.d.ts.map +1 -0
  81. package/dist/images/parse-image-node.js +29 -0
  82. package/dist/images/parse-image-node.js.map +1 -0
  83. package/dist/images/parse-image.node.d.ts.map +1 -0
  84. package/dist/images/parse-image.node.js.map +1 -0
  85. package/dist/index.browser.d.ts +1 -0
  86. package/dist/index.browser.d.ts.map +1 -1
  87. package/dist/index.browser.js +6 -0
  88. package/dist/index.browser.js.map +1 -0
  89. package/dist/index.cjs +33 -0
  90. package/dist/index.d.ts +4 -4
  91. package/dist/index.d.ts.map +1 -1
  92. package/dist/index.js +59 -0
  93. package/dist/index.js.map +1 -0
  94. package/dist/libs/encoding-indexes-asian.js +2 -0
  95. package/dist/libs/encoding-indexes-asian.js.map +1 -0
  96. package/dist/load-library/require-utils.node.d.ts +18 -0
  97. package/dist/load-library/require-utils.node.d.ts.map +1 -0
  98. package/dist/load-library/require-utils.node.js +55 -0
  99. package/dist/load-library/require-utils.node.js.map +1 -0
  100. package/dist/streams/make-node-stream.d.ts +11 -0
  101. package/dist/streams/make-node-stream.d.ts.map +1 -0
  102. package/dist/streams/make-node-stream.js +56 -0
  103. package/dist/streams/make-node-stream.js.map +1 -0
  104. package/dist/text-encoder/encoding-indexes.d.ts.map +1 -0
  105. package/dist/{esm/lib → text-encoder}/encoding-indexes.js.map +1 -1
  106. package/dist/{lib/encoding.d.ts → text-encoder/text-encoder.d.ts} +1 -1
  107. package/dist/text-encoder/text-encoder.d.ts.map +1 -0
  108. package/dist/{esm/lib/encoding.js → text-encoder/text-encoder.js} +7 -7
  109. package/dist/text-encoder/text-encoder.js.map +1 -0
  110. package/dist/utils/assert.js +6 -0
  111. package/dist/utils/assert.js.map +1 -0
  112. package/dist/utils/is-browser.d.ts +2 -0
  113. package/dist/utils/is-browser.d.ts.map +1 -0
  114. package/dist/utils/is-browser.js +2 -0
  115. package/dist/utils/is-browser.js.map +1 -0
  116. package/package.json +16 -6
  117. package/src/crypto/node-hash.ts +71 -0
  118. package/src/{node/fetch/fetch.node.ts → fetch/fetch-polyfill.ts} +3 -3
  119. package/src/{node/fetch/response.node.ts → fetch/response-polyfill.ts} +6 -6
  120. package/src/fetch/utils/decode-data-uri.node.ts +69 -0
  121. package/src/{node/file → file}/file.ts +1 -2
  122. package/src/file/install-blob-polyfills.ts +13 -0
  123. package/src/file/install-file-polyfills.ts +20 -0
  124. package/src/{node/file → file}/readable-stream.ts +1 -1
  125. package/src/filesystems/fetch-node.ts +96 -0
  126. package/src/filesystems/node-file.ts +137 -0
  127. package/src/filesystems/node-filesystem.ts +26 -61
  128. package/src/{node/fetch/utils → filesystems}/stream-utils.node.ts +42 -3
  129. package/src/images/encode-image.node.ts +41 -0
  130. package/src/images/parse-image.node.ts +53 -0
  131. package/src/index.browser.ts +4 -8
  132. package/src/index.ts +73 -50
  133. package/src/load-library/require-utils.node.ts +101 -0
  134. package/src/streams/make-node-stream.ts +74 -0
  135. package/src/{lib/encoding.ts → text-encoder/text-encoder.ts} +7 -7
  136. package/src/utils/is-browser.ts +6 -0
  137. package/dist/bundle.d.ts +0 -2
  138. package/dist/bundle.d.ts.map +0 -1
  139. package/dist/dist.min.js +0 -63
  140. package/dist/es5/bundle.js +0 -6
  141. package/dist/es5/bundle.js.map +0 -1
  142. package/dist/es5/filesystems/node-filesystem.js +0 -214
  143. package/dist/es5/filesystems/node-filesystem.js.map +0 -1
  144. package/dist/es5/index.browser.js +0 -15
  145. package/dist/es5/index.browser.js.map +0 -1
  146. package/dist/es5/index.js +0 -82
  147. package/dist/es5/index.js.map +0 -1
  148. package/dist/es5/lib/encoding-indexes.js +0 -37
  149. package/dist/es5/lib/encoding-indexes.js.map +0 -1
  150. package/dist/es5/lib/encoding.js +0 -1214
  151. package/dist/es5/lib/encoding.js.map +0 -1
  152. package/dist/es5/libs/encoding-indexes-asian.js +0 -13
  153. package/dist/es5/node/buffer/btoa.node.js +0 -14
  154. package/dist/es5/node/buffer/btoa.node.js.map +0 -1
  155. package/dist/es5/node/buffer/to-array-buffer.node.js +0 -14
  156. package/dist/es5/node/buffer/to-array-buffer.node.js.map +0 -1
  157. package/dist/es5/node/fetch/fetch.node.js +0 -193
  158. package/dist/es5/node/fetch/fetch.node.js.map +0 -1
  159. package/dist/es5/node/fetch/headers.node.js +0 -151
  160. package/dist/es5/node/fetch/headers.node.js.map +0 -1
  161. package/dist/es5/node/fetch/response.node.js +0 -182
  162. package/dist/es5/node/fetch/response.node.js.map +0 -1
  163. package/dist/es5/node/fetch/utils/decode-data-uri.node.js +0 -58
  164. package/dist/es5/node/fetch/utils/decode-data-uri.node.js.map +0 -1
  165. package/dist/es5/node/fetch/utils/stream-utils.node.js +0 -92
  166. package/dist/es5/node/fetch/utils/stream-utils.node.js.map +0 -1
  167. package/dist/es5/node/file/blob-stream-controller.js +0 -90
  168. package/dist/es5/node/file/blob-stream-controller.js.map +0 -1
  169. package/dist/es5/node/file/blob-stream.js +0 -64
  170. package/dist/es5/node/file/blob-stream.js.map +0 -1
  171. package/dist/es5/node/file/blob.js +0 -212
  172. package/dist/es5/node/file/blob.js.map +0 -1
  173. package/dist/es5/node/file/file-reader.js +0 -153
  174. package/dist/es5/node/file/file-reader.js.map +0 -1
  175. package/dist/es5/node/file/file.js +0 -44
  176. package/dist/es5/node/file/file.js.map +0 -1
  177. package/dist/es5/node/file/install-file-polyfills.js +0 -22
  178. package/dist/es5/node/file/install-file-polyfills.js.map +0 -1
  179. package/dist/es5/node/file/readable-stream.js +0 -27
  180. package/dist/es5/node/file/readable-stream.js.map +0 -1
  181. package/dist/es5/node/images/encode-image.node.js +0 -30
  182. package/dist/es5/node/images/encode-image.node.js.map +0 -1
  183. package/dist/es5/node/images/parse-image.node.js +0 -64
  184. package/dist/es5/node/images/parse-image.node.js.map +0 -1
  185. package/dist/es5/promise/all-settled.js +0 -28
  186. package/dist/es5/promise/all-settled.js.map +0 -1
  187. package/dist/es5/utils/assert.js +0 -12
  188. package/dist/es5/utils/assert.js.map +0 -1
  189. package/dist/es5/utils/globals.js +0 -18
  190. package/dist/es5/utils/globals.js.map +0 -1
  191. package/dist/esm/bundle.js +0 -4
  192. package/dist/esm/bundle.js.map +0 -1
  193. package/dist/esm/filesystems/node-filesystem.js +0 -56
  194. package/dist/esm/filesystems/node-filesystem.js.map +0 -1
  195. package/dist/esm/index.browser.js +0 -7
  196. package/dist/esm/index.browser.js.map +0 -1
  197. package/dist/esm/index.js +0 -51
  198. package/dist/esm/index.js.map +0 -1
  199. package/dist/esm/lib/encoding.js.map +0 -1
  200. package/dist/esm/libs/encoding-indexes-asian.js +0 -13
  201. package/dist/esm/node/buffer/btoa.node.js.map +0 -1
  202. package/dist/esm/node/buffer/to-array-buffer.node.js.map +0 -1
  203. package/dist/esm/node/fetch/fetch.node.js.map +0 -1
  204. package/dist/esm/node/fetch/headers.node.js.map +0 -1
  205. package/dist/esm/node/fetch/response.node.js.map +0 -1
  206. package/dist/esm/node/fetch/utils/decode-data-uri.node.js.map +0 -1
  207. package/dist/esm/node/fetch/utils/stream-utils.node.js.map +0 -1
  208. package/dist/esm/node/file/blob-stream-controller.js.map +0 -1
  209. package/dist/esm/node/file/blob-stream.js.map +0 -1
  210. package/dist/esm/node/file/blob.js.map +0 -1
  211. package/dist/esm/node/file/file-reader.js +0 -60
  212. package/dist/esm/node/file/file-reader.js.map +0 -1
  213. package/dist/esm/node/file/file.js.map +0 -1
  214. package/dist/esm/node/file/install-file-polyfills.js +0 -16
  215. package/dist/esm/node/file/install-file-polyfills.js.map +0 -1
  216. package/dist/esm/node/file/readable-stream.js.map +0 -1
  217. package/dist/esm/node/images/encode-image.node.js.map +0 -1
  218. package/dist/esm/node/images/parse-image.node.js.map +0 -1
  219. package/dist/esm/promise/all-settled.js +0 -19
  220. package/dist/esm/promise/all-settled.js.map +0 -1
  221. package/dist/esm/utils/assert.js +0 -6
  222. package/dist/esm/utils/assert.js.map +0 -1
  223. package/dist/esm/utils/globals.js +0 -9
  224. package/dist/esm/utils/globals.js.map +0 -1
  225. package/dist/lib/encoding-indexes.d.ts.map +0 -1
  226. package/dist/lib/encoding.d.ts.map +0 -1
  227. package/dist/node/buffer/btoa.node.d.ts.map +0 -1
  228. package/dist/node/buffer/to-array-buffer.node.d.ts.map +0 -1
  229. package/dist/node/fetch/fetch.node.d.ts.map +0 -1
  230. package/dist/node/fetch/utils/decode-data-uri.node.d.ts.map +0 -1
  231. package/dist/node/fetch/utils/stream-utils.node.d.ts.map +0 -1
  232. package/dist/node/file/blob-stream-controller.d.ts.map +0 -1
  233. package/dist/node/file/blob-stream.d.ts.map +0 -1
  234. package/dist/node/file/blob.d.ts.map +0 -1
  235. package/dist/node/file/file-reader.d.ts.map +0 -1
  236. package/dist/node/file/file.d.ts.map +0 -1
  237. package/dist/node/file/install-file-polyfills.d.ts +0 -2
  238. package/dist/node/file/install-file-polyfills.d.ts.map +0 -1
  239. package/dist/node/file/readable-stream.d.ts.map +0 -1
  240. package/dist/node/images/encode-image.node.d.ts.map +0 -1
  241. package/dist/node/images/parse-image.node.d.ts.map +0 -1
  242. package/dist/promise/all-settled.d.ts +0 -10
  243. package/dist/promise/all-settled.d.ts.map +0 -1
  244. package/dist/utils/globals.d.ts +0 -4
  245. package/dist/utils/globals.d.ts.map +0 -1
  246. package/src/bundle.ts +0 -4
  247. package/src/node/file/install-file-polyfills.ts +0 -27
  248. package/src/promise/all-settled.ts +0 -21
  249. package/src/utils/globals.ts +0 -37
  250. /package/dist/{node/buffer → buffer}/btoa.node.d.ts +0 -0
  251. /package/dist/{esm/node/buffer → buffer}/btoa.node.js +0 -0
  252. /package/dist/{node/buffer → buffer}/to-array-buffer.node.d.ts +0 -0
  253. /package/dist/{esm/node/buffer → buffer}/to-array-buffer.node.js +0 -0
  254. /package/dist/{node/fetch → fetch}/utils/decode-data-uri.node.d.ts +0 -0
  255. /package/dist/{node/file → file}/blob-stream-controller.d.ts +0 -0
  256. /package/dist/{node/file → file}/blob-stream.d.ts +0 -0
  257. /package/dist/{node/file → file}/blob.d.ts +0 -0
  258. /package/dist/{node/file → file}/file-reader.d.ts +0 -0
  259. /package/dist/{node/file → file}/readable-stream.d.ts +0 -0
  260. /package/dist/{node/images → images}/encode-image.node.d.ts +0 -0
  261. /package/dist/{node/images → images}/parse-image.node.d.ts +0 -0
  262. /package/dist/{esm/node/images → images}/parse-image.node.js +0 -0
  263. /package/dist/{lib → text-encoder}/encoding-indexes.d.ts +0 -0
  264. /package/dist/{esm/lib → text-encoder}/encoding-indexes.js +0 -0
  265. /package/src/{node/buffer → buffer}/btoa.node.ts +0 -0
  266. /package/src/{node/buffer → buffer}/to-array-buffer.node.ts +0 -0
  267. /package/src/{node/fetch/utils/decode-data-uri.node.ts → fetch/decode-data-uri.ts} +0 -0
  268. /package/src/{node/fetch/headers.node.ts → fetch/headers-polyfill.ts} +0 -0
  269. /package/src/{node/file → file}/blob-stream-controller.ts +0 -0
  270. /package/src/{node/file → file}/blob-stream.ts +0 -0
  271. /package/src/{node/file → file}/blob.ts +0 -0
  272. /package/src/{node/file → file}/file-reader.ts +0 -0
  273. /package/src/{node/images/encode-image.node.ts → images/encode-image-node.ts} +0 -0
  274. /package/src/{node/images/parse-image.node.ts → images/parse-image-node.ts} +0 -0
  275. /package/src/{lib → text-encoder}/encoding-indexes.ts +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"btoa.node.js","names":["atob","string","Buffer","from","toString","btoa","base64"],"sources":["../../../../src/node/buffer/btoa.node.ts"],"sourcesContent":["// btoa, atob polyfills for Node.js\n// Note: The atob and btoa functions (not just the polyfills!) are not unicode safe\n// But still useful for unit testing\n\nexport function atob(string) {\n return Buffer.from(string).toString('base64');\n}\n\nexport function btoa(base64) {\n return Buffer.from(base64, 'base64').toString('ascii');\n}\n"],"mappings":"AAIA,OAAO,SAASA,IAAIA,CAACC,MAAM,EAAE;EAC3B,OAAOC,MAAM,CAACC,IAAI,CAACF,MAAM,CAAC,CAACG,QAAQ,CAAC,QAAQ,CAAC;AAC/C;AAEA,OAAO,SAASC,IAAIA,CAACC,MAAM,EAAE;EAC3B,OAAOJ,MAAM,CAACC,IAAI,CAACG,MAAM,EAAE,QAAQ,CAAC,CAACF,QAAQ,CAAC,OAAO,CAAC;AACxD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"to-array-buffer.node.js","names":["bufferToArrayBuffer","buffer","Buffer","isBuffer","typedArray","Uint8Array"],"sources":["../../../../src/node/buffer/to-array-buffer.node.ts"],"sourcesContent":["export function bufferToArrayBuffer(buffer) {\n // TODO - per docs we should just be able to call buffer.buffer, but there are issues\n if (Buffer.isBuffer(buffer)) {\n const typedArray = new Uint8Array(buffer);\n return typedArray.buffer;\n }\n return buffer;\n}\n"],"mappings":"AAAA,OAAO,SAASA,mBAAmBA,CAACC,MAAM,EAAE;EAE1C,IAAIC,MAAM,CAACC,QAAQ,CAACF,MAAM,CAAC,EAAE;IAC3B,MAAMG,UAAU,GAAG,IAAIC,UAAU,CAACJ,MAAM,CAAC;IACzC,OAAOG,UAAU,CAACH,MAAM;EAC1B;EACA,OAAOA,MAAM;AACf"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"fetch.node.js","names":["http","https","Response","Headers","decodeDataUri","isDataURL","url","startsWith","isRequestURL","fetchNode","options","globalThis","fetch","arrayBuffer","mimeType","response","headers","syntheticResponseHeaders","originalUrl","endsWith","slice","body","createHTTPRequestReadStream","getHeaders","status","statusText","getStatus","followRedirect","undefined","has","redirectUrl","generateRedirectUrl","get","error","String","Promise","resolve","reject","requestOptions","getRequestOptions","req","request","res","on","end","location","URL","pathname","href","originalHeaders","key","Object","keys","toLowerCase","urlObject","hostname","path","method","port","httpResponse","statusCode","statusMessage","additionalHeaders","arguments","length","httpHeaders","header","contentLength","getContentLength","Number","isFinite","assign"],"sources":["../../../../src/node/fetch/fetch.node.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport http from 'http';\nimport https from 'https';\nimport {Response} from './response.node';\nimport {Headers} from './headers.node';\nimport {decodeDataUri} from './utils/decode-data-uri.node';\n\nconst isDataURL = (url: string): boolean => url.startsWith('data:');\nconst isRequestURL = (url: string): boolean => url.startsWith('http:') || url.startsWith('https:');\n\n/**\n * Emulation of Browser fetch for Node.js\n * @param url\n * @param options\n */\n// eslint-disable-next-line complexity\nexport async function fetchNode(url: string, options: RequestInit): Promise<Response> {\n try {\n // Handle file streams in node\n // @ts-expect-error\n if (globalThis.fetch !== fetchNode && (isRequestURL(url) || isDataURL(url))) {\n // @ts-expect-error\n return await fetch(url, options);\n }\n\n // Handle data urls in node, to match `fetch``\n // Note - this loses the MIME type, data URIs are handled directly in fetch\n if (isDataURL(url)) {\n const {arrayBuffer, mimeType} = decodeDataUri(url);\n const response = new Response(arrayBuffer, {\n headers: {'content-type': mimeType},\n url\n });\n return response;\n }\n\n // Automatically decompress gzipped files with .gz extension\n const syntheticResponseHeaders = {};\n const originalUrl = url;\n if (url.endsWith('.gz')) {\n url = url.slice(0, -3);\n syntheticResponseHeaders['content-encoding'] = 'gzip';\n }\n\n // Need to create the stream in advance since Response constructor needs to be sync\n const body = await createHTTPRequestReadStream(originalUrl, options);\n const headers = getHeaders(url, body, syntheticResponseHeaders);\n const {status, statusText} = getStatus(body);\n\n const followRedirect =\n // @ts-expect-error\n !options || options.followRedirect || options.followRedirect === undefined;\n\n if (status >= 300 && status < 400 && headers.has('location') && followRedirect) {\n const redirectUrl = generateRedirectUrl(url, headers.get('location'));\n\n // Redirect\n return await fetchNode(redirectUrl, options);\n }\n return new Response(body, {headers, status, statusText, url});\n } catch (error) {\n // TODO - what error code to use here?\n return new Response(null, {status: 400, statusText: String(error), url});\n }\n}\n\n/** Returns a promise that resolves to a readable stream */\nexport async function createHTTPRequestReadStream(\n url: string,\n options\n): Promise<http.IncomingMessage> {\n // HANDLE HTTP/HTTPS REQUESTS IN NODE\n // TODO: THIS IS BAD SINCE WE RETURN A PROMISE INSTEAD OF A STREAM\n return await new Promise((resolve, reject) => {\n const requestOptions = getRequestOptions(url, options);\n const req = url.startsWith('https:')\n ? https.request(requestOptions, (res) => resolve(res))\n : http.request(requestOptions, (res) => resolve(res));\n req.on('error', (error) => reject(error));\n req.end();\n });\n}\n\n/**\n * Generate redirect url from location without origin and protocol.\n * @param originalUrl\n * @param redirectUrl\n */\nfunction generateRedirectUrl(originalUrl: string, location: string): string {\n if (location.startsWith('http')) {\n return location;\n }\n // If url doesn't have origin and protocol just extend current url origin with location.\n const url = new URL(originalUrl);\n url.pathname = location;\n\n return url.href;\n}\n\n// HELPER FUNCTIONS\n\nfunction getRequestOptions(url: string, options?: {fetch?: typeof fetch; headers?}) {\n // Ensure header keys are lower case so that we can merge without duplicates\n const originalHeaders = options?.headers || {};\n const headers = {};\n for (const key of Object.keys(originalHeaders)) {\n headers[key.toLowerCase()] = originalHeaders[key];\n }\n\n // Add default accept-encoding to headers\n headers['accept-encoding'] = headers['accept-encoding'] || 'gzip,br,deflate';\n\n const urlObject = new URL(url);\n return {\n hostname: urlObject.hostname,\n path: urlObject.pathname,\n method: 'GET',\n // Add options and user provided 'options.fetch' overrides if available\n ...options,\n ...options?.fetch,\n // Override with updated headers with accepted encodings:\n headers,\n port: urlObject.port\n };\n}\n\nfunction getStatus(httpResponse: http.IncomingMessage): {status: number; statusText: string} {\n if (httpResponse.statusCode) {\n return {status: httpResponse.statusCode, statusText: httpResponse.statusMessage || 'NA'};\n }\n return {status: 200, statusText: 'OK'};\n}\n\nfunction getHeaders(url, httpResponse, additionalHeaders = {}) {\n const headers = {};\n\n if (httpResponse && httpResponse.headers) {\n const httpHeaders = httpResponse.headers;\n for (const key in httpHeaders) {\n const header = httpHeaders[key];\n headers[key.toLowerCase()] = String(header);\n }\n }\n\n // Fix up content length if we can for best progress experience\n if (!headers['content-length']) {\n const contentLength = getContentLength(url);\n if (Number.isFinite(contentLength)) {\n headers['content-length'] = contentLength;\n }\n }\n\n Object.assign(headers, additionalHeaders);\n\n return new Headers(headers);\n}\n\n/** Needs to be read from actual headers */\nfunction getContentLength(url: string): number | null {\n // TODO - remove media type etc\n return isDataURL(url) ? url.length - 'data:'.length : null;\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"headers.node.js","names":["Symbol","iterator","Headers","constructor","headers","_defineProperty","map","forEach","value","name","append","Array","isArray","header","Object","getOwnPropertyNames","normalizeName","normalizeValue","oldValue","concat","delete","get","has","hasOwnProperty","set","visitor","thisArg","arguments","length","undefined","call","keys","items","push","iteratorFor","values","entries","_Symbol$iterator","String","test","TypeError","toLowerCase","next","shift","done"],"sources":["../../../../src/node/fetch/headers.node.ts"],"sourcesContent":["/**\n * Polyfill for Browser Headers\n * Based on https://github.com/github/fetch under MIT license\n */\nexport class Headers {\n map: {};\n\n constructor(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach((value, name) => this.append(name, value));\n } else if (Array.isArray(headers)) {\n headers.forEach((header) => this.append(header[0], header[1]));\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach((name) => this.append(name, headers[name]));\n }\n }\n\n append(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n const oldValue = this.map[name];\n this.map[name] = oldValue ? `${oldValue}, ${value}` : value;\n }\n\n delete(name) {\n delete this.map[normalizeName(name)];\n }\n\n get(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null;\n }\n\n has(name) {\n return this.map.hasOwnProperty(normalizeName(name));\n }\n\n set(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n }\n\n forEach(visitor, thisArg = null) {\n for (const name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n if (thisArg) {\n visitor.call(thisArg, this.map[name], name, this);\n } else {\n visitor(this.map[name], name, this);\n }\n }\n }\n }\n\n keys() {\n const items: any[] = [];\n this.forEach(function (value, name) {\n items.push(name);\n });\n return iteratorFor(items);\n }\n\n values() {\n const items: any[] = [];\n this.forEach(function (value) {\n items.push(value);\n });\n return iteratorFor(items);\n }\n\n entries() {\n const items: any[] = [];\n this.forEach(function (value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items);\n }\n\n *[Symbol.iterator]() {\n // @ts-ignore must have a '[Symbol.iterator]()' method that returns an iterator.\n yield* this.entries();\n }\n}\n\nfunction normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name) || name === '') {\n throw new TypeError('Invalid character in header field name');\n }\n return name.toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value;\n}\n\n// Build a destructive iterator for the value list\nfunction iteratorFor(items) {\n const iterator = {\n next() {\n const value = items.shift();\n return {done: value === undefined, value};\n }\n };\n\n iterator[Symbol.iterator] = function () {\n return iterator;\n };\n\n return iterator;\n}\n"],"mappings":";;mBA+EIA,MAAM,CAACC,QAAQ;AA3EnB,OAAO,MAAMC,OAAO,CAAC;EAGnBC,WAAWA,CAACC,OAAO,EAAE;IAAAC,eAAA;IACnB,IAAI,CAACC,GAAG,GAAG,CAAC,CAAC;IAEb,IAAIF,OAAO,YAAYF,OAAO,EAAE;MAC9BE,OAAO,CAACG,OAAO,CAAC,CAACC,KAAK,EAAEC,IAAI,KAAK,IAAI,CAACC,MAAM,CAACD,IAAI,EAAED,KAAK,CAAC,CAAC;IAC5D,CAAC,MAAM,IAAIG,KAAK,CAACC,OAAO,CAACR,OAAO,CAAC,EAAE;MACjCA,OAAO,CAACG,OAAO,CAAEM,MAAM,IAAK,IAAI,CAACH,MAAM,CAACG,MAAM,CAAC,CAAC,CAAC,EAAEA,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,CAAC,MAAM,IAAIT,OAAO,EAAE;MAClBU,MAAM,CAACC,mBAAmB,CAACX,OAAO,CAAC,CAACG,OAAO,CAAEE,IAAI,IAAK,IAAI,CAACC,MAAM,CAACD,IAAI,EAAEL,OAAO,CAACK,IAAI,CAAC,CAAC,CAAC;IACzF;EACF;EAEAC,MAAMA,CAACD,IAAI,EAAED,KAAK,EAAE;IAClBC,IAAI,GAAGO,aAAa,CAACP,IAAI,CAAC;IAC1BD,KAAK,GAAGS,cAAc,CAACT,KAAK,CAAC;IAC7B,MAAMU,QAAQ,GAAG,IAAI,CAACZ,GAAG,CAACG,IAAI,CAAC;IAC/B,IAAI,CAACH,GAAG,CAACG,IAAI,CAAC,GAAGS,QAAQ,MAAAC,MAAA,CAAMD,QAAQ,QAAAC,MAAA,CAAKX,KAAK,IAAKA,KAAK;EAC7D;EAEAY,MAAMA,CAACX,IAAI,EAAE;IACX,OAAO,IAAI,CAACH,GAAG,CAACU,aAAa,CAACP,IAAI,CAAC,CAAC;EACtC;EAEAY,GAAGA,CAACZ,IAAI,EAAE;IACRA,IAAI,GAAGO,aAAa,CAACP,IAAI,CAAC;IAC1B,OAAO,IAAI,CAACa,GAAG,CAACb,IAAI,CAAC,GAAG,IAAI,CAACH,GAAG,CAACG,IAAI,CAAC,GAAG,IAAI;EAC/C;EAEAa,GAAGA,CAACb,IAAI,EAAE;IACR,OAAO,IAAI,CAACH,GAAG,CAACiB,cAAc,CAACP,aAAa,CAACP,IAAI,CAAC,CAAC;EACrD;EAEAe,GAAGA,CAACf,IAAI,EAAED,KAAK,EAAE;IACf,IAAI,CAACF,GAAG,CAACU,aAAa,CAACP,IAAI,CAAC,CAAC,GAAGQ,cAAc,CAACT,KAAK,CAAC;EACvD;EAEAD,OAAOA,CAACkB,OAAO,EAAkB;IAAA,IAAhBC,OAAO,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;IAC7B,KAAK,MAAMlB,IAAI,IAAI,IAAI,CAACH,GAAG,EAAE;MAC3B,IAAI,IAAI,CAACA,GAAG,CAACiB,cAAc,CAACd,IAAI,CAAC,EAAE;QACjC,IAAIiB,OAAO,EAAE;UACXD,OAAO,CAACK,IAAI,CAACJ,OAAO,EAAE,IAAI,CAACpB,GAAG,CAACG,IAAI,CAAC,EAAEA,IAAI,EAAE,IAAI,CAAC;QACnD,CAAC,MAAM;UACLgB,OAAO,CAAC,IAAI,CAACnB,GAAG,CAACG,IAAI,CAAC,EAAEA,IAAI,EAAE,IAAI,CAAC;QACrC;MACF;IACF;EACF;EAEAsB,IAAIA,CAAA,EAAG;IACL,MAAMC,KAAY,GAAG,EAAE;IACvB,IAAI,CAACzB,OAAO,CAAC,UAAUC,KAAK,EAAEC,IAAI,EAAE;MAClCuB,KAAK,CAACC,IAAI,CAACxB,IAAI,CAAC;IAClB,CAAC,CAAC;IACF,OAAOyB,WAAW,CAACF,KAAK,CAAC;EAC3B;EAEAG,MAAMA,CAAA,EAAG;IACP,MAAMH,KAAY,GAAG,EAAE;IACvB,IAAI,CAACzB,OAAO,CAAC,UAAUC,KAAK,EAAE;MAC5BwB,KAAK,CAACC,IAAI,CAACzB,KAAK,CAAC;IACnB,CAAC,CAAC;IACF,OAAO0B,WAAW,CAACF,KAAK,CAAC;EAC3B;EAEAI,OAAOA,CAAA,EAAG;IACR,MAAMJ,KAAY,GAAG,EAAE;IACvB,IAAI,CAACzB,OAAO,CAAC,UAAUC,KAAK,EAAEC,IAAI,EAAE;MAClCuB,KAAK,CAACC,IAAI,CAAC,CAACxB,IAAI,EAAED,KAAK,CAAC,CAAC;IAC3B,CAAC,CAAC;IACF,OAAO0B,WAAW,CAACF,KAAK,CAAC;EAC3B;EAEA,EAAAK,gBAAA,IAAqB;IAEnB,OAAO,IAAI,CAACD,OAAO,CAAC,CAAC;EACvB;AACF;AAEA,SAASpB,aAAaA,CAACP,IAAI,EAAE;EAC3B,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;IAC5BA,IAAI,GAAG6B,MAAM,CAAC7B,IAAI,CAAC;EACrB;EACA,IAAI,2BAA2B,CAAC8B,IAAI,CAAC9B,IAAI,CAAC,IAAIA,IAAI,KAAK,EAAE,EAAE;IACzD,MAAM,IAAI+B,SAAS,CAAC,wCAAwC,CAAC;EAC/D;EACA,OAAO/B,IAAI,CAACgC,WAAW,CAAC,CAAC;AAC3B;AAEA,SAASxB,cAAcA,CAACT,KAAK,EAAE;EAC7B,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7BA,KAAK,GAAG8B,MAAM,CAAC9B,KAAK,CAAC;EACvB;EACA,OAAOA,KAAK;AACd;AAGA,SAAS0B,WAAWA,CAACF,KAAK,EAAE;EAC1B,MAAM/B,QAAQ,GAAG;IACfyC,IAAIA,CAAA,EAAG;MACL,MAAMlC,KAAK,GAAGwB,KAAK,CAACW,KAAK,CAAC,CAAC;MAC3B,OAAO;QAACC,IAAI,EAAEpC,KAAK,KAAKqB,SAAS;QAAErB;MAAK,CAAC;IAC3C;EACF,CAAC;EAEDP,QAAQ,CAACD,MAAM,CAACC,QAAQ,CAAC,GAAG,YAAY;IACtC,OAAOA,QAAQ;EACjB,CAAC;EAED,OAAOA,QAAQ;AACjB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"response.node.js","names":["assert","decompressReadStream","concatenateReadStream","Headers","isBoolean","x","isFunction","isObject","isReadableNodeStream","read","pipe","readable","Readable","Response","constructor","body","options","_defineProperty","headers","status","statusText","url","ok","_body","from","TextEncoder","encode","ArrayBuffer","bodyUsed","arrayBuffer","data","text","textDecoder","TextDecoder","decode","json","JSON","parse","blob","Blob","Error"],"sources":["../../../../src/node/fetch/response.node.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport {assert} from '../../utils/assert';\nimport {decompressReadStream, concatenateReadStream} from './utils/stream-utils.node';\nimport {Headers} from './headers.node';\n\nconst isBoolean = (x) => typeof x === 'boolean';\nconst isFunction = (x) => typeof x === 'function';\nconst isObject = (x) => x !== null && typeof x === 'object';\nconst isReadableNodeStream = (x) =>\n isObject(x) && isFunction(x.read) && isFunction(x.pipe) && isBoolean(x.readable);\n\n/**\n * Polyfill for Browser Response\n *\n * Under Node.js we return a mock \"fetch response object\"\n * so that apps can use the same API as in the browser.\n *\n * Note: This is intended to be a \"lightweight\" implementation and will have limitations.\n *\n * See https://developer.mozilla.org/en-US/docs/Web/API/Response\n */\nimport {Readable} from 'stream';\n\nexport class Response {\n readonly ok: boolean;\n readonly status: number;\n readonly statusText: string;\n readonly headers: Headers;\n readonly url: string;\n bodyUsed: boolean = false;\n private readonly _body;\n\n // TODO - handle ArrayBuffer, ArrayBufferView, Buffer\n constructor(\n body,\n options: {\n headers?;\n status?: number;\n statusText?: string;\n url: string;\n }\n ) {\n const {headers, status = 200, statusText = 'OK', url} = options || {};\n\n this.url = url;\n this.ok = status === 200;\n this.status = status; // TODO - handle errors and set status\n this.statusText = statusText;\n this.headers = new Headers(options?.headers || {});\n\n // Check for content-encoding and create a decompression stream\n if (isReadableNodeStream(body)) {\n this._body = decompressReadStream(body, headers);\n } else if (typeof body === 'string') {\n this._body = Readable.from([new TextEncoder().encode(body)]);\n } else {\n this._body = Readable.from([body || new ArrayBuffer(0)]);\n }\n }\n\n // Subset of Properties\n\n // Returns a readable stream to the \"body\" of the response (or file)\n get body() {\n assert(!this.bodyUsed);\n assert(isReadableNodeStream(this._body)); // Not implemented: conversion of ArrayBuffer etc to stream\n this.bodyUsed = true;\n return this._body;\n }\n\n // Subset of Methods\n\n async arrayBuffer() {\n if (!isReadableNodeStream(this._body)) {\n return this._body || new ArrayBuffer(0);\n }\n const data = await concatenateReadStream(this._body);\n return data;\n }\n\n async text() {\n const arrayBuffer = await this.arrayBuffer();\n const textDecoder = new TextDecoder();\n return textDecoder.decode(arrayBuffer);\n }\n\n async json() {\n const text = await this.text();\n return JSON.parse(text);\n }\n\n async blob() {\n if (typeof Blob === 'undefined') {\n throw new Error('Blob polyfill not installed');\n }\n return new Blob([await this.arrayBuffer()]);\n }\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"decode-data-uri.node.js","names":["isArrayBuffer","x","ArrayBuffer","isBuffer","Buffer","decodeDataUri","uri","dataIndex","indexOf","buffer","mimeType","slice","from","trim","decodeURIComponent","startsWith","concat","arrayBuffer","toArrayBuffer","data","typedArray","Uint8Array","isView","text","uint8Array","TextEncoder","encode","_toArrayBuffer","Error","JSON","stringify"],"sources":["../../../../../src/node/fetch/utils/decode-data-uri.node.ts"],"sourcesContent":["// Based on binary-gltf-utils under MIT license: Copyright (c) 2016-17 Karl Cheng\n\nconst isArrayBuffer = (x) => x && x instanceof ArrayBuffer;\nconst isBuffer = (x) => x && x instanceof Buffer;\n\n/**\n * Parses a data URI into a buffer, as well as retrieving its declared MIME type.\n *\n * @param {string} uri - a data URI (assumed to be valid)\n * @returns {Object} { buffer, mimeType }\n */\nexport function decodeDataUri(uri: string): {arrayBuffer: ArrayBuffer; mimeType: string} {\n const dataIndex = uri.indexOf(',');\n\n let buffer;\n let mimeType;\n if (uri.slice(dataIndex - 7, dataIndex) === ';base64') {\n buffer = Buffer.from(uri.slice(dataIndex + 1), 'base64');\n mimeType = uri.slice(5, dataIndex - 7).trim();\n } else {\n buffer = Buffer.from(decodeURIComponent(uri.slice(dataIndex + 1)));\n mimeType = uri.slice(5, dataIndex).trim();\n }\n\n if (!mimeType) {\n mimeType = 'text/plain;charset=US-ASCII';\n } else if (mimeType.startsWith(';')) {\n mimeType = `text/plain${mimeType}`;\n }\n\n return {arrayBuffer: toArrayBuffer(buffer), mimeType};\n}\n\n/**\n * @param data\n * @todo Duplicate of core\n */\nexport function toArrayBuffer(data: unknown): ArrayBuffer {\n if (isArrayBuffer(data)) {\n return data as ArrayBuffer;\n }\n\n // TODO - per docs we should just be able to call buffer.buffer, but there are issues\n if (isBuffer(data)) {\n // @ts-expect-error\n const typedArray = new Uint8Array(data);\n return typedArray.buffer;\n }\n\n // Careful - Node Buffers will look like ArrayBuffers (keep after isBuffer)\n if (ArrayBuffer.isView(data)) {\n return data.buffer;\n }\n\n if (typeof data === 'string') {\n const text = data;\n const uint8Array = new TextEncoder().encode(text);\n return uint8Array.buffer;\n }\n\n // HACK to support Blob polyfill\n // @ts-expect-error\n if (data && typeof data === 'object' && data._toArrayBuffer) {\n // @ts-expect-error\n return data._toArrayBuffer();\n }\n\n throw new Error(`toArrayBuffer(${JSON.stringify(data, null, 2).slice(10)})`);\n}\n"],"mappings":"AAEA,MAAMA,aAAa,GAAIC,CAAC,IAAKA,CAAC,IAAIA,CAAC,YAAYC,WAAW;AAC1D,MAAMC,QAAQ,GAAIF,CAAC,IAAKA,CAAC,IAAIA,CAAC,YAAYG,MAAM;AAQhD,OAAO,SAASC,aAAaA,CAACC,GAAW,EAAgD;EACvF,MAAMC,SAAS,GAAGD,GAAG,CAACE,OAAO,CAAC,GAAG,CAAC;EAElC,IAAIC,MAAM;EACV,IAAIC,QAAQ;EACZ,IAAIJ,GAAG,CAACK,KAAK,CAACJ,SAAS,GAAG,CAAC,EAAEA,SAAS,CAAC,KAAK,SAAS,EAAE;IACrDE,MAAM,GAAGL,MAAM,CAACQ,IAAI,CAACN,GAAG,CAACK,KAAK,CAACJ,SAAS,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC;IACxDG,QAAQ,GAAGJ,GAAG,CAACK,KAAK,CAAC,CAAC,EAAEJ,SAAS,GAAG,CAAC,CAAC,CAACM,IAAI,CAAC,CAAC;EAC/C,CAAC,MAAM;IACLJ,MAAM,GAAGL,MAAM,CAACQ,IAAI,CAACE,kBAAkB,CAACR,GAAG,CAACK,KAAK,CAACJ,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;IAClEG,QAAQ,GAAGJ,GAAG,CAACK,KAAK,CAAC,CAAC,EAAEJ,SAAS,CAAC,CAACM,IAAI,CAAC,CAAC;EAC3C;EAEA,IAAI,CAACH,QAAQ,EAAE;IACbA,QAAQ,GAAG,6BAA6B;EAC1C,CAAC,MAAM,IAAIA,QAAQ,CAACK,UAAU,CAAC,GAAG,CAAC,EAAE;IACnCL,QAAQ,gBAAAM,MAAA,CAAgBN,QAAQ,CAAE;EACpC;EAEA,OAAO;IAACO,WAAW,EAAEC,aAAa,CAACT,MAAM,CAAC;IAAEC;EAAQ,CAAC;AACvD;AAMA,OAAO,SAASQ,aAAaA,CAACC,IAAa,EAAe;EACxD,IAAInB,aAAa,CAACmB,IAAI,CAAC,EAAE;IACvB,OAAOA,IAAI;EACb;EAGA,IAAIhB,QAAQ,CAACgB,IAAI,CAAC,EAAE;IAElB,MAAMC,UAAU,GAAG,IAAIC,UAAU,CAACF,IAAI,CAAC;IACvC,OAAOC,UAAU,CAACX,MAAM;EAC1B;EAGA,IAAIP,WAAW,CAACoB,MAAM,CAACH,IAAI,CAAC,EAAE;IAC5B,OAAOA,IAAI,CAACV,MAAM;EACpB;EAEA,IAAI,OAAOU,IAAI,KAAK,QAAQ,EAAE;IAC5B,MAAMI,IAAI,GAAGJ,IAAI;IACjB,MAAMK,UAAU,GAAG,IAAIC,WAAW,CAAC,CAAC,CAACC,MAAM,CAACH,IAAI,CAAC;IACjD,OAAOC,UAAU,CAACf,MAAM;EAC1B;EAIA,IAAIU,IAAI,IAAI,OAAOA,IAAI,KAAK,QAAQ,IAAIA,IAAI,CAACQ,cAAc,EAAE;IAE3D,OAAOR,IAAI,CAACQ,cAAc,CAAC,CAAC;EAC9B;EAEA,MAAM,IAAIC,KAAK,kBAAAZ,MAAA,CAAkBa,IAAI,CAACC,SAAS,CAACX,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAACR,KAAK,CAAC,EAAE,CAAC,MAAG,CAAC;AAC9E"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream-utils.node.js","names":["zlib","toArrayBuffer","decompressReadStream","readStream","headers","get","pipe","createBrotliDecompress","createGunzip","createDeflate","concatenateReadStream","arrayBufferChunks","Promise","resolve","reject","on","error","read","chunk","Error","push","arrayBuffer","concatenateArrayBuffers","sources","sourceArrays","map","source2","ArrayBuffer","Uint8Array","byteLength","reduce","length","typedArray","result","offset","sourceArray","set","buffer"],"sources":["../../../../../src/node/fetch/utils/stream-utils.node.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport zlib from 'zlib';\n\nimport {toArrayBuffer} from './decode-data-uri.node';\n\n/**\n *\n */\nexport function decompressReadStream(readStream, headers) {\n switch (headers.get('content-encoding')) {\n case 'br':\n return readStream.pipe(zlib.createBrotliDecompress());\n case 'gzip':\n return readStream.pipe(zlib.createGunzip());\n case 'deflate':\n return readStream.pipe(zlib.createDeflate());\n default:\n // No compression or an unknown one, just return it as is\n return readStream;\n }\n}\n\n/**\n *\n * @param readStream\n * @returns\n */\nexport async function concatenateReadStream(readStream): Promise<ArrayBuffer> {\n const arrayBufferChunks: ArrayBuffer[] = [];\n\n return await new Promise((resolve, reject) => {\n readStream.on('error', (error) => reject(error));\n\n // Once the readable callback has been added, stream switches to \"flowing mode\"\n // In Node 10 (but not 12 and 14) this causes `data` and `end` to never be called unless we read data here\n readStream.on('readable', () => readStream.read());\n\n readStream.on('data', (chunk) => {\n if (typeof chunk === 'string') {\n reject(new Error('Read stream not binary'));\n }\n arrayBufferChunks.push(toArrayBuffer(chunk));\n });\n\n readStream.on('end', () => {\n const arrayBuffer = concatenateArrayBuffers(arrayBufferChunks);\n resolve(arrayBuffer);\n });\n });\n}\n\n/**\n * Concatenate a sequence of ArrayBuffers\n * @return A concatenated ArrayBuffer\n * @note duplicates loader-utils since polyfills should be independent\n */\nexport function concatenateArrayBuffers(sources: (ArrayBuffer | Uint8Array)[]): ArrayBuffer {\n // Make sure all inputs are wrapped in typed arrays\n const sourceArrays = sources.map((source2) =>\n source2 instanceof ArrayBuffer ? new Uint8Array(source2) : source2\n );\n\n // Get length of all inputs\n const byteLength = sourceArrays.reduce((length, typedArray) => length + typedArray.byteLength, 0);\n\n // Allocate array with space for all inputs\n const result = new Uint8Array(byteLength);\n\n // Copy the subarrays\n let offset = 0;\n for (const sourceArray of sourceArrays) {\n result.set(sourceArray, offset);\n offset += sourceArray.byteLength;\n }\n\n // We work with ArrayBuffers, discard the typed array wrapper\n return result.buffer;\n}\n"],"mappings":"AAEA,OAAOA,IAAI,MAAM,MAAM;AAEvB,SAAQC,aAAa,QAAO,wBAAwB;AAKpD,OAAO,SAASC,oBAAoBA,CAACC,UAAU,EAAEC,OAAO,EAAE;EACxD,QAAQA,OAAO,CAACC,GAAG,CAAC,kBAAkB,CAAC;IACrC,KAAK,IAAI;MACP,OAAOF,UAAU,CAACG,IAAI,CAACN,IAAI,CAACO,sBAAsB,CAAC,CAAC,CAAC;IACvD,KAAK,MAAM;MACT,OAAOJ,UAAU,CAACG,IAAI,CAACN,IAAI,CAACQ,YAAY,CAAC,CAAC,CAAC;IAC7C,KAAK,SAAS;MACZ,OAAOL,UAAU,CAACG,IAAI,CAACN,IAAI,CAACS,aAAa,CAAC,CAAC,CAAC;IAC9C;MAEE,OAAON,UAAU;EACrB;AACF;AAOA,OAAO,eAAeO,qBAAqBA,CAACP,UAAU,EAAwB;EAC5E,MAAMQ,iBAAgC,GAAG,EAAE;EAE3C,OAAO,MAAM,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IAC5CX,UAAU,CAACY,EAAE,CAAC,OAAO,EAAGC,KAAK,IAAKF,MAAM,CAACE,KAAK,CAAC,CAAC;IAIhDb,UAAU,CAACY,EAAE,CAAC,UAAU,EAAE,MAAMZ,UAAU,CAACc,IAAI,CAAC,CAAC,CAAC;IAElDd,UAAU,CAACY,EAAE,CAAC,MAAM,EAAGG,KAAK,IAAK;MAC/B,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;QAC7BJ,MAAM,CAAC,IAAIK,KAAK,CAAC,wBAAwB,CAAC,CAAC;MAC7C;MACAR,iBAAiB,CAACS,IAAI,CAACnB,aAAa,CAACiB,KAAK,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEFf,UAAU,CAACY,EAAE,CAAC,KAAK,EAAE,MAAM;MACzB,MAAMM,WAAW,GAAGC,uBAAuB,CAACX,iBAAiB,CAAC;MAC9DE,OAAO,CAACQ,WAAW,CAAC;IACtB,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ;AAOA,OAAO,SAASC,uBAAuBA,CAACC,OAAqC,EAAe;EAE1F,MAAMC,YAAY,GAAGD,OAAO,CAACE,GAAG,CAAEC,OAAO,IACvCA,OAAO,YAAYC,WAAW,GAAG,IAAIC,UAAU,CAACF,OAAO,CAAC,GAAGA,OAC7D,CAAC;EAGD,MAAMG,UAAU,GAAGL,YAAY,CAACM,MAAM,CAAC,CAACC,MAAM,EAAEC,UAAU,KAAKD,MAAM,GAAGC,UAAU,CAACH,UAAU,EAAE,CAAC,CAAC;EAGjG,MAAMI,MAAM,GAAG,IAAIL,UAAU,CAACC,UAAU,CAAC;EAGzC,IAAIK,MAAM,GAAG,CAAC;EACd,KAAK,MAAMC,WAAW,IAAIX,YAAY,EAAE;IACtCS,MAAM,CAACG,GAAG,CAACD,WAAW,EAAED,MAAM,CAAC;IAC/BA,MAAM,IAAIC,WAAW,CAACN,UAAU;EAClC;EAGA,OAAOI,MAAM,CAACI,MAAM;AACtB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"blob-stream-controller.js","names":["BlobStreamController","constructor","chunks","_defineProperty","start","controller","work","isWorking","isCancelled","desiredSize","next","error","done","enqueue","value","close","pull","cancel"],"sources":["../../../../src/node/file/blob-stream-controller.ts"],"sourcesContent":["/**\n * Forked from @gozala's web-blob under MIT license\n * @see https://github.com/Gozala/web-blob\n */\nexport class BlobStreamController {\n private chunks: Iterator<Uint8Array>;\n private isWorking: boolean = false;\n private isCancelled: boolean = false;\n\n /**\n * @param chunks\n */\n constructor(chunks: Iterator<Uint8Array>) {\n this.chunks = chunks;\n }\n\n /**\n * @param controller\n */\n start(controller: ReadableStreamDefaultController) {\n this.work(controller); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n\n /**\n *\n * @param controller\n */\n async work(controller: ReadableStreamDefaultController) {\n const {chunks} = this;\n\n this.isWorking = true;\n while (!this.isCancelled && (controller.desiredSize || 0) > 0) {\n let next: {done?: boolean; value?: Uint8Array} | undefined;\n try {\n next = chunks.next();\n } catch (error) {\n controller.error(error);\n break;\n }\n\n if (next) {\n if (!next.done && !this.isCancelled) {\n controller.enqueue(next.value);\n } else {\n controller.close();\n }\n }\n }\n\n this.isWorking = false;\n }\n\n /**\n *\n * @param {ReadableStreamDefaultController} controller\n */\n pull(controller) {\n if (!this.isWorking) {\n this.work(controller); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n }\n cancel() {\n this.isCancelled = true;\n }\n}\n"],"mappings":";AAIA,OAAO,MAAMA,oBAAoB,CAAC;EAQhCC,WAAWA,CAACC,MAA4B,EAAE;IAAAC,eAAA;IAAAA,eAAA,oBANb,KAAK;IAAAA,eAAA,sBACH,KAAK;IAMlC,IAAI,CAACD,MAAM,GAAGA,MAAM;EACtB;EAKAE,KAAKA,CAACC,UAA2C,EAAE;IACjD,IAAI,CAACC,IAAI,CAACD,UAAU,CAAC;EACvB;EAMA,MAAMC,IAAIA,CAACD,UAA2C,EAAE;IACtD,MAAM;MAACH;IAAM,CAAC,GAAG,IAAI;IAErB,IAAI,CAACK,SAAS,GAAG,IAAI;IACrB,OAAO,CAAC,IAAI,CAACC,WAAW,IAAI,CAACH,UAAU,CAACI,WAAW,IAAI,CAAC,IAAI,CAAC,EAAE;MAC7D,IAAIC,IAAsD;MAC1D,IAAI;QACFA,IAAI,GAAGR,MAAM,CAACQ,IAAI,CAAC,CAAC;MACtB,CAAC,CAAC,OAAOC,KAAK,EAAE;QACdN,UAAU,CAACM,KAAK,CAACA,KAAK,CAAC;QACvB;MACF;MAEA,IAAID,IAAI,EAAE;QACR,IAAI,CAACA,IAAI,CAACE,IAAI,IAAI,CAAC,IAAI,CAACJ,WAAW,EAAE;UACnCH,UAAU,CAACQ,OAAO,CAACH,IAAI,CAACI,KAAK,CAAC;QAChC,CAAC,MAAM;UACLT,UAAU,CAACU,KAAK,CAAC,CAAC;QACpB;MACF;IACF;IAEA,IAAI,CAACR,SAAS,GAAG,KAAK;EACxB;EAMAS,IAAIA,CAACX,UAAU,EAAE;IACf,IAAI,CAAC,IAAI,CAACE,SAAS,EAAE;MACnB,IAAI,CAACD,IAAI,CAACD,UAAU,CAAC;IACvB;EACF;EACAY,MAAMA,CAAA,EAAG;IACP,IAAI,CAACT,WAAW,GAAG,IAAI;EACzB;AACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"blob-stream.js","names":["ReadableStreamPolyfill","BlobStreamController","_Symbol$asyncIterator","Symbol","asyncIterator","BlobStream","constructor","chunks","values","type","_defineProperty","_chunks","_options","reader","getReader","releaseLock"],"sources":["../../../../src/node/file/blob-stream.ts"],"sourcesContent":["/**\n * Forked from @gozala's web-blob under MIT license\n * @see https://github.com/Gozala/web-blob\n */\nimport {ReadableStreamPolyfill} from './readable-stream';\nimport {BlobStreamController} from './blob-stream-controller';\n\n/**\n * Blob stream is a `ReadableStream` extension optimized to have minimal\n * overhead when consumed as `AsyncIterable<Uint8Array>`.\n * extends {ReadableStream<Uint8Array>}\n * implements {AsyncIterable<Uint8Array>}\n */\n// @ts-ignore\nexport class BlobStream<T> extends ReadableStreamPolyfill<T> {\n private readonly _chunks: Uint8Array[];\n /**\n * @param chunks\n */\n constructor(chunks) {\n // @ts-ignore\n super(new BlobStreamController(chunks.values()), {type: 'bytes'});\n /** @private */\n this._chunks = chunks;\n }\n\n /**\n * @property [_options.preventCancel]\n */\n // @ts-ignore\n async *[Symbol.asyncIterator](_options?: {preventCancel?: boolean}): AsyncIterable<Uint8Array> {\n const reader = this.getReader();\n yield* this._chunks;\n reader.releaseLock();\n }\n}\n"],"mappings":";;AAIA,SAAQA,sBAAsB,QAAO,mBAAmB;AACxD,SAAQC,oBAAoB,QAAO,0BAA0B;AAACC,qBAAA,GAyBpDC,MAAM,CAACC,aAAa;AAhB9B,OAAO,MAAMC,UAAU,SAAYL,sBAAsB,CAAI;EAK3DM,WAAWA,CAACC,MAAM,EAAE;IAElB,KAAK,CAAC,IAAIN,oBAAoB,CAACM,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAE;MAACC,IAAI,EAAE;IAAO,CAAC,CAAC;IAACC,eAAA;IAElE,IAAI,CAACC,OAAO,GAAGJ,MAAM;EACvB;EAMA,QAAAL,qBAAA,EAA8BU,QAAoC,EAA6B;IAC7F,MAAMC,MAAM,GAAG,IAAI,CAACC,SAAS,CAAC,CAAC;IAC/B,OAAO,IAAI,CAACH,OAAO;IACnBE,MAAM,CAACE,WAAW,CAAC,CAAC;EACtB;AACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"blob.js","names":["BlobStream","_Symbol$toStringTag","Symbol","toStringTag","BlobPolyfill","constructor","init","arguments","length","undefined","options","_defineProperty","parts","size","part","bytes","TextEncoder","encode","push","byteLength","ArrayBuffer","Uint8Array","isView","buffer","byteOffset","String","type","readType","slice","start","end","offset","Math","max","min","limit","span","blob","blobSize","blobParts","chunk","subarray","arrayBuffer","_toArrayBuffer","text","decoder","TextDecoder","decode","stream","toString","set","input","toLowerCase","test"],"sources":["../../../../src/node/file/blob.ts"],"sourcesContent":["// Forked from @gozala's web-blob under MIT license https://github.com/Gozala/web-blob\nimport {BlobStream} from './blob-stream';\n\n/**\n * Forked from @gozala's web-blob under MIT license\n * @see https://github.com/Gozala/web-blob\n */\nexport class BlobPolyfill {\n // implements Blob {\n /** The MIME type of the data contained in the Blob. If type is unknown, string is empty. */\n readonly type: string;\n /** The size, in bytes, of the data contained in the Blob object. */\n size: number;\n private parts: Uint8Array[];\n /**\n * @param [init]\n * @param [options]\n */\n constructor(init: BlobPart[] = [], options: BlobPropertyBag = {}) {\n this.parts = [];\n\n this.size = 0;\n for (const part of init) {\n if (typeof part === 'string') {\n const bytes = new TextEncoder().encode(part);\n this.parts.push(bytes);\n this.size += bytes.byteLength;\n } else if (part instanceof BlobPolyfill) {\n this.size += part.size;\n // @ts-ignore - `parts` is marked private so TS will complain about\n // accessing it.\n this.parts.push(...part.parts);\n } else if (part instanceof ArrayBuffer) {\n this.parts.push(new Uint8Array(part));\n this.size += part.byteLength;\n } else if (part instanceof Uint8Array) {\n this.parts.push(part);\n this.size += part.byteLength;\n } else if (ArrayBuffer.isView(part)) {\n const {buffer, byteOffset, byteLength} = part;\n this.parts.push(new Uint8Array(buffer, byteOffset, byteLength));\n this.size += byteLength;\n } else {\n const bytes = new TextEncoder().encode(String(part));\n this.parts.push(bytes);\n this.size += bytes.byteLength;\n }\n }\n\n /** @private */\n this.type = readType(options.type);\n }\n\n /**\n * Returns a new Blob object containing the data in the specified range of\n * bytes of the blob on which it's called.\n * @param start=0 - An index into the Blob indicating the first\n * byte to include in the new Blob. If you specify a negative value, it's\n * treated as an offset from the end of the Blob toward the beginning. For\n * example, `-10` would be the 10th from last byte in the Blob. The default\n * value is `0`. If you specify a value for start that is larger than the\n * size of the source Blob, the returned Blob has size 0 and contains no\n * data.\n * @param end - An index into the `Blob` indicating the first byte\n * that will *not* be included in the new `Blob` (i.e. the byte exactly at\n * this index is not included). If you specify a negative value, it's treated\n * as an offset from the end of the Blob toward the beginning. For example,\n * `-10` would be the 10th from last byte in the `Blob`. The default value is\n * size.\n * @param type - The content type to assign to the new Blob;\n * this will be the value of its type property. The default value is an empty\n * string.\n */\n slice(start: number = 0, end: number = this.size, type: string = ''): Blob {\n const {size, parts: parts} = this;\n let offset = start < 0 ? Math.max(size + start, 0) : Math.min(start, size);\n\n let limit = end < 0 ? Math.max(size + end, 0) : Math.min(end, size);\n const span = Math.max(limit - offset, 0);\n const blob = new BlobPolyfill([], {type});\n\n if (span === 0) {\n // @ts-ignore\n return blob;\n }\n\n let blobSize = 0;\n const blobParts: Uint8Array[] = [];\n for (const part of parts) {\n const {byteLength} = part;\n if (offset > 0 && byteLength <= offset) {\n offset -= byteLength;\n limit -= byteLength;\n } else {\n const chunk = part.subarray(offset, Math.min(byteLength, limit));\n blobParts.push(chunk);\n blobSize += chunk.byteLength;\n // no longer need to take that into account\n offset = 0;\n\n // don't add the overflow to new blobParts\n if (blobSize >= span) {\n break;\n }\n }\n }\n\n blob.parts = blobParts;\n blob.size = blobSize;\n\n // @ts-ignore\n return blob;\n }\n\n /**\n * Returns a promise that resolves with an ArrayBuffer containing the entire\n * contents of the Blob as binary data.\n */\n // eslint-disable-next-line require-await\n async arrayBuffer(): Promise<ArrayBuffer> {\n return this._toArrayBuffer();\n }\n\n /**\n * Returns a promise that resolves with a USVString containing the entire\n * contents of the Blob interpreted as UTF-8 text.\n */\n // eslint-disable-next-line require-await\n async text(): Promise<string> {\n const decoder = new TextDecoder();\n let text = '';\n for (const part of this.parts) {\n text += decoder.decode(part);\n }\n return text;\n }\n\n /**\n */\n // @ts-ignore\n stream(): BlobStream<any> {\n return new BlobStream<any>(this.parts);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return '[object Blob]';\n }\n\n get [Symbol.toStringTag]() {\n return 'Blob';\n }\n\n _toArrayBuffer(): ArrayBuffer {\n const buffer = new ArrayBuffer(this.size);\n const bytes = new Uint8Array(buffer);\n let offset = 0;\n for (const part of this.parts) {\n bytes.set(part, offset);\n offset += part.byteLength;\n }\n return buffer;\n }\n}\n\n/**\n */\nfunction readType(input: string = ''): string {\n const type = String(input).toLowerCase();\n return /[^\\u0020-\\u007E]/.test(type) ? '' : type;\n}\n"],"mappings":"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"}
@@ -1,60 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
- import { atob } from '../buffer/btoa.node';
3
- export class FileReaderPolyfill {
4
- constructor() {
5
- _defineProperty(this, "onload", void 0);
6
- _defineProperty(this, "onabort", void 0);
7
- _defineProperty(this, "onerror", void 0);
8
- _defineProperty(this, "error", void 0);
9
- _defineProperty(this, "onloadstart", void 0);
10
- _defineProperty(this, "onloadend", void 0);
11
- _defineProperty(this, "onprogress", void 0);
12
- _defineProperty(this, "readyState", void 0);
13
- _defineProperty(this, "result", void 0);
14
- _defineProperty(this, "DONE", void 0);
15
- _defineProperty(this, "EMPTY", void 0);
16
- _defineProperty(this, "LOADING", void 0);
17
- _defineProperty(this, "addEventListener", void 0);
18
- _defineProperty(this, "removeEventListener", void 0);
19
- _defineProperty(this, "dispatchEvent", void 0);
20
- this.onload = null;
21
- }
22
- abort() {
23
- return;
24
- }
25
- async readAsArrayBuffer(blob) {
26
- const arrayBuffer = await blob.arrayBuffer();
27
- if (this.onload) {
28
- this.onload({
29
- target: {
30
- result: arrayBuffer
31
- }
32
- });
33
- }
34
- }
35
- async readAsBinaryString(blob) {
36
- throw Error('Not implemented');
37
- }
38
- async readAsDataURL(blob) {
39
- const text = await blob.text();
40
- const dataUrl = "data://;base64,".concat(atob(text));
41
- if (this.onload) {
42
- this.onload({
43
- target: {
44
- result: dataUrl
45
- }
46
- });
47
- }
48
- }
49
- async readAsText(blob) {
50
- const text = await blob.text();
51
- if (this.onload) {
52
- this.onload({
53
- target: {
54
- result: text
55
- }
56
- });
57
- }
58
- }
59
- }
60
- //# sourceMappingURL=file-reader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-reader.js","names":["atob","FileReaderPolyfill","constructor","_defineProperty","onload","abort","readAsArrayBuffer","blob","arrayBuffer","target","result","readAsBinaryString","Error","readAsDataURL","text","dataUrl","concat","readAsText"],"sources":["../../../../src/node/file/file-reader.ts"],"sourcesContent":["import {atob} from '../buffer/btoa.node';\n\nexport class FileReaderPolyfill implements FileReader {\n // onload: ({result: any}) => void;\n onload;\n onabort;\n onerror;\n error;\n onloadstart;\n onloadend;\n onprogress;\n\n readyState;\n result;\n DONE;\n EMPTY;\n LOADING;\n addEventListener;\n removeEventListener;\n dispatchEvent;\n\n constructor() {\n this.onload = null;\n }\n\n abort(): void {\n return;\n }\n\n async readAsArrayBuffer(blob: Blob): Promise<void> {\n const arrayBuffer = await blob.arrayBuffer();\n if (this.onload) {\n this.onload({target: {result: arrayBuffer}});\n }\n }\n\n async readAsBinaryString(blob) {\n throw Error('Not implemented');\n }\n\n async readAsDataURL(blob) {\n const text = await blob.text();\n const dataUrl = `data://;base64,${atob(text)}`;\n if (this.onload) {\n this.onload({target: {result: dataUrl}});\n }\n }\n\n async readAsText(blob) {\n const text = await blob.text();\n if (this.onload) {\n this.onload({target: {result: text}});\n }\n }\n}\n"],"mappings":";AAAA,SAAQA,IAAI,QAAO,qBAAqB;AAExC,OAAO,MAAMC,kBAAkB,CAAuB;EAmBpDC,WAAWA,CAAA,EAAG;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IACZ,IAAI,CAACC,MAAM,GAAG,IAAI;EACpB;EAEAC,KAAKA,CAAA,EAAS;IACZ;EACF;EAEA,MAAMC,iBAAiBA,CAACC,IAAU,EAAiB;IACjD,MAAMC,WAAW,GAAG,MAAMD,IAAI,CAACC,WAAW,CAAC,CAAC;IAC5C,IAAI,IAAI,CAACJ,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,CAAC;QAACK,MAAM,EAAE;UAACC,MAAM,EAAEF;QAAW;MAAC,CAAC,CAAC;IAC9C;EACF;EAEA,MAAMG,kBAAkBA,CAACJ,IAAI,EAAE;IAC7B,MAAMK,KAAK,CAAC,iBAAiB,CAAC;EAChC;EAEA,MAAMC,aAAaA,CAACN,IAAI,EAAE;IACxB,MAAMO,IAAI,GAAG,MAAMP,IAAI,CAACO,IAAI,CAAC,CAAC;IAC9B,MAAMC,OAAO,qBAAAC,MAAA,CAAqBhB,IAAI,CAACc,IAAI,CAAC,CAAE;IAC9C,IAAI,IAAI,CAACV,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,CAAC;QAACK,MAAM,EAAE;UAACC,MAAM,EAAEK;QAAO;MAAC,CAAC,CAAC;IAC1C;EACF;EAEA,MAAME,UAAUA,CAACV,IAAI,EAAE;IACrB,MAAMO,IAAI,GAAG,MAAMP,IAAI,CAACO,IAAI,CAAC,CAAC;IAC9B,IAAI,IAAI,CAACV,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,CAAC;QAACK,MAAM,EAAE;UAACC,MAAM,EAAEI;QAAI;MAAC,CAAC,CAAC;IACvC;EACF;AACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"file.js","names":["BlobPolyfill","_Symbol$toStringTag","Symbol","toStringTag","FilePolyfill","constructor","init","name","options","arguments","length","undefined","_defineProperty","String","replace","lastModified","Date","now"],"sources":["../../../../src/node/file/file.ts"],"sourcesContent":["// Forked from @gozala's web-file under MIT license https://github.com/Gozala/web-file\nimport {BlobPolyfill} from './blob';\n\n/**\n * Forked from @gozala's web-file under MIT license\n * @see https://github.com/Gozala/web-file\n */\n// @ts-ignore\nexport class FilePolyfill extends BlobPolyfill {\n // implements File {\n // public API\n /** The name of the file referenced by the File object. */\n name: string = '';\n /** The path the URL of the File is relative to. */\n webkitRelativePath: string = '';\n\n /**\n * Returns the last modified time of the file, in millisecond since the UNIX\n * epoch (January 1st, 1970 at Midnight).\n */\n lastModified: number;\n\n /**\n * @param init\n * @param name - A USVString representing the file name or the path\n * to the file.\n * @param [options]\n */\n constructor(init: BlobPart[], name: string, options: FilePropertyBag = {}) {\n super(init, options);\n // Per File API spec https://w3c.github.io/FileAPI/#file-constructor\n // Every \"/\" character of file name must be replaced with a \":\".\n /** @private */\n this.name = String(name).replace(/\\//g, ':');\n /** @private */\n this.lastModified = options?.lastModified || Date.now();\n }\n\n get [Symbol.toStringTag]() {\n return 'File';\n }\n}\n"],"mappings":";;AACA,SAAQA,YAAY,QAAO,QAAQ;AAACC,mBAAA,GAqC7BC,MAAM,CAACC,WAAW;AA9BzB,OAAO,MAAMC,YAAY,SAASJ,YAAY,CAAC;EAoB7CK,WAAWA,CAACC,IAAgB,EAAEC,IAAY,EAAiC;IAAA,IAA/BC,OAAwB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IACvE,KAAK,CAACH,IAAI,EAAEE,OAAO,CAAC;IAACI,eAAA,eAjBR,EAAE;IAAAA,eAAA,6BAEY,EAAE;IAAAA,eAAA;IAmB7B,IAAI,CAACL,IAAI,GAAGM,MAAM,CAACN,IAAI,CAAC,CAACO,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;IAE5C,IAAI,CAACC,YAAY,GAAG,CAAAP,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEO,YAAY,KAAIC,IAAI,CAACC,GAAG,CAAC,CAAC;EACzD;EAEA,KAAAhB,mBAAA,IAA2B;IACzB,OAAO,MAAM;EACf;AACF"}
@@ -1,16 +0,0 @@
1
- import { BlobPolyfill } from './blob';
2
- import { FileReaderPolyfill } from './file-reader';
3
- import { FilePolyfill } from './file';
4
- export function installFilePolyfills() {
5
- if (typeof ReadableStream === 'undefined' && global) {}
6
- if (typeof Blob === 'undefined' && global) {
7
- global.Blob = BlobPolyfill;
8
- }
9
- if (typeof FileReader === 'undefined' && global) {
10
- global.FileReader = FileReaderPolyfill;
11
- }
12
- if (typeof File === 'undefined' && global) {
13
- global.File = FilePolyfill;
14
- }
15
- }
16
- //# sourceMappingURL=install-file-polyfills.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"install-file-polyfills.js","names":["BlobPolyfill","FileReaderPolyfill","FilePolyfill","installFilePolyfills","ReadableStream","global","Blob","FileReader","File"],"sources":["../../../../src/node/file/install-file-polyfills.ts"],"sourcesContent":["// import {ReadableStreamPolyfill} from './readable-stream';\nimport {BlobPolyfill} from './blob';\nimport {FileReaderPolyfill} from './file-reader';\nimport {FilePolyfill} from './file';\n\nexport function installFilePolyfills() {\n if (typeof ReadableStream === 'undefined' && global) {\n // @ts-ignore;\n // global.ReadableStream = ReadableStreamPolyfill;\n }\n\n if (typeof Blob === 'undefined' && global) {\n // @ts-ignore;\n global.Blob = BlobPolyfill;\n }\n\n if (typeof FileReader === 'undefined' && global) {\n // @ts-ignore;\n global.FileReader = FileReaderPolyfill;\n }\n\n // Install minimal Node.js File polyfill\n if (typeof File === 'undefined' && global) {\n // @ts-ignore;\n global.File = FilePolyfill;\n }\n}\n"],"mappings":"AACA,SAAQA,YAAY,QAAO,QAAQ;AACnC,SAAQC,kBAAkB,QAAO,eAAe;AAChD,SAAQC,YAAY,QAAO,QAAQ;AAEnC,OAAO,SAASC,oBAAoBA,CAAA,EAAG;EACrC,IAAI,OAAOC,cAAc,KAAK,WAAW,IAAIC,MAAM,EAAE,CAGrD;EAEA,IAAI,OAAOC,IAAI,KAAK,WAAW,IAAID,MAAM,EAAE;IAEzCA,MAAM,CAACC,IAAI,GAAGN,YAAY;EAC5B;EAEA,IAAI,OAAOO,UAAU,KAAK,WAAW,IAAIF,MAAM,EAAE;IAE/CA,MAAM,CAACE,UAAU,GAAGN,kBAAkB;EACxC;EAGA,IAAI,OAAOO,IAAI,KAAK,WAAW,IAAIH,MAAM,EAAE;IAEzCA,MAAM,CAACG,IAAI,GAAGN,YAAY;EAC5B;AACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"readable-stream.js","names":["ReadableStream","WSPReadableStream","global","ReadableStreamPolyfill"],"sources":["../../../../src/node/file/readable-stream.ts"],"sourcesContent":["import {ReadableStream as WSPReadableStream} from 'web-streams-polyfill';\n\n// Want a polyfill, but please don't install it\n// @ts-ignore\ndelete global.ReadableStream;\n\n// @ts-ignore\nexport class ReadableStreamPolyfill<T> extends WSPReadableStream<T> implements ReadableStream {}\n"],"mappings":"AAAA,SAAQA,cAAc,IAAIC,iBAAiB,QAAO,sBAAsB;AAIxE,OAAOC,MAAM,CAACF,cAAc;AAG5B,OAAO,MAAMG,sBAAsB,SAAYF,iBAAiB,CAA8B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"encode-image.node.js","names":["savePixels","ndarray","bufferToArrayBuffer","encodeImageToStreamNode","image","options","type","replace","pixels","data","width","height","encodeImageNode","imageStream","Promise","resolve","buffers","on","buffer","push","Buffer","concat"],"sources":["../../../../src/node/images/encode-image.node.ts"],"sourcesContent":["// Use stackgl modules for DOM-less reading and writing of images\n\nimport savePixels from 'save-pixels';\nimport ndarray from 'ndarray';\nimport {bufferToArrayBuffer} from '../buffer/to-array-buffer.node';\n\n/**\n * Returns data bytes representing a compressed image in PNG or JPG format,\n * This data can be saved using file system (f) methods or\n * used in a request.\n * @param image to save\n * @param options\n * @param options.type='png' - png, jpg or image/png, image/jpg are valid\n * @param options.dataURI - Whether to include a data URI header\n * @return {*} bytes\n */\nexport function encodeImageToStreamNode(\n image: {data: any; width: number; height: number},\n options: {type?: string; dataURI?: string}\n) {\n // Support MIME type strings\n const type = options.type ? options.type.replace('image/', '') : 'jpeg';\n const pixels = ndarray(image.data, [image.width, image.height, 4], [4, image.width * 4, 1], 0);\n\n // Note: savePixels returns a stream\n return savePixels(pixels, type, options);\n}\n\nexport function encodeImageNode(image, options) {\n const imageStream = encodeImageToStreamNode(image, options);\n\n return new Promise((resolve) => {\n const buffers: any[] = [];\n imageStream.on('data', (buffer) => buffers.push(buffer));\n // TODO - convert to arraybuffer?\n imageStream.on('end', () => {\n const buffer = Buffer.concat(buffers);\n resolve(bufferToArrayBuffer(buffer));\n });\n });\n}\n"],"mappings":"AAEA,OAAOA,UAAU,MAAM,aAAa;AACpC,OAAOC,OAAO,MAAM,SAAS;AAC7B,SAAQC,mBAAmB,QAAO,gCAAgC;AAYlE,OAAO,SAASC,uBAAuBA,CACrCC,KAAiD,EACjDC,OAA0C,EAC1C;EAEA,MAAMC,IAAI,GAAGD,OAAO,CAACC,IAAI,GAAGD,OAAO,CAACC,IAAI,CAACC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,MAAM;EACvE,MAAMC,MAAM,GAAGP,OAAO,CAACG,KAAK,CAACK,IAAI,EAAE,CAACL,KAAK,CAACM,KAAK,EAAEN,KAAK,CAACO,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAEP,KAAK,CAACM,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;EAG9F,OAAOV,UAAU,CAACQ,MAAM,EAAEF,IAAI,EAAED,OAAO,CAAC;AAC1C;AAEA,OAAO,SAASO,eAAeA,CAACR,KAAK,EAAEC,OAAO,EAAE;EAC9C,MAAMQ,WAAW,GAAGV,uBAAuB,CAACC,KAAK,EAAEC,OAAO,CAAC;EAE3D,OAAO,IAAIS,OAAO,CAAEC,OAAO,IAAK;IAC9B,MAAMC,OAAc,GAAG,EAAE;IACzBH,WAAW,CAACI,EAAE,CAAC,MAAM,EAAGC,MAAM,IAAKF,OAAO,CAACG,IAAI,CAACD,MAAM,CAAC,CAAC;IAExDL,WAAW,CAACI,EAAE,CAAC,KAAK,EAAE,MAAM;MAC1B,MAAMC,MAAM,GAAGE,MAAM,CAACC,MAAM,CAACL,OAAO,CAAC;MACrCD,OAAO,CAACb,mBAAmB,CAACgB,MAAM,CAAC,CAAC;IACtC,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-image.node.js","names":["getPixels","NODE_FORMAT_SUPPORT","parseImageNode","arrayBuffer","mimeType","Error","buffer","Buffer","from","ndarray","getPixelsAsync","Promise","resolve","err","shape","layers","length","shift","data","Uint8Array","width","height","components"],"sources":["../../../../src/node/images/parse-image.node.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport getPixels from 'get-pixels';\n\n/** Declares which image format mime types this loader polyfill supports */\nexport const NODE_FORMAT_SUPPORT = ['image/png', 'image/jpeg', 'image/gif'];\n\n// Note: These types are also defined in @loaders.gl/images and need to be kept in sync\ntype NDArray = {\n shape: number[];\n data: Uint8Array;\n width: number;\n height: number;\n components: number;\n layers: number[];\n};\n\nexport async function parseImageNode(arrayBuffer: ArrayBuffer, mimeType: string): Promise<NDArray> {\n if (!mimeType) {\n throw new Error('MIMEType is required to parse image under Node.js');\n }\n\n const buffer = arrayBuffer instanceof Buffer ? arrayBuffer : Buffer.from(arrayBuffer);\n const ndarray = await getPixelsAsync(buffer, mimeType);\n return ndarray;\n}\n\n// TODO - check if getPixels callback is asynchronous if provided with buffer input\n// if not, parseImage can be a sync function\nfunction getPixelsAsync(buffer: Buffer, mimeType: string): Promise<NDArray> {\n return new Promise<NDArray>((resolve) =>\n getPixels(buffer, mimeType, (err, ndarray) => {\n if (err) {\n throw err;\n }\n\n const shape = [...ndarray.shape];\n const layers = ndarray.shape.length === 4 ? ndarray.shape.shift() : 1;\n const data = ndarray.data instanceof Buffer ? new Uint8Array(ndarray.data) : ndarray.data;\n\n // extract width/height etc\n resolve({\n shape,\n data,\n width: ndarray.shape[0],\n height: ndarray.shape[1],\n components: ndarray.shape[2],\n // TODO - error\n layers: layers ? [layers] : []\n });\n })\n );\n}\n"],"mappings":"AAEA,OAAOA,SAAS,MAAM,YAAY;AAGlC,OAAO,MAAMC,mBAAmB,GAAG,CAAC,WAAW,EAAE,YAAY,EAAE,WAAW,CAAC;AAY3E,OAAO,eAAeC,cAAcA,CAACC,WAAwB,EAAEC,QAAgB,EAAoB;EACjG,IAAI,CAACA,QAAQ,EAAE;IACb,MAAM,IAAIC,KAAK,CAAC,mDAAmD,CAAC;EACtE;EAEA,MAAMC,MAAM,GAAGH,WAAW,YAAYI,MAAM,GAAGJ,WAAW,GAAGI,MAAM,CAACC,IAAI,CAACL,WAAW,CAAC;EACrF,MAAMM,OAAO,GAAG,MAAMC,cAAc,CAACJ,MAAM,EAAEF,QAAQ,CAAC;EACtD,OAAOK,OAAO;AAChB;AAIA,SAASC,cAAcA,CAACJ,MAAc,EAAEF,QAAgB,EAAoB;EAC1E,OAAO,IAAIO,OAAO,CAAWC,OAAO,IAClCZ,SAAS,CAACM,MAAM,EAAEF,QAAQ,EAAE,CAACS,GAAG,EAAEJ,OAAO,KAAK;IAC5C,IAAII,GAAG,EAAE;MACP,MAAMA,GAAG;IACX;IAEA,MAAMC,KAAK,GAAG,CAAC,GAAGL,OAAO,CAACK,KAAK,CAAC;IAChC,MAAMC,MAAM,GAAGN,OAAO,CAACK,KAAK,CAACE,MAAM,KAAK,CAAC,GAAGP,OAAO,CAACK,KAAK,CAACG,KAAK,CAAC,CAAC,GAAG,CAAC;IACrE,MAAMC,IAAI,GAAGT,OAAO,CAACS,IAAI,YAAYX,MAAM,GAAG,IAAIY,UAAU,CAACV,OAAO,CAACS,IAAI,CAAC,GAAGT,OAAO,CAACS,IAAI;IAGzFN,OAAO,CAAC;MACNE,KAAK;MACLI,IAAI;MACJE,KAAK,EAAEX,OAAO,CAACK,KAAK,CAAC,CAAC,CAAC;MACvBO,MAAM,EAAEZ,OAAO,CAACK,KAAK,CAAC,CAAC,CAAC;MACxBQ,UAAU,EAAEb,OAAO,CAACK,KAAK,CAAC,CAAC,CAAC;MAE5BC,MAAM,EAAEA,MAAM,GAAG,CAACA,MAAM,CAAC,GAAG;IAC9B,CAAC,CAAC;EACJ,CAAC,CACH,CAAC;AACH"}
@@ -1,19 +0,0 @@
1
- export const REJECTED_STATUS = 'rejected';
2
- export const FULFILLED_STATUS = 'fulfilled';
3
- export function allSettled(promises) {
4
- const mappedPromises = promises.map(promise => {
5
- return promise.then(value => {
6
- return {
7
- status: FULFILLED_STATUS,
8
- value
9
- };
10
- }).catch(reason => {
11
- return {
12
- status: REJECTED_STATUS,
13
- reason
14
- };
15
- });
16
- });
17
- return Promise.all(mappedPromises);
18
- }
19
- //# sourceMappingURL=all-settled.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"all-settled.js","names":["REJECTED_STATUS","FULFILLED_STATUS","allSettled","promises","mappedPromises","map","promise","then","value","status","catch","reason","Promise","all"],"sources":["../../../src/promise/all-settled.ts"],"sourcesContent":["export const REJECTED_STATUS = 'rejected';\nexport const FULFILLED_STATUS = 'fulfilled';\n\n/**\n * Handle list of promises and return all values regardless of results.\n * Polyfill for Promise.allSettled() method.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/allSettled\n * @param promises\n */\nexport function allSettled(promises: Promise<any>[]): Promise<any> {\n const mappedPromises = promises.map((promise) => {\n return promise\n .then((value) => {\n return {status: FULFILLED_STATUS, value};\n })\n .catch((reason) => {\n return {status: REJECTED_STATUS, reason};\n });\n });\n return Promise.all(mappedPromises);\n}\n"],"mappings":"AAAA,OAAO,MAAMA,eAAe,GAAG,UAAU;AACzC,OAAO,MAAMC,gBAAgB,GAAG,WAAW;AAQ3C,OAAO,SAASC,UAAUA,CAACC,QAAwB,EAAgB;EACjE,MAAMC,cAAc,GAAGD,QAAQ,CAACE,GAAG,CAAEC,OAAO,IAAK;IAC/C,OAAOA,OAAO,CACXC,IAAI,CAAEC,KAAK,IAAK;MACf,OAAO;QAACC,MAAM,EAAER,gBAAgB;QAAEO;MAAK,CAAC;IAC1C,CAAC,CAAC,CACDE,KAAK,CAAEC,MAAM,IAAK;MACjB,OAAO;QAACF,MAAM,EAAET,eAAe;QAAEW;MAAM,CAAC;IAC1C,CAAC,CAAC;EACN,CAAC,CAAC;EACF,OAAOC,OAAO,CAACC,GAAG,CAACT,cAAc,CAAC;AACpC"}
@@ -1,6 +0,0 @@
1
- export function assert(condition, message) {
2
- if (!condition) {
3
- throw new Error("@loaders.gl/polyfills assertion ".concat(message));
4
- }
5
- }
6
- //# sourceMappingURL=assert.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"assert.js","names":["assert","condition","message","Error","concat"],"sources":["../../../src/utils/assert.ts"],"sourcesContent":["export function assert(condition: any, message?: string): void {\n if (!condition) {\n throw new Error(`@loaders.gl/polyfills assertion ${message}`);\n }\n}\n"],"mappings":"AAAA,OAAO,SAASA,MAAMA,CAACC,SAAc,EAAEC,OAAgB,EAAQ;EAC7D,IAAI,CAACD,SAAS,EAAE;IACd,MAAM,IAAIE,KAAK,oCAAAC,MAAA,CAAoCF,OAAO,CAAE,CAAC;EAC/D;AACF"}
@@ -1,9 +0,0 @@
1
- const isBrowser = typeof process !== 'object' || String(process) !== '[object process]' || process.browser;
2
- const globals = {
3
- self: typeof self !== 'undefined' && self,
4
- window: typeof window !== 'undefined' && window,
5
- global: typeof global !== 'undefined' && global
6
- };
7
- const global_ = globals.global || globals.self || globals.window;
8
- export { isBrowser, global_ as global };
9
- //# sourceMappingURL=globals.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"globals.js","names":["isBrowser","process","String","browser","globals","self","window","global","global_"],"sources":["../../../src/utils/globals.ts"],"sourcesContent":["// Copyright (c) 2015 - 2017 Uber Technologies, Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n\n// Purpose: include this in your module to avoids adding dependencies on\n// micro modules like 'global' and 'is-browser';\n\n/* eslint-disable no-restricted-globals */\nconst isBrowser: boolean =\n // @ts-ignore process.browser\n typeof process !== 'object' || String(process) !== '[object process]' || process.browser;\n\nconst globals = {\n self: typeof self !== 'undefined' && self,\n window: typeof window !== 'undefined' && window,\n global: typeof global !== 'undefined' && global\n};\n\nconst global_: object = (globals.global || globals.self || globals.window) as object;\n\nexport {isBrowser, global_ as global};\n"],"mappings":"AAwBA,MAAMA,SAAkB,GAEtB,OAAOC,OAAO,KAAK,QAAQ,IAAIC,MAAM,CAACD,OAAO,CAAC,KAAK,kBAAkB,IAAIA,OAAO,CAACE,OAAO;AAE1F,MAAMC,OAAO,GAAG;EACdC,IAAI,EAAE,OAAOA,IAAI,KAAK,WAAW,IAAIA,IAAI;EACzCC,MAAM,EAAE,OAAOA,MAAM,KAAK,WAAW,IAAIA,MAAM;EAC/CC,MAAM,EAAE,OAAOA,MAAM,KAAK,WAAW,IAAIA;AAC3C,CAAC;AAED,MAAMC,OAAe,GAAIJ,OAAO,CAACG,MAAM,IAAIH,OAAO,CAACC,IAAI,IAAID,OAAO,CAACE,MAAiB;AAEpF,SAAQN,SAAS,EAAEQ,OAAO,IAAID,MAAM"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"encoding-indexes.d.ts","sourceRoot":"","sources":["../../src/lib/encoding-indexes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,wBA4BE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../../src/lib/encoding.ts"],"names":[],"mappings":"AA21BA;;;;;GAKG;AACH,iBAAS,WAAW,CAAC,KAAK,KAAA,EAAE,OAAO,KAAA,OA2DlC;AA6JD;;;;GAIG;AACH,iBAAS,WAAW,CAAC,KAAK,KAAA,EAAE,OAAO,KAAA,OA+ClC;AA85DD,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"btoa.node.d.ts","sourceRoot":"","sources":["../../../src/node/buffer/btoa.node.ts"],"names":[],"mappings":"AAIA,wBAAgB,IAAI,CAAC,MAAM,KAAA,UAE1B;AAED,wBAAgB,IAAI,CAAC,MAAM,KAAA,UAE1B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"to-array-buffer.node.d.ts","sourceRoot":"","sources":["../../../src/node/buffer/to-array-buffer.node.ts"],"names":[],"mappings":"AAAA,wBAAgB,mBAAmB,CAAC,MAAM,KAAA,OAOzC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"fetch.node.d.ts","sourceRoot":"","sources":["../../../src/node/fetch/fetch.node.ts"],"names":[],"mappings":";AAEA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAC;AAOzC;;;;GAIG;AAEH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAgDpF;AAED,2DAA2D;AAC3D,wBAAsB,2BAA2B,CAC/C,GAAG,EAAE,MAAM,EACX,OAAO,KAAA,GACN,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAW/B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"decode-data-uri.node.d.ts","sourceRoot":"","sources":["../../../../src/node/fetch/utils/decode-data-uri.node.ts"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG;IAAC,WAAW,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAC,CAoBvF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,CA+BxD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream-utils.node.d.ts","sourceRoot":"","sources":["../../../../src/node/fetch/utils/stream-utils.node.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,KAAA,EAAE,OAAO,KAAA,OAYvD;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,UAAU,KAAA,GAAG,OAAO,CAAC,WAAW,CAAC,CAsB5E;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,CAAC,WAAW,GAAG,UAAU,CAAC,EAAE,GAAG,WAAW,CAqB1F"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"blob-stream-controller.d.ts","sourceRoot":"","sources":["../../../src/node/file/blob-stream-controller.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,WAAW,CAAkB;IAErC;;OAEG;gBACS,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC;IAIxC;;OAEG;IACH,KAAK,CAAC,UAAU,EAAE,+BAA+B;IAIjD;;;OAGG;IACG,IAAI,CAAC,UAAU,EAAE,+BAA+B;IAyBtD;;;OAGG;IACH,IAAI,CAAC,UAAU,KAAA;IAKf,MAAM;CAGP"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"blob-stream.d.ts","sourceRoot":"","sources":["../../../src/node/file/blob-stream.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAC,sBAAsB,EAAC,MAAM,mBAAmB,CAAC;AAGzD;;;;;GAKG;AAEH,qBAAa,UAAU,CAAC,CAAC,CAAE,SAAQ,sBAAsB,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC;;OAEG;gBACS,MAAM,KAAA;IAOlB;;OAEG;IAEI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,EAAE;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAAC,GAAG,aAAa,CAAC,UAAU,CAAC;CAK/F"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"blob.d.ts","sourceRoot":"","sources":["../../../src/node/file/blob.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAEzC;;;GAGG;AACH,qBAAa,YAAY;IAEvB,4FAA4F;IAC5F,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,KAAK,CAAe;IAC5B;;;OAGG;gBACS,IAAI,GAAE,QAAQ,EAAO,EAAE,OAAO,GAAE,eAAoB;IAmChE;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,KAAK,GAAE,MAAU,EAAE,GAAG,GAAE,MAAkB,EAAE,IAAI,GAAE,MAAW,GAAG,IAAI;IAyC1E;;;OAGG;IAEG,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC;IAIzC;;;OAGG;IAEG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAS7B;OACG;IAEH,MAAM,IAAI,UAAU,CAAC,GAAG,CAAC;IAIzB;;OAEG;IACH,QAAQ;IAIR,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAEvB;IAED,cAAc,IAAI,WAAW;CAU9B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"file-reader.d.ts","sourceRoot":"","sources":["../../../src/node/file/file-reader.ts"],"names":[],"mappings":"AAEA,qBAAa,kBAAmB,YAAW,UAAU;IAEnD,MAAM,MAAC;IACP,OAAO,MAAC;IACR,OAAO,MAAC;IACR,KAAK,MAAC;IACN,WAAW,MAAC;IACZ,SAAS,MAAC;IACV,UAAU,MAAC;IAEX,UAAU,MAAC;IACX,MAAM,MAAC;IACP,IAAI,MAAC;IACL,KAAK,MAAC;IACN,OAAO,MAAC;IACR,gBAAgB,MAAC;IACjB,mBAAmB,MAAC;IACpB,aAAa,MAAC;;IAMd,KAAK,IAAI,IAAI;IAIP,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5C,kBAAkB,CAAC,IAAI,KAAA;IAIvB,aAAa,CAAC,IAAI,KAAA;IAQlB,UAAU,CAAC,IAAI,KAAA;CAMtB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../src/node/file/file.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AAEpC;;;GAGG;AAEH,qBAAa,YAAa,SAAQ,YAAY;IAG5C,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAM;IAClB,mDAAmD;IACnD,kBAAkB,EAAE,MAAM,CAAM;IAEhC;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;gBACS,IAAI,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB;IAUzE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAEvB;CACF"}
@@ -1,2 +0,0 @@
1
- export declare function installFilePolyfills(): void;
2
- //# sourceMappingURL=install-file-polyfills.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"install-file-polyfills.d.ts","sourceRoot":"","sources":["../../../src/node/file/install-file-polyfills.ts"],"names":[],"mappings":"AAKA,wBAAgB,oBAAoB,SAqBnC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"readable-stream.d.ts","sourceRoot":"","sources":["../../../src/node/file/readable-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,IAAI,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAOzE,qBAAa,sBAAsB,CAAC,CAAC,CAAE,SAAQ,iBAAiB,CAAC,CAAC,CAAE,YAAW,cAAc;CAAG"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"encode-image.node.d.ts","sourceRoot":"","sources":["../../../src/node/images/encode-image.node.ts"],"names":[],"mappings":"AAMA;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE;IAAC,IAAI,EAAE,GAAG,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,EACjD,OAAO,EAAE;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAC,OAQ3C;AAED,wBAAgB,eAAe,CAAC,KAAK,KAAA,EAAE,OAAO,KAAA,oBAY7C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-image.node.d.ts","sourceRoot":"","sources":["../../../src/node/images/parse-image.node.ts"],"names":[],"mappings":"AAIA,2EAA2E;AAC3E,eAAO,MAAM,mBAAmB,UAA2C,CAAC;AAG5E,KAAK,OAAO,GAAG;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,wBAAsB,cAAc,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAQjG"}
@@ -1,10 +0,0 @@
1
- export declare const REJECTED_STATUS = "rejected";
2
- export declare const FULFILLED_STATUS = "fulfilled";
3
- /**
4
- * Handle list of promises and return all values regardless of results.
5
- * Polyfill for Promise.allSettled() method.
6
- * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/allSettled
7
- * @param promises
8
- */
9
- export declare function allSettled(promises: Promise<any>[]): Promise<any>;
10
- //# sourceMappingURL=all-settled.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"all-settled.d.ts","sourceRoot":"","sources":["../../src/promise/all-settled.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,aAAa,CAAC;AAC1C,eAAO,MAAM,gBAAgB,cAAc,CAAC;AAE5C;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAWjE"}
@@ -1,4 +0,0 @@
1
- declare const isBrowser: boolean;
2
- declare const global_: object;
3
- export { isBrowser, global_ as global };
4
- //# sourceMappingURL=globals.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../../src/utils/globals.ts"],"names":[],"mappings":"AAwBA,QAAA,MAAM,SAAS,EAAE,OAEyE,CAAC;AAQ3F,QAAA,MAAM,OAAO,EAAE,MAAqE,CAAC;AAErF,OAAO,EAAC,SAAS,EAAE,OAAO,IAAI,MAAM,EAAC,CAAC"}
package/src/bundle.ts DELETED
@@ -1,4 +0,0 @@
1
- // @ts-nocheck
2
- const moduleExports = require('./index');
3
- globalThis.loaders = globalThis.loaders || {};
4
- module.exports = Object.assign(globalThis.loaders, moduleExports);
@@ -1,27 +0,0 @@
1
- // import {ReadableStreamPolyfill} from './readable-stream';
2
- import {BlobPolyfill} from './blob';
3
- import {FileReaderPolyfill} from './file-reader';
4
- import {FilePolyfill} from './file';
5
-
6
- export function installFilePolyfills() {
7
- if (typeof ReadableStream === 'undefined' && global) {
8
- // @ts-ignore;
9
- // global.ReadableStream = ReadableStreamPolyfill;
10
- }
11
-
12
- if (typeof Blob === 'undefined' && global) {
13
- // @ts-ignore;
14
- global.Blob = BlobPolyfill;
15
- }
16
-
17
- if (typeof FileReader === 'undefined' && global) {
18
- // @ts-ignore;
19
- global.FileReader = FileReaderPolyfill;
20
- }
21
-
22
- // Install minimal Node.js File polyfill
23
- if (typeof File === 'undefined' && global) {
24
- // @ts-ignore;
25
- global.File = FilePolyfill;
26
- }
27
- }
@@ -1,21 +0,0 @@
1
- export const REJECTED_STATUS = 'rejected';
2
- export const FULFILLED_STATUS = 'fulfilled';
3
-
4
- /**
5
- * Handle list of promises and return all values regardless of results.
6
- * Polyfill for Promise.allSettled() method.
7
- * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/allSettled
8
- * @param promises
9
- */
10
- export function allSettled(promises: Promise<any>[]): Promise<any> {
11
- const mappedPromises = promises.map((promise) => {
12
- return promise
13
- .then((value) => {
14
- return {status: FULFILLED_STATUS, value};
15
- })
16
- .catch((reason) => {
17
- return {status: REJECTED_STATUS, reason};
18
- });
19
- });
20
- return Promise.all(mappedPromises);
21
- }
@@ -1,37 +0,0 @@
1
- // Copyright (c) 2015 - 2017 Uber Technologies, Inc.
2
- //
3
- // Permission is hereby granted, free of charge, to any person obtaining a copy
4
- // of this software and associated documentation files (the "Software"), to deal
5
- // in the Software without restriction, including without limitation the rights
6
- // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
- // copies of the Software, and to permit persons to whom the Software is
8
- // furnished to do so, subject to the following conditions:
9
- //
10
- // The above copyright notice and this permission notice shall be included in
11
- // all copies or substantial portions of the Software.
12
- //
13
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
- // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
- // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
- // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
- // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
- // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
- // THE SOFTWARE.
20
-
21
- // Purpose: include this in your module to avoids adding dependencies on
22
- // micro modules like 'global' and 'is-browser';
23
-
24
- /* eslint-disable no-restricted-globals */
25
- const isBrowser: boolean =
26
- // @ts-ignore process.browser
27
- typeof process !== 'object' || String(process) !== '[object process]' || process.browser;
28
-
29
- const globals = {
30
- self: typeof self !== 'undefined' && self,
31
- window: typeof window !== 'undefined' && window,
32
- global: typeof global !== 'undefined' && global
33
- };
34
-
35
- const global_: object = (globals.global || globals.self || globals.window) as object;
36
-
37
- export {isBrowser, global_ as global};
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes