mirror of
https://github.com/Eugeny/tabby.git
synced 2025-10-04 22:14:55 +00:00
more electron/web separation
This commit is contained in:
@@ -4,8 +4,8 @@ import { debounceTime, distinctUntilChanged, first, tap, flatMap, map } from 'rx
|
||||
import semverGt from 'semver/functions/gt'
|
||||
|
||||
import { Component, Input } from '@angular/core'
|
||||
import { ConfigService, PlatformService } from 'terminus-core'
|
||||
import { PluginInfo, PluginManagerService } from '../services/pluginManager.service'
|
||||
import { ConfigService, PlatformService, PluginInfo } from 'terminus-core'
|
||||
import { PluginManagerService } from '../services/pluginManager.service'
|
||||
|
||||
enum BusyState { Installing = 'Installing', Uninstalling = 'Uninstalling' }
|
||||
|
||||
|
@@ -1,8 +1,8 @@
|
||||
import axios from 'axios'
|
||||
import { Observable, from } from 'rxjs'
|
||||
import { map } from 'rxjs/operators'
|
||||
import { Injectable } from '@angular/core'
|
||||
import { Logger, LogService, PlatformService } from 'terminus-core'
|
||||
import { Injectable, Inject } from '@angular/core'
|
||||
import { Logger, LogService, PlatformService, BOOTSTRAP_DATA, BootstrapData, PluginInfo } from 'terminus-core'
|
||||
|
||||
const NAME_PREFIX = 'terminus-'
|
||||
const KEYWORD = 'terminus-plugin'
|
||||
@@ -12,30 +12,20 @@ const BLACKLIST = [
|
||||
'terminus-shell-selector', // superseded by profiles
|
||||
]
|
||||
|
||||
export interface PluginInfo {
|
||||
name: string
|
||||
description: string
|
||||
packageName: string
|
||||
isBuiltin: boolean
|
||||
isOfficial: boolean
|
||||
version: string
|
||||
homepage?: string
|
||||
author: string
|
||||
path?: string
|
||||
}
|
||||
|
||||
@Injectable({ providedIn: 'root' })
|
||||
export class PluginManagerService {
|
||||
logger: Logger
|
||||
builtinPluginsPath: string = (window as any).builtinPluginsPath
|
||||
userPluginsPath: string = (window as any).userPluginsPath
|
||||
installedPlugins: PluginInfo[] = (window as any).installedPlugins
|
||||
userPluginsPath: string
|
||||
installedPlugins: PluginInfo[]
|
||||
|
||||
private constructor (
|
||||
log: LogService,
|
||||
private platform: PlatformService,
|
||||
@Inject(BOOTSTRAP_DATA) bootstrapData: BootstrapData,
|
||||
) {
|
||||
this.logger = log.create('pluginManager')
|
||||
this.installedPlugins = bootstrapData.installedPlugins
|
||||
this.userPluginsPath = bootstrapData.userPluginsPath
|
||||
}
|
||||
|
||||
listAvailable (query?: string): Observable<PluginInfo[]> {
|
||||
|
Reference in New Issue
Block a user