puzzle-lib 1.6.0 → 1.8.1
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.
- package/LICENSE +21 -21
- package/README.md +44 -38
- package/build/src/Braille/BrailleCharacter.d.ts +15 -15
- package/build/src/Braille/BrailleCharacter.js +39 -38
- package/build/src/Braille/BrailleCharacter.js.map +1 -1
- package/build/src/Braille/BrailleData.d.ts +6 -6
- package/build/src/Braille/BrailleData.js +65 -65
- package/build/src/Braille/BrailleData.js.map +1 -1
- package/build/src/Braille/BrailleDot.d.ts +9 -9
- package/build/src/Braille/BrailleDot.js +13 -13
- package/build/src/Braille/BrailleDot.js.map +1 -1
- package/build/src/Braille/BrailleEncoding.d.ts +54 -54
- package/build/src/Braille/BrailleEncoding.js +66 -65
- package/build/src/Braille/BrailleEncoding.js.map +1 -1
- package/build/src/Braille/BrailleStream.d.ts +18 -18
- package/build/src/Braille/BrailleStream.js +75 -75
- package/build/src/Braille/BrailleStream.js.map +1 -1
- package/build/src/Cipher/AutoKeyString.d.ts +4 -4
- package/build/src/Cipher/AutoKeyString.js +34 -34
- package/build/src/Cipher/AutoKeyString.js.map +1 -1
- package/build/src/Cipher/CaesarString.d.ts +8 -8
- package/build/src/Cipher/CaesarString.js +32 -31
- package/build/src/Cipher/CaesarString.js.map +1 -1
- package/build/src/Cipher/CaesarUtils.d.ts +13 -13
- package/build/src/Cipher/CaesarUtils.js +57 -57
- package/build/src/Cipher/CaesarUtils.js.map +1 -1
- package/build/src/Cipher/KeyedCipherStringBase.d.ts +12 -12
- package/build/src/Cipher/KeyedCipherStringBase.js +30 -28
- package/build/src/Cipher/KeyedCipherStringBase.js.map +1 -1
- package/build/src/Cipher/VigenereString.d.ts +4 -4
- package/build/src/Cipher/VigenereString.js +21 -21
- package/build/src/Cipher/VigenereString.js.map +1 -1
- package/build/src/Common/CharacterImage.d.ts +6 -6
- package/build/src/Common/CharacterImage.js +12 -10
- package/build/src/Common/CharacterImage.js.map +1 -1
- package/build/src/Common/EncodingCategory.d.ts +8 -8
- package/build/src/Common/EncodingCategory.js +12 -12
- package/build/src/Common/EncodingCategory.js.map +1 -1
- package/build/src/Common/EncodingCharacterBase.d.ts +23 -23
- package/build/src/Common/EncodingCharacterBase.js +54 -52
- package/build/src/Common/EncodingCharacterBase.js.map +1 -1
- package/build/src/Common/EncodingDataBase.d.ts +7 -7
- package/build/src/Common/EncodingDataBase.js +27 -29
- package/build/src/Common/EncodingDataBase.js.map +1 -1
- package/build/src/Common/EncodingEntry.d.ts +8 -8
- package/build/src/Common/EncodingEntry.js +17 -14
- package/build/src/Common/EncodingEntry.js.map +1 -1
- package/build/src/Common/EncodingLookupResult.d.ts +6 -6
- package/build/src/Common/EncodingLookupResult.js +11 -13
- package/build/src/Common/EncodingLookupResult.js.map +1 -1
- package/build/src/Common/Helpers.d.ts +4 -4
- package/build/src/Common/Helpers.js +16 -16
- package/build/src/Common/Helpers.js.map +1 -1
- package/build/src/Common/InlineSvg.d.ts +7 -7
- package/build/src/Common/InlineSvg.js +17 -14
- package/build/src/Common/InlineSvg.js.map +1 -1
- package/build/src/Conversion/CharacterAutoConvert.d.ts +10 -10
- package/build/src/Conversion/CharacterAutoConvert.js +88 -88
- package/build/src/Conversion/CharacterAutoConvert.js.map +1 -1
- package/build/src/Conversion/CharacterConversion.d.ts +8 -8
- package/build/src/Conversion/CharacterConversion.js +50 -50
- package/build/src/Conversion/CharacterConversion.js.map +1 -1
- package/build/src/Conversion/CharacterEncoding.d.ts +9 -9
- package/build/src/Conversion/CharacterEncoding.js +13 -13
- package/build/src/Conversion/CharacterEncoding.js.map +1 -1
- package/build/src/Conversion/CharacterTableEntry.d.ts +10 -10
- package/build/src/Conversion/CharacterTableEntry.js +25 -19
- package/build/src/Conversion/CharacterTableEntry.js.map +1 -1
- package/build/src/Conversion/SignificantFigures.d.ts +7 -7
- package/build/src/Conversion/SignificantFigures.js +50 -50
- package/build/src/Conversion/SignificantFigures.js.map +1 -1
- package/build/src/Conversion/StringAutoConvert.d.ts +6 -6
- package/build/src/Conversion/StringAutoConvert.js +46 -46
- package/build/src/Conversion/StringAutoConvert.js.map +1 -1
- package/build/src/Morse/MorseCharacter.d.ts +22 -22
- package/build/src/Morse/MorseCharacter.js +97 -96
- package/build/src/Morse/MorseCharacter.js.map +1 -1
- package/build/src/Morse/MorseData.d.ts +6 -6
- package/build/src/Morse/MorseData.js +70 -70
- package/build/src/Morse/MorseData.js.map +1 -1
- package/build/src/Morse/MorseEncoding.d.ts +59 -59
- package/build/src/Morse/MorseEncoding.js +94 -94
- package/build/src/Morse/MorseEncoding.js.map +1 -1
- package/build/src/Morse/MorseString.d.ts +10 -10
- package/build/src/Morse/MorseString.js +67 -66
- package/build/src/Morse/MorseString.js.map +1 -1
- package/build/src/Nato/NatoCharacter.d.ts +5 -5
- package/build/src/Nato/NatoCharacter.js +12 -10
- package/build/src/Nato/NatoCharacter.js.map +1 -1
- package/build/src/Nato/NatoData.d.ts +7 -7
- package/build/src/Nato/NatoData.js +49 -51
- package/build/src/Nato/NatoData.js.map +1 -1
- package/build/src/NavalFlags/NavalFlags.d.ts +7 -7
- package/build/src/NavalFlags/NavalFlags.js +75 -77
- package/build/src/NavalFlags/NavalFlags.js.map +1 -1
- package/build/src/Resistor/Resistor.d.ts +24 -24
- package/build/src/Resistor/Resistor.js +86 -86
- package/build/src/Resistor/Resistor.js.map +1 -1
- package/build/src/Resistor/ResistorColorEntry.d.ts +12 -12
- package/build/src/Resistor/ResistorColorEntry.js +36 -31
- package/build/src/Resistor/ResistorColorEntry.js.map +1 -1
- package/build/src/Semaphore/SemaphoreCharacter.d.ts +20 -20
- package/build/src/Semaphore/SemaphoreCharacter.js +75 -75
- package/build/src/Semaphore/SemaphoreCharacter.js.map +1 -1
- package/build/src/Semaphore/SemaphoreData.d.ts +6 -6
- package/build/src/Semaphore/SemaphoreData.js +53 -53
- package/build/src/Semaphore/SemaphoreData.js.map +1 -1
- package/build/src/Semaphore/SemaphoreDegrees.d.ts +5 -5
- package/build/src/Semaphore/SemaphoreDegrees.js +26 -26
- package/build/src/Semaphore/SemaphoreDegrees.js.map +1 -1
- package/build/src/Semaphore/SemaphoreDirection.d.ts +11 -11
- package/build/src/Semaphore/SemaphoreDirection.js +15 -15
- package/build/src/Semaphore/SemaphoreDirection.js.map +1 -1
- package/build/src/Semaphore/SemaphoreEncoding.d.ts +40 -40
- package/build/src/Semaphore/SemaphoreEncoding.js +48 -47
- package/build/src/Semaphore/SemaphoreEncoding.js.map +1 -1
- package/build/src/Semaphore/SemaphoreStream.d.ts +17 -17
- package/build/src/Semaphore/SemaphoreStream.js +73 -72
- package/build/src/Semaphore/SemaphoreStream.js.map +1 -1
- package/build/src/WordSearch/Point.d.ts +4 -4
- package/build/src/WordSearch/Point.js +2 -2
- package/build/src/WordSearch/Result.d.ts +6 -6
- package/build/src/WordSearch/Result.js +12 -10
- package/build/src/WordSearch/Result.js.map +1 -1
- package/build/src/WordSearch/WordSearchDirection.d.ts +6 -6
- package/build/src/WordSearch/WordSearchDirection.js +10 -10
- package/build/src/WordSearch/WordSearchDirection.js.map +1 -1
- package/build/src/WordSearch/WordSearchSolver.d.ts +27 -27
- package/build/src/WordSearch/WordSearchSolver.js +232 -222
- package/build/src/WordSearch/WordSearchSolver.js.map +1 -1
- package/build/src/index.d.ts +35 -35
- package/build/src/index.js +72 -72
- package/package.json +40 -40
- package/src/Braille/BrailleCharacter.ts +1 -1
- package/src/Braille/BrailleData.ts +16 -16
- package/src/Cipher/AutoKeyString.ts +1 -1
- package/src/Cipher/CaesarUtils.ts +1 -1
- package/src/Cipher/VigenereString.ts +1 -1
- package/src/Common/EncodingDataBase.ts +1 -1
- package/src/Conversion/CharacterAutoConvert.ts +1 -1
- package/src/Conversion/CharacterConversion.ts +5 -5
- package/src/Conversion/SignificantFigures.ts +1 -1
- package/src/Conversion/StringAutoConvert.ts +2 -2
- package/src/Morse/MorseData.ts +18 -18
- package/src/Morse/MorseString.ts +12 -12
- package/src/Nato/NatoData.ts +1 -1
- package/src/NavalFlags/LICENSE +6 -6
- package/src/NavalFlags/NavalFlags.ts +52 -52
- package/src/Resistor/Resistor.ts +9 -9
- package/src/Resistor/ResistorColorEntry.ts +1 -1
- package/src/Semaphore/SemaphoreCharacter.ts +5 -5
- package/src/Semaphore/SemaphoreData.ts +1 -1
- package/src/WordSearch/WordSearchSolver.ts +1 -1
package/build/src/index.js
CHANGED
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.WordSearchSpaceTreatment = exports.WordSearchSolver = exports.WordSearchDirection = exports.WordSearchResult = exports.SemaphoreStream = exports.SemaphoreEncoding = exports.SemaphoreDirection = exports.SemaphoreDegrees = exports.SemaphoreCharacter = exports.ResistorColorEntry = exports.Resistor = exports.NavalFlags = exports.NatoData = exports.NatoCharacter = exports.MorseString = exports.MorseEncoding = exports.MorseCharacter = exports.StringAutoConvert = exports.SignificantFigures = exports.CharacterTableEntry = exports.CharacterEncoding = exports.CharacterConversion = exports.CharacterAutoConvert = exports.InlineSvg = exports.EncodingEntry = exports.EncodingCategory = exports.CharacterImage = exports.VigenereString = exports.KeyedCipherStringBase = exports.CaesarString = exports.AutoKeyString = exports.BrailleStream = exports.BrailleEncoding = exports.BrailleDot = exports.BrailleCharacter = void 0;
|
|
4
|
-
var BrailleCharacter_1 = require("./Braille/BrailleCharacter");
|
|
5
|
-
Object.defineProperty(exports, "BrailleCharacter", { enumerable: true, get: function () { return BrailleCharacter_1.BrailleCharacter; } });
|
|
6
|
-
var BrailleDot_1 = require("./Braille/BrailleDot");
|
|
7
|
-
Object.defineProperty(exports, "BrailleDot", { enumerable: true, get: function () { return BrailleDot_1.BrailleDot; } });
|
|
8
|
-
var BrailleEncoding_1 = require("./Braille/BrailleEncoding");
|
|
9
|
-
Object.defineProperty(exports, "BrailleEncoding", { enumerable: true, get: function () { return BrailleEncoding_1.BrailleEncoding; } });
|
|
10
|
-
var BrailleStream_1 = require("./Braille/BrailleStream");
|
|
11
|
-
Object.defineProperty(exports, "BrailleStream", { enumerable: true, get: function () { return BrailleStream_1.BrailleStream; } });
|
|
12
|
-
var AutoKeyString_1 = require("./Cipher/AutoKeyString");
|
|
13
|
-
Object.defineProperty(exports, "AutoKeyString", { enumerable: true, get: function () { return AutoKeyString_1.AutoKeyString; } });
|
|
14
|
-
var CaesarString_1 = require("./Cipher/CaesarString");
|
|
15
|
-
Object.defineProperty(exports, "CaesarString", { enumerable: true, get: function () { return CaesarString_1.CaesarString; } });
|
|
16
|
-
var KeyedCipherStringBase_1 = require("./Cipher/KeyedCipherStringBase");
|
|
17
|
-
Object.defineProperty(exports, "KeyedCipherStringBase", { enumerable: true, get: function () { return KeyedCipherStringBase_1.KeyedCipherStringBase; } });
|
|
18
|
-
var VigenereString_1 = require("./Cipher/VigenereString");
|
|
19
|
-
Object.defineProperty(exports, "VigenereString", { enumerable: true, get: function () { return VigenereString_1.VigenereString; } });
|
|
20
|
-
var CharacterImage_1 = require("./Common/CharacterImage");
|
|
21
|
-
Object.defineProperty(exports, "CharacterImage", { enumerable: true, get: function () { return CharacterImage_1.CharacterImage; } });
|
|
22
|
-
var EncodingCategory_1 = require("./Common/EncodingCategory");
|
|
23
|
-
Object.defineProperty(exports, "EncodingCategory", { enumerable: true, get: function () { return EncodingCategory_1.EncodingCategory; } });
|
|
24
|
-
var EncodingEntry_1 = require("./Common/EncodingEntry");
|
|
25
|
-
Object.defineProperty(exports, "EncodingEntry", { enumerable: true, get: function () { return EncodingEntry_1.EncodingEntry; } });
|
|
26
|
-
var InlineSvg_1 = require("./Common/InlineSvg");
|
|
27
|
-
Object.defineProperty(exports, "InlineSvg", { enumerable: true, get: function () { return InlineSvg_1.InlineSvg; } });
|
|
28
|
-
var CharacterAutoConvert_1 = require("./Conversion/CharacterAutoConvert");
|
|
29
|
-
Object.defineProperty(exports, "CharacterAutoConvert", { enumerable: true, get: function () { return CharacterAutoConvert_1.CharacterAutoConvert; } });
|
|
30
|
-
var CharacterConversion_1 = require("./Conversion/CharacterConversion");
|
|
31
|
-
Object.defineProperty(exports, "CharacterConversion", { enumerable: true, get: function () { return CharacterConversion_1.CharacterConversion; } });
|
|
32
|
-
var CharacterEncoding_1 = require("./Conversion/CharacterEncoding");
|
|
33
|
-
Object.defineProperty(exports, "CharacterEncoding", { enumerable: true, get: function () { return CharacterEncoding_1.CharacterEncoding; } });
|
|
34
|
-
var CharacterTableEntry_1 = require("./Conversion/CharacterTableEntry");
|
|
35
|
-
Object.defineProperty(exports, "CharacterTableEntry", { enumerable: true, get: function () { return CharacterTableEntry_1.CharacterTableEntry; } });
|
|
36
|
-
var SignificantFigures_1 = require("./Conversion/SignificantFigures");
|
|
37
|
-
Object.defineProperty(exports, "SignificantFigures", { enumerable: true, get: function () { return SignificantFigures_1.SignificantFigures; } });
|
|
38
|
-
var StringAutoConvert_1 = require("./Conversion/StringAutoConvert");
|
|
39
|
-
Object.defineProperty(exports, "StringAutoConvert", { enumerable: true, get: function () { return StringAutoConvert_1.StringAutoConvert; } });
|
|
40
|
-
var MorseCharacter_1 = require("./Morse/MorseCharacter");
|
|
41
|
-
Object.defineProperty(exports, "MorseCharacter", { enumerable: true, get: function () { return MorseCharacter_1.MorseCharacter; } });
|
|
42
|
-
var MorseEncoding_1 = require("./Morse/MorseEncoding");
|
|
43
|
-
Object.defineProperty(exports, "MorseEncoding", { enumerable: true, get: function () { return MorseEncoding_1.MorseEncoding; } });
|
|
44
|
-
var MorseString_1 = require("./Morse/MorseString");
|
|
45
|
-
Object.defineProperty(exports, "MorseString", { enumerable: true, get: function () { return MorseString_1.MorseString; } });
|
|
46
|
-
var NatoCharacter_1 = require("./Nato/NatoCharacter");
|
|
47
|
-
Object.defineProperty(exports, "NatoCharacter", { enumerable: true, get: function () { return NatoCharacter_1.NatoCharacter; } });
|
|
48
|
-
var NatoData_1 = require("./Nato/NatoData");
|
|
49
|
-
Object.defineProperty(exports, "NatoData", { enumerable: true, get: function () { return NatoData_1.NatoData; } });
|
|
50
|
-
var NavalFlags_1 = require("./NavalFlags/NavalFlags");
|
|
51
|
-
Object.defineProperty(exports, "NavalFlags", { enumerable: true, get: function () { return NavalFlags_1.NavalFlags; } });
|
|
52
|
-
var Resistor_1 = require("./Resistor/Resistor");
|
|
53
|
-
Object.defineProperty(exports, "Resistor", { enumerable: true, get: function () { return Resistor_1.Resistor; } });
|
|
54
|
-
var ResistorColorEntry_1 = require("./Resistor/ResistorColorEntry");
|
|
55
|
-
Object.defineProperty(exports, "ResistorColorEntry", { enumerable: true, get: function () { return ResistorColorEntry_1.ResistorColorEntry; } });
|
|
56
|
-
var SemaphoreCharacter_1 = require("./Semaphore/SemaphoreCharacter");
|
|
57
|
-
Object.defineProperty(exports, "SemaphoreCharacter", { enumerable: true, get: function () { return SemaphoreCharacter_1.SemaphoreCharacter; } });
|
|
58
|
-
var SemaphoreDegrees_1 = require("./Semaphore/SemaphoreDegrees");
|
|
59
|
-
Object.defineProperty(exports, "SemaphoreDegrees", { enumerable: true, get: function () { return SemaphoreDegrees_1.SemaphoreDegrees; } });
|
|
60
|
-
var SemaphoreDirection_1 = require("./Semaphore/SemaphoreDirection");
|
|
61
|
-
Object.defineProperty(exports, "SemaphoreDirection", { enumerable: true, get: function () { return SemaphoreDirection_1.SemaphoreDirection; } });
|
|
62
|
-
var SemaphoreEncoding_1 = require("./Semaphore/SemaphoreEncoding");
|
|
63
|
-
Object.defineProperty(exports, "SemaphoreEncoding", { enumerable: true, get: function () { return SemaphoreEncoding_1.SemaphoreEncoding; } });
|
|
64
|
-
var SemaphoreStream_1 = require("./Semaphore/SemaphoreStream");
|
|
65
|
-
Object.defineProperty(exports, "SemaphoreStream", { enumerable: true, get: function () { return SemaphoreStream_1.SemaphoreStream; } });
|
|
66
|
-
var Result_1 = require("./WordSearch/Result");
|
|
67
|
-
Object.defineProperty(exports, "WordSearchResult", { enumerable: true, get: function () { return Result_1.Result; } });
|
|
68
|
-
var WordSearchDirection_1 = require("./WordSearch/WordSearchDirection");
|
|
69
|
-
Object.defineProperty(exports, "WordSearchDirection", { enumerable: true, get: function () { return WordSearchDirection_1.WordSearchDirection; } });
|
|
70
|
-
var WordSearchSolver_1 = require("./WordSearch/WordSearchSolver");
|
|
71
|
-
Object.defineProperty(exports, "WordSearchSolver", { enumerable: true, get: function () { return WordSearchSolver_1.WordSearchSolver; } });
|
|
72
|
-
Object.defineProperty(exports, "WordSearchSpaceTreatment", { enumerable: true, get: function () { return WordSearchSolver_1.WordSearchSpaceTreatment; } });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WordSearchSpaceTreatment = exports.WordSearchSolver = exports.WordSearchDirection = exports.WordSearchResult = exports.SemaphoreStream = exports.SemaphoreEncoding = exports.SemaphoreDirection = exports.SemaphoreDegrees = exports.SemaphoreCharacter = exports.ResistorColorEntry = exports.Resistor = exports.NavalFlags = exports.NatoData = exports.NatoCharacter = exports.MorseString = exports.MorseEncoding = exports.MorseCharacter = exports.StringAutoConvert = exports.SignificantFigures = exports.CharacterTableEntry = exports.CharacterEncoding = exports.CharacterConversion = exports.CharacterAutoConvert = exports.InlineSvg = exports.EncodingEntry = exports.EncodingCategory = exports.CharacterImage = exports.VigenereString = exports.KeyedCipherStringBase = exports.CaesarString = exports.AutoKeyString = exports.BrailleStream = exports.BrailleEncoding = exports.BrailleDot = exports.BrailleCharacter = void 0;
|
|
4
|
+
var BrailleCharacter_1 = require("./Braille/BrailleCharacter");
|
|
5
|
+
Object.defineProperty(exports, "BrailleCharacter", { enumerable: true, get: function () { return BrailleCharacter_1.BrailleCharacter; } });
|
|
6
|
+
var BrailleDot_1 = require("./Braille/BrailleDot");
|
|
7
|
+
Object.defineProperty(exports, "BrailleDot", { enumerable: true, get: function () { return BrailleDot_1.BrailleDot; } });
|
|
8
|
+
var BrailleEncoding_1 = require("./Braille/BrailleEncoding");
|
|
9
|
+
Object.defineProperty(exports, "BrailleEncoding", { enumerable: true, get: function () { return BrailleEncoding_1.BrailleEncoding; } });
|
|
10
|
+
var BrailleStream_1 = require("./Braille/BrailleStream");
|
|
11
|
+
Object.defineProperty(exports, "BrailleStream", { enumerable: true, get: function () { return BrailleStream_1.BrailleStream; } });
|
|
12
|
+
var AutoKeyString_1 = require("./Cipher/AutoKeyString");
|
|
13
|
+
Object.defineProperty(exports, "AutoKeyString", { enumerable: true, get: function () { return AutoKeyString_1.AutoKeyString; } });
|
|
14
|
+
var CaesarString_1 = require("./Cipher/CaesarString");
|
|
15
|
+
Object.defineProperty(exports, "CaesarString", { enumerable: true, get: function () { return CaesarString_1.CaesarString; } });
|
|
16
|
+
var KeyedCipherStringBase_1 = require("./Cipher/KeyedCipherStringBase");
|
|
17
|
+
Object.defineProperty(exports, "KeyedCipherStringBase", { enumerable: true, get: function () { return KeyedCipherStringBase_1.KeyedCipherStringBase; } });
|
|
18
|
+
var VigenereString_1 = require("./Cipher/VigenereString");
|
|
19
|
+
Object.defineProperty(exports, "VigenereString", { enumerable: true, get: function () { return VigenereString_1.VigenereString; } });
|
|
20
|
+
var CharacterImage_1 = require("./Common/CharacterImage");
|
|
21
|
+
Object.defineProperty(exports, "CharacterImage", { enumerable: true, get: function () { return CharacterImage_1.CharacterImage; } });
|
|
22
|
+
var EncodingCategory_1 = require("./Common/EncodingCategory");
|
|
23
|
+
Object.defineProperty(exports, "EncodingCategory", { enumerable: true, get: function () { return EncodingCategory_1.EncodingCategory; } });
|
|
24
|
+
var EncodingEntry_1 = require("./Common/EncodingEntry");
|
|
25
|
+
Object.defineProperty(exports, "EncodingEntry", { enumerable: true, get: function () { return EncodingEntry_1.EncodingEntry; } });
|
|
26
|
+
var InlineSvg_1 = require("./Common/InlineSvg");
|
|
27
|
+
Object.defineProperty(exports, "InlineSvg", { enumerable: true, get: function () { return InlineSvg_1.InlineSvg; } });
|
|
28
|
+
var CharacterAutoConvert_1 = require("./Conversion/CharacterAutoConvert");
|
|
29
|
+
Object.defineProperty(exports, "CharacterAutoConvert", { enumerable: true, get: function () { return CharacterAutoConvert_1.CharacterAutoConvert; } });
|
|
30
|
+
var CharacterConversion_1 = require("./Conversion/CharacterConversion");
|
|
31
|
+
Object.defineProperty(exports, "CharacterConversion", { enumerable: true, get: function () { return CharacterConversion_1.CharacterConversion; } });
|
|
32
|
+
var CharacterEncoding_1 = require("./Conversion/CharacterEncoding");
|
|
33
|
+
Object.defineProperty(exports, "CharacterEncoding", { enumerable: true, get: function () { return CharacterEncoding_1.CharacterEncoding; } });
|
|
34
|
+
var CharacterTableEntry_1 = require("./Conversion/CharacterTableEntry");
|
|
35
|
+
Object.defineProperty(exports, "CharacterTableEntry", { enumerable: true, get: function () { return CharacterTableEntry_1.CharacterTableEntry; } });
|
|
36
|
+
var SignificantFigures_1 = require("./Conversion/SignificantFigures");
|
|
37
|
+
Object.defineProperty(exports, "SignificantFigures", { enumerable: true, get: function () { return SignificantFigures_1.SignificantFigures; } });
|
|
38
|
+
var StringAutoConvert_1 = require("./Conversion/StringAutoConvert");
|
|
39
|
+
Object.defineProperty(exports, "StringAutoConvert", { enumerable: true, get: function () { return StringAutoConvert_1.StringAutoConvert; } });
|
|
40
|
+
var MorseCharacter_1 = require("./Morse/MorseCharacter");
|
|
41
|
+
Object.defineProperty(exports, "MorseCharacter", { enumerable: true, get: function () { return MorseCharacter_1.MorseCharacter; } });
|
|
42
|
+
var MorseEncoding_1 = require("./Morse/MorseEncoding");
|
|
43
|
+
Object.defineProperty(exports, "MorseEncoding", { enumerable: true, get: function () { return MorseEncoding_1.MorseEncoding; } });
|
|
44
|
+
var MorseString_1 = require("./Morse/MorseString");
|
|
45
|
+
Object.defineProperty(exports, "MorseString", { enumerable: true, get: function () { return MorseString_1.MorseString; } });
|
|
46
|
+
var NatoCharacter_1 = require("./Nato/NatoCharacter");
|
|
47
|
+
Object.defineProperty(exports, "NatoCharacter", { enumerable: true, get: function () { return NatoCharacter_1.NatoCharacter; } });
|
|
48
|
+
var NatoData_1 = require("./Nato/NatoData");
|
|
49
|
+
Object.defineProperty(exports, "NatoData", { enumerable: true, get: function () { return NatoData_1.NatoData; } });
|
|
50
|
+
var NavalFlags_1 = require("./NavalFlags/NavalFlags");
|
|
51
|
+
Object.defineProperty(exports, "NavalFlags", { enumerable: true, get: function () { return NavalFlags_1.NavalFlags; } });
|
|
52
|
+
var Resistor_1 = require("./Resistor/Resistor");
|
|
53
|
+
Object.defineProperty(exports, "Resistor", { enumerable: true, get: function () { return Resistor_1.Resistor; } });
|
|
54
|
+
var ResistorColorEntry_1 = require("./Resistor/ResistorColorEntry");
|
|
55
|
+
Object.defineProperty(exports, "ResistorColorEntry", { enumerable: true, get: function () { return ResistorColorEntry_1.ResistorColorEntry; } });
|
|
56
|
+
var SemaphoreCharacter_1 = require("./Semaphore/SemaphoreCharacter");
|
|
57
|
+
Object.defineProperty(exports, "SemaphoreCharacter", { enumerable: true, get: function () { return SemaphoreCharacter_1.SemaphoreCharacter; } });
|
|
58
|
+
var SemaphoreDegrees_1 = require("./Semaphore/SemaphoreDegrees");
|
|
59
|
+
Object.defineProperty(exports, "SemaphoreDegrees", { enumerable: true, get: function () { return SemaphoreDegrees_1.SemaphoreDegrees; } });
|
|
60
|
+
var SemaphoreDirection_1 = require("./Semaphore/SemaphoreDirection");
|
|
61
|
+
Object.defineProperty(exports, "SemaphoreDirection", { enumerable: true, get: function () { return SemaphoreDirection_1.SemaphoreDirection; } });
|
|
62
|
+
var SemaphoreEncoding_1 = require("./Semaphore/SemaphoreEncoding");
|
|
63
|
+
Object.defineProperty(exports, "SemaphoreEncoding", { enumerable: true, get: function () { return SemaphoreEncoding_1.SemaphoreEncoding; } });
|
|
64
|
+
var SemaphoreStream_1 = require("./Semaphore/SemaphoreStream");
|
|
65
|
+
Object.defineProperty(exports, "SemaphoreStream", { enumerable: true, get: function () { return SemaphoreStream_1.SemaphoreStream; } });
|
|
66
|
+
var Result_1 = require("./WordSearch/Result");
|
|
67
|
+
Object.defineProperty(exports, "WordSearchResult", { enumerable: true, get: function () { return Result_1.Result; } });
|
|
68
|
+
var WordSearchDirection_1 = require("./WordSearch/WordSearchDirection");
|
|
69
|
+
Object.defineProperty(exports, "WordSearchDirection", { enumerable: true, get: function () { return WordSearchDirection_1.WordSearchDirection; } });
|
|
70
|
+
var WordSearchSolver_1 = require("./WordSearch/WordSearchSolver");
|
|
71
|
+
Object.defineProperty(exports, "WordSearchSolver", { enumerable: true, get: function () { return WordSearchSolver_1.WordSearchSolver; } });
|
|
72
|
+
Object.defineProperty(exports, "WordSearchSpaceTreatment", { enumerable: true, get: function () { return WordSearchSolver_1.WordSearchSpaceTreatment; } });
|
|
73
73
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "puzzle-lib",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Library of puzzle-solving algorithms",
|
|
5
|
-
"main": "build/src/index.js",
|
|
6
|
-
"types": "build/src/index.d.ts",
|
|
7
|
-
"files": [
|
|
8
|
-
"build/src",
|
|
9
|
-
"src"
|
|
10
|
-
],
|
|
11
|
-
"scripts": {
|
|
12
|
-
"clean": "gts clean",
|
|
13
|
-
"compile": "tsc",
|
|
14
|
-
"fix": "gts fix",
|
|
15
|
-
"lint": "gts lint",
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
"test": "
|
|
20
|
-
},
|
|
21
|
-
"repository": {
|
|
22
|
-
"type": "git",
|
|
23
|
-
"url": "git+https://github.com/puzztool/puzzle-lib.git"
|
|
24
|
-
},
|
|
25
|
-
"author": "Kyle Farnung",
|
|
26
|
-
"license": "MIT",
|
|
27
|
-
"bugs": {
|
|
28
|
-
"url": "https://github.com/puzztool/puzzle-lib/issues"
|
|
29
|
-
},
|
|
30
|
-
"homepage": "https://github.com/puzztool/puzzle-lib#readme",
|
|
31
|
-
"devDependencies": {
|
|
32
|
-
"@types/node": "^
|
|
33
|
-
"gts": "^
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
},
|
|
37
|
-
"dependencies": {
|
|
38
|
-
"trie-prefix-tree": "^1.5.1"
|
|
39
|
-
}
|
|
40
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "puzzle-lib",
|
|
3
|
+
"version": "1.8.1",
|
|
4
|
+
"description": "Library of puzzle-solving algorithms",
|
|
5
|
+
"main": "build/src/index.js",
|
|
6
|
+
"types": "build/src/index.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"build/src",
|
|
9
|
+
"src"
|
|
10
|
+
],
|
|
11
|
+
"scripts": {
|
|
12
|
+
"clean": "gts clean",
|
|
13
|
+
"compile": "tsc",
|
|
14
|
+
"fix": "gts fix",
|
|
15
|
+
"lint": "gts lint",
|
|
16
|
+
"prepare": "npm run compile",
|
|
17
|
+
"pretest": "tsc --noEmit",
|
|
18
|
+
"test": "vitest run",
|
|
19
|
+
"test:watch": "vitest"
|
|
20
|
+
},
|
|
21
|
+
"repository": {
|
|
22
|
+
"type": "git",
|
|
23
|
+
"url": "git+https://github.com/puzztool/puzzle-lib.git"
|
|
24
|
+
},
|
|
25
|
+
"author": "Kyle Farnung",
|
|
26
|
+
"license": "MIT",
|
|
27
|
+
"bugs": {
|
|
28
|
+
"url": "https://github.com/puzztool/puzzle-lib/issues"
|
|
29
|
+
},
|
|
30
|
+
"homepage": "https://github.com/puzztool/puzzle-lib#readme",
|
|
31
|
+
"devDependencies": {
|
|
32
|
+
"@types/node": "^20.19.33",
|
|
33
|
+
"gts": "^7.0.0",
|
|
34
|
+
"typescript": "^5.9.3",
|
|
35
|
+
"vitest": "^4.0.18"
|
|
36
|
+
},
|
|
37
|
+
"dependencies": {
|
|
38
|
+
"trie-prefix-tree": "^1.5.1"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -9,7 +9,7 @@ export class BrailleCharacter extends EncodingCharacterBase<BrailleEncoding> {
|
|
|
9
9
|
|
|
10
10
|
constructor(
|
|
11
11
|
encoding: BrailleEncoding = BrailleEncoding.None,
|
|
12
|
-
category: EncodingCategory = EncodingCategory.All
|
|
12
|
+
category: EncodingCategory = EncodingCategory.All,
|
|
13
13
|
) {
|
|
14
14
|
super(BrailleData.instance, category);
|
|
15
15
|
|
|
@@ -49,83 +49,83 @@ export class BrailleData extends EncodingDataBase<BrailleEncoding> {
|
|
|
49
49
|
this.addToList(
|
|
50
50
|
BrailleEncoding.FormattingNumber,
|
|
51
51
|
EncodingCategory.Formatting,
|
|
52
|
-
'#'
|
|
52
|
+
'#',
|
|
53
53
|
);
|
|
54
54
|
this.addToList(
|
|
55
55
|
BrailleEncoding.FormattingCapital,
|
|
56
56
|
EncodingCategory.Formatting,
|
|
57
|
-
'^'
|
|
57
|
+
'^',
|
|
58
58
|
);
|
|
59
59
|
|
|
60
60
|
this.addToList(
|
|
61
61
|
BrailleEncoding.PunctuationComma,
|
|
62
62
|
EncodingCategory.Punctuation,
|
|
63
|
-
','
|
|
63
|
+
',',
|
|
64
64
|
);
|
|
65
65
|
this.addToList(
|
|
66
66
|
BrailleEncoding.PunctuationSemicolon,
|
|
67
67
|
EncodingCategory.Punctuation,
|
|
68
|
-
';'
|
|
68
|
+
';',
|
|
69
69
|
);
|
|
70
70
|
this.addToList(
|
|
71
71
|
BrailleEncoding.PunctuationApostrophe,
|
|
72
72
|
EncodingCategory.Punctuation,
|
|
73
|
-
"'"
|
|
73
|
+
"'",
|
|
74
74
|
);
|
|
75
75
|
this.addToList(
|
|
76
76
|
BrailleEncoding.PunctuationColon,
|
|
77
77
|
EncodingCategory.Punctuation,
|
|
78
|
-
':'
|
|
78
|
+
':',
|
|
79
79
|
);
|
|
80
80
|
this.addToList(
|
|
81
81
|
BrailleEncoding.PunctuationHyphen,
|
|
82
82
|
EncodingCategory.Punctuation,
|
|
83
|
-
'-'
|
|
83
|
+
'-',
|
|
84
84
|
);
|
|
85
85
|
this.addToList(
|
|
86
86
|
BrailleEncoding.PunctuationDecimalPoint,
|
|
87
87
|
EncodingCategory.Punctuation,
|
|
88
|
-
'.'
|
|
88
|
+
'.',
|
|
89
89
|
);
|
|
90
90
|
this.addToList(
|
|
91
91
|
BrailleEncoding.PunctuationFullStop,
|
|
92
92
|
EncodingCategory.Punctuation,
|
|
93
|
-
'.'
|
|
93
|
+
'.',
|
|
94
94
|
);
|
|
95
95
|
this.addToList(
|
|
96
96
|
BrailleEncoding.PunctuationExclamationPoint,
|
|
97
97
|
EncodingCategory.Punctuation,
|
|
98
|
-
'!'
|
|
98
|
+
'!',
|
|
99
99
|
);
|
|
100
100
|
this.addToList(
|
|
101
101
|
BrailleEncoding.PunctuationOpenQuote,
|
|
102
102
|
EncodingCategory.Punctuation,
|
|
103
|
-
'"'
|
|
103
|
+
'"',
|
|
104
104
|
);
|
|
105
105
|
this.addToList(
|
|
106
106
|
BrailleEncoding.PunctuationQuestionMark,
|
|
107
107
|
EncodingCategory.Punctuation,
|
|
108
|
-
'?'
|
|
108
|
+
'?',
|
|
109
109
|
);
|
|
110
110
|
this.addToList(
|
|
111
111
|
BrailleEncoding.PunctuationCloseQuote,
|
|
112
112
|
EncodingCategory.Punctuation,
|
|
113
|
-
'"'
|
|
113
|
+
'"',
|
|
114
114
|
);
|
|
115
115
|
this.addToList(
|
|
116
116
|
BrailleEncoding.PunctuationBracket,
|
|
117
117
|
EncodingCategory.Punctuation,
|
|
118
|
-
'('
|
|
118
|
+
'(',
|
|
119
119
|
);
|
|
120
120
|
this.addToList(
|
|
121
121
|
BrailleEncoding.PunctuationBracket,
|
|
122
122
|
EncodingCategory.Punctuation,
|
|
123
|
-
')'
|
|
123
|
+
')',
|
|
124
124
|
);
|
|
125
125
|
this.addToList(
|
|
126
126
|
BrailleEncoding.PunctuationSlash,
|
|
127
127
|
EncodingCategory.Punctuation,
|
|
128
|
-
'/'
|
|
128
|
+
'/',
|
|
129
129
|
);
|
|
130
130
|
}
|
|
131
131
|
}
|
|
@@ -9,7 +9,7 @@ export class VigenereString extends KeyedCipherStringBase {
|
|
|
9
9
|
for (const ch of this._text) {
|
|
10
10
|
if (CaesarUtils.isAlpha(ch)) {
|
|
11
11
|
rotStr.push(
|
|
12
|
-
CaesarUtils.rotateLetterWithKey(ch, this._key, keyIndex++, decrypt)
|
|
12
|
+
CaesarUtils.rotateLetterWithKey(ch, this._key, keyIndex++, decrypt),
|
|
13
13
|
);
|
|
14
14
|
} else {
|
|
15
15
|
rotStr.push(ch);
|
|
@@ -5,7 +5,7 @@ export class CharacterAutoConvert {
|
|
|
5
5
|
// or simply dealing with binary which has no leading zeros
|
|
6
6
|
static convertCharacter(
|
|
7
7
|
input: string,
|
|
8
|
-
forcedCharacterEncoding?: CharacterEncoding
|
|
8
|
+
forcedCharacterEncoding?: CharacterEncoding,
|
|
9
9
|
) {
|
|
10
10
|
let encoding = null;
|
|
11
11
|
if (!forcedCharacterEncoding) {
|
|
@@ -8,21 +8,21 @@ export class CharacterConversion {
|
|
|
8
8
|
48,
|
|
9
9
|
57,
|
|
10
10
|
CharacterConversion.toAscii,
|
|
11
|
-
127
|
|
11
|
+
127,
|
|
12
12
|
);
|
|
13
13
|
CharacterConversion.addAsciiRange(
|
|
14
14
|
retVal,
|
|
15
15
|
65,
|
|
16
16
|
90,
|
|
17
17
|
CharacterConversion.toAscii,
|
|
18
|
-
127
|
|
18
|
+
127,
|
|
19
19
|
);
|
|
20
20
|
CharacterConversion.addAsciiRange(
|
|
21
21
|
retVal,
|
|
22
22
|
97,
|
|
23
23
|
122,
|
|
24
24
|
CharacterConversion.toAscii,
|
|
25
|
-
127
|
|
25
|
+
127,
|
|
26
26
|
);
|
|
27
27
|
|
|
28
28
|
return retVal;
|
|
@@ -35,7 +35,7 @@ export class CharacterConversion {
|
|
|
35
35
|
65,
|
|
36
36
|
90,
|
|
37
37
|
CharacterConversion.toOrdinal,
|
|
38
|
-
26
|
|
38
|
+
26,
|
|
39
39
|
);
|
|
40
40
|
|
|
41
41
|
return retVal;
|
|
@@ -79,7 +79,7 @@ export class CharacterConversion {
|
|
|
79
79
|
start: number,
|
|
80
80
|
end: number,
|
|
81
81
|
conversion: (value: string) => number,
|
|
82
|
-
maxValue: number
|
|
82
|
+
maxValue: number,
|
|
83
83
|
) {
|
|
84
84
|
for (let i = start; i <= end; i++) {
|
|
85
85
|
const letter = String.fromCharCode(i);
|
|
@@ -10,13 +10,13 @@ export class StringAutoConvert {
|
|
|
10
10
|
return split.reduce(
|
|
11
11
|
(result, letter) =>
|
|
12
12
|
result + CharacterAutoConvert.convertCharacter(letter, encoding),
|
|
13
|
-
''
|
|
13
|
+
'',
|
|
14
14
|
);
|
|
15
15
|
} else {
|
|
16
16
|
return split.reduce(
|
|
17
17
|
(result, letter) =>
|
|
18
18
|
result + CharacterAutoConvert.convertCharacter(letter),
|
|
19
|
-
''
|
|
19
|
+
'',
|
|
20
20
|
);
|
|
21
21
|
}
|
|
22
22
|
}
|
package/src/Morse/MorseData.ts
CHANGED
|
@@ -52,92 +52,92 @@ export class MorseData extends EncodingDataBase<MorseEncoding> {
|
|
|
52
52
|
this.addToList(
|
|
53
53
|
MorseEncoding.PunctuationPeriod,
|
|
54
54
|
EncodingCategory.Punctuation,
|
|
55
|
-
'.'
|
|
55
|
+
'.',
|
|
56
56
|
);
|
|
57
57
|
this.addToList(
|
|
58
58
|
MorseEncoding.PunctuationComma,
|
|
59
59
|
EncodingCategory.Punctuation,
|
|
60
|
-
','
|
|
60
|
+
',',
|
|
61
61
|
);
|
|
62
62
|
this.addToList(
|
|
63
63
|
MorseEncoding.PunctuationQuestionMark,
|
|
64
64
|
EncodingCategory.Punctuation,
|
|
65
|
-
'?'
|
|
65
|
+
'?',
|
|
66
66
|
);
|
|
67
67
|
this.addToList(
|
|
68
68
|
MorseEncoding.PunctuationApostrophe,
|
|
69
69
|
EncodingCategory.Punctuation,
|
|
70
|
-
"'"
|
|
70
|
+
"'",
|
|
71
71
|
);
|
|
72
72
|
this.addToList(
|
|
73
73
|
MorseEncoding.PunctuationExclamationPoint,
|
|
74
74
|
EncodingCategory.Punctuation,
|
|
75
|
-
'!'
|
|
75
|
+
'!',
|
|
76
76
|
);
|
|
77
77
|
this.addToList(
|
|
78
78
|
MorseEncoding.PunctuationForwardSlash,
|
|
79
79
|
EncodingCategory.Punctuation,
|
|
80
|
-
'/'
|
|
80
|
+
'/',
|
|
81
81
|
);
|
|
82
82
|
this.addToList(
|
|
83
83
|
MorseEncoding.PunctuationOpenParenthesis,
|
|
84
84
|
EncodingCategory.Punctuation,
|
|
85
|
-
'('
|
|
85
|
+
'(',
|
|
86
86
|
);
|
|
87
87
|
this.addToList(
|
|
88
88
|
MorseEncoding.PunctuationCloseParenthesis,
|
|
89
89
|
EncodingCategory.Punctuation,
|
|
90
|
-
')'
|
|
90
|
+
')',
|
|
91
91
|
);
|
|
92
92
|
this.addToList(
|
|
93
93
|
MorseEncoding.PunctuationAmpersand,
|
|
94
94
|
EncodingCategory.Punctuation,
|
|
95
|
-
'&'
|
|
95
|
+
'&',
|
|
96
96
|
);
|
|
97
97
|
this.addToList(
|
|
98
98
|
MorseEncoding.PunctuationColon,
|
|
99
99
|
EncodingCategory.Punctuation,
|
|
100
|
-
':'
|
|
100
|
+
':',
|
|
101
101
|
);
|
|
102
102
|
this.addToList(
|
|
103
103
|
MorseEncoding.PunctuationSemicolon,
|
|
104
104
|
EncodingCategory.Punctuation,
|
|
105
|
-
';'
|
|
105
|
+
';',
|
|
106
106
|
);
|
|
107
107
|
this.addToList(
|
|
108
108
|
MorseEncoding.PunctuationDoubleDash,
|
|
109
109
|
EncodingCategory.Punctuation,
|
|
110
|
-
'='
|
|
110
|
+
'=',
|
|
111
111
|
);
|
|
112
112
|
this.addToList(
|
|
113
113
|
MorseEncoding.PunctuationPlusSign,
|
|
114
114
|
EncodingCategory.Punctuation,
|
|
115
|
-
'+'
|
|
115
|
+
'+',
|
|
116
116
|
);
|
|
117
117
|
this.addToList(
|
|
118
118
|
MorseEncoding.PunctuationHyphen,
|
|
119
119
|
EncodingCategory.Punctuation,
|
|
120
|
-
'-'
|
|
120
|
+
'-',
|
|
121
121
|
);
|
|
122
122
|
this.addToList(
|
|
123
123
|
MorseEncoding.PunctuationUnderscore,
|
|
124
124
|
EncodingCategory.Punctuation,
|
|
125
|
-
'_'
|
|
125
|
+
'_',
|
|
126
126
|
);
|
|
127
127
|
this.addToList(
|
|
128
128
|
MorseEncoding.PunctuationQuotationMark,
|
|
129
129
|
EncodingCategory.Punctuation,
|
|
130
|
-
'"'
|
|
130
|
+
'"',
|
|
131
131
|
);
|
|
132
132
|
this.addToList(
|
|
133
133
|
MorseEncoding.PunctuationDollarSign,
|
|
134
134
|
EncodingCategory.Punctuation,
|
|
135
|
-
'$'
|
|
135
|
+
'$',
|
|
136
136
|
);
|
|
137
137
|
this.addToList(
|
|
138
138
|
MorseEncoding.PunctuationAtSign,
|
|
139
139
|
EncodingCategory.Punctuation,
|
|
140
|
-
'@'
|
|
140
|
+
'@',
|
|
141
141
|
);
|
|
142
142
|
}
|
|
143
143
|
}
|
package/src/Morse/MorseString.ts
CHANGED
|
@@ -11,53 +11,53 @@ export class MorseString {
|
|
|
11
11
|
constructor(
|
|
12
12
|
morse = '',
|
|
13
13
|
characterDivider = MorseString.CHARACTER_DIVIDER,
|
|
14
|
-
wordDivider = MorseString.WORD_DIVIDER
|
|
14
|
+
wordDivider = MorseString.WORD_DIVIDER,
|
|
15
15
|
) {
|
|
16
16
|
// The dividers should be single characters which don't clash with the other string content
|
|
17
17
|
Helpers.assertMsg(
|
|
18
18
|
characterDivider.length === 1,
|
|
19
|
-
'Divider must be a single character'
|
|
19
|
+
'Divider must be a single character',
|
|
20
20
|
);
|
|
21
21
|
Helpers.assertMsg(
|
|
22
22
|
wordDivider.length === 1,
|
|
23
|
-
'Divider must be a single character'
|
|
23
|
+
'Divider must be a single character',
|
|
24
24
|
);
|
|
25
25
|
Helpers.assertMsg(
|
|
26
26
|
characterDivider !== wordDivider,
|
|
27
|
-
'Dividers must be different from each other'
|
|
27
|
+
'Dividers must be different from each other',
|
|
28
28
|
);
|
|
29
29
|
Helpers.assertMsg(
|
|
30
30
|
characterDivider !== MorseCharacter.DASH,
|
|
31
|
-
'Character divider must not be a reserved value'
|
|
31
|
+
'Character divider must not be a reserved value',
|
|
32
32
|
);
|
|
33
33
|
Helpers.assertMsg(
|
|
34
34
|
characterDivider !== MorseCharacter.DOT,
|
|
35
|
-
'Character divider must not be a reserved value'
|
|
35
|
+
'Character divider must not be a reserved value',
|
|
36
36
|
);
|
|
37
37
|
Helpers.assertMsg(
|
|
38
38
|
characterDivider !== MorseCharacter.RESERVED_DIVIDER,
|
|
39
|
-
'Character divider must not be a reserved value'
|
|
39
|
+
'Character divider must not be a reserved value',
|
|
40
40
|
);
|
|
41
41
|
Helpers.assertMsg(
|
|
42
42
|
wordDivider !== MorseCharacter.DASH,
|
|
43
|
-
'Word divider must not be a reserved value'
|
|
43
|
+
'Word divider must not be a reserved value',
|
|
44
44
|
);
|
|
45
45
|
Helpers.assertMsg(
|
|
46
46
|
wordDivider !== MorseCharacter.DOT,
|
|
47
|
-
'Word divider must not be a reserved value'
|
|
47
|
+
'Word divider must not be a reserved value',
|
|
48
48
|
);
|
|
49
49
|
Helpers.assertMsg(
|
|
50
50
|
wordDivider !== MorseCharacter.RESERVED_DIVIDER,
|
|
51
|
-
'Word divider must not be a reserved value'
|
|
51
|
+
'Word divider must not be a reserved value',
|
|
52
52
|
);
|
|
53
53
|
|
|
54
54
|
const words = morse.split(wordDivider).filter(w => w.length > 0);
|
|
55
55
|
// Discard any empty characters (caused by trailing separator)
|
|
56
56
|
const wordCharacters = words.map(w =>
|
|
57
|
-
w.split(characterDivider).filter(wc => wc.length > 0)
|
|
57
|
+
w.split(characterDivider).filter(wc => wc.length > 0),
|
|
58
58
|
);
|
|
59
59
|
this._words = wordCharacters.map(subarray =>
|
|
60
|
-
subarray.map(wc => new MorseCharacter(wc))
|
|
60
|
+
subarray.map(wc => new MorseCharacter(wc)),
|
|
61
61
|
);
|
|
62
62
|
}
|
|
63
63
|
|