Swift Morse Decoder

Hi, I’m stuck with Morse Decoder where I believe I have my code right but still I get a String error which I cannot solve.

My code:

var englishText = "this is a secret message"

var secretMessage = ".... --- .-- -.. -.--   .--. .- .-. - -. . .-."

// Add your code below 🤫
var letterToMorse = [
  "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: --.."
]

var morseText = ""
for element in englishText {
  if let morseChar = letterToMorse["\(element)"] {
    morseText += morseChar + " "
  } else {
    morseText += "   "
  }
}
print(morseText)

Error:

Morse.swift:37:35: error: cannot subscript a value of type '[String]' with an argument of type 'String'
  if let morseChar = letterToMorse["\(element)"] {
                                  ^
Morse.swift:37:35: note: overloads for 'subscript' exist with these partially matching parameter lists: ((UnboundedRange_) -> ()), (Int), (Range<Int>), (Range<Self.Index>)
  if let morseChar = letterToMorse["\(element)"] {
                                  ^

Any help would be very much appreciated!

Regards,
Fredrik