mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2026-02-21 10:04:44 +08:00
* refactor(CodeBlockView): generalize tool and preview Generalize code tool to action tool - CodeTool -> ActionTool - usePreviewTools -> useImagePreview - rename code tool classname from icon to tool-icon Generalize preview - move image preview components to Preview dir - simplify file names * refactor(useImageTools): simplify implementation, add pan * refactor(Preview): move image tools to floating toolbar * refactor: add enableDrag, enable zooming for SvgPreview * test: add tests for preview components * feat(Preview): add download buttons to dropdown * refactor(Preview): remove setTools from preview, improve SvgPreview * refactor: add useTemporaryValue * test: add tests for hooks * test: add tests for CodeToolButton and CodeToolbar * refactor(PreviewTool): add a setting item to enable preview tools * test: update snapshot * refactor: extract more code tools to hooks, add tests * refactor: extract tools from CodeEditor and CodeViewer * test: add tests for new tool hooks * refactor(CodeEditor): change collapsible to expanded, change wrappable to unwrapped * refactor: migrate codePreview to codeViewer * docs: CodeBlockView * refactor: add custom file icons, center the reset button * refactor: improve code quality * refactor: improve migration by deprecating codePreview * refactor: improve PlantUml and svgToCanvas * fix: plantuml style * test: fix tests * fix: button icon * refactor(SvgPreview): debounce rendering * feat(PreviewTool): add a dialog tool * fix: remove isValidPlantUML, improve plantuml rendering * refactor: extract shadow dom renderer * refactor: improve plantuml error messages * test: add tests for ImageToolbar and ImageToolButton * refactor: add ImagePreviewLayout to simplify layout and tests * refactor: add useDebouncedRender, update docs * chore: clean up unused props * refactor: clean transformation before copy/download/preview * refactor: update migrate version * refactor: style refactoring and fixes - show header background in split view - fix status bar radius - reset special view transformation on theme change - fix wrap tool icon - add a divider to split view - improve split view toggling (switch back to previous view) - revert copy tool to separate tools - fix top border radius for special views * refactor: move GraphvizPreview to shadow DOM - use renderString - keep renderSvgInShadowHost api consistent with others * fix: tests, icons, deleted files * refactor: use ResetIcon in ImageToolbar * test: remove unnecessary tests * fix: min height for special preview * fix: update migrate
77 lines
1.1 KiB
TypeScript
77 lines
1.1 KiB
TypeScript
import { ActionToolSpec } from './types'
|
|
|
|
export const TOOL_SPECS: Record<string, ActionToolSpec> = {
|
|
// Core tools
|
|
copy: {
|
|
id: 'copy',
|
|
type: 'core',
|
|
order: 11
|
|
},
|
|
download: {
|
|
id: 'download',
|
|
type: 'core',
|
|
order: 10
|
|
},
|
|
edit: {
|
|
id: 'edit',
|
|
type: 'core',
|
|
order: 12
|
|
},
|
|
'view-source': {
|
|
id: 'view-source',
|
|
type: 'core',
|
|
order: 12
|
|
},
|
|
save: {
|
|
id: 'save',
|
|
type: 'core',
|
|
order: 13
|
|
},
|
|
expand: {
|
|
id: 'expand',
|
|
type: 'core',
|
|
order: 20
|
|
},
|
|
// Quick tools
|
|
'split-view': {
|
|
id: 'split-view',
|
|
type: 'quick',
|
|
order: 10
|
|
},
|
|
run: {
|
|
id: 'run',
|
|
type: 'quick',
|
|
order: 11
|
|
},
|
|
wrap: {
|
|
id: 'wrap',
|
|
type: 'quick',
|
|
order: 20
|
|
},
|
|
'copy-image': {
|
|
id: 'copy-image',
|
|
type: 'quick',
|
|
order: 30
|
|
},
|
|
'download-svg': {
|
|
id: 'download-svg',
|
|
type: 'quick',
|
|
order: 31
|
|
},
|
|
'download-png': {
|
|
id: 'download-png',
|
|
type: 'quick',
|
|
order: 32
|
|
},
|
|
'zoom-in': {
|
|
id: 'zoom-in',
|
|
type: 'quick',
|
|
order: 40
|
|
},
|
|
'zoom-out': {
|
|
id: 'zoom-out',
|
|
type: 'quick',
|
|
order: 41
|
|
}
|
|
}
|