Repository navigation
refactor: View.vue を分ける(ミニエディタ・表の描画・選択・ダウンロード) - #190
Merged
Merged
Conversation
…tion, Excel download useMiniEditor.ts holds the mini editor's state, opening, saving, closing and arrow-key moves; useRenderedTable.ts the active sheet calculated and rendered as HTML; editorSelection.ts selecting a cell's JSON in the editor; excelDownload.ts the .xlsx download; sheetRows.ts the rows the editors read. Code moved as it was, with the View's refs passed in. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Member
Author
|
CODEX VERDICT: LGTM
FINDINGS COMPLETE: I read every hunk of the diff and this is every finding I have. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Splits
View.vue, which scoria flags asgod-file(over 500 lines). Code is moved as it was; behaviour does not change.New files under
src/vue/:useMiniEditor.ts: the mini editor's state, opening, saving, closing and arrow-key moves. It takes the View'seditableData,activeSheetIndexandpersistSheets.useRenderedTable.ts: calculating the active sheet and rendering it as an HTML table (renderedHtml). It takesresolvedSheets,activeSheetIndex,customFunctionsandlocale. The engine instance also moves here, still one per View.editorSelection.ts: while the JSON editor is open, selects a clicked cell's JSON in the editor and scrolls it into view.excelDownload.ts: the.xlsxdownload.sheetRows.ts:normalizeSheetData, which reads the editor JSON's rows.The file-backed load and save (
fetchSheets,persistSheets, following the file, saves that were refused) stay inView.vue.Items to Confirm
origin/main) and new demos were driven in Chromium (playwright-core) through the same steps, and the results compared.emit("updateResult")); the textarea's selection range and scroll position; the value and check state of each input; the downloaded file's name and the contents of its sheets.plainCellTextandisEditableTargetcaptured nothing, so they move to module scope.yarn lint,yarn typecheck,yarn build,yarn testandyarn test:enginepass. oxlint reports nothing.User Prompt
🤖 Generated with Claude Code
work in GUIChatPluginSpreadsheet