mirror of
https://github.com/Eugeny/tabby.git
synced 2025-06-09 05:50:08 +00:00

New standard theme that follows your chosen terminal colors, Bootstrap 5 & Angular 15 upgrade
98 lines
4.6 KiB
TypeScript
98 lines
4.6 KiB
TypeScript
import { NgModule } from '@angular/core'
|
|
import { CommonModule } from '@angular/common'
|
|
import { FormsModule } from '@angular/forms'
|
|
import { NgbModule } from '@ng-bootstrap/ng-bootstrap'
|
|
import { ToastrModule } from 'ngx-toastr'
|
|
import { NgxColorsModule } from 'ngx-colors'
|
|
|
|
import TabbyCorePlugin, { ConfigProvider, HotkeyProvider, TabContextMenuItemProvider, CLIHandler } from 'tabby-core'
|
|
import { SettingsTabProvider } from 'tabby-settings'
|
|
|
|
import { AppearanceSettingsTabComponent } from './components/appearanceSettingsTab.component'
|
|
import { ColorSchemeSettingsTabComponent } from './components/colorSchemeSettingsTab.component'
|
|
import { TerminalSettingsTabComponent } from './components/terminalSettingsTab.component'
|
|
import { ColorPickerComponent } from './components/colorPicker.component'
|
|
import { ColorSchemePreviewComponent } from './components/colorSchemePreview.component'
|
|
import { SearchPanelComponent } from './components/searchPanel.component'
|
|
import { StreamProcessingSettingsComponent } from './components/streamProcessingSettings.component'
|
|
import { LoginScriptsSettingsComponent } from './components/loginScriptsSettings.component'
|
|
import { TerminalToolbarComponent } from './components/terminalToolbar.component'
|
|
import { ColorSchemeSelectorComponent } from './components/colorSchemeSelector.component'
|
|
|
|
import { TerminalDecorator } from './api/decorator'
|
|
import { TerminalContextMenuItemProvider } from './api/contextMenuProvider'
|
|
import { TerminalColorSchemeProvider } from './api/colorSchemeProvider'
|
|
import { TerminalSettingsTabProvider, AppearanceSettingsTabProvider, ColorSchemeSettingsTabProvider } from './settings'
|
|
import { DebugDecorator } from './features/debug'
|
|
import { PathDropDecorator } from './features/pathDrop'
|
|
import { ZModemDecorator } from './features/zmodem'
|
|
import { TerminalConfigProvider } from './config'
|
|
import { TerminalHotkeyProvider } from './hotkeys'
|
|
import { CopyPasteContextMenu, MiscContextMenu, LegacyContextMenu } from './tabContextMenu'
|
|
|
|
import { Frontend } from './frontends/frontend'
|
|
import { XTermFrontend, XTermWebGLFrontend } from './frontends/xtermFrontend'
|
|
import { TerminalCLIHandler } from './cli'
|
|
|
|
/** @hidden */
|
|
@NgModule({
|
|
imports: [
|
|
CommonModule,
|
|
FormsModule,
|
|
NgbModule,
|
|
ToastrModule,
|
|
TabbyCorePlugin,
|
|
NgxColorsModule,
|
|
],
|
|
providers: [
|
|
{ provide: SettingsTabProvider, useClass: AppearanceSettingsTabProvider, multi: true },
|
|
{ provide: SettingsTabProvider, useClass: ColorSchemeSettingsTabProvider, multi: true },
|
|
{ provide: SettingsTabProvider, useClass: TerminalSettingsTabProvider, multi: true },
|
|
|
|
{ provide: ConfigProvider, useClass: TerminalConfigProvider, multi: true },
|
|
{ provide: HotkeyProvider, useClass: TerminalHotkeyProvider, multi: true },
|
|
{ provide: TerminalDecorator, useClass: PathDropDecorator, multi: true },
|
|
{ provide: TerminalDecorator, useClass: ZModemDecorator, multi: true },
|
|
{ provide: TerminalDecorator, useClass: DebugDecorator, multi: true },
|
|
|
|
{ provide: TabContextMenuItemProvider, useClass: CopyPasteContextMenu, multi: true },
|
|
{ provide: TabContextMenuItemProvider, useClass: MiscContextMenu, multi: true },
|
|
{ provide: TabContextMenuItemProvider, useClass: LegacyContextMenu, multi: true },
|
|
|
|
{ provide: CLIHandler, useClass: TerminalCLIHandler, multi: true },
|
|
],
|
|
declarations: [
|
|
ColorPickerComponent,
|
|
ColorSchemePreviewComponent,
|
|
ColorSchemeSelectorComponent,
|
|
AppearanceSettingsTabComponent,
|
|
ColorSchemeSettingsTabComponent,
|
|
TerminalSettingsTabComponent,
|
|
SearchPanelComponent,
|
|
StreamProcessingSettingsComponent,
|
|
LoginScriptsSettingsComponent,
|
|
TerminalToolbarComponent,
|
|
],
|
|
exports: [
|
|
ColorPickerComponent,
|
|
ColorSchemeSelectorComponent,
|
|
SearchPanelComponent,
|
|
StreamProcessingSettingsComponent,
|
|
LoginScriptsSettingsComponent,
|
|
TerminalToolbarComponent,
|
|
],
|
|
})
|
|
export default class TerminalModule { } // eslint-disable-line @typescript-eslint/no-extraneous-class
|
|
|
|
export { TerminalDecorator, TerminalContextMenuItemProvider, TerminalColorSchemeProvider }
|
|
export { Frontend, XTermFrontend, XTermWebGLFrontend }
|
|
export { BaseTerminalTabComponent } from './api/baseTerminalTab.component'
|
|
export * from './api/interfaces'
|
|
export * from './middleware/streamProcessing'
|
|
export * from './middleware/loginScriptProcessing'
|
|
export * from './middleware/oscProcessing'
|
|
export * from './api/middleware'
|
|
export * from './session'
|
|
export { LoginScriptsSettingsComponent, StreamProcessingSettingsComponent }
|
|
export { MultifocusService } from './services/multifocus.service'
|