shamir-mnemonic-ts 1.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 (49) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +71 -0
  3. package/dist/cipher.d.ts +3 -0
  4. package/dist/cipher.d.ts.map +1 -0
  5. package/dist/cipher.js +91 -0
  6. package/dist/cipher.js.map +1 -0
  7. package/dist/constants.d.ts +41 -0
  8. package/dist/constants.d.ts.map +1 -0
  9. package/dist/constants.js +45 -0
  10. package/dist/constants.js.map +1 -0
  11. package/dist/index.d.ts +6 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +23 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/recovery.d.ts +18 -0
  16. package/dist/recovery.d.ts.map +1 -0
  17. package/dist/recovery.js +126 -0
  18. package/dist/recovery.js.map +1 -0
  19. package/dist/rs1024.d.ts +5 -0
  20. package/dist/rs1024.d.ts.map +1 -0
  21. package/dist/rs1024.js +50 -0
  22. package/dist/rs1024.js.map +1 -0
  23. package/dist/shamir.d.ts +36 -0
  24. package/dist/shamir.d.ts.map +1 -0
  25. package/dist/shamir.js +448 -0
  26. package/dist/shamir.js.map +1 -0
  27. package/dist/share.d.ts +39 -0
  28. package/dist/share.d.ts.map +1 -0
  29. package/dist/share.js +194 -0
  30. package/dist/share.js.map +1 -0
  31. package/dist/src/cipher.js +90 -0
  32. package/dist/src/constants.js +44 -0
  33. package/dist/src/index.js +22 -0
  34. package/dist/src/recovery.js +127 -0
  35. package/dist/src/rs1024.js +55 -0
  36. package/dist/src/shamir.js +486 -0
  37. package/dist/src/share.js +196 -0
  38. package/dist/src/utils.js +97 -0
  39. package/dist/src/wordlist.js +136 -0
  40. package/dist/test-manual.js +78 -0
  41. package/dist/utils.d.ts +7 -0
  42. package/dist/utils.d.ts.map +1 -0
  43. package/dist/utils.js +39 -0
  44. package/dist/utils.js.map +1 -0
  45. package/dist/wordlist.d.ts +4 -0
  46. package/dist/wordlist.d.ts.map +1 -0
  47. package/dist/wordlist.js +1069 -0
  48. package/dist/wordlist.js.map +1 -0
  49. package/package.json +44 -0
@@ -0,0 +1,1069 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.wordsFromIndices = wordsFromIndices;
4
+ exports.mnemonicFromIndices = mnemonicFromIndices;
5
+ exports.mnemonicToIndices = mnemonicToIndices;
6
+ const constants_1 = require("./constants");
7
+ const utils_1 = require("./utils");
8
+ // Wordlist from SLIP-0039
9
+ const WORDLIST = [
10
+ 'academic',
11
+ 'acid',
12
+ 'acne',
13
+ 'acquire',
14
+ 'acrobat',
15
+ 'activity',
16
+ 'actress',
17
+ 'adapt',
18
+ 'adequate',
19
+ 'adjust',
20
+ 'admit',
21
+ 'adorn',
22
+ 'adult',
23
+ 'advance',
24
+ 'advocate',
25
+ 'afraid',
26
+ 'again',
27
+ 'agency',
28
+ 'agree',
29
+ 'aide',
30
+ 'aircraft',
31
+ 'airline',
32
+ 'airport',
33
+ 'ajar',
34
+ 'alarm',
35
+ 'album',
36
+ 'alcohol',
37
+ 'alien',
38
+ 'alive',
39
+ 'alpha',
40
+ 'already',
41
+ 'alto',
42
+ 'aluminum',
43
+ 'always',
44
+ 'amazing',
45
+ 'ambition',
46
+ 'amount',
47
+ 'amuse',
48
+ 'analysis',
49
+ 'anatomy',
50
+ 'ancestor',
51
+ 'ancient',
52
+ 'angel',
53
+ 'angry',
54
+ 'animal',
55
+ 'answer',
56
+ 'antenna',
57
+ 'anxiety',
58
+ 'apart',
59
+ 'aquatic',
60
+ 'arcade',
61
+ 'arena',
62
+ 'argue',
63
+ 'armed',
64
+ 'artist',
65
+ 'artwork',
66
+ 'aspect',
67
+ 'auction',
68
+ 'august',
69
+ 'aunt',
70
+ 'average',
71
+ 'aviation',
72
+ 'avoid',
73
+ 'award',
74
+ 'away',
75
+ 'axis',
76
+ 'axle',
77
+ 'beam',
78
+ 'beard',
79
+ 'beaver',
80
+ 'become',
81
+ 'bedroom',
82
+ 'behavior',
83
+ 'being',
84
+ 'believe',
85
+ 'belong',
86
+ 'benefit',
87
+ 'best',
88
+ 'beyond',
89
+ 'bike',
90
+ 'biology',
91
+ 'birthday',
92
+ 'bishop',
93
+ 'black',
94
+ 'blanket',
95
+ 'blessing',
96
+ 'blimp',
97
+ 'blind',
98
+ 'blue',
99
+ 'body',
100
+ 'bolt',
101
+ 'boring',
102
+ 'born',
103
+ 'both',
104
+ 'boundary',
105
+ 'bracelet',
106
+ 'branch',
107
+ 'brave',
108
+ 'breathe',
109
+ 'briefing',
110
+ 'broken',
111
+ 'brother',
112
+ 'browser',
113
+ 'bucket',
114
+ 'budget',
115
+ 'building',
116
+ 'bulb',
117
+ 'bulge',
118
+ 'bumpy',
119
+ 'bundle',
120
+ 'burden',
121
+ 'burning',
122
+ 'busy',
123
+ 'buyer',
124
+ 'cage',
125
+ 'calcium',
126
+ 'camera',
127
+ 'campus',
128
+ 'canyon',
129
+ 'capacity',
130
+ 'capital',
131
+ 'capture',
132
+ 'carbon',
133
+ 'cards',
134
+ 'careful',
135
+ 'cargo',
136
+ 'carpet',
137
+ 'carve',
138
+ 'category',
139
+ 'cause',
140
+ 'ceiling',
141
+ 'center',
142
+ 'ceramic',
143
+ 'champion',
144
+ 'change',
145
+ 'charity',
146
+ 'check',
147
+ 'chemical',
148
+ 'chest',
149
+ 'chew',
150
+ 'chubby',
151
+ 'cinema',
152
+ 'civil',
153
+ 'class',
154
+ 'clay',
155
+ 'cleanup',
156
+ 'client',
157
+ 'climate',
158
+ 'clinic',
159
+ 'clock',
160
+ 'clogs',
161
+ 'closet',
162
+ 'clothes',
163
+ 'club',
164
+ 'cluster',
165
+ 'coal',
166
+ 'coastal',
167
+ 'coding',
168
+ 'column',
169
+ 'company',
170
+ 'corner',
171
+ 'costume',
172
+ 'counter',
173
+ 'course',
174
+ 'cover',
175
+ 'cowboy',
176
+ 'cradle',
177
+ 'craft',
178
+ 'crazy',
179
+ 'credit',
180
+ 'cricket',
181
+ 'criminal',
182
+ 'crisis',
183
+ 'critical',
184
+ 'crowd',
185
+ 'crucial',
186
+ 'crunch',
187
+ 'crush',
188
+ 'crystal',
189
+ 'cubic',
190
+ 'cultural',
191
+ 'curious',
192
+ 'curly',
193
+ 'custody',
194
+ 'cylinder',
195
+ 'daisy',
196
+ 'damage',
197
+ 'dance',
198
+ 'darkness',
199
+ 'database',
200
+ 'daughter',
201
+ 'deadline',
202
+ 'deal',
203
+ 'debris',
204
+ 'debut',
205
+ 'decent',
206
+ 'decision',
207
+ 'declare',
208
+ 'decorate',
209
+ 'decrease',
210
+ 'deliver',
211
+ 'demand',
212
+ 'density',
213
+ 'deny',
214
+ 'depart',
215
+ 'depend',
216
+ 'depict',
217
+ 'deploy',
218
+ 'describe',
219
+ 'desert',
220
+ 'desire',
221
+ 'desktop',
222
+ 'destroy',
223
+ 'detailed',
224
+ 'detect',
225
+ 'device',
226
+ 'devote',
227
+ 'diagnose',
228
+ 'dictate',
229
+ 'diet',
230
+ 'dilemma',
231
+ 'diminish',
232
+ 'dining',
233
+ 'diploma',
234
+ 'disaster',
235
+ 'discuss',
236
+ 'disease',
237
+ 'dish',
238
+ 'dismiss',
239
+ 'display',
240
+ 'distance',
241
+ 'dive',
242
+ 'divorce',
243
+ 'document',
244
+ 'domain',
245
+ 'domestic',
246
+ 'dominant',
247
+ 'dough',
248
+ 'downtown',
249
+ 'dragon',
250
+ 'dramatic',
251
+ 'dream',
252
+ 'dress',
253
+ 'drift',
254
+ 'drink',
255
+ 'drove',
256
+ 'drug',
257
+ 'dryer',
258
+ 'duckling',
259
+ 'duke',
260
+ 'duration',
261
+ 'dwarf',
262
+ 'dynamic',
263
+ 'early',
264
+ 'earth',
265
+ 'easel',
266
+ 'easy',
267
+ 'echo',
268
+ 'eclipse',
269
+ 'ecology',
270
+ 'edge',
271
+ 'editor',
272
+ 'educate',
273
+ 'either',
274
+ 'elbow',
275
+ 'elder',
276
+ 'election',
277
+ 'elegant',
278
+ 'element',
279
+ 'elephant',
280
+ 'elevator',
281
+ 'elite',
282
+ 'else',
283
+ 'email',
284
+ 'emerald',
285
+ 'emission',
286
+ 'emperor',
287
+ 'emphasis',
288
+ 'employer',
289
+ 'empty',
290
+ 'ending',
291
+ 'endless',
292
+ 'endorse',
293
+ 'enemy',
294
+ 'energy',
295
+ 'enforce',
296
+ 'engage',
297
+ 'enjoy',
298
+ 'enlarge',
299
+ 'entrance',
300
+ 'envelope',
301
+ 'envy',
302
+ 'epidemic',
303
+ 'episode',
304
+ 'equation',
305
+ 'equip',
306
+ 'eraser',
307
+ 'erode',
308
+ 'escape',
309
+ 'estate',
310
+ 'estimate',
311
+ 'evaluate',
312
+ 'evening',
313
+ 'evidence',
314
+ 'evil',
315
+ 'evoke',
316
+ 'exact',
317
+ 'example',
318
+ 'exceed',
319
+ 'exchange',
320
+ 'exclude',
321
+ 'excuse',
322
+ 'execute',
323
+ 'exercise',
324
+ 'exhaust',
325
+ 'exotic',
326
+ 'expand',
327
+ 'expect',
328
+ 'explain',
329
+ 'express',
330
+ 'extend',
331
+ 'extra',
332
+ 'eyebrow',
333
+ 'facility',
334
+ 'fact',
335
+ 'failure',
336
+ 'faint',
337
+ 'fake',
338
+ 'false',
339
+ 'family',
340
+ 'famous',
341
+ 'fancy',
342
+ 'fangs',
343
+ 'fantasy',
344
+ 'fatal',
345
+ 'fatigue',
346
+ 'favorite',
347
+ 'fawn',
348
+ 'fiber',
349
+ 'fiction',
350
+ 'filter',
351
+ 'finance',
352
+ 'findings',
353
+ 'finger',
354
+ 'firefly',
355
+ 'firm',
356
+ 'fiscal',
357
+ 'fishing',
358
+ 'fitness',
359
+ 'flame',
360
+ 'flash',
361
+ 'flavor',
362
+ 'flea',
363
+ 'flexible',
364
+ 'flip',
365
+ 'float',
366
+ 'floral',
367
+ 'fluff',
368
+ 'focus',
369
+ 'forbid',
370
+ 'force',
371
+ 'forecast',
372
+ 'forget',
373
+ 'formal',
374
+ 'fortune',
375
+ 'forward',
376
+ 'founder',
377
+ 'fraction',
378
+ 'fragment',
379
+ 'frequent',
380
+ 'freshman',
381
+ 'friar',
382
+ 'fridge',
383
+ 'friendly',
384
+ 'frost',
385
+ 'froth',
386
+ 'frozen',
387
+ 'fumes',
388
+ 'funding',
389
+ 'furl',
390
+ 'fused',
391
+ 'galaxy',
392
+ 'game',
393
+ 'garbage',
394
+ 'garden',
395
+ 'garlic',
396
+ 'gasoline',
397
+ 'gather',
398
+ 'general',
399
+ 'genius',
400
+ 'genre',
401
+ 'genuine',
402
+ 'geology',
403
+ 'gesture',
404
+ 'glad',
405
+ 'glance',
406
+ 'glasses',
407
+ 'glen',
408
+ 'glimpse',
409
+ 'goat',
410
+ 'golden',
411
+ 'graduate',
412
+ 'grant',
413
+ 'grasp',
414
+ 'gravity',
415
+ 'gray',
416
+ 'greatest',
417
+ 'grief',
418
+ 'grill',
419
+ 'grin',
420
+ 'grocery',
421
+ 'gross',
422
+ 'group',
423
+ 'grownup',
424
+ 'grumpy',
425
+ 'guard',
426
+ 'guest',
427
+ 'guilt',
428
+ 'guitar',
429
+ 'gums',
430
+ 'hairy',
431
+ 'hamster',
432
+ 'hand',
433
+ 'hanger',
434
+ 'harvest',
435
+ 'have',
436
+ 'havoc',
437
+ 'hawk',
438
+ 'hazard',
439
+ 'headset',
440
+ 'health',
441
+ 'hearing',
442
+ 'heat',
443
+ 'helpful',
444
+ 'herald',
445
+ 'herd',
446
+ 'hesitate',
447
+ 'hobo',
448
+ 'holiday',
449
+ 'holy',
450
+ 'home',
451
+ 'hormone',
452
+ 'hospital',
453
+ 'hour',
454
+ 'huge',
455
+ 'human',
456
+ 'humidity',
457
+ 'hunting',
458
+ 'husband',
459
+ 'hush',
460
+ 'husky',
461
+ 'hybrid',
462
+ 'idea',
463
+ 'identify',
464
+ 'idle',
465
+ 'image',
466
+ 'impact',
467
+ 'imply',
468
+ 'improve',
469
+ 'impulse',
470
+ 'include',
471
+ 'income',
472
+ 'increase',
473
+ 'index',
474
+ 'indicate',
475
+ 'industry',
476
+ 'infant',
477
+ 'inform',
478
+ 'inherit',
479
+ 'injury',
480
+ 'inmate',
481
+ 'insect',
482
+ 'inside',
483
+ 'install',
484
+ 'intend',
485
+ 'intimate',
486
+ 'invasion',
487
+ 'involve',
488
+ 'iris',
489
+ 'island',
490
+ 'isolate',
491
+ 'item',
492
+ 'ivory',
493
+ 'jacket',
494
+ 'jerky',
495
+ 'jewelry',
496
+ 'join',
497
+ 'judicial',
498
+ 'juice',
499
+ 'jump',
500
+ 'junction',
501
+ 'junior',
502
+ 'junk',
503
+ 'jury',
504
+ 'justice',
505
+ 'kernel',
506
+ 'keyboard',
507
+ 'kidney',
508
+ 'kind',
509
+ 'kitchen',
510
+ 'knife',
511
+ 'knit',
512
+ 'laden',
513
+ 'ladle',
514
+ 'ladybug',
515
+ 'lair',
516
+ 'lamp',
517
+ 'language',
518
+ 'large',
519
+ 'laser',
520
+ 'laundry',
521
+ 'lawsuit',
522
+ 'leader',
523
+ 'leaf',
524
+ 'learn',
525
+ 'leaves',
526
+ 'lecture',
527
+ 'legal',
528
+ 'legend',
529
+ 'legs',
530
+ 'lend',
531
+ 'length',
532
+ 'level',
533
+ 'liberty',
534
+ 'library',
535
+ 'license',
536
+ 'lift',
537
+ 'likely',
538
+ 'lilac',
539
+ 'lily',
540
+ 'lips',
541
+ 'liquid',
542
+ 'listen',
543
+ 'literary',
544
+ 'living',
545
+ 'lizard',
546
+ 'loan',
547
+ 'lobe',
548
+ 'location',
549
+ 'losing',
550
+ 'loud',
551
+ 'loyalty',
552
+ 'luck',
553
+ 'lunar',
554
+ 'lunch',
555
+ 'lungs',
556
+ 'luxury',
557
+ 'lying',
558
+ 'lyrics',
559
+ 'machine',
560
+ 'magazine',
561
+ 'maiden',
562
+ 'mailman',
563
+ 'main',
564
+ 'makeup',
565
+ 'making',
566
+ 'mama',
567
+ 'manager',
568
+ 'mandate',
569
+ 'mansion',
570
+ 'manual',
571
+ 'marathon',
572
+ 'march',
573
+ 'market',
574
+ 'marvel',
575
+ 'mason',
576
+ 'material',
577
+ 'math',
578
+ 'maximum',
579
+ 'mayor',
580
+ 'meaning',
581
+ 'medal',
582
+ 'medical',
583
+ 'member',
584
+ 'memory',
585
+ 'mental',
586
+ 'merchant',
587
+ 'merit',
588
+ 'method',
589
+ 'metric',
590
+ 'midst',
591
+ 'mild',
592
+ 'military',
593
+ 'mineral',
594
+ 'minister',
595
+ 'miracle',
596
+ 'mixed',
597
+ 'mixture',
598
+ 'mobile',
599
+ 'modern',
600
+ 'modify',
601
+ 'moisture',
602
+ 'moment',
603
+ 'morning',
604
+ 'mortgage',
605
+ 'mother',
606
+ 'mountain',
607
+ 'mouse',
608
+ 'move',
609
+ 'much',
610
+ 'mule',
611
+ 'multiple',
612
+ 'muscle',
613
+ 'museum',
614
+ 'music',
615
+ 'mustang',
616
+ 'nail',
617
+ 'national',
618
+ 'necklace',
619
+ 'negative',
620
+ 'nervous',
621
+ 'network',
622
+ 'news',
623
+ 'nuclear',
624
+ 'numb',
625
+ 'numerous',
626
+ 'nylon',
627
+ 'oasis',
628
+ 'obesity',
629
+ 'object',
630
+ 'observe',
631
+ 'obtain',
632
+ 'ocean',
633
+ 'often',
634
+ 'olympic',
635
+ 'omit',
636
+ 'oral',
637
+ 'orange',
638
+ 'orbit',
639
+ 'order',
640
+ 'ordinary',
641
+ 'organize',
642
+ 'ounce',
643
+ 'oven',
644
+ 'overall',
645
+ 'owner',
646
+ 'paces',
647
+ 'pacific',
648
+ 'package',
649
+ 'paid',
650
+ 'painting',
651
+ 'pajamas',
652
+ 'pancake',
653
+ 'pants',
654
+ 'papa',
655
+ 'paper',
656
+ 'parcel',
657
+ 'parking',
658
+ 'party',
659
+ 'patent',
660
+ 'patrol',
661
+ 'payment',
662
+ 'payroll',
663
+ 'peaceful',
664
+ 'peanut',
665
+ 'peasant',
666
+ 'pecan',
667
+ 'penalty',
668
+ 'pencil',
669
+ 'percent',
670
+ 'perfect',
671
+ 'permit',
672
+ 'petition',
673
+ 'phantom',
674
+ 'pharmacy',
675
+ 'photo',
676
+ 'phrase',
677
+ 'physics',
678
+ 'pickup',
679
+ 'picture',
680
+ 'piece',
681
+ 'pile',
682
+ 'pink',
683
+ 'pipeline',
684
+ 'pistol',
685
+ 'pitch',
686
+ 'plains',
687
+ 'plan',
688
+ 'plastic',
689
+ 'platform',
690
+ 'playoff',
691
+ 'pleasure',
692
+ 'plot',
693
+ 'plunge',
694
+ 'practice',
695
+ 'prayer',
696
+ 'preach',
697
+ 'predator',
698
+ 'pregnant',
699
+ 'premium',
700
+ 'prepare',
701
+ 'presence',
702
+ 'prevent',
703
+ 'priest',
704
+ 'primary',
705
+ 'priority',
706
+ 'prisoner',
707
+ 'privacy',
708
+ 'prize',
709
+ 'problem',
710
+ 'process',
711
+ 'profile',
712
+ 'program',
713
+ 'promise',
714
+ 'prospect',
715
+ 'provide',
716
+ 'prune',
717
+ 'public',
718
+ 'pulse',
719
+ 'pumps',
720
+ 'punish',
721
+ 'puny',
722
+ 'pupal',
723
+ 'purchase',
724
+ 'purple',
725
+ 'python',
726
+ 'quantity',
727
+ 'quarter',
728
+ 'quick',
729
+ 'quiet',
730
+ 'race',
731
+ 'racism',
732
+ 'radar',
733
+ 'railroad',
734
+ 'rainbow',
735
+ 'raisin',
736
+ 'random',
737
+ 'ranked',
738
+ 'rapids',
739
+ 'raspy',
740
+ 'reaction',
741
+ 'realize',
742
+ 'rebound',
743
+ 'rebuild',
744
+ 'recall',
745
+ 'receiver',
746
+ 'recover',
747
+ 'regret',
748
+ 'regular',
749
+ 'reject',
750
+ 'relate',
751
+ 'remember',
752
+ 'remind',
753
+ 'remove',
754
+ 'render',
755
+ 'repair',
756
+ 'repeat',
757
+ 'replace',
758
+ 'require',
759
+ 'rescue',
760
+ 'research',
761
+ 'resident',
762
+ 'response',
763
+ 'result',
764
+ 'retailer',
765
+ 'retreat',
766
+ 'reunion',
767
+ 'revenue',
768
+ 'review',
769
+ 'reward',
770
+ 'rhyme',
771
+ 'rhythm',
772
+ 'rich',
773
+ 'rival',
774
+ 'river',
775
+ 'robin',
776
+ 'rocky',
777
+ 'romantic',
778
+ 'romp',
779
+ 'roster',
780
+ 'round',
781
+ 'royal',
782
+ 'ruin',
783
+ 'ruler',
784
+ 'rumor',
785
+ 'sack',
786
+ 'safari',
787
+ 'salary',
788
+ 'salon',
789
+ 'salt',
790
+ 'satisfy',
791
+ 'satoshi',
792
+ 'saver',
793
+ 'says',
794
+ 'scandal',
795
+ 'scared',
796
+ 'scatter',
797
+ 'scene',
798
+ 'scholar',
799
+ 'science',
800
+ 'scout',
801
+ 'scramble',
802
+ 'screw',
803
+ 'script',
804
+ 'scroll',
805
+ 'seafood',
806
+ 'season',
807
+ 'secret',
808
+ 'security',
809
+ 'segment',
810
+ 'senior',
811
+ 'shadow',
812
+ 'shaft',
813
+ 'shame',
814
+ 'shaped',
815
+ 'sharp',
816
+ 'shelter',
817
+ 'sheriff',
818
+ 'short',
819
+ 'should',
820
+ 'shrimp',
821
+ 'sidewalk',
822
+ 'silent',
823
+ 'silver',
824
+ 'similar',
825
+ 'simple',
826
+ 'single',
827
+ 'sister',
828
+ 'skin',
829
+ 'skunk',
830
+ 'slap',
831
+ 'slavery',
832
+ 'sled',
833
+ 'slice',
834
+ 'slim',
835
+ 'slow',
836
+ 'slush',
837
+ 'smart',
838
+ 'smear',
839
+ 'smell',
840
+ 'smirk',
841
+ 'smith',
842
+ 'smoking',
843
+ 'smug',
844
+ 'snake',
845
+ 'snapshot',
846
+ 'sniff',
847
+ 'society',
848
+ 'software',
849
+ 'soldier',
850
+ 'solution',
851
+ 'soul',
852
+ 'source',
853
+ 'space',
854
+ 'spark',
855
+ 'speak',
856
+ 'species',
857
+ 'spelling',
858
+ 'spend',
859
+ 'spew',
860
+ 'spider',
861
+ 'spill',
862
+ 'spine',
863
+ 'spirit',
864
+ 'spit',
865
+ 'spray',
866
+ 'sprinkle',
867
+ 'square',
868
+ 'squeeze',
869
+ 'stadium',
870
+ 'staff',
871
+ 'standard',
872
+ 'starting',
873
+ 'station',
874
+ 'stay',
875
+ 'steady',
876
+ 'step',
877
+ 'stick',
878
+ 'stilt',
879
+ 'story',
880
+ 'strategy',
881
+ 'strike',
882
+ 'style',
883
+ 'subject',
884
+ 'submit',
885
+ 'sugar',
886
+ 'suitable',
887
+ 'sunlight',
888
+ 'superior',
889
+ 'surface',
890
+ 'surprise',
891
+ 'survive',
892
+ 'sweater',
893
+ 'swimming',
894
+ 'swing',
895
+ 'switch',
896
+ 'symbolic',
897
+ 'sympathy',
898
+ 'syndrome',
899
+ 'system',
900
+ 'tackle',
901
+ 'tactics',
902
+ 'tadpole',
903
+ 'talent',
904
+ 'task',
905
+ 'taste',
906
+ 'taught',
907
+ 'taxi',
908
+ 'teacher',
909
+ 'teammate',
910
+ 'teaspoon',
911
+ 'temple',
912
+ 'tenant',
913
+ 'tendency',
914
+ 'tension',
915
+ 'terminal',
916
+ 'testify',
917
+ 'texture',
918
+ 'thank',
919
+ 'that',
920
+ 'theater',
921
+ 'theory',
922
+ 'therapy',
923
+ 'thorn',
924
+ 'threaten',
925
+ 'thumb',
926
+ 'thunder',
927
+ 'ticket',
928
+ 'tidy',
929
+ 'timber',
930
+ 'timely',
931
+ 'ting',
932
+ 'tofu',
933
+ 'together',
934
+ 'tolerate',
935
+ 'total',
936
+ 'toxic',
937
+ 'tracks',
938
+ 'traffic',
939
+ 'training',
940
+ 'transfer',
941
+ 'trash',
942
+ 'traveler',
943
+ 'treat',
944
+ 'trend',
945
+ 'trial',
946
+ 'tricycle',
947
+ 'trip',
948
+ 'triumph',
949
+ 'trouble',
950
+ 'true',
951
+ 'trust',
952
+ 'twice',
953
+ 'twin',
954
+ 'type',
955
+ 'typical',
956
+ 'ugly',
957
+ 'ultimate',
958
+ 'umbrella',
959
+ 'uncover',
960
+ 'undergo',
961
+ 'unfair',
962
+ 'unfold',
963
+ 'unhappy',
964
+ 'union',
965
+ 'universe',
966
+ 'unkind',
967
+ 'unknown',
968
+ 'unusual',
969
+ 'unwrap',
970
+ 'upgrade',
971
+ 'upstairs',
972
+ 'username',
973
+ 'usher',
974
+ 'usual',
975
+ 'valid',
976
+ 'valuable',
977
+ 'vampire',
978
+ 'vanish',
979
+ 'various',
980
+ 'vegan',
981
+ 'velvet',
982
+ 'venture',
983
+ 'verdict',
984
+ 'verify',
985
+ 'very',
986
+ 'veteran',
987
+ 'vexed',
988
+ 'victim',
989
+ 'video',
990
+ 'view',
991
+ 'vintage',
992
+ 'violence',
993
+ 'viral',
994
+ 'visitor',
995
+ 'visual',
996
+ 'vitamins',
997
+ 'vocal',
998
+ 'voice',
999
+ 'volume',
1000
+ 'voter',
1001
+ 'voting',
1002
+ 'walnut',
1003
+ 'warmth',
1004
+ 'warn',
1005
+ 'watch',
1006
+ 'wavy',
1007
+ 'wealthy',
1008
+ 'weapon',
1009
+ 'webcam',
1010
+ 'welcome',
1011
+ 'welfare',
1012
+ 'western',
1013
+ 'width',
1014
+ 'wildlife',
1015
+ 'window',
1016
+ 'wine',
1017
+ 'wireless',
1018
+ 'wisdom',
1019
+ 'withdraw',
1020
+ 'wits',
1021
+ 'wolf',
1022
+ 'woman',
1023
+ 'work',
1024
+ 'worthy',
1025
+ 'wrap',
1026
+ 'wrist',
1027
+ 'writing',
1028
+ 'wrote',
1029
+ 'year',
1030
+ 'yelp',
1031
+ 'yield',
1032
+ 'yoga',
1033
+ 'zero'
1034
+ ];
1035
+ // Validate wordlist length
1036
+ if (WORDLIST.length !== constants_1.RADIX) {
1037
+ throw new Error(`The wordlist should contain ${constants_1.RADIX} words, but it contains ${WORDLIST.length} words.`);
1038
+ }
1039
+ // Create word index map for fast lookup
1040
+ const WORD_INDEX_MAP = new Map();
1041
+ WORDLIST.forEach((word, index) => {
1042
+ WORD_INDEX_MAP.set(word, index);
1043
+ });
1044
+ function* wordsFromIndices(indices) {
1045
+ for (const i of indices) {
1046
+ yield WORDLIST[i];
1047
+ }
1048
+ }
1049
+ function mnemonicFromIndices(indices) {
1050
+ return Array.from(wordsFromIndices(indices)).join(' ');
1051
+ }
1052
+ function mnemonicToIndices(mnemonic) {
1053
+ try {
1054
+ return mnemonic.split(/\s+/).map(word => {
1055
+ const index = WORD_INDEX_MAP.get(word.toLowerCase());
1056
+ if (index === undefined) {
1057
+ throw new utils_1.MnemonicError(`Invalid mnemonic word ${word}.`);
1058
+ }
1059
+ return index;
1060
+ });
1061
+ }
1062
+ catch (error) {
1063
+ if (error instanceof utils_1.MnemonicError) {
1064
+ throw error;
1065
+ }
1066
+ throw new utils_1.MnemonicError(`Invalid mnemonic word.`);
1067
+ }
1068
+ }
1069
+ //# sourceMappingURL=wordlist.js.map