From 52c089ff92c707800d2debb11e0220e22c4c3fe4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9C=A8=E6=9D=AA?= Date: Fri, 27 Nov 2020 17:57:51 +0800 Subject: [PATCH] feat: remove fileIcon component and debugger webpack plugin --- build/webpack.base.js | 16 ++++------- package.json | 6 ++--- src/components/fileIcon/index.tsx | 31 ---------------------- src/components/fileIcon/style.scss | 11 -------- src/components/tabs/index.tsx | 2 +- src/components/tabs/style.scss | 7 ++++- src/components/tabs/tabButton.tsx | 8 +++--- stories/components/3-Tabs.stories.tsx | 12 ++++++--- yarn.lock | 38 +-------------------------- 9 files changed, 27 insertions(+), 104 deletions(-) delete mode 100644 src/components/fileIcon/index.tsx delete mode 100644 src/components/fileIcon/style.scss diff --git a/build/webpack.base.js b/build/webpack.base.js index 5f0819cf0..93a49014f 100644 --- a/build/webpack.base.js +++ b/build/webpack.base.js @@ -1,7 +1,6 @@ const path = require('path'); const webpack = require('webpack'); const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin'); -const CopyWebpackPlugin = require('copy-webpack-plugin'); module.exports = { mode: 'development', @@ -20,10 +19,12 @@ module.exports = { path: path.resolve(__dirname, '../dist'), }, module: { - rules: [{ + rules: [ + { test: /\.(js|jsx|tsx|ts)$/, exclude: /node_modules/, - use: [{ + use: [ + { loader: require.resolve('ts-loader'), options: { transpileOnly: true, @@ -49,12 +50,5 @@ module.exports = { new webpack.DefinePlugin({ __DEVELOPMENT__: true, }), - new CopyWebpackPlugin({ - patterns: [{ - context: path.resolve(__dirname, '../'), - from: './src/static', - to: './static' - }] - }) ], -}; \ No newline at end of file +}; diff --git a/package.json b/package.json index b26a7f341..0dbe0f69c 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,6 @@ "dependencies": { "@types/react": "^16.9.35", "@types/react-dom": "^16.9.9", - "copy-webpack-plugin": "^6.3.2", "dt-utils": "^1.0.1", "immutability-helper": "^3.1.1", "loadsh": "^0.0.4", @@ -41,8 +40,7 @@ "react-split-pane": "^0.1.92", "reflect-metadata": "^0.1.13", "tsyringe": "^4.3.0", - "vscode-codicons": "^0.0.10", - "vscode-icons-js": "^11.0.0" + "vscode-codicons": "^0.0.10" }, "devDependencies": { "@commitlint/cli": "^11.0.0", @@ -90,4 +88,4 @@ "path": "cz-conventional-changelog" } } -} \ No newline at end of file +} diff --git a/src/components/fileIcon/index.tsx b/src/components/fileIcon/index.tsx deleted file mode 100644 index 4a4aa71da..000000000 --- a/src/components/fileIcon/index.tsx +++ /dev/null @@ -1,31 +0,0 @@ -import './style.scss'; -import * as React from 'react'; -import { - getIconForFile, - getIconForFolder, - getIconForOpenFolder, -} from 'vscode-icons-js'; -import { prefixClaName, classNames } from 'mo/common/className'; - -const ICON_BASE_PATH = '/static/fileIcons/'; - -export interface Props { - fileName: string; - type?: 'folder' | 'folderOpen' | 'file'; - className?: string; -} - -export default function FileIcon({ fileName, type, className }: Props) { - const iconPath: string | undefined = - type === 'file' - ? getIconForFile(fileName) - : type === 'folder' - ? getIconForFolder(fileName) - : getIconForOpenFolder(fileName); - return ( - - ); -} diff --git a/src/components/fileIcon/style.scss b/src/components/fileIcon/style.scss deleted file mode 100644 index d2ed2a826..000000000 --- a/src/components/fileIcon/style.scss +++ /dev/null @@ -1,11 +0,0 @@ -@import 'mo/style/common'; -$fileIcon: 'file-icon'; - -#{prefix($fileIcon)} { - background-position: center center; - background-size: contain; - display: inline-block; - height: 16px; - vertical-align: middle; - width: 16px; -} diff --git a/src/components/tabs/index.tsx b/src/components/tabs/index.tsx index 11ea40724..ce4bdc1c6 100644 --- a/src/components/tabs/index.tsx +++ b/src/components/tabs/index.tsx @@ -51,7 +51,7 @@ const DraggleTabs = (props: ITabsProps) => { const onTabClose = (item: ITab) => {}; return ( - + {data?.map((item: ITab, index: number) => ( - + {name} { { modified: false, id: 3, - name: 'editor.tsx', - value: 'hello tsx', + name: 'editor.python', + value: 'hello python', + }, + { + modified: true, + id: 1, + name: 'editor.md', + value: 'hello markdown', }, ]; const [tabs, setTabs] = useState(data); @@ -36,7 +42,7 @@ stories.add('Basic Usage', () => {

Tab 提供组件多tab切换;拖拽

使用示例 1 - 基本使用

-
+