diff --git a/package.json b/package.json index 68d8efb069..28aafc9cdc 100644 --- a/package.json +++ b/package.json @@ -96,10 +96,6 @@ "@types/glob": "^7.1.1", "@types/jest": "^27.4.0", "@types/lodash": "^4.14.126", - "@types/lodash.debounce": "^4.0.6", - "@types/lodash.sortby": "^4.7.6", - "@types/lodash.throttle": "^4.1.6", - "@types/lodash.uniqby": "^4.1.6", "@types/md5": "^2.1.33", "@types/node": "^10.14.6", "@types/node-fetch": "^2.5.12", @@ -131,8 +127,6 @@ "jest-jasmine2": "^27.5.1", "jsdom": "^16.7.0", "jsdom-worker": "^0.2.1", - "lodash.groupby": "^4.6.0", - "lodash.uniqby": "^4.7.0", "mkdirp": "^0.5.1", "node-fetch": "^2.6.1", "offline-iconfont": "^1.1.0", diff --git a/packages/comments/package.json b/packages/comments/package.json index 01fbfc09eb..1e3032b19e 100644 --- a/packages/comments/package.json +++ b/packages/comments/package.json @@ -17,8 +17,6 @@ }, "dependencies": { "@opensumi/ide-core-common": "2.16.1", - "lodash.flattendeep": "^4.4.0", - "lodash.groupby": "^4.6.0", "marked": "4.0.10", "react-mentions": "^3.3.1" }, diff --git a/packages/comments/src/browser/comments.service.ts b/packages/comments/src/browser/comments.service.ts index 468c3b92fe..1c453215ff 100644 --- a/packages/comments/src/browser/comments.service.ts +++ b/packages/comments/src/browser/comments.service.ts @@ -1,6 +1,6 @@ -import debounce = require('lodash.debounce'); -import flattenDeep from 'lodash.flattendeep'; -import groupBy from 'lodash.groupby'; +import debounce from 'lodash/debounce'; +import flattenDeep from 'lodash/flattenDeep'; +import groupBy from 'lodash/groupBy'; import { observable, computed, action } from 'mobx'; import { INJECTOR_TOKEN, Injector, Injectable, Autowired } from '@opensumi/di'; @@ -46,7 +46,6 @@ import { import { CommentsPanel } from './comments-panel.view'; import { CommentsThread } from './comments-thread'; - @Injectable() export class CommentsService extends Disposable implements ICommentsService { @Autowired(INJECTOR_TOKEN) @@ -432,7 +431,7 @@ export class CommentsService extends Disposable implements ICommentsService { // 消除 document 引用 model?.dispose(); // 拍平,去掉 undefined - const flattenRange: IRange[] = flattenDeep(res).filter(Boolean); + const flattenRange: IRange[] = flattenDeep(res).filter(Boolean) as IRange[]; deferredRes.resolve(flattenRange); return flattenRange; } diff --git a/packages/core-browser/package.json b/packages/core-browser/package.json index 50d192a9c8..72baa865db 100644 --- a/packages/core-browser/package.json +++ b/packages/core-browser/package.json @@ -31,8 +31,6 @@ "jsonc-parser": "^2.1.0", "keycode": "^2.2.0", "lodash": "^4.17.15", - "lodash.throttle": "^4.1.1", - "lodash.uniqby": "^4.1.1", "lzutf8": "^0.5.5", "marked": "4.0.10", "mobx": "^5.9.4", diff --git a/packages/core-browser/src/layout/layout-state.ts b/packages/core-browser/src/layout/layout-state.ts index ef60a6c4e5..428d0d47da 100644 --- a/packages/core-browser/src/layout/layout-state.ts +++ b/packages/core-browser/src/layout/layout-state.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { Injectable, Autowired } from '@opensumi/di'; import { StorageProvider, IStorage, STORAGE_NAMESPACE, DisposableCollection, ILogger } from '@opensumi/ide-core-common'; diff --git a/packages/core-browser/src/menu/next/renderer/ctxmenu/browser.ts b/packages/core-browser/src/menu/next/renderer/ctxmenu/browser.ts index a268d75c07..88b304a8de 100644 --- a/packages/core-browser/src/menu/next/renderer/ctxmenu/browser.ts +++ b/packages/core-browser/src/menu/next/renderer/ctxmenu/browser.ts @@ -1,4 +1,4 @@ -import omit from 'lodash.omit'; +import omit from 'lodash/omit'; import { Injectable, Autowired } from '@opensumi/di'; diff --git a/packages/core-browser/src/toolbar/toolbar.tsx b/packages/core-browser/src/toolbar/toolbar.tsx index 3d6ed02188..cc4caa697b 100644 --- a/packages/core-browser/src/toolbar/toolbar.tsx +++ b/packages/core-browser/src/toolbar/toolbar.tsx @@ -1,5 +1,5 @@ import classnames from 'classnames'; -import throttle = require('lodash.throttle'); +import throttle from 'lodash/throttle'; import React from 'react'; import ReactDOM from 'react-dom'; @@ -24,7 +24,6 @@ import { ToolbarRegistryReadyEvent, } from './types'; - export const DEFAULT_TOOLBAR_ACTION_MARGIN = 5; export const DEFAULT_TOOLBAR_MORE_WIDTH = 14; diff --git a/packages/core-browser/src/utils/react-hooks.ts b/packages/core-browser/src/utils/react-hooks.ts index 9f588d84d3..9936f3194f 100644 --- a/packages/core-browser/src/utils/react-hooks.ts +++ b/packages/core-browser/src/utils/react-hooks.ts @@ -1,4 +1,4 @@ -import _debounce from 'lodash.debounce'; +import _debounce from 'lodash/debounce'; import { useState, useEffect, DependencyList } from 'react'; import { Disposable, DisposableStore, IDisposable } from '@opensumi/ide-core-common'; diff --git a/packages/debug/src/browser/debug-session.ts b/packages/debug/src/browser/debug-session.ts index 44ec9f2424..8571af66c2 100644 --- a/packages/debug/src/browser/debug-session.ts +++ b/packages/debug/src/browser/debug-session.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { Emitter, diff --git a/packages/debug/src/browser/editor/debug-hover-widget.tsx b/packages/debug/src/browser/editor/debug-hover-widget.tsx index f6d35086bf..f2e03a34b0 100644 --- a/packages/debug/src/browser/editor/debug-hover-widget.tsx +++ b/packages/debug/src/browser/editor/debug-hover-widget.tsx @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import React from 'react'; import ReactDOM from 'react-dom'; @@ -27,7 +27,6 @@ import { DebugExpressionProvider } from './debug-expression-provider'; import { DebugHoverSource } from './debug-hover-source'; import { DebugHoverView } from './debug-hover.view'; - @Injectable() export class DebugHoverWidget implements IDebugHoverWidget { static ID = 'debug-hover-widget'; diff --git a/packages/debug/src/browser/editor/debug-model.ts b/packages/debug/src/browser/editor/debug-model.ts index 4f26ac655e..e7c635649c 100644 --- a/packages/debug/src/browser/editor/debug-model.ts +++ b/packages/debug/src/browser/editor/debug-model.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { Injector, Injectable, Autowired } from '@opensumi/di'; import { DomListener, IContextKeyService, IReporterService } from '@opensumi/ide-core-browser'; @@ -31,7 +31,6 @@ import { DebugBreakpointWidget } from './debug-breakpoint-widget'; import { DebugHoverWidget } from './debug-hover-widget'; import * as options from './debug-styles'; - @Injectable() export class DebugModel implements IDebugModel { protected readonly toDispose = new DisposableCollection(); diff --git a/packages/debug/src/browser/model/debug-watch.ts b/packages/debug/src/browser/model/debug-watch.ts index 9dd7688c8a..13c080a60e 100644 --- a/packages/debug/src/browser/model/debug-watch.ts +++ b/packages/debug/src/browser/model/debug-watch.ts @@ -1,4 +1,4 @@ -import throttle = require('lodash.throttle'); +import throttle from 'lodash/throttle'; import { DisposableCollection, Emitter, Event, IReporterService } from '@opensumi/ide-core-browser'; diff --git a/packages/debug/src/browser/view/console/debug-console-filter.view.tsx b/packages/debug/src/browser/view/console/debug-console-filter.view.tsx index 6005185042..7c7a1d3cca 100644 --- a/packages/debug/src/browser/view/console/debug-console-filter.view.tsx +++ b/packages/debug/src/browser/view/console/debug-console-filter.view.tsx @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { observer } from 'mobx-react-lite'; import React from 'react'; @@ -10,7 +10,6 @@ import { Key } from '@opensumi/ide-core-browser'; import { DebugConsoleFilterService } from './debug-console-filter.service'; import styles from './debug-console.module.less'; - /** * 调试控制台筛选器 */ diff --git a/packages/debug/src/browser/view/console/debug-console-session.ts b/packages/debug/src/browser/view/console/debug-console-session.ts index c42bb92d45..9b6847ddba 100644 --- a/packages/debug/src/browser/view/console/debug-console-session.ts +++ b/packages/debug/src/browser/view/console/debug-console-session.ts @@ -1,4 +1,4 @@ -import throttle = require('lodash.throttle'); +import throttle from 'lodash/throttle'; import { Autowired, Injectable, Optional } from '@opensumi/di'; import { DisposableCollection, Emitter, Event, MessageType, ILogger } from '@opensumi/ide-core-common'; @@ -12,7 +12,6 @@ import { ExpressionContainer, AnsiConsoleNode, DebugConsoleNode, DebugVariableCo import { DebugConsoleTreeModel } from './debug-console-model'; - type ConsoleNodes = DebugConsoleNode | AnsiConsoleNode | DebugVariableContainer; @Injectable({ multiple: true }) diff --git a/packages/debug/src/browser/view/console/debug-console.view.tsx b/packages/debug/src/browser/view/console/debug-console.view.tsx index c192a9679c..8bd32aaa86 100644 --- a/packages/debug/src/browser/view/console/debug-console.view.tsx +++ b/packages/debug/src/browser/view/console/debug-console.view.tsx @@ -1,5 +1,5 @@ import cls from 'classnames'; -import { debounce } from 'lodash'; +import debounce from 'lodash/debounce'; import { observer } from 'mobx-react-lite'; import React from 'react'; diff --git a/packages/debug/src/browser/view/variables/debug-variables-tree.model.service.ts b/packages/debug/src/browser/view/variables/debug-variables-tree.model.service.ts index c25ba79b18..bb29b34371 100644 --- a/packages/debug/src/browser/view/variables/debug-variables-tree.model.service.ts +++ b/packages/debug/src/browser/view/variables/debug-variables-tree.model.service.ts @@ -1,4 +1,4 @@ -import { isEqual } from 'lodash'; +import isEqual from 'lodash/isEqual'; import { Injectable, Autowired, INJECTOR_TOKEN, Injector } from '@opensumi/di'; import { @@ -20,7 +20,6 @@ import { import { AbstractContextMenuService, MenuId, ICtxMenuRenderer } from '@opensumi/ide-core-browser/lib/menu/next'; import { DebugProtocol } from '@opensumi/vscode-debugprotocol'; - import { DebugSession } from '../../debug-session'; import { ExpressionContainer, diff --git a/packages/editor/__tests__/browser/doc-cache/empty-doc-cache.test.ts b/packages/editor/__tests__/browser/doc-cache/empty-doc-cache.test.ts index 4fc17556dd..f52c0320a4 100644 --- a/packages/editor/__tests__/browser/doc-cache/empty-doc-cache.test.ts +++ b/packages/editor/__tests__/browser/doc-cache/empty-doc-cache.test.ts @@ -1,4 +1,4 @@ -import { uniqueId } from 'lodash'; +import uniqueId from 'lodash/uniqueId'; import { URI } from '@opensumi/ide-core-browser'; import { IHashCalculateService } from '@opensumi/ide-core-common/lib/hash-calculate/hash-calculate'; @@ -9,7 +9,6 @@ import { MockInjector } from '../../../../../tools/dev-tool/src/mock-injector'; import { EditorDocumentModel } from '../../../src/browser/doc-model/main'; import { IDocPersistentCacheProvider } from '../../../src/common'; - describe('EmptyDocCacheImpl', () => { let injector: MockInjector; let uri: URI; diff --git a/packages/editor/__tests__/browser/doc-cache/local-storage-cache.test.ts b/packages/editor/__tests__/browser/doc-cache/local-storage-cache.test.ts index 828699882c..52f0569066 100644 --- a/packages/editor/__tests__/browser/doc-cache/local-storage-cache.test.ts +++ b/packages/editor/__tests__/browser/doc-cache/local-storage-cache.test.ts @@ -1,6 +1,6 @@ import { promisify } from 'util'; -import { uniqueId } from 'lodash'; +import uniqueId from 'lodash/uniqueId'; import { ILoggerManagerClient, URI } from '@opensumi/ide-core-browser'; import { IHashCalculateService } from '@opensumi/ide-core-common/lib/hash-calculate/hash-calculate'; diff --git a/packages/editor/__tests__/browser/doc-model/editor-document-model.test.ts b/packages/editor/__tests__/browser/doc-model/editor-document-model.test.ts index 4b720df21e..23e50a3dd2 100644 --- a/packages/editor/__tests__/browser/doc-model/editor-document-model.test.ts +++ b/packages/editor/__tests__/browser/doc-model/editor-document-model.test.ts @@ -1,4 +1,4 @@ -import { uniqueId } from 'lodash'; +import uniqueId from 'lodash/uniqueId'; import { URI, IEventBus } from '@opensumi/ide-core-browser'; import { IHashCalculateService } from '@opensumi/ide-core-common/lib/hash-calculate/hash-calculate'; @@ -7,7 +7,6 @@ import { EOL } from '@opensumi/ide-monaco/lib/browser/monaco-api/types'; import { isMacintosh, isLinux } from '@opensumi/monaco-editor-core/esm/vs/base/common/platform'; import * as monaco from '@opensumi/monaco-editor-core/esm/vs/editor/editor.api'; - import { createBrowserInjector } from '../../../../../tools/dev-tool/src/injector-helper'; import { MockInjector } from '../../../../../tools/dev-tool/src/mock-injector'; import { createMockedMonaco } from '../../../../monaco/__mocks__/monaco'; @@ -18,7 +17,6 @@ import { } from '../../../src/browser/doc-model/types'; import { IDocPersistentCacheProvider } from '../../../src/common'; - describe('EditorDocumentModel', () => { let injector: MockInjector; let hashCalculateService: IHashCalculateService; diff --git a/packages/editor/src/browser/breadcrumb/default.ts b/packages/editor/src/browser/breadcrumb/default.ts index 329da9e55b..253be708cf 100644 --- a/packages/editor/src/browser/breadcrumb/default.ts +++ b/packages/editor/src/browser/breadcrumb/default.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { Autowired, Injectable } from '@opensumi/di'; import { diff --git a/packages/editor/src/browser/breadcrumb/document-symbol.ts b/packages/editor/src/browser/breadcrumb/document-symbol.ts index e40e66064f..939f1b1d54 100644 --- a/packages/editor/src/browser/breadcrumb/document-symbol.ts +++ b/packages/editor/src/browser/breadcrumb/document-symbol.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { Injectable, Autowired } from '@opensumi/di'; import { diff --git a/packages/editor/src/browser/doc-model/editor-document-model.ts b/packages/editor/src/browser/doc-model/editor-document-model.ts index 86dc90c372..ffe46347cc 100644 --- a/packages/editor/src/browser/doc-model/editor-document-model.ts +++ b/packages/editor/src/browser/doc-model/editor-document-model.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { Autowired, Injectable } from '@opensumi/di'; import { @@ -48,7 +48,6 @@ import { EditorDocumentModelWillSaveEvent, } from './types'; - export interface EditorDocumentModelConstructionOptions { eol?: EOL; encoding?: string; diff --git a/packages/extension/__tests__/browser/main.thread.editor.test.ts b/packages/extension/__tests__/browser/main.thread.editor.test.ts index 59606ed1bd..1b19e887b7 100644 --- a/packages/extension/__tests__/browser/main.thread.editor.test.ts +++ b/packages/extension/__tests__/browser/main.thread.editor.test.ts @@ -1,6 +1,6 @@ import path from 'path'; -import { isEqual } from 'lodash'; +import isEqual from 'lodash/isEqual'; import { RPCProtocol } from '@opensumi/ide-connection/lib/common/rpcProtocol'; import { URI, IContextKeyService } from '@opensumi/ide-core-browser'; diff --git a/packages/extension/package.json b/packages/extension/package.json index 72d01ca83f..b2d34e5271 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -37,7 +37,6 @@ "address": "^1.1.2", "glob-to-regexp": "0.4.1", "is-running": "^2.1.0", - "lodash.clonedeep": "^4.5.0", "picomatch": "^2.2.1", "tree-kill": "^1.2.2", "v8-inspect-profiler": "^0.0.20" diff --git a/packages/extension/src/browser/vscode/api/main.thread.api.webview.ts b/packages/extension/src/browser/vscode/api/main.thread.api.webview.ts index 5cbc1bc5ce..d879ba16e0 100644 --- a/packages/extension/src/browser/vscode/api/main.thread.api.webview.ts +++ b/packages/extension/src/browser/vscode/api/main.thread.api.webview.ts @@ -1,4 +1,4 @@ -import throttle = require('lodash.throttle'); +import throttle from 'lodash/throttle'; import { Injectable, Autowired, Optional } from '@opensumi/di'; import { IRPCProtocol } from '@opensumi/ide-connection'; diff --git a/packages/extension/src/browser/vscode/api/main.thread.editor.ts b/packages/extension/src/browser/vscode/api/main.thread.editor.ts index 992c2add99..0b4ecd6c56 100644 --- a/packages/extension/src/browser/vscode/api/main.thread.editor.ts +++ b/packages/extension/src/browser/vscode/api/main.thread.editor.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { Injectable, Autowired, Optional } from '@opensumi/di'; import { IRPCProtocol } from '@opensumi/ide-connection'; @@ -52,7 +52,6 @@ import { viewColumnToResourceOpenOptions } from '../../../common/vscode/converte import { MainThreadExtensionDocumentData } from './main.thread.doc'; - @Injectable({ multiple: true }) export class MainThreadEditorService extends WithEventBus implements IMainThreadEditorsService { @Autowired(WorkbenchEditorService) diff --git a/packages/extension/src/hosted/api/vscode/editor/editor.host.ts b/packages/extension/src/hosted/api/vscode/editor/editor.host.ts index ea8609046b..e30247dad1 100644 --- a/packages/extension/src/hosted/api/vscode/editor/editor.host.ts +++ b/packages/extension/src/hosted/api/vscode/editor/editor.host.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import type vscode from 'vscode'; import { IRPCProtocol } from '@opensumi/ide-connection'; @@ -25,7 +25,6 @@ import { Uri, Position, Range, Selection, TextEditorLineNumbersStyle } from '../ import { TextEditorEdit } from './edit.builder'; - export class ExtensionHostEditorService implements IExtensionHostEditorService { private _editors: Map = new Map(); diff --git a/packages/extension/src/hosted/api/vscode/ext.host.preference.ts b/packages/extension/src/hosted/api/vscode/ext.host.preference.ts index 6cf9804232..731b13c559 100644 --- a/packages/extension/src/hosted/api/vscode/ext.host.preference.ts +++ b/packages/extension/src/hosted/api/vscode/ext.host.preference.ts @@ -15,7 +15,7 @@ ********************************************************************************/ // Some code copied and modified from https://github.com/eclipse-theia/theia/tree/v1.14.0/packages/plugin-ext/src/plugin/preference-registry.ts -import cloneDeep = require('lodash.clonedeep'); +import cloneDeep from 'lodash/cloneDeep'; import { IRPCProtocol } from '@opensumi/ide-connection'; import { Emitter, Event, PreferenceScope, isObject, mixin, isUndefined } from '@opensumi/ide-core-common'; @@ -34,7 +34,6 @@ import { Uri } from '../../../common/vscode/ext-types'; import { Configuration, ConfigurationChangeEvent, ConfigurationModel } from './preferences'; - interface ConfigurationInspect { key: string; defaultValue?: T; diff --git a/packages/extension/src/hosted/api/vscode/preferences/configuration.ts b/packages/extension/src/hosted/api/vscode/preferences/configuration.ts index 3225e0b482..e0cf39b4a8 100644 --- a/packages/extension/src/hosted/api/vscode/preferences/configuration.ts +++ b/packages/extension/src/hosted/api/vscode/preferences/configuration.ts @@ -1,4 +1,4 @@ -import cloneDeep = require('lodash.clonedeep'); +import cloneDeep from 'lodash/cloneDeep'; import { Uri, isObject } from '@opensumi/ide-core-common'; diff --git a/packages/extension/src/node/merge-contributes.ts b/packages/extension/src/node/merge-contributes.ts index a38698d968..bd67a7f4c3 100644 --- a/packages/extension/src/node/merge-contributes.ts +++ b/packages/extension/src/node/merge-contributes.ts @@ -1,7 +1,7 @@ /** * handle `kaitianContributes` and `contributes` */ -import mergeWith = require('lodash/mergeWith'); +import mergeWith from 'lodash/mergeWith'; import { asArray } from '@opensumi/ide-core-common'; diff --git a/packages/file-service/package.json b/packages/file-service/package.json index bd730c1fb7..e80d7a3a85 100644 --- a/packages/file-service/package.json +++ b/packages/file-service/package.json @@ -23,7 +23,6 @@ "file-type": "^12.0.0", "iconv-lite": "^0.6.0", "jschardet": "3.0.0", - "lodash.debounce": "^4.0.8", "mv": "^2.1.1", "nsfw": "^2.1.2", "trash": "^5.2.0", diff --git a/packages/file-service/src/node/file-service-watcher.ts b/packages/file-service/src/node/file-service-watcher.ts index 22e7dbf25f..e92e585099 100644 --- a/packages/file-service/src/node/file-service-watcher.ts +++ b/packages/file-service/src/node/file-service-watcher.ts @@ -1,7 +1,7 @@ import paths from 'path'; import * as fs from 'fs-extra'; -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import nsfw from 'nsfw'; import { IDisposable, Disposable, DisposableCollection, isWindows, URI, isLinux } from '@opensumi/ide-core-common'; diff --git a/packages/main-layout/src/browser/accordion/accordion.service.ts b/packages/main-layout/src/browser/accordion/accordion.service.ts index de7061c143..080319c721 100644 --- a/packages/main-layout/src/browser/accordion/accordion.service.ts +++ b/packages/main-layout/src/browser/accordion/accordion.service.ts @@ -1,4 +1,4 @@ -import { debounce } from 'lodash'; +import debounce from 'lodash/debounce'; import { action, observable } from 'mobx'; import { Injectable, Autowired } from '@opensumi/di'; @@ -36,7 +36,6 @@ import { IProgressService } from '@opensumi/ide-core-browser/lib/progress'; import { ViewCollapseChangedEvent } from '../../common'; - export interface SectionState { collapsed: boolean; hidden: boolean; diff --git a/packages/main-layout/src/browser/layout.service.ts b/packages/main-layout/src/browser/layout.service.ts index 18d79cc3c2..956f35b7f3 100644 --- a/packages/main-layout/src/browser/layout.service.ts +++ b/packages/main-layout/src/browser/layout.service.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { Injectable, Autowired, INJECTOR_TOKEN, Injector } from '@opensumi/di'; import { @@ -40,7 +40,6 @@ import { AccordionService } from './accordion/accordion.service'; import { TabBarHandler } from './tabbar-handler'; import { TabbarService } from './tabbar/tabbar.service'; - @Injectable() export class LayoutService extends WithEventBus implements IMainLayoutService { @Autowired(INJECTOR_TOKEN) diff --git a/packages/main-layout/src/browser/tabbar/tabbar.service.ts b/packages/main-layout/src/browser/tabbar/tabbar.service.ts index d6660442af..7468c49450 100644 --- a/packages/main-layout/src/browser/tabbar/tabbar.service.ts +++ b/packages/main-layout/src/browser/tabbar/tabbar.service.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { observable, action, observe, computed } from 'mobx'; import { Injectable, Autowired } from '@opensumi/di'; diff --git a/packages/markers/src/browser/markers-filter.view.tsx b/packages/markers/src/browser/markers-filter.view.tsx index 0471dfb006..6e4667da68 100644 --- a/packages/markers/src/browser/markers-filter.view.tsx +++ b/packages/markers/src/browser/markers-filter.view.tsx @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { observer } from 'mobx-react-lite'; import React from 'react'; @@ -13,7 +13,6 @@ import styles from './markers-filter.module.less'; import { MarkerService } from './markers-service'; import Messages from './messages'; - /** * Marker过滤面板 */ diff --git a/packages/menu-bar/src/browser/menu-bar.store.ts b/packages/menu-bar/src/browser/menu-bar.store.ts index 33a0794388..67f44247e2 100644 --- a/packages/menu-bar/src/browser/menu-bar.store.ts +++ b/packages/menu-bar/src/browser/menu-bar.store.ts @@ -1,11 +1,10 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { observable, action } from 'mobx'; import { Injectable, Autowired } from '@opensumi/di'; import { Disposable } from '@opensumi/ide-core-browser'; import { AbstractMenubarService, IMenubarItem, MenuNode } from '@opensumi/ide-core-browser/lib/menu/next'; - export abstract class AbstractMenubarStore extends Disposable { menubarItems: IMenubarItem[]; abstract handleMenubarClick(menuId: string): void; diff --git a/packages/monaco-enhance/src/browser/folded-code-widget.ts b/packages/monaco-enhance/src/browser/folded-code-widget.ts index 503af27735..dcf0ba56dc 100644 --- a/packages/monaco-enhance/src/browser/folded-code-widget.ts +++ b/packages/monaco-enhance/src/browser/folded-code-widget.ts @@ -1,4 +1,4 @@ -import { orderBy } from 'lodash'; +import orderBy from 'lodash/orderBy'; import { Disposable } from '@opensumi/ide-core-common'; import type { ICodeEditor as IMonacoCodeEditor } from '@opensumi/ide-monaco/lib/browser/monaco-api/types'; diff --git a/packages/monaco/src/browser/schema-registry.ts b/packages/monaco/src/browser/schema-registry.ts index 8786339902..6946001be6 100644 --- a/packages/monaco/src/browser/schema-registry.ts +++ b/packages/monaco/src/browser/schema-registry.ts @@ -1,4 +1,4 @@ -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { Injectable, Autowired } from '@opensumi/di'; import { Emitter, Event, IJSONSchemaRegistry, ISchemaContributions, IJSONSchema } from '@opensumi/ide-core-browser'; diff --git a/packages/preferences/src/browser/preferences.view.tsx b/packages/preferences/src/browser/preferences.view.tsx index a60270d501..57e2384cd5 100644 --- a/packages/preferences/src/browser/preferences.view.tsx +++ b/packages/preferences/src/browser/preferences.view.tsx @@ -1,5 +1,5 @@ import classnames from 'classnames'; -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { observer } from 'mobx-react-lite'; import React from 'react'; diff --git a/packages/startup/entry/web-lite/lite-module/extension/utils.ts b/packages/startup/entry/web-lite/lite-module/extension/utils.ts index 492c547122..629c1317d9 100644 --- a/packages/startup/entry/web-lite/lite-module/extension/utils.ts +++ b/packages/startup/entry/web-lite/lite-module/extension/utils.ts @@ -1,4 +1,4 @@ -import { mergeWith } from 'lodash'; +import mergeWith from 'lodash/mergeWith'; import { Uri, asArray } from '@opensumi/ide-core-common'; import { IExtensionMetaData } from '@opensumi/ide-extension/lib/common'; diff --git a/packages/terminal-next/package.json b/packages/terminal-next/package.json index 12870b3d3a..4387676f65 100644 --- a/packages/terminal-next/package.json +++ b/packages/terminal-next/package.json @@ -21,7 +21,6 @@ "@opensumi/ide-core-node": "2.16.1", "@opensumi/ide-file-service": "2.16.1", "event-kit": "^2.5.3", - "lodash.omit": "^4.1.1", "node-pty": "0.10.0", "os-locale": "^4.0.0", "xterm": "4.13.0", diff --git a/packages/terminal-next/src/browser/component/tab.item.tsx b/packages/terminal-next/src/browser/component/tab.item.tsx index 86ab99c971..4215e45d63 100644 --- a/packages/terminal-next/src/browser/component/tab.item.tsx +++ b/packages/terminal-next/src/browser/component/tab.item.tsx @@ -1,12 +1,11 @@ import clx from 'classnames'; -import debouce = require('lodash.debounce'); +import debouce from 'lodash/debounce'; import React from 'react'; import { getIcon } from '@opensumi/ide-core-browser'; import { ItemProps, ItemType } from '../../common'; - import styles from './tab.module.less'; export function renderInfoItem(props: ItemProps) { diff --git a/packages/terminal-next/src/browser/terminal.api.ts b/packages/terminal-next/src/browser/terminal.api.ts index eef51a27cb..a204e359ef 100644 --- a/packages/terminal-next/src/browser/terminal.api.ts +++ b/packages/terminal-next/src/browser/terminal.api.ts @@ -1,4 +1,4 @@ -import { capitalize } from 'lodash'; +import capitalize from 'lodash/capitalize'; import type vscode from 'vscode'; import { Injectable, Autowired } from '@opensumi/di'; diff --git a/packages/terminal-next/src/browser/terminal.environment.service.ts b/packages/terminal-next/src/browser/terminal.environment.service.ts index 094108bbcc..f5612d6e0b 100644 --- a/packages/terminal-next/src/browser/terminal.environment.service.ts +++ b/packages/terminal-next/src/browser/terminal.environment.service.ts @@ -1,5 +1,5 @@ -import debounce = require('lodash.debounce'); -import throttle = require('lodash.throttle'); +import debounce from 'lodash/debounce'; +import throttle from 'lodash/throttle'; import React from 'react'; import { Injectable, Autowired } from '@opensumi/di'; @@ -25,7 +25,6 @@ import { MergedEnvironmentVariableCollection } from '../common/environmentVariab import { TerminalVariable } from './component/terminal.variable'; - export const ENVIRONMENT_VARIABLE_COLLECTIONS_KEY = 'terminal.integrated.environmentVariableCollections'; const ENVIRONMENT_VARIABLE_CHANGED_STATUS = 'terminal.environmentVariableCollections.changed'; diff --git a/packages/terminal-next/src/node/pty.ts b/packages/terminal-next/src/node/pty.ts index 2331c76a66..bb285a6fce 100644 --- a/packages/terminal-next/src/node/pty.ts +++ b/packages/terminal-next/src/node/pty.ts @@ -8,7 +8,7 @@ import { promises } from 'fs'; import os from 'os'; -import omit from 'lodash.omit'; +import omit from 'lodash/omit'; import * as pty from 'node-pty'; import * as osLocale from 'os-locale'; @@ -24,7 +24,6 @@ import { IPtyProcess } from '../common/pty'; import { findExecutable } from './shell'; - export const IPtyService = Symbol('IPtyService'); @Injectable({ multiple: true }) diff --git a/packages/toolbar/src/browser/toolbar.view.tsx b/packages/toolbar/src/browser/toolbar.view.tsx index 47f30570d4..ead5888642 100644 --- a/packages/toolbar/src/browser/toolbar.view.tsx +++ b/packages/toolbar/src/browser/toolbar.view.tsx @@ -1,5 +1,5 @@ import clx from 'classnames'; -import debounce = require('lodash.debounce'); +import debounce from 'lodash/debounce'; import { observer } from 'mobx-react-lite'; import React from 'react'; @@ -7,7 +7,6 @@ import { ToolbarLocation, Disposable } from '@opensumi/ide-core-browser'; import styles from './toolbar.module.less'; - declare let ResizeObserver: any; export const ToolBar = observer, 'className'>>(({ className }) => { diff --git a/scripts/fn/create-package.ts b/scripts/fn/create-package.ts index 00e06fb94a..de7655ae10 100644 --- a/scripts/fn/create-package.ts +++ b/scripts/fn/create-package.ts @@ -1,9 +1,10 @@ -import { camelCase, upperFirst } from 'lodash'; import * as path from 'path'; import * as glob from 'glob'; import * as fs from 'fs-extra'; import { packagesDir, toolsDir } from './dir-constants'; import { run } from './shell'; +import camelCase from 'lodash/camelCase'; +import upperFirst from 'lodash/upperFirst'; const templateDir = path.join(toolsDir, '/template'); const templatePattern = path.join(templateDir, '/**'); @@ -15,9 +16,7 @@ function createModuleTsConfig(name: string) { rootDir: `../../../packages/${name}/src`, outDir: `../../../packages/${name}/lib`, }, - include: [ - `../../../packages/${name}/src`, - ], + include: [`../../../packages/${name}/src`], }; } diff --git a/scripts/generate-tsconfig-resolve.ts b/scripts/generate-tsconfig-resolve.ts index 3ee4c6ab7d..11180b765f 100644 --- a/scripts/generate-tsconfig-resolve.ts +++ b/scripts/generate-tsconfig-resolve.ts @@ -1,6 +1,5 @@ import fse from 'fs-extra'; import path from 'path'; -import _ from 'lodash'; const packagesPath = path.join(__dirname, '../packages'); const referenceDirPath = path.join(__dirname, '../configs/ts/references'); diff --git a/scripts/manifest.ts b/scripts/manifest.ts index 31324ba731..c68321be52 100644 --- a/scripts/manifest.ts +++ b/scripts/manifest.ts @@ -1,11 +1,10 @@ import { join } from 'path'; -import * as _ from 'lodash'; import * as fs from 'fs'; import Package from './pkg'; /** * 生成对应版本号的 manifest.json,包括: -*/ + */ export async function generateManifest(pkgList: Package[], version: string) { const manifest = { meta: await collectPkgContains(pkgList, version), @@ -19,7 +18,7 @@ export async function generateManifest(pkgList: Package[], version: string) { * packages 字段,包含所有包名和对应的版本号 */ export function collectPkgVersionList(pkgList: Package[], version: string) { - return Array.from(pkgList.map(p => p.name)).reduce((prev, cur) => { + return Array.from(pkgList.map((p) => p.name)).reduce((prev, cur) => { prev[cur] = version; return prev; }, {} as { [key: string]: string }); @@ -42,11 +41,7 @@ export async function collectPkgContains(pkgList: Package[], version: string) { }; const entries: string[] = []; - for (const entryIdentifier of [ - 'node', - 'browser', - 'common', - ]) { + for (const entryIdentifier of ['node', 'browser', 'common']) { const existed = await exists(join(pkgSrcPath, entryIdentifier, 'index.ts')); if (existed) { entries.push(entryIdentifier); @@ -62,11 +57,8 @@ export async function collectPkgContains(pkgList: Package[], version: string) { } function exists(filePath: string) { - return fs.promises.access(filePath) + return fs.promises + .access(filePath) .then(() => true) .catch(() => false); } - -function trim4Obj(obj: object) { - return _.pickBy(obj, _.identity); -}