@gmod/cram 6.0.0 → 7.0.0

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 (178) hide show
  1. package/dist/craiIndex.js +2 -2
  2. package/dist/craiIndex.js.map +1 -1
  3. package/dist/cram-bundle.js +1 -1
  4. package/dist/cramFile/file.d.ts +2 -2
  5. package/dist/cramFile/file.js +9 -13
  6. package/dist/cramFile/file.js.map +1 -1
  7. package/dist/htscodecs/index.d.ts +1 -5
  8. package/dist/htscodecs/index.js +11 -72
  9. package/dist/htscodecs/index.js.map +1 -1
  10. package/dist/htscodecs-wasm.d.ts +7 -0
  11. package/dist/htscodecs-wasm.js +183 -0
  12. package/dist/htscodecs-wasm.js.map +1 -0
  13. package/dist/unzip.d.ts +1 -1
  14. package/dist/unzip.js +3 -3
  15. package/dist/unzip.js.map +1 -1
  16. package/dist/wasm/htscodecs.d.ts +5 -0
  17. package/dist/wasm/htscodecs.js +0 -0
  18. package/dist/wasm/htscodecs.js.map +1 -0
  19. package/esm/craiIndex.js +2 -2
  20. package/esm/craiIndex.js.map +1 -1
  21. package/esm/cramFile/file.d.ts +2 -2
  22. package/esm/cramFile/file.js +7 -11
  23. package/esm/cramFile/file.js.map +1 -1
  24. package/esm/htscodecs/index.d.ts +1 -5
  25. package/esm/htscodecs/index.js +3 -31
  26. package/esm/htscodecs/index.js.map +1 -1
  27. package/esm/htscodecs-wasm.d.ts +7 -0
  28. package/esm/htscodecs-wasm.js +171 -0
  29. package/esm/htscodecs-wasm.js.map +1 -0
  30. package/esm/unzip.d.ts +1 -1
  31. package/esm/unzip.js +3 -3
  32. package/esm/unzip.js.map +1 -1
  33. package/esm/wasm/htscodecs.d.ts +5 -0
  34. package/esm/wasm/htscodecs.js +0 -0
  35. package/esm/wasm/htscodecs.js.map +1 -0
  36. package/package.json +9 -9
  37. package/src/craiIndex.ts +4 -2
  38. package/src/cramFile/file.ts +7 -11
  39. package/src/htscodecs/index.ts +12 -38
  40. package/src/htscodecs-wasm.ts +210 -0
  41. package/src/unzip.ts +3 -3
  42. package/src/wasm/htscodecs.d.ts +58 -0
  43. package/src/wasm/htscodecs.js +0 -0
  44. package/dist/htscodecs/arith_gen.d.ts +0 -16
  45. package/dist/htscodecs/arith_gen.js +0 -323
  46. package/dist/htscodecs/arith_gen.js.map +0 -1
  47. package/dist/htscodecs/arith_sh.d.ts +0 -9
  48. package/dist/htscodecs/arith_sh.js +0 -134
  49. package/dist/htscodecs/arith_sh.js.map +0 -1
  50. package/dist/htscodecs/byte_model.d.ts +0 -6
  51. package/dist/htscodecs/byte_model.js +0 -121
  52. package/dist/htscodecs/byte_model.js.map +0 -1
  53. package/dist/htscodecs/fqzcomp.d.ts +0 -1
  54. package/dist/htscodecs/fqzcomp.js +0 -346
  55. package/dist/htscodecs/fqzcomp.js.map +0 -1
  56. package/dist/htscodecs/iostream.d.ts +0 -16
  57. package/dist/htscodecs/iostream.js +0 -148
  58. package/dist/htscodecs/iostream.js.map +0 -1
  59. package/dist/htscodecs/rans.d.ts +0 -1
  60. package/dist/htscodecs/rans.js +0 -224
  61. package/dist/htscodecs/rans.js.map +0 -1
  62. package/dist/htscodecs/rans4x16.d.ts +0 -1
  63. package/dist/htscodecs/rans4x16.js +0 -445
  64. package/dist/htscodecs/rans4x16.js.map +0 -1
  65. package/dist/htscodecs/tok3.d.ts +0 -1
  66. package/dist/htscodecs/tok3.js +0 -206
  67. package/dist/htscodecs/tok3.js.map +0 -1
  68. package/dist/rans/constants.d.ts +0 -4
  69. package/dist/rans/constants.js +0 -10
  70. package/dist/rans/constants.js.map +0 -1
  71. package/dist/rans/d04.d.ts +0 -1
  72. package/dist/rans/d04.js +0 -100
  73. package/dist/rans/d04.js.map +0 -1
  74. package/dist/rans/d14.d.ts +0 -1
  75. package/dist/rans/d14.js +0 -96
  76. package/dist/rans/d14.js.map +0 -1
  77. package/dist/rans/decoding.d.ts +0 -27
  78. package/dist/rans/decoding.js +0 -119
  79. package/dist/rans/decoding.js.map +0 -1
  80. package/dist/rans/frequencies.d.ts +0 -2
  81. package/dist/rans/frequencies.js +0 -112
  82. package/dist/rans/frequencies.js.map +0 -1
  83. package/dist/rans/index.d.ts +0 -1
  84. package/dist/rans/index.js +0 -198
  85. package/dist/rans/index.js.map +0 -1
  86. package/dist/seek-bzip/bitreader.d.ts +0 -27
  87. package/dist/seek-bzip/bitreader.js +0 -101
  88. package/dist/seek-bzip/bitreader.js.map +0 -1
  89. package/dist/seek-bzip/crc32.d.ts +0 -26
  90. package/dist/seek-bzip/crc32.js +0 -115
  91. package/dist/seek-bzip/crc32.js.map +0 -1
  92. package/dist/seek-bzip/index.d.ts +0 -9
  93. package/dist/seek-bzip/index.js +0 -585
  94. package/dist/seek-bzip/index.js.map +0 -1
  95. package/dist/seek-bzip/stream.d.ts +0 -8
  96. package/dist/seek-bzip/stream.js +0 -37
  97. package/dist/seek-bzip/stream.js.map +0 -1
  98. package/dist/seek-bzip/toHex.d.ts +0 -1
  99. package/dist/seek-bzip/toHex.js +0 -36
  100. package/dist/seek-bzip/toHex.js.map +0 -1
  101. package/esm/htscodecs/arith_gen.d.ts +0 -16
  102. package/esm/htscodecs/arith_gen.js +0 -317
  103. package/esm/htscodecs/arith_gen.js.map +0 -1
  104. package/esm/htscodecs/arith_sh.d.ts +0 -9
  105. package/esm/htscodecs/arith_sh.js +0 -131
  106. package/esm/htscodecs/arith_sh.js.map +0 -1
  107. package/esm/htscodecs/byte_model.d.ts +0 -6
  108. package/esm/htscodecs/byte_model.js +0 -118
  109. package/esm/htscodecs/byte_model.js.map +0 -1
  110. package/esm/htscodecs/fqzcomp.d.ts +0 -1
  111. package/esm/htscodecs/fqzcomp.js +0 -340
  112. package/esm/htscodecs/fqzcomp.js.map +0 -1
  113. package/esm/htscodecs/iostream.d.ts +0 -16
  114. package/esm/htscodecs/iostream.js +0 -145
  115. package/esm/htscodecs/iostream.js.map +0 -1
  116. package/esm/htscodecs/rans.d.ts +0 -1
  117. package/esm/htscodecs/rans.js +0 -218
  118. package/esm/htscodecs/rans.js.map +0 -1
  119. package/esm/htscodecs/rans4x16.d.ts +0 -1
  120. package/esm/htscodecs/rans4x16.js +0 -439
  121. package/esm/htscodecs/rans4x16.js.map +0 -1
  122. package/esm/htscodecs/tok3.d.ts +0 -1
  123. package/esm/htscodecs/tok3.js +0 -167
  124. package/esm/htscodecs/tok3.js.map +0 -1
  125. package/esm/rans/constants.d.ts +0 -4
  126. package/esm/rans/constants.js +0 -5
  127. package/esm/rans/constants.js.map +0 -1
  128. package/esm/rans/d04.d.ts +0 -1
  129. package/esm/rans/d04.js +0 -94
  130. package/esm/rans/d04.js.map +0 -1
  131. package/esm/rans/d14.d.ts +0 -1
  132. package/esm/rans/d14.js +0 -93
  133. package/esm/rans/d14.js.map +0 -1
  134. package/esm/rans/decoding.d.ts +0 -27
  135. package/esm/rans/decoding.js +0 -117
  136. package/esm/rans/decoding.js.map +0 -1
  137. package/esm/rans/frequencies.d.ts +0 -2
  138. package/esm/rans/frequencies.js +0 -105
  139. package/esm/rans/frequencies.js.map +0 -1
  140. package/esm/rans/index.d.ts +0 -1
  141. package/esm/rans/index.js +0 -192
  142. package/esm/rans/index.js.map +0 -1
  143. package/esm/seek-bzip/bitreader.d.ts +0 -27
  144. package/esm/seek-bzip/bitreader.js +0 -98
  145. package/esm/seek-bzip/bitreader.js.map +0 -1
  146. package/esm/seek-bzip/crc32.d.ts +0 -26
  147. package/esm/seek-bzip/crc32.js +0 -112
  148. package/esm/seek-bzip/crc32.js.map +0 -1
  149. package/esm/seek-bzip/index.d.ts +0 -9
  150. package/esm/seek-bzip/index.js +0 -579
  151. package/esm/seek-bzip/index.js.map +0 -1
  152. package/esm/seek-bzip/stream.d.ts +0 -8
  153. package/esm/seek-bzip/stream.js +0 -34
  154. package/esm/seek-bzip/stream.js.map +0 -1
  155. package/esm/seek-bzip/toHex.d.ts +0 -1
  156. package/esm/seek-bzip/toHex.js +0 -33
  157. package/esm/seek-bzip/toHex.js.map +0 -1
  158. package/src/htscodecs/arith_gen.ts +0 -371
  159. package/src/htscodecs/arith_sh.ts +0 -146
  160. package/src/htscodecs/byte_model.ts +0 -136
  161. package/src/htscodecs/fqzcomp.ts +0 -394
  162. package/src/htscodecs/iostream.ts +0 -159
  163. package/src/htscodecs/rans.ts +0 -250
  164. package/src/htscodecs/rans4x16.ts +0 -521
  165. package/src/htscodecs/tok3.ts +0 -197
  166. package/src/rans/README.md +0 -1
  167. package/src/rans/constants.ts +0 -5
  168. package/src/rans/d04.ts +0 -112
  169. package/src/rans/d14.ts +0 -106
  170. package/src/rans/decoding.ts +0 -138
  171. package/src/rans/frequencies.ts +0 -115
  172. package/src/rans/index.ts +0 -245
  173. package/src/seek-bzip/README.md +0 -6
  174. package/src/seek-bzip/bitreader.ts +0 -113
  175. package/src/seek-bzip/crc32.ts +0 -121
  176. package/src/seek-bzip/index.ts +0 -615
  177. package/src/seek-bzip/stream.ts +0 -33
  178. package/src/seek-bzip/toHex.ts +0 -33
@@ -1,579 +0,0 @@
1
- // @ts-nocheck
2
- /*
3
- seek-bzip - a pure-javascript module for seeking within bzip2 data
4
-
5
- Copyright (C) 2013 C. Scott Ananian
6
- Copyright (C) 2012 Eli Skeggs
7
- Copyright (C) 2011 Kevin Kwok
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining
10
- a copy of this software and associated documentation files (the
11
- "Software"), to deal in the Software without restriction, including
12
- without limitation the rights to use, copy, modify, merge, publish,
13
- distribute, sublicense, and/or sell copies of the Software, and to
14
- permit persons to whom the Software is furnished to do so, subject to
15
- the following conditions:
16
-
17
- The above copyright notice and this permission notice shall be
18
- included in all copies or substantial portions of the Software.
19
-
20
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
21
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
23
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
24
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
25
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
26
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27
-
28
- Adapted from node-bzip, copyright 2012 Eli Skeggs.
29
- Adapted from bzip2.js, copyright 2011 Kevin Kwok (antimatter15@gmail.com).
30
-
31
- Based on micro-bunzip by Rob Landley (rob@landley.net).
32
-
33
- Based on bzip2 decompression code by Julian R Seward (jseward@acm.org),
34
- which also acknowledges contributions by Mike Burrows, David Wheeler,
35
- Peter Fenwick, Alistair Moffat, Radford Neal, Ian H. Witten,
36
- Robert Sedgewick, and Jon L. Bentley.
37
- */
38
- import BitReader from "./bitreader.js";
39
- import CRC32 from "./crc32.js";
40
- import Stream from "./stream.js";
41
- const MAX_HUFCODE_BITS = 20;
42
- const MAX_SYMBOLS = 258;
43
- const SYMBOL_RUNA = 0;
44
- const SYMBOL_RUNB = 1;
45
- const MIN_GROUPS = 2;
46
- const MAX_GROUPS = 6;
47
- const GROUP_SIZE = 50;
48
- const WHOLEPI = '314159265359';
49
- const SQRTPI = '177245385090';
50
- const mtf = function (array, index) {
51
- const src = array[index];
52
- for (let i = index; i > 0; i--) {
53
- array[i] = array[i - 1];
54
- }
55
- array[0] = src;
56
- return src;
57
- };
58
- const Err = {
59
- OK: 0,
60
- LAST_BLOCK: -1,
61
- NOT_BZIP_DATA: -2,
62
- UNEXPECTED_INPUT_EOF: -3,
63
- UNEXPECTED_OUTPUT_EOF: -4,
64
- DATA_ERROR: -5,
65
- OUT_OF_MEMORY: -6,
66
- OBSOLETE_INPUT: -7,
67
- END_OF_BLOCK: -8,
68
- };
69
- const ErrorMessages = {};
70
- ErrorMessages[Err.LAST_BLOCK] = 'Bad file checksum';
71
- ErrorMessages[Err.NOT_BZIP_DATA] = 'Not bzip data';
72
- ErrorMessages[Err.UNEXPECTED_INPUT_EOF] = 'Unexpected input EOF';
73
- ErrorMessages[Err.UNEXPECTED_OUTPUT_EOF] = 'Unexpected output EOF';
74
- ErrorMessages[Err.DATA_ERROR] = 'Data error';
75
- ErrorMessages[Err.OUT_OF_MEMORY] = 'Out of memory';
76
- ErrorMessages[Err.OBSOLETE_INPUT] =
77
- 'Obsolete (pre 0.9.5) bzip format not supported.';
78
- const _throw = function (status, optDetail) {
79
- let msg = ErrorMessages[status] || 'unknown error';
80
- if (optDetail) {
81
- msg += ': ' + optDetail;
82
- }
83
- const e = new TypeError(msg);
84
- e.errorCode = status;
85
- throw e;
86
- };
87
- class Bunzip {
88
- constructor(inputStream, outputStream) {
89
- this.writePos = this.writeCurrent = this.writeCount = 0;
90
- this._start_bunzip(inputStream, outputStream);
91
- }
92
- _init_block() {
93
- const moreBlocks = this._get_next_block();
94
- if (!moreBlocks) {
95
- this.writeCount = -1;
96
- return false; /* no more blocks */
97
- }
98
- this.blockCRC = new CRC32();
99
- return true;
100
- }
101
- /* XXX micro-bunzip uses (inputStream, inputBuffer, len) as arguments */
102
- _start_bunzip(inputStream, outputStream) {
103
- /* Ensure that file starts with "BZh['1'-'9']." */
104
- const buf = new Uint8Array(4);
105
- if (inputStream.read(buf, 0, 4) !== 4 ||
106
- String.fromCharCode(buf[0], buf[1], buf[2]) !== 'BZh') {
107
- _throw(Err.NOT_BZIP_DATA, 'bad magic');
108
- }
109
- const level = buf[3] - 0x30;
110
- if (level < 1 || level > 9) {
111
- _throw(Err.NOT_BZIP_DATA, 'level out of range');
112
- }
113
- this.reader = new BitReader(inputStream);
114
- /* Fourth byte (ascii '1'-'9'), indicates block size in units of 100k of
115
- uncompressed data. Allocate intermediate buffer for block. */
116
- this.dbufSize = 100000 * level;
117
- this.nextoutput = 0;
118
- this.outputStream = outputStream;
119
- this.streamCRC = 0;
120
- }
121
- _get_next_block() {
122
- let i, j, k;
123
- const reader = this.reader;
124
- // this is get_next_block() function from micro-bunzip:
125
- /* Read in header signature and CRC, then validate signature.
126
- (last block signature means CRC is for whole file, return now) */
127
- const h = reader.pi();
128
- if (h === SQRTPI) {
129
- // last block
130
- return false; /* no more blocks */
131
- }
132
- if (h !== WHOLEPI) {
133
- _throw(Err.NOT_BZIP_DATA);
134
- }
135
- this.targetBlockCRC = reader.read(32) >>> 0; // (convert to unsigned)
136
- this.streamCRC =
137
- (this.targetBlockCRC ^
138
- ((this.streamCRC << 1) | (this.streamCRC >>> 31))) >>>
139
- 0;
140
- /* We can add support for blockRandomised if anybody complains. There was
141
- some code for this in busybox 1.0.0-pre3, but nobody ever noticed that
142
- it didn't actually work. */
143
- if (reader.read(1)) {
144
- _throw(Err.OBSOLETE_INPUT);
145
- }
146
- const origPointer = reader.read(24);
147
- if (origPointer > this.dbufSize) {
148
- _throw(Err.DATA_ERROR, 'initial position out of bounds');
149
- }
150
- /* mapping table: if some byte values are never used (encoding things
151
- like ascii text), the compression code removes the gaps to have fewer
152
- symbols to deal with, and writes a sparse bitfield indicating which
153
- values were present. We make a translation table to convert the symbols
154
- back to the corresponding bytes. */
155
- let t = reader.read(16);
156
- let symToByte = new Uint8Array(256), symTotal = 0;
157
- for (i = 0; i < 16; i++) {
158
- if (t & (1 << (0xf - i))) {
159
- const o = i * 16;
160
- k = reader.read(16);
161
- for (j = 0; j < 16; j++) {
162
- if (k & (1 << (0xf - j))) {
163
- symToByte[symTotal++] = o + j;
164
- }
165
- }
166
- }
167
- }
168
- /* How many different huffman coding groups does this block use? */
169
- const groupCount = reader.read(3);
170
- if (groupCount < MIN_GROUPS || groupCount > MAX_GROUPS) {
171
- _throw(Err.DATA_ERROR);
172
- }
173
- /* nSelectors: Every GROUP_SIZE many symbols we select a new huffman coding
174
- group. Read in the group selector list, which is stored as MTF encoded
175
- bit runs. (MTF=Move To Front, as each value is used it's moved to the
176
- start of the list.) */
177
- const nSelectors = reader.read(15);
178
- if (nSelectors === 0) {
179
- _throw(Err.DATA_ERROR);
180
- }
181
- const mtfSymbol = new Uint8Array(256);
182
- for (i = 0; i < groupCount; i++) {
183
- mtfSymbol[i] = i;
184
- }
185
- const selectors = new Uint8Array(nSelectors); // was 32768...
186
- for (i = 0; i < nSelectors; i++) {
187
- /* Get next value */
188
- for (j = 0; reader.read(1); j++) {
189
- if (j >= groupCount) {
190
- _throw(Err.DATA_ERROR);
191
- }
192
- }
193
- /* Decode MTF to get the next selector */
194
- selectors[i] = mtf(mtfSymbol, j);
195
- }
196
- /* Read the huffman coding tables for each group, which code for symTotal
197
- literal symbols, plus two run symbols (RUNA, RUNB) */
198
- let symCount = symTotal + 2;
199
- let groups = [], hufGroup;
200
- for (j = 0; j < groupCount; j++) {
201
- const length = new Uint8Array(symCount), temp = new Uint16Array(MAX_HUFCODE_BITS + 1);
202
- /* Read huffman code lengths for each symbol. They're stored in
203
- a way similar to mtf; record a starting value for the first symbol,
204
- and an offset from the previous value for everys symbol after that. */
205
- t = reader.read(5); // lengths
206
- for (i = 0; i < symCount; i++) {
207
- for (;;) {
208
- if (t < 1 || t > MAX_HUFCODE_BITS) {
209
- _throw(Err.DATA_ERROR);
210
- }
211
- /* If first bit is 0, stop. Else second bit indicates whether
212
- to increment or decrement the value. */
213
- if (!reader.read(1)) {
214
- break;
215
- }
216
- if (!reader.read(1)) {
217
- t++;
218
- }
219
- else {
220
- t--;
221
- }
222
- }
223
- length[i] = t;
224
- }
225
- /* Find largest and smallest lengths in this group */
226
- var minLen, maxLen;
227
- minLen = maxLen = length[0];
228
- for (i = 1; i < symCount; i++) {
229
- if (length[i] > maxLen) {
230
- maxLen = length[i];
231
- }
232
- else if (length[i] < minLen) {
233
- minLen = length[i];
234
- }
235
- }
236
- /* Calculate permute[], base[], and limit[] tables from length[].
237
- *
238
- * permute[] is the lookup table for converting huffman coded symbols
239
- * into decoded symbols. base[] is the amount to subtract from the
240
- * value of a huffman symbol of a given length when using permute[].
241
- *
242
- * limit[] indicates the largest numerical value a symbol with a given
243
- * number of bits can have. This is how the huffman codes can vary in
244
- * length: each code with a value>limit[length] needs another bit.
245
- */
246
- hufGroup = {};
247
- groups.push(hufGroup);
248
- hufGroup.permute = new Uint16Array(MAX_SYMBOLS);
249
- hufGroup.limit = new Uint32Array(MAX_HUFCODE_BITS + 2);
250
- hufGroup.base = new Uint32Array(MAX_HUFCODE_BITS + 1);
251
- hufGroup.minLen = minLen;
252
- hufGroup.maxLen = maxLen;
253
- /* Calculate permute[]. Concurrently, initialize temp[] and limit[]. */
254
- let pp = 0;
255
- for (i = minLen; i <= maxLen; i++) {
256
- temp[i] = hufGroup.limit[i] = 0;
257
- for (t = 0; t < symCount; t++) {
258
- if (length[t] === i) {
259
- hufGroup.permute[pp++] = t;
260
- }
261
- }
262
- }
263
- /* Count symbols coded for at each bit length */
264
- for (i = 0; i < symCount; i++) {
265
- temp[length[i]]++;
266
- }
267
- /* Calculate limit[] (the largest symbol-coding value at each bit
268
- * length, which is (previous limit<<1)+symbols at this level), and
269
- * base[] (number of symbols to ignore at each bit length, which is
270
- * limit minus the cumulative count of symbols coded for already). */
271
- pp = t = 0;
272
- for (i = minLen; i < maxLen; i++) {
273
- pp += temp[i];
274
- /* We read the largest possible symbol size and then unget bits
275
- after determining how many we need, and those extra bits could
276
- be set to anything. (They're noise from future symbols.) At
277
- each level we're really only interested in the first few bits,
278
- so here we set all the trailing to-be-ignored bits to 1 so they
279
- don't affect the value>limit[length] comparison. */
280
- hufGroup.limit[i] = pp - 1;
281
- pp <<= 1;
282
- t += temp[i];
283
- hufGroup.base[i + 1] = pp - t;
284
- }
285
- hufGroup.limit[maxLen + 1] =
286
- Number.MAX_VALUE; /* Sentinel value for reading next sym. */
287
- hufGroup.limit[maxLen] = pp + temp[maxLen] - 1;
288
- hufGroup.base[minLen] = 0;
289
- }
290
- /* We've finished reading and digesting the block header. Now read this
291
- block's huffman coded symbols from the file and undo the huffman coding
292
- and run length encoding, saving the result into dbuf[dbufCount++]=uc */
293
- /* Initialize symbol occurrence counters and symbol Move To Front table */
294
- const byteCount = new Uint32Array(256);
295
- for (i = 0; i < 256; i++) {
296
- mtfSymbol[i] = i;
297
- }
298
- /* Loop through compressed symbols. */
299
- let runPos = 0, dbufCount = 0, selector = 0, uc;
300
- const dbuf = (this.dbuf = new Uint32Array(this.dbufSize));
301
- symCount = 0;
302
- for (;;) {
303
- /* Determine which huffman coding group to use. */
304
- if (!symCount--) {
305
- symCount = GROUP_SIZE - 1;
306
- if (selector >= nSelectors) {
307
- _throw(Err.DATA_ERROR);
308
- }
309
- hufGroup = groups[selectors[selector++]];
310
- }
311
- /* Read next huffman-coded symbol. */
312
- i = hufGroup.minLen;
313
- j = reader.read(i);
314
- for (;; i++) {
315
- if (i > hufGroup.maxLen) {
316
- _throw(Err.DATA_ERROR);
317
- }
318
- if (j <= hufGroup.limit[i]) {
319
- break;
320
- }
321
- j = (j << 1) | reader.read(1);
322
- }
323
- /* Huffman decode value to get nextSym (with bounds checking) */
324
- j -= hufGroup.base[i];
325
- if (j < 0 || j >= MAX_SYMBOLS) {
326
- _throw(Err.DATA_ERROR);
327
- }
328
- const nextSym = hufGroup.permute[j];
329
- /* We have now decoded the symbol, which indicates either a new literal
330
- byte, or a repeated run of the most recent literal byte. First,
331
- check if nextSym indicates a repeated run, and if so loop collecting
332
- how many times to repeat the last literal. */
333
- if (nextSym === SYMBOL_RUNA || nextSym === SYMBOL_RUNB) {
334
- /* If this is the start of a new run, zero out counter */
335
- if (!runPos) {
336
- runPos = 1;
337
- t = 0;
338
- }
339
- /* Neat trick that saves 1 symbol: instead of or-ing 0 or 1 at
340
- each bit position, add 1 or 2 instead. For example,
341
- 1011 is 1<<0 + 1<<1 + 2<<2. 1010 is 2<<0 + 2<<1 + 1<<2.
342
- You can make any bit pattern that way using 1 less symbol than
343
- the basic or 0/1 method (except all bits 0, which would use no
344
- symbols, but a run of length 0 doesn't mean anything in this
345
- context). Thus space is saved. */
346
- t += nextSym === SYMBOL_RUNA ? runPos : 2 * runPos;
347
- runPos <<= 1;
348
- continue;
349
- }
350
- /* When we hit the first non-run symbol after a run, we now know
351
- how many times to repeat the last literal, so append that many
352
- copies to our buffer of decoded symbols (dbuf) now. (The last
353
- literal used is the one at the head of the mtfSymbol array.) */
354
- if (runPos) {
355
- runPos = 0;
356
- if (dbufCount + t > this.dbufSize) {
357
- _throw(Err.DATA_ERROR);
358
- }
359
- uc = symToByte[mtfSymbol[0]];
360
- byteCount[uc] += t;
361
- while (t--) {
362
- dbuf[dbufCount++] = uc;
363
- }
364
- }
365
- /* Is this the terminating symbol? */
366
- if (nextSym > symTotal) {
367
- break;
368
- }
369
- /* At this point, nextSym indicates a new literal character. Subtract
370
- one to get the position in the MTF array at which this literal is
371
- currently to be found. (Note that the result can't be -1 or 0,
372
- because 0 and 1 are RUNA and RUNB. But another instance of the
373
- first symbol in the mtf array, position 0, would have been handled
374
- as part of a run above. Therefore 1 unused mtf position minus
375
- 2 non-literal nextSym values equals -1.) */
376
- if (dbufCount >= this.dbufSize) {
377
- _throw(Err.DATA_ERROR);
378
- }
379
- i = nextSym - 1;
380
- uc = mtf(mtfSymbol, i);
381
- uc = symToByte[uc];
382
- /* We have our literal byte. Save it into dbuf. */
383
- byteCount[uc]++;
384
- dbuf[dbufCount++] = uc;
385
- }
386
- /* At this point, we've read all the huffman-coded symbols (and repeated
387
- runs) for this block from the input stream, and decoded them into the
388
- intermediate buffer. There are dbufCount many decoded bytes in dbuf[].
389
- Now undo the Burrows-Wheeler transform on dbuf.
390
- See http://dogma.net/markn/articles/bwt/bwt.htm
391
- */
392
- if (origPointer < 0 || origPointer >= dbufCount) {
393
- _throw(Err.DATA_ERROR);
394
- }
395
- /* Turn byteCount into cumulative occurrence counts of 0 to n-1. */
396
- j = 0;
397
- for (i = 0; i < 256; i++) {
398
- k = j + byteCount[i];
399
- byteCount[i] = j;
400
- j = k;
401
- }
402
- /* Figure out what order dbuf would be in if we sorted it. */
403
- for (i = 0; i < dbufCount; i++) {
404
- uc = dbuf[i] & 0xff;
405
- dbuf[byteCount[uc]] |= i << 8;
406
- byteCount[uc]++;
407
- }
408
- /* Decode first byte by hand to initialize "previous" byte. Note that it
409
- doesn't get output, and if the first three characters are identical
410
- it doesn't qualify as a run (hence writeRunCountdown=5). */
411
- let pos = 0, current = 0, run = 0;
412
- if (dbufCount) {
413
- pos = dbuf[origPointer];
414
- current = pos & 0xff;
415
- pos >>= 8;
416
- run = -1;
417
- }
418
- this.writePos = pos;
419
- this.writeCurrent = current;
420
- this.writeCount = dbufCount;
421
- this.writeRun = run;
422
- return true; /* more blocks to come */
423
- }
424
- /* Undo burrows-wheeler transform on intermediate buffer to produce output.
425
- If start_bunzip was initialized with out_fd=-1, then up to len bytes of
426
- data are written to outbuf. Return value is number of bytes written or
427
- error (all errors are negative numbers). If out_fd!=-1, outbuf and len
428
- are ignored, data is written to out_fd and return is RETVAL_OK or error.
429
- */
430
- _read_bunzip(outputBuffer, len) {
431
- let copies, previous, outbyte;
432
- /* james@jamestaylor.org: writeCount goes to -1 when the buffer is fully
433
- decoded, which results in this returning RETVAL_LAST_BLOCK, also
434
- equal to -1... Confusing, I'm returning 0 here to indicate no
435
- bytes written into the buffer */
436
- if (this.writeCount < 0) {
437
- return 0;
438
- }
439
- const gotcount = 0;
440
- let dbuf = this.dbuf, pos = this.writePos, current = this.writeCurrent;
441
- let dbufCount = this.writeCount, outputsize = this.outputsize;
442
- let run = this.writeRun;
443
- while (dbufCount) {
444
- dbufCount--;
445
- previous = current;
446
- pos = dbuf[pos];
447
- current = pos & 0xff;
448
- pos >>= 8;
449
- if (run++ === 3) {
450
- copies = current;
451
- outbyte = previous;
452
- current = -1;
453
- }
454
- else {
455
- copies = 1;
456
- outbyte = current;
457
- }
458
- this.blockCRC.updateCRCRun(outbyte, copies);
459
- while (copies--) {
460
- this.outputStream.writeByte(outbyte);
461
- this.nextoutput++;
462
- }
463
- if (current != previous) {
464
- run = 0;
465
- }
466
- }
467
- this.writeCount = dbufCount;
468
- // check CRC
469
- if (this.blockCRC.getCRC() !== this.targetBlockCRC) {
470
- _throw(Err.DATA_ERROR, 'Bad block CRC ' +
471
- '(got ' +
472
- this.blockCRC.getCRC().toString(16) +
473
- ' expected ' +
474
- this.targetBlockCRC.toString(16) +
475
- ')');
476
- }
477
- return this.nextoutput;
478
- }
479
- }
480
- const coerceInputStream = function (input) {
481
- if ('readByte' in input) {
482
- return input;
483
- }
484
- const inputStream = new Stream();
485
- inputStream.pos = 0;
486
- inputStream.readByte = function () {
487
- return input[this.pos++];
488
- };
489
- inputStream.seek = function (pos) {
490
- this.pos = pos;
491
- };
492
- inputStream.eof = function () {
493
- return this.pos >= input.length;
494
- };
495
- return inputStream;
496
- };
497
- const coerceOutputStream = function (output) {
498
- const outputStream = new Stream();
499
- let resizeOk = true;
500
- if (output) {
501
- if (typeof output === 'number') {
502
- outputStream.buffer = new Uint8Array(output);
503
- resizeOk = false;
504
- }
505
- else if ('writeByte' in output) {
506
- return output;
507
- }
508
- else {
509
- outputStream.buffer = output;
510
- resizeOk = false;
511
- }
512
- }
513
- else {
514
- outputStream.buffer = new Uint8Array(16384);
515
- }
516
- outputStream.pos = 0;
517
- outputStream.writeByte = function (_byte) {
518
- if (resizeOk && this.pos >= this.buffer.length) {
519
- const newBuffer = new Uint8Array(this.buffer.length * 2);
520
- newBuffer.set(this.buffer);
521
- this.buffer = newBuffer;
522
- }
523
- this.buffer[this.pos++] = _byte;
524
- };
525
- outputStream.getBuffer = function () {
526
- // trim buffer
527
- if (this.pos !== this.buffer.length) {
528
- if (!resizeOk) {
529
- throw new TypeError('outputsize does not match decoded input');
530
- }
531
- const newBuffer = new Uint8Array(this.pos);
532
- newBuffer.set(this.buffer.slice(0, this.pos));
533
- this.buffer = newBuffer;
534
- }
535
- return this.buffer;
536
- };
537
- outputStream._coerced = true;
538
- return outputStream;
539
- };
540
- /* Static helper functions */
541
- // 'input' can be a stream or a buffer
542
- // 'output' can be a stream or a buffer or a number (buffer size)
543
- export function decode(input, output, multistream) {
544
- // make a stream from a buffer, if necessary
545
- const inputStream = coerceInputStream(input);
546
- const outputStream = coerceOutputStream(output);
547
- const bz = new Bunzip(inputStream, outputStream);
548
- while (true) {
549
- if ('eof' in inputStream && inputStream.eof()) {
550
- break;
551
- }
552
- if (bz._init_block()) {
553
- bz._read_bunzip();
554
- }
555
- else {
556
- const targetStreamCRC = bz.reader.read(32) >>> 0; // (convert to unsigned)
557
- if (targetStreamCRC !== bz.streamCRC) {
558
- _throw(Err.DATA_ERROR, 'Bad stream CRC ' +
559
- '(got ' +
560
- bz.streamCRC.toString(16) +
561
- ' expected ' +
562
- targetStreamCRC.toString(16) +
563
- ')');
564
- }
565
- if (multistream && 'eof' in inputStream && !inputStream.eof()) {
566
- // note that start_bunzip will also resync the bit reader to next byte
567
- bz._start_bunzip(inputStream, outputStream);
568
- }
569
- else {
570
- break;
571
- }
572
- }
573
- }
574
- if ('getBuffer' in outputStream) {
575
- return outputStream.getBuffer();
576
- }
577
- }
578
- export default Bunzip;
579
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/seek-bzip/index.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- export default class Stream {
2
- readByte(): void;
3
- read(buffer: any, bufOffset: any, length: any): number;
4
- writeByte(_byte: any): void;
5
- seek(new_pos: any): void;
6
- write(buffer: any, bufOffset: any, length: any): any;
7
- flush(): void;
8
- }
@@ -1,34 +0,0 @@
1
- // @ts-nocheck
2
- export default class Stream {
3
- readByte() {
4
- throw new Error('abstract method readByte() not implemented');
5
- }
6
- read(buffer, bufOffset, length) {
7
- let bytesRead = 0;
8
- while (bytesRead < length) {
9
- const c = this.readByte();
10
- if (c < 0) {
11
- // EOF
12
- return bytesRead === 0 ? -1 : bytesRead;
13
- }
14
- buffer[bufOffset++] = c;
15
- bytesRead++;
16
- }
17
- return bytesRead;
18
- }
19
- writeByte(_byte) {
20
- throw new Error('abstract method readByte() not implemented');
21
- }
22
- seek(new_pos) {
23
- throw new Error('abstract method seek() not implemented');
24
- }
25
- write(buffer, bufOffset, length) {
26
- let i;
27
- for (i = 0; i < length; i++) {
28
- this.writeByte(buffer[bufOffset++]);
29
- }
30
- return length;
31
- }
32
- flush() { }
33
- }
34
- //# sourceMappingURL=stream.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/seek-bzip/stream.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,MAAM,CAAC,OAAO,OAAO,MAAM;IACzB,QAAQ;QACN,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;IAC/D,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM;QAC5B,IAAI,SAAS,GAAG,CAAC,CAAA;QACjB,OAAO,SAAS,GAAG,MAAM,EAAE,CAAC;YAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;YACzB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,MAAM;gBACN,OAAO,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YACzC,CAAC;YACD,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAA;YACvB,SAAS,EAAE,CAAA;QACb,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,SAAS,CAAC,KAAK;QACb,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO;QACV,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;IAC3D,CAAC;IACD,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM;QAC7B,IAAI,CAAC,CAAA;QACL,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;QACrC,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IACD,KAAK,KAAI,CAAC;CACX"}
@@ -1 +0,0 @@
1
- export declare function toHex(buffer: Uint8Array): string;