ooxml-core 1.0.0 → 1.1.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 (230) hide show
  1. package/dist/{PptxHandler-G63S6YZU.mjs → PptxHandler-75LOVF7I.mjs} +2 -2
  2. package/dist/automation/index.cjs +2559 -1169
  3. package/dist/automation/index.mjs +2559 -1169
  4. package/dist/chart/gradient-definition.d.ts +2 -2
  5. package/dist/chart/gradient-definition.d.ts.map +1 -1
  6. package/dist/chart/index.cjs +7 -7
  7. package/dist/chart/index.mjs +7 -7
  8. package/dist/{chunk-BICQYRPW.mjs → chunk-75LA7H3F.mjs} +1339 -1435
  9. package/dist/{chunk-CKJSWE7N.mjs → chunk-LA7D6ZYQ.mjs} +244 -115
  10. package/dist/{chunk-ROM5MZ7O.mjs → chunk-OMGH6IKY.mjs} +3 -3
  11. package/dist/{chunk-RWXFQJVF.mjs → chunk-Q27H4HFS.mjs} +1 -1
  12. package/dist/{chunk-DDG5HTGX.mjs → chunk-RFX7AJDZ.mjs} +1 -1
  13. package/dist/crypto/index.cjs +1406 -184
  14. package/dist/crypto/index.mjs +1406 -184
  15. package/dist/diagram/dom.d.ts +1 -14
  16. package/dist/diagram/dom.d.ts.map +1 -1
  17. package/dist/diagram/index.cjs +15 -15
  18. package/dist/diagram/index.d.ts +12 -12
  19. package/dist/diagram/index.d.ts.map +1 -1
  20. package/dist/diagram/index.mjs +15 -15
  21. package/dist/diagram/types.d.ts +12 -148
  22. package/dist/diagram/types.d.ts.map +1 -1
  23. package/dist/digest/algorithm-names.d.ts +2 -2
  24. package/dist/digest/algorithm-names.d.ts.map +1 -1
  25. package/dist/digest/bit-ops.d.ts +30 -0
  26. package/dist/digest/bit-ops.d.ts.map +1 -0
  27. package/dist/digest/digest.d.ts +2 -2
  28. package/dist/digest/digest.d.ts.map +1 -1
  29. package/dist/digest/index.cjs +1319 -90
  30. package/dist/digest/index.d.ts +7 -1
  31. package/dist/digest/index.d.ts.map +1 -1
  32. package/dist/digest/index.mjs +1313 -91
  33. package/dist/digest/md2.d.ts +22 -0
  34. package/dist/digest/md2.d.ts.map +1 -0
  35. package/dist/digest/md4.d.ts +3 -0
  36. package/dist/digest/md4.d.ts.map +1 -0
  37. package/dist/digest/md5.d.ts +3 -0
  38. package/dist/digest/md5.d.ts.map +1 -0
  39. package/dist/digest/password-hash.d.ts +7 -0
  40. package/dist/digest/password-hash.d.ts.map +1 -1
  41. package/dist/digest/ripemd-functions.d.ts +18 -0
  42. package/dist/digest/ripemd-functions.d.ts.map +1 -0
  43. package/dist/digest/ripemd128.d.ts +3 -0
  44. package/dist/digest/ripemd128.d.ts.map +1 -0
  45. package/dist/digest/ripemd160.d.ts +3 -0
  46. package/dist/digest/ripemd160.d.ts.map +1 -0
  47. package/dist/digest/whirlpool-sbox.d.ts +15 -0
  48. package/dist/digest/whirlpool-sbox.d.ts.map +1 -0
  49. package/dist/digest/whirlpool-table.d.ts +12 -0
  50. package/dist/digest/whirlpool-table.d.ts.map +1 -0
  51. package/dist/digest/whirlpool.d.ts +3 -0
  52. package/dist/digest/whirlpool.d.ts.map +1 -0
  53. package/dist/docx/block-parser.d.ts.map +1 -1
  54. package/dist/docx/diagram-theme.d.ts +3 -3
  55. package/dist/docx/diagram-theme.d.ts.map +1 -1
  56. package/dist/docx/embedded.cjs +470 -276
  57. package/dist/docx/embedded.mjs +470 -276
  58. package/dist/docx/field-flags.d.ts +8 -0
  59. package/dist/docx/field-flags.d.ts.map +1 -0
  60. package/dist/docx/field-lock.d.ts +6 -0
  61. package/dist/docx/field-lock.d.ts.map +1 -0
  62. package/dist/docx/field-runs.d.ts +4 -1
  63. package/dist/docx/field-runs.d.ts.map +1 -1
  64. package/dist/docx/index.cjs +1029 -850
  65. package/dist/docx/index.d.ts +2 -0
  66. package/dist/docx/index.d.ts.map +1 -1
  67. package/dist/docx/index.mjs +1027 -850
  68. package/dist/docx/layout/adapter.d.ts.map +1 -1
  69. package/dist/docx/layout/index.cjs +61 -47
  70. package/dist/docx/layout/index.mjs +61 -47
  71. package/dist/docx/layout/page-fields.d.ts.map +1 -1
  72. package/dist/docx/load/index.cjs +1883 -467
  73. package/dist/docx/load/index.mjs +1883 -467
  74. package/dist/docx/model-run.d.ts +5 -0
  75. package/dist/docx/model-run.d.ts.map +1 -1
  76. package/dist/docx/numbering-model.d.ts +1 -1
  77. package/dist/docx/numbering-model.d.ts.map +1 -1
  78. package/dist/docx/numbering-package.d.ts +4 -4
  79. package/dist/docx/numbering-package.d.ts.map +1 -1
  80. package/dist/docx/numbering-start-edit.d.ts +8 -0
  81. package/dist/docx/numbering-start-edit.d.ts.map +1 -0
  82. package/dist/docx/numbering-start-patch.d.ts +13 -0
  83. package/dist/docx/numbering-start-patch.d.ts.map +1 -0
  84. package/dist/docx/theme-color.d.ts.map +1 -1
  85. package/dist/docx/theme-model.d.ts +3 -2
  86. package/dist/docx/theme-model.d.ts.map +1 -1
  87. package/dist/docx/theme.d.ts +5 -1
  88. package/dist/docx/theme.d.ts.map +1 -1
  89. package/dist/docx/ui/field-guard.d.ts +2 -0
  90. package/dist/docx/ui/field-guard.d.ts.map +1 -1
  91. package/dist/docx/ui/field-results.d.ts.map +1 -1
  92. package/dist/docx/ui/index.cjs +547 -375
  93. package/dist/docx/ui/index.mjs +547 -376
  94. package/dist/docx/ui/review-commands.d.ts.map +1 -1
  95. package/dist/docx/ui/run-extra-mark.d.ts +1 -1
  96. package/dist/docx/ui/run-extra-mark.d.ts.map +1 -1
  97. package/dist/docx/ui/simple-field-input.d.ts +3 -0
  98. package/dist/docx/ui/simple-field-input.d.ts.map +1 -1
  99. package/dist/docx/ui/track-changes-mode.d.ts.map +1 -1
  100. package/dist/docx/ui/track-paragraph-boundaries.d.ts +5 -0
  101. package/dist/docx/ui/track-paragraph-boundaries.d.ts.map +1 -0
  102. package/dist/docx/write-inline.d.ts.map +1 -1
  103. package/dist/docx/write-run.d.ts.map +1 -1
  104. package/dist/drawingml/dom.d.ts +15 -0
  105. package/dist/drawingml/dom.d.ts.map +1 -0
  106. package/dist/drawingml/drawing-color-brightness.d.ts +6 -0
  107. package/dist/drawingml/drawing-color-brightness.d.ts.map +1 -0
  108. package/dist/drawingml/drawing-color-css.d.ts.map +1 -0
  109. package/dist/{diagram → drawingml}/drawing-color.d.ts +5 -5
  110. package/dist/drawingml/drawing-color.d.ts.map +1 -0
  111. package/dist/{diagram → drawingml}/drawing-fill.d.ts +3 -3
  112. package/dist/drawingml/drawing-fill.d.ts.map +1 -0
  113. package/dist/{diagram → drawingml}/drawing-geometry.d.ts +4 -4
  114. package/dist/drawingml/drawing-geometry.d.ts.map +1 -0
  115. package/dist/drawingml/drawing-shadow.d.ts.map +1 -0
  116. package/dist/{diagram → drawingml}/drawing-text.d.ts +2 -2
  117. package/dist/drawingml/drawing-text.d.ts.map +1 -0
  118. package/dist/{diagram → drawingml}/gradient-geometry.d.ts +2 -2
  119. package/dist/drawingml/gradient-geometry.d.ts.map +1 -0
  120. package/dist/drawingml/gradient-preset-data.d.ts.map +1 -0
  121. package/dist/{diagram → drawingml}/gradient-presets.d.ts +3 -3
  122. package/dist/drawingml/gradient-presets.d.ts.map +1 -0
  123. package/dist/drawingml/index.cjs +1545 -0
  124. package/dist/drawingml/index.d.ts +19 -0
  125. package/dist/drawingml/index.d.ts.map +1 -0
  126. package/dist/drawingml/index.mjs +1497 -0
  127. package/dist/{diagram → drawingml}/ordered-color-transforms.d.ts +2 -2
  128. package/dist/drawingml/ordered-color-transforms.d.ts.map +1 -0
  129. package/dist/drawingml/rect-path-gradient.d.ts.map +1 -0
  130. package/dist/drawingml/theme-color.d.ts +19 -0
  131. package/dist/drawingml/theme-color.d.ts.map +1 -0
  132. package/dist/drawingml/theme-model.d.ts +40 -0
  133. package/dist/drawingml/theme-model.d.ts.map +1 -0
  134. package/dist/drawingml/theme.d.ts +21 -0
  135. package/dist/drawingml/theme.d.ts.map +1 -0
  136. package/dist/drawingml/types.d.ts +152 -0
  137. package/dist/drawingml/types.d.ts.map +1 -0
  138. package/dist/drawingml/write-color.d.ts +4 -0
  139. package/dist/drawingml/write-color.d.ts.map +1 -0
  140. package/dist/{diagram → drawingml}/write-fill.d.ts +2 -2
  141. package/dist/drawingml/write-fill.d.ts.map +1 -0
  142. package/dist/geometry/connector-elbow-geometry.d.ts +14 -0
  143. package/dist/geometry/connector-elbow-geometry.d.ts.map +1 -1
  144. package/dist/geometry/index.cjs +43 -0
  145. package/dist/geometry/index.mjs +42 -1
  146. package/dist/i18n/dictionary.d.ts +13 -0
  147. package/dist/i18n/dictionary.d.ts.map +1 -0
  148. package/dist/i18n/index.cjs +68 -0
  149. package/dist/i18n/index.d.ts +4 -0
  150. package/dist/i18n/index.d.ts.map +1 -0
  151. package/dist/i18n/index.mjs +60 -0
  152. package/dist/i18n/locale.d.ts +17 -0
  153. package/dist/i18n/locale.d.ts.map +1 -0
  154. package/dist/i18n/translator.d.ts +18 -0
  155. package/dist/i18n/translator.d.ts.map +1 -0
  156. package/dist/index.cjs +3712 -2178
  157. package/dist/index.d.ts +2 -0
  158. package/dist/index.d.ts.map +1 -1
  159. package/dist/index.mjs +3711 -2179
  160. package/dist/pptx/automation/index.cjs +2852 -1568
  161. package/dist/pptx/automation/index.d.ts +3 -3
  162. package/dist/pptx/automation/index.mjs +5 -5
  163. package/dist/pptx/chunks/{index-C4mfzVoY.d.ts → index-BHqL5KXH.d.ts} +2 -2
  164. package/dist/pptx/chunks/{index-C4mfzVoY.d.ts.map → index-BHqL5KXH.d.ts.map} +1 -1
  165. package/dist/pptx/chunks/{index-lk7dyOPS.d.ts → index-BYkdcS8J.d.ts} +12 -16
  166. package/dist/pptx/chunks/index-BYkdcS8J.d.ts.map +1 -0
  167. package/dist/pptx/chunks/smart-art-CO2jmJFf.d.ts.map +1 -1
  168. package/dist/pptx/chunks/{text-operations-CDLx4hD5.d.ts → text-operations-DEJ7alZR.d.ts} +2 -2
  169. package/dist/pptx/chunks/text-operations-DEJ7alZR.d.ts.map +1 -0
  170. package/dist/pptx/cli/index.cjs +2680 -1396
  171. package/dist/pptx/cli/index.d.ts +1 -1
  172. package/dist/pptx/cli/index.mjs +4 -4
  173. package/dist/pptx/converter/index.d.ts +1 -1
  174. package/dist/pptx/converter/index.mjs +2 -2
  175. package/dist/pptx/index.cjs +1771 -1756
  176. package/dist/pptx/index.d.ts +3 -3
  177. package/dist/pptx/index.mjs +5 -5
  178. package/dist/teams/index.cjs +144 -74
  179. package/dist/teams/index.mjs +144 -74
  180. package/dist/visio/ui/index.cjs +14 -3
  181. package/dist/visio/ui/index.mjs +14 -3
  182. package/dist/visio/ui/shape-rotation.d.ts +1 -1
  183. package/dist/visio/ui/shape-rotation.d.ts.map +1 -1
  184. package/dist/xlsx/edit/chart-series-gradient.d.ts +1 -1
  185. package/dist/xlsx/edit/chart-series-gradient.d.ts.map +1 -1
  186. package/dist/xlsx/edit/protection.d.ts +1 -1
  187. package/dist/xlsx/index.cjs +3222 -1886
  188. package/dist/xlsx/index.mjs +3222 -1886
  189. package/dist/xlsx/layout/chart-appearance.d.ts +1 -1
  190. package/dist/xlsx/layout/chart-appearance.d.ts.map +1 -1
  191. package/dist/xlsx/layout/chart-scale.d.ts +5 -1
  192. package/dist/xlsx/layout/chart-scale.d.ts.map +1 -1
  193. package/dist/xlsx/layout/chart-svg-legend.d.ts +13 -0
  194. package/dist/xlsx/layout/chart-svg-legend.d.ts.map +1 -0
  195. package/dist/xlsx/layout/chart-svg.d.ts.map +1 -1
  196. package/dist/xlsx/layout/chart-view.d.ts +3 -1
  197. package/dist/xlsx/layout/chart-view.d.ts.map +1 -1
  198. package/dist/xlsx/load/index.cjs +2110 -838
  199. package/dist/xlsx/load/index.mjs +2110 -838
  200. package/dist/xlsx/read/theme.d.ts +2 -4
  201. package/dist/xlsx/read/theme.d.ts.map +1 -1
  202. package/dist/xlsx/ui/index.cjs +2017 -771
  203. package/dist/xlsx/ui/index.mjs +2017 -771
  204. package/dist/xlsx/ui/locales/merge.d.ts +2 -1
  205. package/dist/xlsx/ui/locales/merge.d.ts.map +1 -1
  206. package/dist/xlsx/ui/localization.d.ts.map +1 -1
  207. package/dist/xlsx/write/theme.d.ts.map +1 -1
  208. package/package.json +11 -1
  209. package/dist/diagram/drawing-color-brightness.d.ts +0 -6
  210. package/dist/diagram/drawing-color-brightness.d.ts.map +0 -1
  211. package/dist/diagram/drawing-color-css.d.ts.map +0 -1
  212. package/dist/diagram/drawing-color.d.ts.map +0 -1
  213. package/dist/diagram/drawing-fill.d.ts.map +0 -1
  214. package/dist/diagram/drawing-geometry.d.ts.map +0 -1
  215. package/dist/diagram/drawing-shadow.d.ts.map +0 -1
  216. package/dist/diagram/drawing-text.d.ts.map +0 -1
  217. package/dist/diagram/gradient-geometry.d.ts.map +0 -1
  218. package/dist/diagram/gradient-preset-data.d.ts.map +0 -1
  219. package/dist/diagram/gradient-presets.d.ts.map +0 -1
  220. package/dist/diagram/ordered-color-transforms.d.ts.map +0 -1
  221. package/dist/diagram/rect-path-gradient.d.ts.map +0 -1
  222. package/dist/diagram/write-color.d.ts +0 -4
  223. package/dist/diagram/write-color.d.ts.map +0 -1
  224. package/dist/diagram/write-fill.d.ts.map +0 -1
  225. package/dist/pptx/chunks/index-lk7dyOPS.d.ts.map +0 -1
  226. package/dist/pptx/chunks/text-operations-CDLx4hD5.d.ts.map +0 -1
  227. /package/dist/{diagram → drawingml}/drawing-color-css.d.ts +0 -0
  228. /package/dist/{diagram → drawingml}/drawing-shadow.d.ts +0 -0
  229. /package/dist/{diagram → drawingml}/gradient-preset-data.d.ts +0 -0
  230. /package/dist/{diagram → drawingml}/rect-path-gradient.d.ts +0 -0
@@ -21,10 +21,10 @@ var ALPHABET = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
21
21
  var VALUES = new Map([...ALPHABET].map((char, index) => [char, index]));
22
22
  function encodeBase64(bytes) {
23
23
  let out = "";
24
- for (let i = 0; i < bytes.length; i += 3) {
25
- const a = bytes[i];
26
- const b = bytes[i + 1];
27
- const c = bytes[i + 2];
24
+ for (let i2 = 0; i2 < bytes.length; i2 += 3) {
25
+ const a = bytes[i2];
26
+ const b = bytes[i2 + 1];
27
+ const c = bytes[i2 + 2];
28
28
  const n = a << 16 | (b ?? 0) << 8 | (c ?? 0);
29
29
  out += ALPHABET[n >> 18] + ALPHABET[n >> 12 & 63];
30
30
  out += b === void 0 ? "=" : ALPHABET[n >> 6 & 63];
@@ -54,6 +54,846 @@ function decodeBase64(text) {
54
54
  return out;
55
55
  }
56
56
 
57
+ // digest/md2.ts
58
+ var S = [
59
+ 41,
60
+ 46,
61
+ 67,
62
+ 201,
63
+ 162,
64
+ 216,
65
+ 124,
66
+ 1,
67
+ 61,
68
+ 54,
69
+ 84,
70
+ 161,
71
+ 236,
72
+ 240,
73
+ 6,
74
+ 19,
75
+ 98,
76
+ 167,
77
+ 5,
78
+ 243,
79
+ 192,
80
+ 199,
81
+ 115,
82
+ 140,
83
+ 152,
84
+ 147,
85
+ 43,
86
+ 217,
87
+ 188,
88
+ 76,
89
+ 130,
90
+ 202,
91
+ 30,
92
+ 155,
93
+ 87,
94
+ 60,
95
+ 253,
96
+ 212,
97
+ 224,
98
+ 22,
99
+ 103,
100
+ 66,
101
+ 111,
102
+ 24,
103
+ 138,
104
+ 23,
105
+ 229,
106
+ 18,
107
+ 190,
108
+ 78,
109
+ 196,
110
+ 214,
111
+ 218,
112
+ 158,
113
+ 222,
114
+ 73,
115
+ 160,
116
+ 251,
117
+ 245,
118
+ 142,
119
+ 187,
120
+ 47,
121
+ 238,
122
+ 122,
123
+ 169,
124
+ 104,
125
+ 121,
126
+ 145,
127
+ 21,
128
+ 178,
129
+ 7,
130
+ 63,
131
+ 148,
132
+ 194,
133
+ 16,
134
+ 137,
135
+ 11,
136
+ 34,
137
+ 95,
138
+ 33,
139
+ 128,
140
+ 127,
141
+ 93,
142
+ 154,
143
+ 90,
144
+ 144,
145
+ 50,
146
+ 39,
147
+ 53,
148
+ 62,
149
+ 204,
150
+ 231,
151
+ 191,
152
+ 247,
153
+ 151,
154
+ 3,
155
+ 255,
156
+ 25,
157
+ 48,
158
+ 179,
159
+ 72,
160
+ 165,
161
+ 181,
162
+ 209,
163
+ 215,
164
+ 94,
165
+ 146,
166
+ 42,
167
+ 172,
168
+ 86,
169
+ 170,
170
+ 198,
171
+ 79,
172
+ 184,
173
+ 56,
174
+ 210,
175
+ 150,
176
+ 164,
177
+ 125,
178
+ 182,
179
+ 118,
180
+ 252,
181
+ 107,
182
+ 226,
183
+ 156,
184
+ 116,
185
+ 4,
186
+ 241,
187
+ 69,
188
+ 157,
189
+ 112,
190
+ 89,
191
+ 100,
192
+ 113,
193
+ 135,
194
+ 32,
195
+ 134,
196
+ 91,
197
+ 207,
198
+ 101,
199
+ 230,
200
+ 45,
201
+ 168,
202
+ 2,
203
+ 27,
204
+ 96,
205
+ 37,
206
+ 173,
207
+ 174,
208
+ 176,
209
+ 185,
210
+ 246,
211
+ 28,
212
+ 70,
213
+ 97,
214
+ 105,
215
+ 52,
216
+ 64,
217
+ 126,
218
+ 15,
219
+ 85,
220
+ 71,
221
+ 163,
222
+ 35,
223
+ 221,
224
+ 81,
225
+ 175,
226
+ 58,
227
+ 195,
228
+ 92,
229
+ 249,
230
+ 206,
231
+ 186,
232
+ 197,
233
+ 234,
234
+ 38,
235
+ 44,
236
+ 83,
237
+ 13,
238
+ 110,
239
+ 133,
240
+ 40,
241
+ 132,
242
+ 9,
243
+ 211,
244
+ 223,
245
+ 205,
246
+ 244,
247
+ 65,
248
+ 129,
249
+ 77,
250
+ 82,
251
+ 106,
252
+ 220,
253
+ 55,
254
+ 200,
255
+ 108,
256
+ 193,
257
+ 171,
258
+ 250,
259
+ 36,
260
+ 225,
261
+ 123,
262
+ 8,
263
+ 12,
264
+ 189,
265
+ 177,
266
+ 74,
267
+ 120,
268
+ 136,
269
+ 149,
270
+ 139,
271
+ 227,
272
+ 99,
273
+ 232,
274
+ 109,
275
+ 233,
276
+ 203,
277
+ 213,
278
+ 254,
279
+ 59,
280
+ 0,
281
+ 29,
282
+ 57,
283
+ 242,
284
+ 239,
285
+ 183,
286
+ 14,
287
+ 102,
288
+ 88,
289
+ 208,
290
+ 228,
291
+ 166,
292
+ 119,
293
+ 114,
294
+ 248,
295
+ 235,
296
+ 117,
297
+ 75,
298
+ 10,
299
+ 49,
300
+ 68,
301
+ 80,
302
+ 180,
303
+ 143,
304
+ 237,
305
+ 31,
306
+ 26,
307
+ 219,
308
+ 153,
309
+ 141,
310
+ 51,
311
+ 159,
312
+ 17,
313
+ 131,
314
+ 20
315
+ ];
316
+ function transform(state, checksum, block) {
317
+ const x = new Uint8Array(48);
318
+ x.set(state, 0);
319
+ x.set(block, 16);
320
+ for (let k = 0; k < 16; k++) {
321
+ x[32 + k] = state[k] ^ block[k];
322
+ }
323
+ let t = 0;
324
+ for (let round2 = 0; round2 < 18; round2++) {
325
+ for (let k = 0; k < 48; k++) {
326
+ x[k] = x[k] ^ S[t];
327
+ t = x[k];
328
+ }
329
+ t = t + round2 & 255;
330
+ }
331
+ state.set(x.subarray(0, 16));
332
+ t = checksum[15];
333
+ for (let k = 0; k < 16; k++) {
334
+ checksum[k] = checksum[k] ^ S[block[k] ^ t];
335
+ t = checksum[k];
336
+ }
337
+ }
338
+ function md2(message) {
339
+ const padLength = 16 - message.length % 16;
340
+ const padded = new Uint8Array(message.length + padLength);
341
+ padded.set(message);
342
+ padded.fill(padLength, message.length);
343
+ const state = new Uint8Array(16);
344
+ const checksum = new Uint8Array(16);
345
+ for (let offset = 0; offset < padded.length; offset += 16) {
346
+ transform(state, checksum, padded.subarray(offset, offset + 16));
347
+ }
348
+ transform(state, checksum, checksum.slice());
349
+ return state;
350
+ }
351
+
352
+ // digest/bit-ops.ts
353
+ function rotl32(x, n) {
354
+ return (x << n | x >>> 32 - n) >>> 0;
355
+ }
356
+ function add32(...values) {
357
+ let sum = 0;
358
+ for (const value of values) sum = sum + value >>> 0;
359
+ return sum;
360
+ }
361
+ function padMd4Style(message) {
362
+ const paddedLength = message.length + 9 + 63 & -64;
363
+ const padded = new Uint8Array(paddedLength);
364
+ padded.set(message);
365
+ padded[message.length] = 128;
366
+ new DataView(padded.buffer).setBigUint64(paddedLength - 8, BigInt(message.length) * 8n, true);
367
+ return padded;
368
+ }
369
+ function applyRotatingRound(r, ops, f6, x, feedback = false) {
370
+ let target = 0;
371
+ for (const [k, s, addConst] of ops) {
372
+ const i1 = target + 1 & 3;
373
+ const next = r[i1];
374
+ const rotated = rotl32(
375
+ add32(r[target], f6(next, r[target + 2 & 3], r[target + 3 & 3]), x[k], addConst),
376
+ s
377
+ );
378
+ r[target] = feedback ? add32(next, rotated) : rotated;
379
+ target = target + 3 & 3;
380
+ }
381
+ }
382
+ function mdStyleDigest(message, initialState, transform6) {
383
+ const padded = padMd4Style(message);
384
+ const view = new DataView(padded.buffer);
385
+ const state = [...initialState];
386
+ const words2 = new Array(16).fill(0);
387
+ for (let offset = 0; offset < padded.length; offset += 64) {
388
+ for (let i2 = 0; i2 < 16; i2++) words2[i2] = view.getUint32(offset + i2 * 4, true);
389
+ transform6(state, words2);
390
+ }
391
+ const out = new Uint8Array(state.length * 4);
392
+ const outView = new DataView(out.buffer);
393
+ for (let i2 = 0; i2 < state.length; i2++) outView.setUint32(i2 * 4, state[i2], true);
394
+ return out;
395
+ }
396
+
397
+ // digest/md4.ts
398
+ var INITIAL_STATE = [1732584193, 4023233417, 2562383102, 271733878];
399
+ var K2 = 1518500249;
400
+ var K3 = 1859775393;
401
+ var f1 = (x, y, z) => x & y | ~x & z;
402
+ var f2 = (x, y, z) => x & y | x & z | y & z;
403
+ var f3 = (x, y, z) => x ^ y ^ z;
404
+ function round(order, shifts, k) {
405
+ return order.map((word, i2) => [word, shifts[i2 % 4], k]);
406
+ }
407
+ var SEQUENTIAL = Array.from({ length: 16 }, (_, i2) => i2);
408
+ var COLUMNS = Array.from({ length: 16 }, (_, i2) => i2 % 4 * 4 + (i2 >> 2));
409
+ var BIT_REVERSED = [0, 8, 4, 12, 2, 10, 6, 14, 1, 9, 5, 13, 3, 11, 7, 15];
410
+ var ROUND1 = round(SEQUENTIAL, [3, 7, 11, 19], 0);
411
+ var ROUND2 = round(COLUMNS, [3, 5, 9, 13], K2);
412
+ var ROUND3 = round(BIT_REVERSED, [3, 9, 11, 15], K3);
413
+ function transform2(state, x) {
414
+ const r = [...state];
415
+ applyRotatingRound(r, ROUND1, f1, x);
416
+ applyRotatingRound(r, ROUND2, f2, x);
417
+ applyRotatingRound(r, ROUND3, f3, x);
418
+ for (let i2 = 0; i2 < 4; i2++) state[i2] = add32(state[i2], r[i2]);
419
+ }
420
+ function md4(message) {
421
+ return mdStyleDigest(message, INITIAL_STATE, transform2);
422
+ }
423
+
424
+ // digest/md5.ts
425
+ var INITIAL_STATE2 = [1732584193, 4023233417, 2562383102, 271733878];
426
+ function f(x, y, z) {
427
+ return x & y | ~x & z;
428
+ }
429
+ function g(x, y, z) {
430
+ return x & z | y & ~z;
431
+ }
432
+ function h(x, y, z) {
433
+ return x ^ y ^ z;
434
+ }
435
+ function i(x, y, z) {
436
+ return y ^ (x | ~z);
437
+ }
438
+ var T = Array.from(
439
+ { length: 64 },
440
+ (_, index) => Math.floor(Math.abs(Math.sin(index + 1)) * 2 ** 32)
441
+ );
442
+ var SHIFTS = [
443
+ [7, 12, 17, 22],
444
+ [5, 9, 14, 20],
445
+ [4, 11, 16, 23],
446
+ [6, 10, 15, 21]
447
+ ];
448
+ var WORD_INDEX = [
449
+ (idx) => idx,
450
+ (idx) => (5 * idx + 1) % 16,
451
+ (idx) => (3 * idx + 5) % 16,
452
+ (idx) => 7 * idx % 16
453
+ ];
454
+ var ROUND_FNS = [f, g, h, i];
455
+ function buildOps(round2) {
456
+ const shifts = SHIFTS[round2];
457
+ const wordIndex = WORD_INDEX[round2];
458
+ return Array.from({ length: 16 }, (_, idx) => {
459
+ const opNumber = round2 * 16 + idx;
460
+ return [wordIndex(idx), shifts[idx % 4], T[opNumber]];
461
+ });
462
+ }
463
+ var ROUNDS = [0, 1, 2, 3].map(buildOps);
464
+ function transform3(state, x) {
465
+ const r = [...state];
466
+ for (let round2 = 0; round2 < 4; round2++) {
467
+ applyRotatingRound(r, ROUNDS[round2], ROUND_FNS[round2], x, true);
468
+ }
469
+ for (let idx = 0; idx < 4; idx++) {
470
+ state[idx] = add32(state[idx], r[idx]);
471
+ }
472
+ }
473
+ function md5(message) {
474
+ return mdStyleDigest(message, INITIAL_STATE2, transform3);
475
+ }
476
+
477
+ // digest/ripemd-functions.ts
478
+ function f12(x, y, z) {
479
+ return x ^ y ^ z;
480
+ }
481
+ function f22(x, y, z) {
482
+ return x & y | ~x & z;
483
+ }
484
+ function f32(x, y, z) {
485
+ return (x | ~y) ^ z;
486
+ }
487
+ function f4(x, y, z) {
488
+ return z & x | ~z & y;
489
+ }
490
+ function f5(x, y, z) {
491
+ return x ^ (y | ~z);
492
+ }
493
+
494
+ // digest/ripemd128.ts
495
+ var INITIAL_STATE3 = [1732584193, 4023233417, 2562383102, 271733878];
496
+ var LEFT_ROUNDS = [
497
+ [
498
+ [0, 11, 0],
499
+ [1, 14, 0],
500
+ [2, 15, 0],
501
+ [3, 12, 0],
502
+ [4, 5, 0],
503
+ [5, 8, 0],
504
+ [6, 7, 0],
505
+ [7, 9, 0],
506
+ [8, 11, 0],
507
+ [9, 13, 0],
508
+ [10, 14, 0],
509
+ [11, 15, 0],
510
+ [12, 6, 0],
511
+ [13, 7, 0],
512
+ [14, 9, 0],
513
+ [15, 8, 0]
514
+ ],
515
+ [
516
+ [7, 7, 1518500249],
517
+ [4, 6, 1518500249],
518
+ [13, 8, 1518500249],
519
+ [1, 13, 1518500249],
520
+ [10, 11, 1518500249],
521
+ [6, 9, 1518500249],
522
+ [15, 7, 1518500249],
523
+ [3, 15, 1518500249],
524
+ [12, 7, 1518500249],
525
+ [0, 12, 1518500249],
526
+ [9, 15, 1518500249],
527
+ [5, 9, 1518500249],
528
+ [2, 11, 1518500249],
529
+ [14, 7, 1518500249],
530
+ [11, 13, 1518500249],
531
+ [8, 12, 1518500249]
532
+ ],
533
+ [
534
+ [3, 11, 1859775393],
535
+ [10, 13, 1859775393],
536
+ [14, 6, 1859775393],
537
+ [4, 7, 1859775393],
538
+ [9, 14, 1859775393],
539
+ [15, 9, 1859775393],
540
+ [8, 13, 1859775393],
541
+ [1, 15, 1859775393],
542
+ [2, 14, 1859775393],
543
+ [7, 8, 1859775393],
544
+ [0, 13, 1859775393],
545
+ [6, 6, 1859775393],
546
+ [13, 5, 1859775393],
547
+ [11, 12, 1859775393],
548
+ [5, 7, 1859775393],
549
+ [12, 5, 1859775393]
550
+ ],
551
+ [
552
+ [1, 11, 2400959708],
553
+ [9, 12, 2400959708],
554
+ [11, 14, 2400959708],
555
+ [10, 15, 2400959708],
556
+ [0, 14, 2400959708],
557
+ [8, 15, 2400959708],
558
+ [12, 9, 2400959708],
559
+ [4, 8, 2400959708],
560
+ [13, 9, 2400959708],
561
+ [3, 14, 2400959708],
562
+ [7, 5, 2400959708],
563
+ [15, 6, 2400959708],
564
+ [14, 8, 2400959708],
565
+ [5, 6, 2400959708],
566
+ [6, 5, 2400959708],
567
+ [2, 12, 2400959708]
568
+ ]
569
+ ];
570
+ var RIGHT_ROUNDS = [
571
+ [
572
+ [5, 8, 1352829926],
573
+ [14, 9, 1352829926],
574
+ [7, 9, 1352829926],
575
+ [0, 11, 1352829926],
576
+ [9, 13, 1352829926],
577
+ [2, 15, 1352829926],
578
+ [11, 15, 1352829926],
579
+ [4, 5, 1352829926],
580
+ [13, 7, 1352829926],
581
+ [6, 7, 1352829926],
582
+ [15, 8, 1352829926],
583
+ [8, 11, 1352829926],
584
+ [1, 14, 1352829926],
585
+ [10, 14, 1352829926],
586
+ [3, 12, 1352829926],
587
+ [12, 6, 1352829926]
588
+ ],
589
+ [
590
+ [6, 9, 1548603684],
591
+ [11, 13, 1548603684],
592
+ [3, 15, 1548603684],
593
+ [7, 7, 1548603684],
594
+ [0, 12, 1548603684],
595
+ [13, 8, 1548603684],
596
+ [5, 9, 1548603684],
597
+ [10, 11, 1548603684],
598
+ [14, 7, 1548603684],
599
+ [15, 7, 1548603684],
600
+ [8, 12, 1548603684],
601
+ [12, 7, 1548603684],
602
+ [4, 6, 1548603684],
603
+ [9, 15, 1548603684],
604
+ [1, 13, 1548603684],
605
+ [2, 11, 1548603684]
606
+ ],
607
+ [
608
+ [15, 9, 1836072691],
609
+ [5, 7, 1836072691],
610
+ [1, 15, 1836072691],
611
+ [3, 11, 1836072691],
612
+ [7, 8, 1836072691],
613
+ [14, 6, 1836072691],
614
+ [6, 6, 1836072691],
615
+ [9, 14, 1836072691],
616
+ [11, 12, 1836072691],
617
+ [8, 13, 1836072691],
618
+ [12, 5, 1836072691],
619
+ [2, 14, 1836072691],
620
+ [10, 13, 1836072691],
621
+ [0, 13, 1836072691],
622
+ [4, 7, 1836072691],
623
+ [13, 5, 1836072691]
624
+ ],
625
+ [
626
+ [8, 15, 0],
627
+ [6, 5, 0],
628
+ [4, 8, 0],
629
+ [1, 11, 0],
630
+ [3, 14, 0],
631
+ [11, 14, 0],
632
+ [15, 6, 0],
633
+ [0, 14, 0],
634
+ [5, 6, 0],
635
+ [12, 9, 0],
636
+ [2, 12, 0],
637
+ [13, 9, 0],
638
+ [9, 12, 0],
639
+ [7, 5, 0],
640
+ [10, 15, 0],
641
+ [14, 8, 0]
642
+ ]
643
+ ];
644
+ var LEFT_FNS = [f12, f22, f32, f4];
645
+ var RIGHT_FNS = [f4, f32, f22, f12];
646
+ function transform4(state, x) {
647
+ const left = [...state];
648
+ const right = [...state];
649
+ for (let round2 = 0; round2 < 4; round2++) {
650
+ applyRotatingRound(left, LEFT_ROUNDS[round2], LEFT_FNS[round2], x);
651
+ applyRotatingRound(right, RIGHT_ROUNDS[round2], RIGHT_FNS[round2], x);
652
+ }
653
+ const orig = state;
654
+ const newState = [
655
+ add32(right[3], left[2], orig[1]),
656
+ add32(orig[2], left[3], right[0]),
657
+ add32(orig[3], left[0], right[1]),
658
+ add32(orig[0], left[1], right[2])
659
+ ];
660
+ for (let i2 = 0; i2 < 4; i2++) {
661
+ state[i2] = newState[i2];
662
+ }
663
+ }
664
+ function ripemd128(message) {
665
+ return mdStyleDigest(message, INITIAL_STATE3, transform4);
666
+ }
667
+
668
+ // digest/ripemd160.ts
669
+ var INITIAL_STATE4 = [1732584193, 4023233417, 2562383102, 271733878, 3285377520];
670
+ var LEFT_ROUNDS2 = [
671
+ [
672
+ [0, 11, 0],
673
+ [1, 14, 0],
674
+ [2, 15, 0],
675
+ [3, 12, 0],
676
+ [4, 5, 0],
677
+ [5, 8, 0],
678
+ [6, 7, 0],
679
+ [7, 9, 0],
680
+ [8, 11, 0],
681
+ [9, 13, 0],
682
+ [10, 14, 0],
683
+ [11, 15, 0],
684
+ [12, 6, 0],
685
+ [13, 7, 0],
686
+ [14, 9, 0],
687
+ [15, 8, 0]
688
+ ],
689
+ [
690
+ [7, 7, 1518500249],
691
+ [4, 6, 1518500249],
692
+ [13, 8, 1518500249],
693
+ [1, 13, 1518500249],
694
+ [10, 11, 1518500249],
695
+ [6, 9, 1518500249],
696
+ [15, 7, 1518500249],
697
+ [3, 15, 1518500249],
698
+ [12, 7, 1518500249],
699
+ [0, 12, 1518500249],
700
+ [9, 15, 1518500249],
701
+ [5, 9, 1518500249],
702
+ [2, 11, 1518500249],
703
+ [14, 7, 1518500249],
704
+ [11, 13, 1518500249],
705
+ [8, 12, 1518500249]
706
+ ],
707
+ [
708
+ [3, 11, 1859775393],
709
+ [10, 13, 1859775393],
710
+ [14, 6, 1859775393],
711
+ [4, 7, 1859775393],
712
+ [9, 14, 1859775393],
713
+ [15, 9, 1859775393],
714
+ [8, 13, 1859775393],
715
+ [1, 15, 1859775393],
716
+ [2, 14, 1859775393],
717
+ [7, 8, 1859775393],
718
+ [0, 13, 1859775393],
719
+ [6, 6, 1859775393],
720
+ [13, 5, 1859775393],
721
+ [11, 12, 1859775393],
722
+ [5, 7, 1859775393],
723
+ [12, 5, 1859775393]
724
+ ],
725
+ [
726
+ [1, 11, 2400959708],
727
+ [9, 12, 2400959708],
728
+ [11, 14, 2400959708],
729
+ [10, 15, 2400959708],
730
+ [0, 14, 2400959708],
731
+ [8, 15, 2400959708],
732
+ [12, 9, 2400959708],
733
+ [4, 8, 2400959708],
734
+ [13, 9, 2400959708],
735
+ [3, 14, 2400959708],
736
+ [7, 5, 2400959708],
737
+ [15, 6, 2400959708],
738
+ [14, 8, 2400959708],
739
+ [5, 6, 2400959708],
740
+ [6, 5, 2400959708],
741
+ [2, 12, 2400959708]
742
+ ],
743
+ [
744
+ [4, 9, 2840853838],
745
+ [0, 15, 2840853838],
746
+ [5, 5, 2840853838],
747
+ [9, 11, 2840853838],
748
+ [7, 6, 2840853838],
749
+ [12, 8, 2840853838],
750
+ [2, 13, 2840853838],
751
+ [10, 12, 2840853838],
752
+ [14, 5, 2840853838],
753
+ [1, 12, 2840853838],
754
+ [3, 13, 2840853838],
755
+ [8, 14, 2840853838],
756
+ [11, 11, 2840853838],
757
+ [6, 8, 2840853838],
758
+ [15, 5, 2840853838],
759
+ [13, 6, 2840853838]
760
+ ]
761
+ ];
762
+ var RIGHT_ROUNDS2 = [
763
+ [
764
+ [5, 8, 1352829926],
765
+ [14, 9, 1352829926],
766
+ [7, 9, 1352829926],
767
+ [0, 11, 1352829926],
768
+ [9, 13, 1352829926],
769
+ [2, 15, 1352829926],
770
+ [11, 15, 1352829926],
771
+ [4, 5, 1352829926],
772
+ [13, 7, 1352829926],
773
+ [6, 7, 1352829926],
774
+ [15, 8, 1352829926],
775
+ [8, 11, 1352829926],
776
+ [1, 14, 1352829926],
777
+ [10, 14, 1352829926],
778
+ [3, 12, 1352829926],
779
+ [12, 6, 1352829926]
780
+ ],
781
+ [
782
+ [6, 9, 1548603684],
783
+ [11, 13, 1548603684],
784
+ [3, 15, 1548603684],
785
+ [7, 7, 1548603684],
786
+ [0, 12, 1548603684],
787
+ [13, 8, 1548603684],
788
+ [5, 9, 1548603684],
789
+ [10, 11, 1548603684],
790
+ [14, 7, 1548603684],
791
+ [15, 7, 1548603684],
792
+ [8, 12, 1548603684],
793
+ [12, 7, 1548603684],
794
+ [4, 6, 1548603684],
795
+ [9, 15, 1548603684],
796
+ [1, 13, 1548603684],
797
+ [2, 11, 1548603684]
798
+ ],
799
+ [
800
+ [15, 9, 1836072691],
801
+ [5, 7, 1836072691],
802
+ [1, 15, 1836072691],
803
+ [3, 11, 1836072691],
804
+ [7, 8, 1836072691],
805
+ [14, 6, 1836072691],
806
+ [6, 6, 1836072691],
807
+ [9, 14, 1836072691],
808
+ [11, 12, 1836072691],
809
+ [8, 13, 1836072691],
810
+ [12, 5, 1836072691],
811
+ [2, 14, 1836072691],
812
+ [10, 13, 1836072691],
813
+ [0, 13, 1836072691],
814
+ [4, 7, 1836072691],
815
+ [13, 5, 1836072691]
816
+ ],
817
+ [
818
+ [8, 15, 2053994217],
819
+ [6, 5, 2053994217],
820
+ [4, 8, 2053994217],
821
+ [1, 11, 2053994217],
822
+ [3, 14, 2053994217],
823
+ [11, 14, 2053994217],
824
+ [15, 6, 2053994217],
825
+ [0, 14, 2053994217],
826
+ [5, 6, 2053994217],
827
+ [12, 9, 2053994217],
828
+ [2, 12, 2053994217],
829
+ [13, 9, 2053994217],
830
+ [9, 12, 2053994217],
831
+ [7, 5, 2053994217],
832
+ [10, 15, 2053994217],
833
+ [14, 8, 2053994217]
834
+ ],
835
+ [
836
+ [12, 8, 0],
837
+ [15, 5, 0],
838
+ [10, 12, 0],
839
+ [4, 9, 0],
840
+ [1, 12, 0],
841
+ [5, 5, 0],
842
+ [8, 14, 0],
843
+ [7, 6, 0],
844
+ [6, 8, 0],
845
+ [2, 13, 0],
846
+ [13, 6, 0],
847
+ [14, 5, 0],
848
+ [0, 15, 0],
849
+ [3, 13, 0],
850
+ [9, 11, 0],
851
+ [11, 11, 0]
852
+ ]
853
+ ];
854
+ var LEFT_FNS2 = [f12, f22, f32, f4, f5];
855
+ var RIGHT_FNS2 = [f5, f4, f32, f22, f12];
856
+ function applyLane(r, ops, f6, x, startTarget) {
857
+ let target = startTarget;
858
+ for (const [k, s, addConst] of ops) {
859
+ const i1 = (target + 1) % 5;
860
+ const i2 = (target + 2) % 5;
861
+ const i3 = (target + 3) % 5;
862
+ const i4 = (target + 4) % 5;
863
+ const sum = r[target] + f6(r[i1], r[i2], r[i3]) + x[k] + addConst >>> 0;
864
+ const newTarget = (sum << s | sum >>> 32 - s) + r[i4] >>> 0;
865
+ const c = r[i2];
866
+ r[i2] = (c << 10 | c >>> 22) >>> 0;
867
+ r[target] = newTarget;
868
+ target = (target + 4) % 5;
869
+ }
870
+ return target;
871
+ }
872
+ function transform5(state, x) {
873
+ const left = [...state];
874
+ const right = [...state];
875
+ let leftTarget = 0;
876
+ let rightTarget = 0;
877
+ for (let round2 = 0; round2 < 5; round2++) {
878
+ leftTarget = applyLane(left, LEFT_ROUNDS2[round2], LEFT_FNS2[round2], x, leftTarget);
879
+ rightTarget = applyLane(right, RIGHT_ROUNDS2[round2], RIGHT_FNS2[round2], x, rightTarget);
880
+ }
881
+ const orig = state;
882
+ const newState = [
883
+ add32(right[3], left[2], orig[1]),
884
+ add32(orig[2], left[3], right[4]),
885
+ add32(orig[3], left[4], right[0]),
886
+ add32(orig[4], left[0], right[1]),
887
+ add32(orig[0], left[1], right[2])
888
+ ];
889
+ for (let i2 = 0; i2 < 5; i2++) {
890
+ state[i2] = newState[i2];
891
+ }
892
+ }
893
+ function ripemd160(message) {
894
+ return mdStyleDigest(message, INITIAL_STATE4, transform5);
895
+ }
896
+
57
897
  // digest/sha256.ts
58
898
  var K = new Uint32Array([
59
899
  1116352408,
@@ -133,40 +973,40 @@ var IV = [
133
973
  ];
134
974
  var W = new Uint32Array(64);
135
975
  var rotr = (x, n) => x >>> n | x << 32 - n;
136
- function compress(h, view, offset) {
137
- for (let i = 0; i < 16; i++) W[i] = view.getUint32(offset + i * 4);
138
- for (let i = 16; i < 64; i++) {
139
- const a2 = W[i - 15];
140
- const b2 = W[i - 2];
976
+ function compress(h2, view, offset) {
977
+ for (let i2 = 0; i2 < 16; i2++) W[i2] = view.getUint32(offset + i2 * 4);
978
+ for (let i2 = 16; i2 < 64; i2++) {
979
+ const a2 = W[i2 - 15];
980
+ const b2 = W[i2 - 2];
141
981
  const s0 = rotr(a2, 7) ^ rotr(a2, 18) ^ a2 >>> 3;
142
982
  const s1 = rotr(b2, 17) ^ rotr(b2, 19) ^ b2 >>> 10;
143
- W[i] = W[i - 16] + s0 + W[i - 7] + s1 >>> 0;
983
+ W[i2] = W[i2 - 16] + s0 + W[i2 - 7] + s1 >>> 0;
144
984
  }
145
- let a = h[0], b = h[1], c = h[2], d = h[3], e = h[4], f = h[5], g = h[6], k = h[7];
146
- for (let i = 0; i < 64; i++) {
985
+ let a = h2[0], b = h2[1], c = h2[2], d = h2[3], e = h2[4], f6 = h2[5], g2 = h2[6], k = h2[7];
986
+ for (let i2 = 0; i2 < 64; i2++) {
147
987
  const S1 = rotr(e, 6) ^ rotr(e, 11) ^ rotr(e, 25);
148
- const ch = e & f ^ ~e & g;
149
- const t1 = k + S1 + ch + K[i] + W[i] >>> 0;
988
+ const ch = e & f6 ^ ~e & g2;
989
+ const t1 = k + S1 + ch + K[i2] + W[i2] >>> 0;
150
990
  const S0 = rotr(a, 2) ^ rotr(a, 13) ^ rotr(a, 22);
151
991
  const maj = a & b ^ a & c ^ b & c;
152
992
  const t2 = S0 + maj >>> 0;
153
- k = g;
154
- g = f;
155
- f = e;
993
+ k = g2;
994
+ g2 = f6;
995
+ f6 = e;
156
996
  e = d + t1 >>> 0;
157
997
  d = c;
158
998
  c = b;
159
999
  b = a;
160
1000
  a = t1 + t2 >>> 0;
161
1001
  }
162
- h[0] = h[0] + a >>> 0;
163
- h[1] = h[1] + b >>> 0;
164
- h[2] = h[2] + c >>> 0;
165
- h[3] = h[3] + d >>> 0;
166
- h[4] = h[4] + e >>> 0;
167
- h[5] = h[5] + f >>> 0;
168
- h[6] = h[6] + g >>> 0;
169
- h[7] = h[7] + k >>> 0;
1002
+ h2[0] = h2[0] + a >>> 0;
1003
+ h2[1] = h2[1] + b >>> 0;
1004
+ h2[2] = h2[2] + c >>> 0;
1005
+ h2[3] = h2[3] + d >>> 0;
1006
+ h2[4] = h2[4] + e >>> 0;
1007
+ h2[5] = h2[5] + f6 >>> 0;
1008
+ h2[6] = h2[6] + g2 >>> 0;
1009
+ h2[7] = h2[7] + k >>> 0;
170
1010
  }
171
1011
  function pad64(data) {
172
1012
  const padded = new Uint8Array(Math.ceil((data.length + 9) / 64) * 64);
@@ -178,64 +1018,64 @@ function pad64(data) {
178
1018
  view.setUint32(padded.length - 4, bits >>> 0);
179
1019
  return view;
180
1020
  }
181
- function wordsOut(h) {
182
- const out = new Uint8Array(h.length * 4);
1021
+ function wordsOut(h2) {
1022
+ const out = new Uint8Array(h2.length * 4);
183
1023
  const view = new DataView(out.buffer);
184
- for (let i = 0; i < h.length; i++) view.setUint32(i * 4, h[i]);
1024
+ for (let i2 = 0; i2 < h2.length; i2++) view.setUint32(i2 * 4, h2[i2]);
185
1025
  return out;
186
1026
  }
187
1027
  function sha256(data) {
188
- const h = new Uint32Array(IV);
1028
+ const h2 = new Uint32Array(IV);
189
1029
  const view = pad64(data);
190
- for (let offset = 0; offset < view.byteLength; offset += 64) compress(h, view, offset);
191
- return wordsOut(h);
1030
+ for (let offset = 0; offset < view.byteLength; offset += 64) compress(h2, view, offset);
1031
+ return wordsOut(h2);
192
1032
  }
193
1033
 
194
1034
  // digest/sha1.ts
195
1035
  var W2 = new Uint32Array(80);
196
1036
  var rotl = (x, n) => x << n | x >>> 32 - n;
197
- function compress2(h, view, offset) {
198
- for (let i = 0; i < 16; i++) W2[i] = view.getUint32(offset + i * 4);
199
- for (let i = 16; i < 80; i++) W2[i] = rotl(W2[i - 3] ^ W2[i - 8] ^ W2[i - 14] ^ W2[i - 16], 1);
200
- let a = h[0], b = h[1], c = h[2], d = h[3], e = h[4];
201
- for (let i = 0; i < 80; i++) {
202
- let f;
1037
+ function compress2(h2, view, offset) {
1038
+ for (let i2 = 0; i2 < 16; i2++) W2[i2] = view.getUint32(offset + i2 * 4);
1039
+ for (let i2 = 16; i2 < 80; i2++) W2[i2] = rotl(W2[i2 - 3] ^ W2[i2 - 8] ^ W2[i2 - 14] ^ W2[i2 - 16], 1);
1040
+ let a = h2[0], b = h2[1], c = h2[2], d = h2[3], e = h2[4];
1041
+ for (let i2 = 0; i2 < 80; i2++) {
1042
+ let f6;
203
1043
  let k;
204
- if (i < 20) {
205
- f = b & c | ~b & d;
1044
+ if (i2 < 20) {
1045
+ f6 = b & c | ~b & d;
206
1046
  k = 1518500249;
207
- } else if (i < 40) {
208
- f = b ^ c ^ d;
1047
+ } else if (i2 < 40) {
1048
+ f6 = b ^ c ^ d;
209
1049
  k = 1859775393;
210
- } else if (i < 60) {
211
- f = b & c | b & d | c & d;
1050
+ } else if (i2 < 60) {
1051
+ f6 = b & c | b & d | c & d;
212
1052
  k = 2400959708;
213
1053
  } else {
214
- f = b ^ c ^ d;
1054
+ f6 = b ^ c ^ d;
215
1055
  k = 3395469782;
216
1056
  }
217
- const t = rotl(a, 5) + f + e + k + W2[i] >>> 0;
1057
+ const t = rotl(a, 5) + f6 + e + k + W2[i2] >>> 0;
218
1058
  e = d;
219
1059
  d = c;
220
1060
  c = rotl(b, 30) >>> 0;
221
1061
  b = a;
222
1062
  a = t;
223
1063
  }
224
- h[0] = h[0] + a >>> 0;
225
- h[1] = h[1] + b >>> 0;
226
- h[2] = h[2] + c >>> 0;
227
- h[3] = h[3] + d >>> 0;
228
- h[4] = h[4] + e >>> 0;
1064
+ h2[0] = h2[0] + a >>> 0;
1065
+ h2[1] = h2[1] + b >>> 0;
1066
+ h2[2] = h2[2] + c >>> 0;
1067
+ h2[3] = h2[3] + d >>> 0;
1068
+ h2[4] = h2[4] + e >>> 0;
229
1069
  }
230
1070
  function sha1(data) {
231
- const h = new Uint32Array([1732584193, 4023233417, 2562383102, 271733878, 3285377520]);
1071
+ const h2 = new Uint32Array([1732584193, 4023233417, 2562383102, 271733878, 3285377520]);
232
1072
  const view = pad64(data);
233
- for (let offset = 0; offset < view.byteLength; offset += 64) compress2(h, view, offset);
234
- return wordsOut(h);
1073
+ for (let offset = 0; offset < view.byteLength; offset += 64) compress2(h2, view, offset);
1074
+ return wordsOut(h2);
235
1075
  }
236
1076
 
237
1077
  // digest/sha512.ts
238
- var K2 = new Uint32Array([
1078
+ var K4 = new Uint32Array([
239
1079
  1116352408,
240
1080
  3609767458,
241
1081
  1899447441,
@@ -434,35 +1274,35 @@ var IV_384 = [
434
1274
  3204075428
435
1275
  ];
436
1276
  var W3 = new Uint32Array(160);
437
- function compress3(h, data, offset) {
438
- for (let i = 0; i < 32; i++) {
439
- const o = offset + i * 4;
440
- W3[i] = (data[o] << 24 | data[o + 1] << 16 | data[o + 2] << 8 | data[o + 3]) >>> 0;
1277
+ function compress3(h2, data, offset) {
1278
+ for (let i2 = 0; i2 < 32; i2++) {
1279
+ const o = offset + i2 * 4;
1280
+ W3[i2] = (data[o] << 24 | data[o + 1] << 16 | data[o + 2] << 8 | data[o + 3]) >>> 0;
441
1281
  }
442
- for (let i = 16; i < 80; i++) {
443
- const xh = W3[(i - 15) * 2];
444
- const xl = W3[(i - 15) * 2 + 1];
1282
+ for (let i2 = 16; i2 < 80; i2++) {
1283
+ const xh = W3[(i2 - 15) * 2];
1284
+ const xl = W3[(i2 - 15) * 2 + 1];
445
1285
  const s0h = (xh >>> 1 | xl << 31) ^ (xh >>> 8 | xl << 24) ^ xh >>> 7;
446
1286
  const s0l = (xl >>> 1 | xh << 31) ^ (xl >>> 8 | xh << 24) ^ (xl >>> 7 | xh << 25);
447
- const yh = W3[(i - 2) * 2];
448
- const yl = W3[(i - 2) * 2 + 1];
1287
+ const yh = W3[(i2 - 2) * 2];
1288
+ const yl = W3[(i2 - 2) * 2 + 1];
449
1289
  const s1h = (yh >>> 19 | yl << 13) ^ (yl >>> 29 | yh << 3) ^ yh >>> 6;
450
1290
  const s1l = (yl >>> 19 | yh << 13) ^ (yh >>> 29 | yl << 3) ^ (yl >>> 6 | yh << 26);
451
- let lo = (s0l >>> 0) + (s1l >>> 0) + W3[(i - 7) * 2 + 1] + W3[(i - 16) * 2 + 1];
452
- const hi = s0h + s1h + W3[(i - 7) * 2] + W3[(i - 16) * 2] + Math.floor(lo / 4294967296);
1291
+ let lo = (s0l >>> 0) + (s1l >>> 0) + W3[(i2 - 7) * 2 + 1] + W3[(i2 - 16) * 2 + 1];
1292
+ const hi = s0h + s1h + W3[(i2 - 7) * 2] + W3[(i2 - 16) * 2] + Math.floor(lo / 4294967296);
453
1293
  lo >>>= 0;
454
- W3[i * 2] = hi >>> 0;
455
- W3[i * 2 + 1] = lo;
1294
+ W3[i2 * 2] = hi >>> 0;
1295
+ W3[i2 * 2 + 1] = lo;
456
1296
  }
457
- let ah = h[0], al = h[1], bh = h[2], bl = h[3], ch = h[4], cl = h[5], dh = h[6], dl = h[7];
458
- let eh = h[8], el = h[9], fh = h[10], fl = h[11], gh = h[12], gl = h[13], hh = h[14], hl = h[15];
459
- for (let i = 0; i < 80; i++) {
1297
+ let ah = h2[0], al = h2[1], bh = h2[2], bl = h2[3], ch = h2[4], cl = h2[5], dh = h2[6], dl = h2[7];
1298
+ let eh = h2[8], el = h2[9], fh = h2[10], fl = h2[11], gh = h2[12], gl = h2[13], hh = h2[14], hl = h2[15];
1299
+ for (let i2 = 0; i2 < 80; i2++) {
460
1300
  const S1h = (eh >>> 14 | el << 18) ^ (eh >>> 18 | el << 14) ^ (el >>> 9 | eh << 23);
461
1301
  const S1l = (el >>> 14 | eh << 18) ^ (el >>> 18 | eh << 14) ^ (eh >>> 9 | el << 23);
462
1302
  const chh = eh & fh ^ ~eh & gh;
463
1303
  const chl = el & fl ^ ~el & gl;
464
- let t1l = (hl >>> 0) + (S1l >>> 0) + (chl >>> 0) + K2[i * 2 + 1] + W3[i * 2 + 1];
465
- const t1h = hh + S1h + chh + K2[i * 2] + W3[i * 2] + Math.floor(t1l / 4294967296);
1304
+ let t1l = (hl >>> 0) + (S1l >>> 0) + (chl >>> 0) + K4[i2 * 2 + 1] + W3[i2 * 2 + 1];
1305
+ const t1h = hh + S1h + chh + K4[i2 * 2] + W3[i2 * 2] + Math.floor(t1l / 4294967296);
466
1306
  t1l >>>= 0;
467
1307
  const S0h = (ah >>> 28 | al << 4) ^ (al >>> 2 | ah << 30) ^ (al >>> 7 | ah << 25);
468
1308
  const S0l = (al >>> 28 | ah << 4) ^ (ah >>> 2 | al << 30) ^ (ah >>> 7 | al << 25);
@@ -490,10 +1330,10 @@ function compress3(h, data, offset) {
490
1330
  ah = t1h + t2h + Math.floor(nl / 4294967296) >>> 0;
491
1331
  al = nl >>> 0;
492
1332
  }
493
- const add = (i, xh, xl) => {
494
- const lo = (h[i + 1] >>> 0) + (xl >>> 0);
495
- h[i] = h[i] + xh + Math.floor(lo / 4294967296) >>> 0;
496
- h[i + 1] = lo >>> 0;
1333
+ const add = (i2, xh, xl) => {
1334
+ const lo = (h2[i2 + 1] >>> 0) + (xl >>> 0);
1335
+ h2[i2] = h2[i2] + xh + Math.floor(lo / 4294967296) >>> 0;
1336
+ h2[i2 + 1] = lo >>> 0;
497
1337
  };
498
1338
  add(0, ah, al);
499
1339
  add(2, bh, bl);
@@ -505,7 +1345,7 @@ function compress3(h, data, offset) {
505
1345
  add(14, hh, hl);
506
1346
  }
507
1347
  function digest64(data, iv, bytes) {
508
- const h = new Uint32Array(iv);
1348
+ const h2 = new Uint32Array(iv);
509
1349
  const padded = new Uint8Array(Math.ceil((data.length + 17) / 128) * 128);
510
1350
  padded.set(data);
511
1351
  padded[data.length] = 128;
@@ -513,25 +1353,407 @@ function digest64(data, iv, bytes) {
513
1353
  const view = new DataView(padded.buffer);
514
1354
  view.setUint32(padded.length - 8, Math.floor(bits / 4294967296));
515
1355
  view.setUint32(padded.length - 4, bits >>> 0);
516
- for (let offset = 0; offset < padded.length; offset += 128) compress3(h, padded, offset);
1356
+ for (let offset = 0; offset < padded.length; offset += 128) compress3(h2, padded, offset);
517
1357
  const out = new Uint8Array(bytes);
518
1358
  const outView = new DataView(out.buffer);
519
- for (let i = 0; i < bytes / 4; i++) outView.setUint32(i * 4, h[i]);
1359
+ for (let i2 = 0; i2 < bytes / 4; i2++) outView.setUint32(i2 * 4, h2[i2]);
520
1360
  return out;
521
1361
  }
522
1362
  var sha512 = (data) => digest64(data, IV_512, 64);
523
1363
  var sha384 = (data) => digest64(data, IV_384, 48);
524
1364
 
1365
+ // digest/whirlpool-sbox.ts
1366
+ var TABLE0 = [
1367
+ 0x18186018c07830d8n,
1368
+ 0x23238c2305af4626n,
1369
+ 0xc6c63fc67ef991b8n,
1370
+ 0xe8e887e8136fcdfbn,
1371
+ 0x878726874ca113cbn,
1372
+ 0xb8b8dab8a9626d11n,
1373
+ 0x0101040108050209n,
1374
+ 0x4f4f214f426e9e0dn,
1375
+ 0x3636d836adee6c9bn,
1376
+ 0xa6a6a2a6590451ffn,
1377
+ 0xd2d26fd2debdb90cn,
1378
+ 0xf5f5f3f5fb06f70en,
1379
+ 0x7979f979ef80f296n,
1380
+ 0x6f6fa16f5fcede30n,
1381
+ 0x91917e91fcef3f6dn,
1382
+ 0x52525552aa07a4f8n,
1383
+ 0x60609d6027fdc047n,
1384
+ 0xbcbccabc89766535n,
1385
+ 0x9b9b569baccd2b37n,
1386
+ 0x8e8e028e048c018an,
1387
+ 0xa3a3b6a371155bd2n,
1388
+ 0x0c0c300c603c186cn,
1389
+ 0x7b7bf17bff8af684n,
1390
+ 0x3535d435b5e16a80n,
1391
+ 0x1d1d741de8693af5n,
1392
+ 0xe0e0a7e05347ddb3n,
1393
+ 0xd7d77bd7f6acb321n,
1394
+ 0xc2c22fc25eed999cn,
1395
+ 0x2e2eb82e6d965c43n,
1396
+ 0x4b4b314b627a9629n,
1397
+ 0xfefedffea321e15dn,
1398
+ 0x575741578216aed5n,
1399
+ 0x15155415a8412abdn,
1400
+ 0x7777c1779fb6eee8n,
1401
+ 0x3737dc37a5eb6e92n,
1402
+ 0xe5e5b3e57b56d79en,
1403
+ 0x9f9f469f8cd92313n,
1404
+ 0xf0f0e7f0d317fd23n,
1405
+ 0x4a4a354a6a7f9420n,
1406
+ 0xdada4fda9e95a944n,
1407
+ 0x58587d58fa25b0a2n,
1408
+ 0xc9c903c906ca8fcfn,
1409
+ 0x2929a429558d527cn,
1410
+ 0x0a0a280a5022145an,
1411
+ 0xb1b1feb1e14f7f50n,
1412
+ 0xa0a0baa0691a5dc9n,
1413
+ 0x6b6bb16b7fdad614n,
1414
+ 0x85852e855cab17d9n,
1415
+ 0xbdbdcebd8173673cn,
1416
+ 0x5d5d695dd234ba8fn,
1417
+ 0x1010401080502090n,
1418
+ 0xf4f4f7f4f303f507n,
1419
+ 0xcbcb0bcb16c08bddn,
1420
+ 0x3e3ef83eedc67cd3n,
1421
+ 0x0505140528110a2dn,
1422
+ 0x676781671fe6ce78n,
1423
+ 0xe4e4b7e47353d597n,
1424
+ 0x27279c2725bb4e02n,
1425
+ 0x4141194132588273n,
1426
+ 0x8b8b168b2c9d0ba7n,
1427
+ 0xa7a7a6a7510153f6n,
1428
+ 0x7d7de97dcf94fab2n,
1429
+ 0x95956e95dcfb3749n,
1430
+ 0xd8d847d88e9fad56n,
1431
+ 0xfbfbcbfb8b30eb70n,
1432
+ 0xeeee9fee2371c1cdn,
1433
+ 0x7c7ced7cc791f8bbn,
1434
+ 0x6666856617e3cc71n,
1435
+ 0xdddd53dda68ea77bn,
1436
+ 0x17175c17b84b2eafn,
1437
+ 0x4747014702468e45n,
1438
+ 0x9e9e429e84dc211an,
1439
+ 0xcaca0fca1ec589d4n,
1440
+ 0x2d2db42d75995a58n,
1441
+ 0xbfbfc6bf9179632en,
1442
+ 0x07071c07381b0e3fn,
1443
+ 0xadad8ead012347acn,
1444
+ 0x5a5a755aea2fb4b0n,
1445
+ 0x838336836cb51befn,
1446
+ 0x3333cc3385ff66b6n,
1447
+ 0x636391633ff2c65cn,
1448
+ 0x02020802100a0412n,
1449
+ 0xaaaa92aa39384993n,
1450
+ 0x7171d971afa8e2den,
1451
+ 0xc8c807c80ecf8dc6n,
1452
+ 0x19196419c87d32d1n,
1453
+ 0x494939497270923bn,
1454
+ 0xd9d943d9869aaf5fn,
1455
+ 0xf2f2eff2c31df931n,
1456
+ 0xe3e3abe34b48dba8n,
1457
+ 0x5b5b715be22ab6b9n,
1458
+ 0x88881a8834920dbcn,
1459
+ 0x9a9a529aa4c8293en,
1460
+ 0x262698262dbe4c0bn,
1461
+ 0x3232c8328dfa64bfn,
1462
+ 0xb0b0fab0e94a7d59n,
1463
+ 0xe9e983e91b6acff2n,
1464
+ 0x0f0f3c0f78331e77n,
1465
+ 0xd5d573d5e6a6b733n,
1466
+ 0x80803a8074ba1df4n,
1467
+ 0xbebec2be997c6127n,
1468
+ 0xcdcd13cd26de87ebn,
1469
+ 0x3434d034bde46889n,
1470
+ 0x48483d487a759032n,
1471
+ 0xffffdbffab24e354n,
1472
+ 0x7a7af57af78ff48dn,
1473
+ 0x90907a90f4ea3d64n,
1474
+ 0x5f5f615fc23ebe9dn,
1475
+ 0x202080201da0403dn,
1476
+ 0x6868bd6867d5d00fn,
1477
+ 0x1a1a681ad07234can,
1478
+ 0xaeae82ae192c41b7n,
1479
+ 0xb4b4eab4c95e757dn,
1480
+ 0x54544d549a19a8cen,
1481
+ 0x93937693ece53b7fn,
1482
+ 0x222288220daa442fn,
1483
+ 0x64648d6407e9c863n,
1484
+ 0xf1f1e3f1db12ff2an,
1485
+ 0x7373d173bfa2e6ccn,
1486
+ 0x12124812905a2482n,
1487
+ 0x40401d403a5d807an,
1488
+ 0x0808200840281048n,
1489
+ 0xc3c32bc356e89b95n,
1490
+ 0xecec97ec337bc5dfn,
1491
+ 0xdbdb4bdb9690ab4dn,
1492
+ 0xa1a1bea1611f5fc0n,
1493
+ 0x8d8d0e8d1c830791n,
1494
+ 0x3d3df43df5c97ac8n,
1495
+ 0x97976697ccf1335bn,
1496
+ 0x0000000000000000n,
1497
+ 0xcfcf1bcf36d483f9n,
1498
+ 0x2b2bac2b4587566en,
1499
+ 0x7676c57697b3ece1n,
1500
+ 0x8282328264b019e6n,
1501
+ 0xd6d67fd6fea9b128n,
1502
+ 0x1b1b6c1bd87736c3n,
1503
+ 0xb5b5eeb5c15b7774n,
1504
+ 0xafaf86af112943ben,
1505
+ 0x6a6ab56a77dfd41dn,
1506
+ 0x50505d50ba0da0ean,
1507
+ 0x45450945124c8a57n,
1508
+ 0xf3f3ebf3cb18fb38n,
1509
+ 0x3030c0309df060adn,
1510
+ 0xefef9bef2b74c3c4n,
1511
+ 0x3f3ffc3fe5c37edan,
1512
+ 0x55554955921caac7n,
1513
+ 0xa2a2b2a2791059dbn,
1514
+ 0xeaea8fea0365c9e9n,
1515
+ 0x656589650fecca6an,
1516
+ 0xbabad2bab9686903n,
1517
+ 0x2f2fbc2f65935e4an,
1518
+ 0xc0c027c04ee79d8en,
1519
+ 0xdede5fdebe81a160n,
1520
+ 0x1c1c701ce06c38fcn,
1521
+ 0xfdfdd3fdbb2ee746n,
1522
+ 0x4d4d294d52649a1fn,
1523
+ 0x92927292e4e03976n,
1524
+ 0x7575c9758fbceafan,
1525
+ 0x06061806301e0c36n,
1526
+ 0x8a8a128a249809aen,
1527
+ 0xb2b2f2b2f940794bn,
1528
+ 0xe6e6bfe66359d185n,
1529
+ 0x0e0e380e70361c7en,
1530
+ 0x1f1f7c1ff8633ee7n,
1531
+ 0x6262956237f7c455n,
1532
+ 0xd4d477d4eea3b53an,
1533
+ 0xa8a89aa829324d81n,
1534
+ 0x96966296c4f43152n,
1535
+ 0xf9f9c3f99b3aef62n,
1536
+ 0xc5c533c566f697a3n,
1537
+ 0x2525942535b14a10n,
1538
+ 0x59597959f220b2abn,
1539
+ 0x84842a8454ae15d0n,
1540
+ 0x7272d572b7a7e4c5n,
1541
+ 0x3939e439d5dd72ecn,
1542
+ 0x4c4c2d4c5a619816n,
1543
+ 0x5e5e655eca3bbc94n,
1544
+ 0x7878fd78e785f09fn,
1545
+ 0x3838e038ddd870e5n,
1546
+ 0x8c8c0a8c14860598n,
1547
+ 0xd1d163d1c6b2bf17n,
1548
+ 0xa5a5aea5410b57e4n,
1549
+ 0xe2e2afe2434dd9a1n,
1550
+ 0x616199612ff8c24en,
1551
+ 0xb3b3f6b3f1457b42n,
1552
+ 0x2121842115a54234n,
1553
+ 0x9c9c4a9c94d62508n,
1554
+ 0x1e1e781ef0663ceen,
1555
+ 0x4343114322528661n,
1556
+ 0xc7c73bc776fc93b1n,
1557
+ 0xfcfcd7fcb32be54fn,
1558
+ 0x0404100420140824n,
1559
+ 0x51515951b208a2e3n,
1560
+ 0x99995e99bcc72f25n,
1561
+ 0x6d6da96d4fc4da22n,
1562
+ 0x0d0d340d68391a65n,
1563
+ 0xfafacffa8335e979n,
1564
+ 0xdfdf5bdfb684a369n,
1565
+ 0x7e7ee57ed79bfca9n,
1566
+ 0x242490243db44819n,
1567
+ 0x3b3bec3bc5d776fen,
1568
+ 0xabab96ab313d4b9an,
1569
+ 0xcece1fce3ed181f0n,
1570
+ 0x1111441188552299n,
1571
+ 0x8f8f068f0c890383n,
1572
+ 0x4e4e254e4a6b9c04n,
1573
+ 0xb7b7e6b7d1517366n,
1574
+ 0xebeb8beb0b60cbe0n,
1575
+ 0x3c3cf03cfdcc78c1n,
1576
+ 0x81813e817cbf1ffdn,
1577
+ 0x94946a94d4fe3540n,
1578
+ 0xf7f7fbf7eb0cf31cn,
1579
+ 0xb9b9deb9a1676f18n,
1580
+ 0x13134c13985f268bn,
1581
+ 0x2c2cb02c7d9c5851n,
1582
+ 0xd3d36bd3d6b8bb05n,
1583
+ 0xe7e7bbe76b5cd38cn,
1584
+ 0x6e6ea56e57cbdc39n,
1585
+ 0xc4c437c46ef395aan,
1586
+ 0x03030c03180f061bn,
1587
+ 0x565645568a13acdcn,
1588
+ 0x44440d441a49885en,
1589
+ 0x7f7fe17fdf9efea0n,
1590
+ 0xa9a99ea921374f88n,
1591
+ 0x2a2aa82a4d825467n,
1592
+ 0xbbbbd6bbb16d6b0an,
1593
+ 0xc1c123c146e29f87n,
1594
+ 0x53535153a202a6f1n,
1595
+ 0xdcdc57dcae8ba572n,
1596
+ 0x0b0b2c0b58271653n,
1597
+ 0x9d9d4e9d9cd32701n,
1598
+ 0x6c6cad6c47c1d82bn,
1599
+ 0x3131c43195f562a4n,
1600
+ 0x7474cd7487b9e8f3n,
1601
+ 0xf6f6fff6e309f115n,
1602
+ 0x464605460a438c4cn,
1603
+ 0xacac8aac092645a5n,
1604
+ 0x89891e893c970fb5n,
1605
+ 0x14145014a04428b4n,
1606
+ 0xe1e1a3e15b42dfban,
1607
+ 0x16165816b04e2ca6n,
1608
+ 0x3a3ae83acdd274f7n,
1609
+ 0x6969b9696fd0d206n,
1610
+ 0x09092409482d1241n,
1611
+ 0x7070dd70a7ade0d7n,
1612
+ 0xb6b6e2b6d954716fn,
1613
+ 0xd0d067d0ceb7bd1en,
1614
+ 0xeded93ed3b7ec7d6n,
1615
+ 0xcccc17cc2edb85e2n,
1616
+ 0x424215422a578468n,
1617
+ 0x98985a98b4c22d2cn,
1618
+ 0xa4a4aaa4490e55edn,
1619
+ 0x2828a0285d885075n,
1620
+ 0x5c5c6d5cda31b886n,
1621
+ 0xf8f8c7f8933fed6bn,
1622
+ 0x8686228644a411c2n
1623
+ ];
1624
+
1625
+ // digest/whirlpool-table.ts
1626
+ var WORD_MASK = (1n << 64n) - 1n;
1627
+ var LOW_MASK = 0xffffffffn;
1628
+ function rotateBytesRight(value, bytes) {
1629
+ const bits = BigInt(bytes) * 8n;
1630
+ return (value >> bits | value << 64n - bits) & WORD_MASK;
1631
+ }
1632
+ var TABLES_HI = new Uint32Array(8 * 256);
1633
+ var TABLES_LO = new Uint32Array(8 * 256);
1634
+ for (let t = 0; t < 8; t++) {
1635
+ for (let x = 0; x < 256; x++) {
1636
+ const value = t === 0 ? TABLE0[x] : rotateBytesRight(TABLE0[x], t);
1637
+ TABLES_HI[t * 256 + x] = Number(value >> 32n);
1638
+ TABLES_LO[t * 256 + x] = Number(value & LOW_MASK);
1639
+ }
1640
+ }
1641
+ var ROUND_CONSTANTS = [
1642
+ 0x1823c6e887b8014fn,
1643
+ 0x36a6d2f5796f9152n,
1644
+ 0x60bc9b8ea30c7b35n,
1645
+ 0x1de0d7c22e4bfe57n,
1646
+ 0x157737e59ff04adan,
1647
+ 0x58c9290ab1a06b85n,
1648
+ 0xbd5d10f4cb3e0567n,
1649
+ 0xe427418ba77d95d8n,
1650
+ 0xfbee7c66dd17479en,
1651
+ 0xca2dbf07ad5a8333n
1652
+ ];
1653
+ var ROUND_CONSTANTS_HI = Uint32Array.from(ROUND_CONSTANTS, (c) => Number(c >> 32n));
1654
+ var ROUND_CONSTANTS_LO = Uint32Array.from(ROUND_CONSTANTS, (c) => Number(c & LOW_MASK));
1655
+
1656
+ // digest/whirlpool.ts
1657
+ var TABLES_HI2 = TABLES_HI;
1658
+ var TABLES_LO2 = TABLES_LO;
1659
+ var ROUND_CONSTANTS_HI2 = ROUND_CONSTANTS_HI;
1660
+ var ROUND_CONSTANTS_LO2 = ROUND_CONSTANTS_LO;
1661
+ var BLOCK_BYTES = 64;
1662
+ var WORDS = 8;
1663
+ var ROUNDS2 = 10;
1664
+ var words = () => ({ hi: new Uint32Array(WORDS), lo: new Uint32Array(WORDS) });
1665
+ function op(src, column, out) {
1666
+ const { hi: h2, lo: l } = src;
1667
+ const b0 = h2[column] >>> 24;
1668
+ const b1 = h2[column + 7 & 7] >>> 16 & 255;
1669
+ const b2 = h2[column + 6 & 7] >>> 8 & 255;
1670
+ const b3 = h2[column + 5 & 7] & 255;
1671
+ const b4 = l[column + 4 & 7] >>> 24;
1672
+ const b5 = l[column + 3 & 7] >>> 16 & 255;
1673
+ const b6 = l[column + 2 & 7] >>> 8 & 255;
1674
+ const b7 = l[column + 1 & 7] & 255;
1675
+ out.hi[column] = TABLES_HI2[b0] ^ TABLES_HI2[256 + b1] ^ TABLES_HI2[512 + b2] ^ TABLES_HI2[768 + b3] ^ TABLES_HI2[1024 + b4] ^ TABLES_HI2[1280 + b5] ^ TABLES_HI2[1536 + b6] ^ TABLES_HI2[1792 + b7];
1676
+ out.lo[column] = TABLES_LO2[b0] ^ TABLES_LO2[256 + b1] ^ TABLES_LO2[512 + b2] ^ TABLES_LO2[768 + b3] ^ TABLES_LO2[1024 + b4] ^ TABLES_LO2[1280 + b5] ^ TABLES_LO2[1536 + b6] ^ TABLES_LO2[1792 + b7];
1677
+ }
1678
+ var scratch = { key: words(), state: words(), initial: words(), nextKey: words(), next: words() };
1679
+ function processBlock(hash, block) {
1680
+ const { key, state, initial, nextKey, next } = scratch;
1681
+ for (let i2 = 0; i2 < WORDS; i2++) {
1682
+ initial.hi[i2] = block.hi[i2] ^ hash.hi[i2];
1683
+ initial.lo[i2] = block.lo[i2] ^ hash.lo[i2];
1684
+ }
1685
+ key.hi.set(hash.hi);
1686
+ key.lo.set(hash.lo);
1687
+ state.hi.set(initial.hi);
1688
+ state.lo.set(initial.lo);
1689
+ for (let round2 = 0; round2 < ROUNDS2; round2++) {
1690
+ for (let j = 0; j < WORDS; j++) op(key, j, nextKey);
1691
+ nextKey.hi[0] = nextKey.hi[0] ^ ROUND_CONSTANTS_HI2[round2];
1692
+ nextKey.lo[0] = nextKey.lo[0] ^ ROUND_CONSTANTS_LO2[round2];
1693
+ for (let j = 0; j < WORDS; j++) {
1694
+ op(state, j, next);
1695
+ next.hi[j] = next.hi[j] ^ nextKey.hi[j];
1696
+ next.lo[j] = next.lo[j] ^ nextKey.lo[j];
1697
+ }
1698
+ key.hi.set(nextKey.hi);
1699
+ key.lo.set(nextKey.lo);
1700
+ state.hi.set(next.hi);
1701
+ state.lo.set(next.lo);
1702
+ }
1703
+ for (let i2 = 0; i2 < WORDS; i2++) {
1704
+ hash.hi[i2] = initial.hi[i2] ^ state.hi[i2];
1705
+ hash.lo[i2] = initial.lo[i2] ^ state.lo[i2];
1706
+ }
1707
+ }
1708
+ function pad(message) {
1709
+ let total = message.length + 1;
1710
+ while (total % BLOCK_BYTES !== 32) {
1711
+ total++;
1712
+ }
1713
+ total += 32;
1714
+ const padded = new Uint8Array(total);
1715
+ padded.set(message);
1716
+ padded[message.length] = 128;
1717
+ new DataView(padded.buffer).setBigUint64(total - 8, BigInt(message.length) * 8n, false);
1718
+ return padded;
1719
+ }
1720
+ function whirlpool(message) {
1721
+ const padded = pad(message);
1722
+ const view = new DataView(padded.buffer);
1723
+ const hash = words();
1724
+ const block = words();
1725
+ for (let offset = 0; offset < padded.length; offset += BLOCK_BYTES) {
1726
+ for (let i2 = 0; i2 < WORDS; i2++) {
1727
+ block.hi[i2] = view.getUint32(offset + i2 * 8, false);
1728
+ block.lo[i2] = view.getUint32(offset + i2 * 8 + 4, false);
1729
+ }
1730
+ processBlock(hash, block);
1731
+ }
1732
+ const out = new Uint8Array(BLOCK_BYTES);
1733
+ const outView = new DataView(out.buffer);
1734
+ for (let i2 = 0; i2 < WORDS; i2++) {
1735
+ outView.setUint32(i2 * 8, hash.hi[i2], false);
1736
+ outView.setUint32(i2 * 8 + 4, hash.lo[i2], false);
1737
+ }
1738
+ return out;
1739
+ }
1740
+
525
1741
  // digest/digest.ts
526
1742
  var DIGESTS = {
527
1743
  "SHA-1": sha1,
528
1744
  "SHA-256": sha256,
529
1745
  "SHA-384": sha384,
530
- "SHA-512": sha512
1746
+ "SHA-512": sha512,
1747
+ MD2: md2,
1748
+ MD4: md4,
1749
+ MD5: md5,
1750
+ "RIPEMD-128": ripemd128,
1751
+ "RIPEMD-160": ripemd160,
1752
+ WHIRLPOOL: whirlpool
531
1753
  };
532
1754
  function digestFunction(name) {
533
1755
  const canonical = normalizeDigestAlgorithmName(name);
534
- return canonical && canonical in DIGESTS ? DIGESTS[canonical] : void 0;
1756
+ return canonical && DIGESTS[canonical];
535
1757
  }
536
1758
  function digestSync(name, data) {
537
1759
  return digestFunction(name)?.(data);
@@ -540,20 +1762,20 @@ function digestSync(name, data) {
540
1762
  // digest/password-hash.ts
541
1763
  var MAX_SPIN_COUNT = 1e7;
542
1764
  var validSpinCount = (spinCount) => spinCount === void 0 || Number.isInteger(spinCount) && spinCount >= 0 && spinCount <= MAX_SPIN_COUNT;
543
- function spin(password, salt, spinCount, digest) {
1765
+ function spinPasswordHash(password, salt, spinCount, digest) {
544
1766
  const input = new Uint8Array(salt.length + password.length * 2);
545
1767
  input.set(salt);
546
- for (let i = 0; i < password.length; i++) {
547
- const code = password.charCodeAt(i);
548
- input[salt.length + i * 2] = code & 255;
549
- input[salt.length + i * 2 + 1] = code >> 8;
1768
+ for (let i2 = 0; i2 < password.length; i2++) {
1769
+ const code = password.charCodeAt(i2);
1770
+ input[salt.length + i2 * 2] = code & 255;
1771
+ input[salt.length + i2 * 2 + 1] = code >> 8;
550
1772
  }
551
1773
  let value = digest(input);
552
1774
  const buffer = new Uint8Array(value.length + 4);
553
1775
  const view = new DataView(buffer.buffer);
554
- for (let i = 0; i < spinCount; i++) {
1776
+ for (let i2 = 0; i2 < spinCount; i2++) {
555
1777
  buffer.set(value);
556
- view.setUint32(value.length, i, true);
1778
+ view.setUint32(value.length, i2, true);
557
1779
  value = digest(buffer);
558
1780
  }
559
1781
  return value;
@@ -562,7 +1784,7 @@ function hashBytes(password, { algorithmName, saltValue, spinCount }) {
562
1784
  const digest = digestFunction(algorithmName);
563
1785
  const salt = decodeBase64(saltValue);
564
1786
  if (!digest || !salt || !validSpinCount(spinCount)) return void 0;
565
- return spin(password, salt, spinCount ?? 0, digest);
1787
+ return spinPasswordHash(password, salt, spinCount ?? 0, digest);
566
1788
  }
567
1789
  function hashPassword(password, options) {
568
1790
  const bytes = hashBytes(password, options);
@@ -574,8 +1796,8 @@ function verifyPasswordHash(password, hash) {
574
1796
  const actual = expected && hashBytes(password, hash);
575
1797
  if (!expected || !actual || actual.length !== expected.length) return false;
576
1798
  let difference = 0;
577
- for (let i = 0; i < actual.length; i++) difference |= actual[i] ^ expected[i];
1799
+ for (let i2 = 0; i2 < actual.length; i2++) difference |= actual[i2] ^ expected[i2];
578
1800
  return difference === 0;
579
1801
  }
580
1802
 
581
- export { MAX_SPIN_COUNT, decodeBase64, digestFunction, digestSync, encodeBase64, hashPassword, normalizeDigestAlgorithmName, sha1, sha256, sha384, sha512, verifyPasswordHash };
1803
+ export { MAX_SPIN_COUNT, decodeBase64, digestFunction, digestSync, encodeBase64, hashPassword, md2, md4, md5, normalizeDigestAlgorithmName, ripemd128, ripemd160, sha1, sha256, sha384, sha512, spinPasswordHash, verifyPasswordHash, whirlpool };