Skip to content

refactor: workspace.ts に getActiveTab helper を抽出 (#257)#258

Merged
ymnao merged 1 commit into
mainfrom
refactor/get-active-tab-helper-#257
Jun 28, 2026
Merged

refactor: workspace.ts に getActiveTab helper を抽出 (#257)#258
ymnao merged 1 commit into
mainfrom
refactor/get-active-tab-helper-#257

Conversation

@ymnao

@ymnao ymnao commented Jun 28, 2026

Copy link
Copy Markdown
Owner

概要

src/stores/workspace.ts 内で state.tabs.find((t) => t.id === state.activeTabId) パターンが 3 箇所で重複していたため、module-local helper getActiveTab(state: WorkspaceState): Tab | undefined として抽出。

関連 Issue

closes #257

移行 Stage

(該当なし — store 内部の小規模 refactor)

  • Stage 0: 雛形 + フロント表示確認
  • Stage 1: ファイル I/O
  • Stage 2: ワークスペース・ファイルツリー・ファイル監視
  • Stage 3: 全文検索(ripgrep sidecar)
  • Stage 4: Git Sync
  • Stage 5: OGP / PDF / アップデート
  • Stage 6: 仕上げ・配布・切り替え

変更内容

  • src/stores/workspace.ts に module-local helper を追加: function getActiveTab(state: WorkspaceState): Tab | undefined
  • 以下 3 箇所で state.tabs.find((t) => t.id === state.activeTabId)getActiveTab(state) に置換:
    • L62 navigateHistory
    • L86 selectNavigation selector
    • L201 navigateInTab
  • findIndex 系 (L77 activateTabByOffset / L285 closeTabsByPrefix) と別配列 find (L291) は対象配列または用途が異なるため scope 外
  • Issue 起票時の Option A 採用 (Option B = helper 化せず現状維持 は不採用、3 箇所同一パターンの集約による intent clarification 効果を優先)

動作確認

  • biome check src/stores/workspace.ts — clean
  • tsc --noEmit (web / node / e2e 3 config) — clean
  • vitest run — 2230 pass / 2 skipped (98 file)
  • /code-review low — (none)
  • /code-review medium — [] (8 angle 全 (none)、Reuse 2 件 = L77/L285 findIndex 非対称は scope 外として skip)
  • /simplify pass 1 — 4 reviewer 全 (none)

スクリーンショット

(該当なし — store 内部 refactor、UI 変更なし)

`state.tabs.find((t) => t.id === state.activeTabId)` パターンが
navigateHistory / selectNavigation / navigateInTab の 3 箇所で
重複していたため、module-local helper `getActiveTab(state)` として
抽出。findIndex 系 (L77 / L285) や別配列 find (L291) は対象配列または
用途が異なるため対象外。
@ymnao ymnao merged commit e391677 into main Jun 28, 2026
9 checks passed
@ymnao ymnao deleted the refactor/get-active-tab-helper-#257 branch June 28, 2026 13:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

refactor: workspace.ts に getActiveTab helper を抽出 (find 3 箇所重複)

1 participant