const vqSubtitleLineBreakPattern = /\r\n|\r|\n/g;

// 用途: 字幕テキストを明示改行ごとの表示行に分割する。
// 使用方法: VQSpeechSubtitleなどの字幕描画前に splitVQSubtitleLines(text) として呼び出す。
// オプションや引数詳細: text 内の \n・\r\n・\r を改行シンボルとして扱い、空行も表示行として残す。
export const splitVQSubtitleLines = (text: string) =>
  text.split(vqSubtitleLineBreakPattern);

// 用途: VOICEVOX読み上げに渡す前に字幕用の明示改行を取り除く。
// 使用方法: say(...) や音声生成前の読み上げテキスト正規化で stripVQSubtitleLineBreaks(text) として呼び出す。
// オプションや引数詳細: text 内の \n・\r\n・\r を削除し、読み上げ内容に改行シンボルが残らないようにする。
export const stripVQSubtitleLineBreaks = (text: string) =>
  text.replace(vqSubtitleLineBreakPattern, "");
