export default {
  name: 'symbols',
  data: () => ({}),
  methods: {
    wordWrap(text) {
      const regex =
        /[бвгджзйклмнпрстфхцчшщ]+[аеёиоуыэюя][бвгджзйклмнпрстфхцчшщ](?=[бвгджзйклмнпрстфхцчшщьъ ])[ьъй]?|[бвгджзйклмнпрстфхцчшщ]+[аеёиоуыэюя][й]?|[аеёиоуыэюя][бвгджзйклмнпрстфхцчшщ](?=[бвгджзйклмнпрстфхцчшщьъ ])[ъь]?|[аеёиоуыэюя](?=[а-я]{2})|(?<= +)[^\s]+(?= +|$)/gmi
      let out = '', offset = 0, prev = 0, pass = false
      let matches = text.matchAll(regex)
      for (const m of matches) {
        let hyphen = text[prev - 1] == ' ' ? '' : `-`
        out += text.substring(offset, prev) + hyphen + '\n'
        offset = prev
        if (!pass) prev = m.index
        pass = m[0].length < 2
      }
      out += text.substring(offset)
      return out
    },
  },
}
Всем привет,  нужно реализовать в тексте перенос слова по слогам если не хватает ширины контейнера. Желательно максимально грамотный перенос, функция которую я демонстрирую, принципе устраивает, но появляются (-) и лишнии пробелы  в слогах. Помогите пожалуйста разобраться, ну или может другой вариант предложите, буду благодарен