-
Notifications
You must be signed in to change notification settings - Fork 310
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
store/audio.ts
周りのリファクタリング
#1475
Comments
まとめありがとうございます!!! コードって結構なんか未知の理由があってリファクタリングできていないという時もたまにあると思うので、こうやって先に列挙していただけるとその手戻りが防げるからとても良いなと思いました!!! 全部見ていったのですが、問題がありそうなものはありませんでした!! ちょっと |
確認ありがとうございます。pathモジュール周りは地雷っぽいのでできる限り回避しようかなと思っています! |
を試みます |
内容
リファクタリング案です。
適当に弄っていたらdiffが1000行を軽く超えたので以下に小分けにしてPRを出そうかと思っています。
一人で完走できるか分からないので、とりあえずまとめておきます。
writeTextFile()
としてファイル先頭に移動Refactor: 文字コード系のwriteText関連処理を一箇所にまとめる #1448
changeTailToNonExistent()
としてファイル先頭に移動Refactor: 上書き防止処理を関数化し共通化 #1478
${speakerName}(${styleName || DEFAULT_STYLE_NAME})
を返す関数formatCharacterStyleName
を定義しutility.ts
に移動UI・.mdファイルの括弧の全角と半角を統一する #1510
DEFAULT_STYLE_NAME
として定義スタイルの
"ノーマル"
を定数にする #1520Refactor: デフォルトファイル名取得関数2つをgetterへ移動 #1490
buildFileName()
をgetters.DEFAULT_AUDIO_FILE_NAME()
に変更buildProjectName()
をstore/utilility.ts
からstore/audio.ts
に移しgetters.DEFAULT_PROJECT_FILE_NAME()
に変更components/Dialog.ts
に移動し、filePathをオプション引数から必須にするGENERATE_AUDIO(audioItem) returns { audioKey, audioBlob }
を根幹とする関連実装をstore/audioGenerator.ts
へ分離generateUniqueIdAndQuery()
もその中に移動、また一部をutility.ts
内generateUniqueId(serializable)
に分離GENERATE_LAB
もstore
を参照する必要がないのでgenerateLabFromAudioQuery(audioQuery)
としてその中に移動?(PLAY|STOP)_AUDIO(audioKey)
系のHTMLAudioElement
に対する操作をstore/audioPlayer.ts
へ分離Refactor:
audioPlayer.ts
を新規作成しaudio.ts
の一部機能を移転 #1492→さらに分解をする方針に
audioElements
がRecordである意味がないので単体にするRefactor:
audioElements
をRecordから単体にする #1525state.audioStates
からnowPlaying
を分離し単体にするRefactor:
audioStates
からnowPlayingAudioKey
を独立させる #1530audioElement
系の処理を別のactionへ分離refactor:
audioElement
関連の処理を分離 #1553audioPlayer
へ移動refactor:
audioPlayer.ts
を新規作成しaudio.ts
の一部機能を移転 #1579GENERATE_AUDIO_KEY
をストアの外に出す #1548ACTIVE_AUDIO_KEY
前提のものの引数をなくす?DirPath
/FilePath
/FileName
/FileBaseName
/FileExtension
を型から区別し、見通しを良くするDEFAULT_FILE_NAME_TEMPLATE
をDEFAULT_AUDIO_FILE_NAME_TEMPLATE = ${DEFAULT_AUDIO_FILE_BASE_NAME_TEMPLATE}.wav
とするDEFAULT_FILE_NAME_TEMPLATE
の拡張子無し版を定義 #1483getCharacterInfo()
をgetters.CHARACTER_INFO
に変更関連処理のmutationにデフォルト動作が定義されていてかつアプリ初期化付近で呼び出されているので一見して影響が不明だな、とか思った記憶があります。
state.startPoint
が一見意味不明なので名前をselectedAccentPhraseIndex
に変更変数名の脱字を修正 #1482
HAVE_AUDIO_QUERY
とIS_ACTIVE
が未使用っぽいので削除refactor:
store/audio.ts
内の不要になっていたgetterを削除 #1580GET_AUDIO_QUERY_OR_ERROR
を作るstore/type.ts
含め)Pros 良くなる点
Cons 悪くなる点
その他
細かい挙動について気づいた点を箇条書きにしておきます
The text was updated successfully, but these errors were encountered: