@projectjam/morse-translate
Version:
a morse code encoder & decoder
25 lines (24 loc) • 1.37 kB
JavaScript
export const morseCodeMap = {
// Letters
A: ".-", B: "-...", C: "-.-.", D: "-..", E: ".", F: "..-.", G: "--.",
H: "....", I: "..", J: ".---", K: "-.-", L: ".-..", M: "--", N: "-.",
O: "---", P: ".--.", Q: "--.-", R: ".-.", S: "...", T: "-", U: "..-",
V: "...-", W: ".--", X: "-..-", Y: "-.--", Z: "--..",
// Digits
"0": "-----", "1": ".----", "2": "..---", "3": "...--", "4": "....-",
"5": ".....", "6": "-....", "7": "--...", "8": "---..", "9": "----.",
// Punctuation
".": ".-.-.-", ",": "--..--", "?": "..--..", "'": ".----.", "!": "-.-.--",
"/": "-..-.", "(": "-.--.", ")": "-.--.-", "&": ".-...", ":": "---...",
";": "-.-.-.", "=": "-...-", "+": ".-.-.", "-": "-....-", "_": "..--.-",
"\"": ".-..-.", "$": "...-..-", "@": ".--.-.", "#": ".----..",
"<": ".-...", ">": "---.", "%": "-----", "×": "-..-",
// Accents and non-ITU letters
Á: ".--.-", Ä: ".-.-", É: "..-..", Ñ: "--.--", Ö: "---.", Ü: "..--",
À: ".--.-", Å: ".--.-", Ą: ".-.-", Æ: ".-.-", Ç: "-.-..", Ś: "...-...",
Ŝ: "...-.", Þ: ".--..", Ð: "..--.", È: ".-..-", Ł: ".-..-", Ĝ: "--.-.",
Ĵ: ".---.", Ń: "--.--", Ø: "---.", Ż: "--..-", Ź: "--..-.",
// Whitespace
" ": "/"
};
export const inverseMorseCodeMap = Object.fromEntries(Object.entries(morseCodeMap).map(([char, morse]) => [morse, char]));