fontawesome 5

This commit is contained in:
Eugene Pankov
2018-12-21 21:37:34 +01:00
parent c204f6d5a4
commit 9aaf670092
16 changed files with 61 additions and 60 deletions

View File

@@ -1,7 +1,9 @@
import '../lib/lru' import '../lib/lru'
import 'source-sans-pro' import 'source-sans-pro'
import 'source-code-pro/source-code-pro.css' import 'source-code-pro/source-code-pro.css'
import 'font-awesome/css/font-awesome.css' import '@fortawesome/fontawesome-free/css/solid.css'
import '@fortawesome/fontawesome-free/css/brands.css'
import '@fortawesome/fontawesome-free/css/fontawesome.css'
import 'ngx-toastr/toastr.css' import 'ngx-toastr/toastr.css'
import './preload.scss' import './preload.scss'

View File

@@ -1,6 +1,7 @@
{ {
"name": "term", "name": "term",
"devDependencies": { "devDependencies": {
"@fortawesome/fontawesome-free": "^5.6.3",
"@types/electron-config": "^0.2.1", "@types/electron-config": "^0.2.1",
"@types/electron-debug": "^1.1.0", "@types/electron-debug": "^1.1.0",
"@types/fs-promise": "1.0.1", "@types/fs-promise": "1.0.1",
@@ -19,7 +20,6 @@
"electron-installer-snap": "^3.0.0", "electron-installer-snap": "^3.0.0",
"electron-rebuild": "^1.8.2", "electron-rebuild": "^1.8.2",
"file-loader": "^1.1.11", "file-loader": "^1.1.11",
"font-awesome": "4.7.0",
"graceful-fs": "^4.1.11", "graceful-fs": "^4.1.11",
"html-loader": "0.4.4", "html-loader": "0.4.4",
"json-loader": "0.5.4", "json-loader": "0.5.4",

View File

@@ -1,4 +1,4 @@
.icon(tabindex='0', [class.active]='model', (keyup.space)='click()') .icon(tabindex='0', [class.active]='model', (keyup.space)='click()')
i.fa.fa-square-o.off i.fas.fa-square.off
i.fa.fa-check-square.on i.fas.fa-check-square.on
.text {{text}} .text {{text}}

View File

@@ -14,10 +14,10 @@ div
footer.d-flex.align-items-center footer.d-flex.align-items-center
.btn-group.mr-auto .btn-group.mr-auto
button.btn.btn-secondary((click)='homeBase.openGitHub()') button.btn.btn-secondary((click)='homeBase.openGitHub()')
i.fa.fa-github i.fab.fa-github
span GitHub span GitHub
button.btn.btn-secondary((click)='homeBase.reportBug()') button.btn.btn-secondary((click)='homeBase.reportBug()')
i.fa.fa-bug i.fas.fa-bug
span Report a problem span Report a problem
.form-control-static.selectable.no-drag Version: {{homeBase.appVersion}} .form-control-static.selectable.no-drag Version: {{homeBase.appVersion}}

View File

@@ -2,12 +2,13 @@
strong Error in {{erroredPlugin}}: strong Error in {{erroredPlugin}}:
pre {{errorMessage}} pre {{errorMessage}}
button.btn.btn-outline-info.btn-sm.pull-right((click)='openPluginsFolder()')
i.fa.fa-folder
span Plugins folder
h3.mb-1 Installed
.d-flex
h3.mb-1 Installed
button.btn.btn-outline-info.btn-sm.ml-auto((click)='openPluginsFolder()')
i.fas.fa-folder
span Plugins folder
.list-group.list-group-flush.mt-2 .list-group.list-group-flush.mt-2
.list-group-item.d-flex.align-items-center(*ngFor='let plugin of pluginManager.installedPlugins|orderBy:"name"') .list-group-item.d-flex.align-items-center(*ngFor='let plugin of pluginManager.installedPlugins|orderBy:"name"')
.mr-auto.d-flex.flex-column .mr-auto.d-flex.flex-column
@@ -23,39 +24,39 @@ h3.mb-1 Installed
(click)='upgradePlugin(plugin)', (click)='upgradePlugin(plugin)',
[disabled]='busy[plugin.name] != undefined' [disabled]='busy[plugin.name] != undefined'
) )
i.fa.fa-fw.fa-arrow-up(*ngIf='busy[plugin.name] != BusyState.Installing') i.fas.fa-fw.fa-arrow-up(*ngIf='busy[plugin.name] != BusyState.Installing')
i.fa.fa-fw.fa-circle-o-notch.fa-spin(*ngIf='busy[plugin.name] == BusyState.Installing') i.fas.fa-fw.fa-circle-notch.fa-spin(*ngIf='busy[plugin.name] == BusyState.Installing')
span Upgrade ({{knownUpgrades[plugin.name].version}}) span Upgrade ({{knownUpgrades[plugin.name].version}})
button.btn.btn-primary.ml-2( button.btn.btn-primary.ml-2(
*ngIf='config.store.pluginBlacklist.includes(plugin.name)', *ngIf='config.store.pluginBlacklist.includes(plugin.name)',
(click)='enablePlugin(plugin)' (click)='enablePlugin(plugin)'
) )
i.fa.fa-fw.fa-play i.fas.fa-fw.fa-play
button.btn.btn-secondary.ml-2( button.btn.btn-secondary.ml-2(
*ngIf='!config.store.pluginBlacklist.includes(plugin.name)', *ngIf='!config.store.pluginBlacklist.includes(plugin.name)',
(click)='disablePlugin(plugin)' (click)='disablePlugin(plugin)'
) )
i.fa.fa-fw.fa-pause i.fas.fa-fw.fa-pause
button.btn.btn-danger.ml-2( button.btn.btn-danger.ml-2(
(click)='uninstallPlugin(plugin)', (click)='uninstallPlugin(plugin)',
*ngIf='!plugin.isBuiltin && npmInstalled', *ngIf='!plugin.isBuiltin && npmInstalled',
[disabled]='busy[plugin.name] != undefined' [disabled]='busy[plugin.name] != undefined'
) )
i.fa.fa-fw.fa-trash-o(*ngIf='busy[plugin.name] != BusyState.Uninstalling') i.fas.fa-fw.fa-trash(*ngIf='busy[plugin.name] != BusyState.Uninstalling')
i.fa.fa-fw.fa-circle-o-notch.fa-spin(*ngIf='busy[plugin.name] == BusyState.Uninstalling') i.fas.fa-fw.fa-circle-notch.fa-spin(*ngIf='busy[plugin.name] == BusyState.Uninstalling')
.text-center.mt-5(*ngIf='npmMissing') .text-center.mt-5(*ngIf='npmMissing')
h4 npm not installed h4 npm not installed
p.mb-2 npm is required to install Terminus plugins. p.mb-2 npm is required to install Terminus plugins.
.btn-group .btn-group
button.btn.btn-outline-primary((click)='downloadNPM()') button.btn.btn-outline-primary((click)='downloadNPM()')
i.fa.fa-download i.fas.fa-download
span Get npm span Get npm
button.btn.btn-outline-info((click)='checkNPM()') button.btn.btn-outline-info((click)='checkNPM()')
i.fa.fa-refresh i.fas.fa-refresh
span Try again span Try again
div(*ngIf='npmInstalled') div(*ngIf='npmInstalled')
@@ -64,8 +65,8 @@ div(*ngIf='npmInstalled')
.input-group.mb-3 .input-group.mb-3
.input-group-prepend .input-group-prepend
.input-group-text .input-group-text
i.fa.fa-fw.fa-circle-o-notch.fa-spin(*ngIf='!availablePluginsReady') i.fas.fa-fw.fa-circle-o-notch.fa-spin(*ngIf='!availablePluginsReady')
i.fa.fa-fw.fa-search(*ngIf='availablePluginsReady') i.fas.fa-fw.fa-search(*ngIf='availablePluginsReady')
input.form-control( input.form-control(
type='text', type='text',
[(ngModel)]='_1', [(ngModel)]='_1',
@@ -81,12 +82,12 @@ div(*ngIf='npmInstalled')
(click)='installPlugin(plugin)', (click)='installPlugin(plugin)',
[disabled]='busy[plugin.name] != undefined' [disabled]='busy[plugin.name] != undefined'
) )
i.fa.fa-fw.fa-download(*ngIf='busy[plugin.name] != BusyState.Installing') i.fas.fa-fw.fa-download(*ngIf='busy[plugin.name] != BusyState.Installing')
i.fa.fa-fw.fa-circle-o-notch.fa-spin(*ngIf='busy[plugin.name] == BusyState.Installing') i.fas.fa-fw.fa-circle-notch.fa-spin(*ngIf='busy[plugin.name] == BusyState.Installing')
div((click)='showPluginInfo(plugin)') div((click)='showPluginInfo(plugin)')
div div
strong {{plugin.name}} strong {{plugin.name}}
small.text-muted.ml-1 {{plugin.version}} / {{plugin.author}} small.text-muted.ml-1 {{plugin.version}} / {{plugin.author}}
i.fa.fa-check.text-success.ml-1(*ngIf='plugin.isOfficial', title='Official') i.fas.fa-check.text-success.ml-1(*ngIf='plugin.isOfficial', title='Official')
small.text-muted {{plugin.description}} small.text-muted {{plugin.description}}

View File

@@ -12,11 +12,11 @@ ngb-tabset.vertical(type='pills', [activeId]='activeTab')
.text-muted.mr-auto {{homeBase.appVersion}} .text-muted.mr-auto {{homeBase.appVersion}}
button.btn.btn-secondary.mr-3((click)='homeBase.openGitHub()') button.btn.btn-secondary.mr-3((click)='homeBase.openGitHub()')
i.fa.fa-github i.fab.fa-github
span GitHub span GitHub
button.btn.btn-secondary((click)='homeBase.reportBug()') button.btn.btn-secondary((click)='homeBase.reportBug()')
i.fa.fa-bug i.fas.fa-bug
span Report a problem span Report a problem
.form-line(*ngIf='!isShellIntegrationInstalled') .form-line(*ngIf='!isShellIntegrationInstalled')
@@ -24,7 +24,7 @@ ngb-tabset.vertical(type='pills', [activeId]='activeTab')
.title Shell integration .title Shell integration
.description Allows quickly opening a terminal in the selected folder .description Allows quickly opening a terminal in the selected folder
button.btn.btn-primary((click)='installShellIntegration()') button.btn.btn-primary((click)='installShellIntegration()')
i.fa.fa-check i.fas.fa-check
span Install span Install
.form-line .form-line
@@ -225,7 +225,7 @@ ngb-tabset.vertical(type='pills', [activeId]='activeTab')
.title Debugging .title Debugging
button.btn.btn-secondary((click)='hostApp.openDevTools()') button.btn.btn-secondary((click)='hostApp.openDevTools()')
i.fa.fa-bug i.fas.fa-bug
span Open DevTools span Open DevTools
.form-line .form-line
@@ -254,7 +254,7 @@ ngb-tabset.vertical(type='pills', [activeId]='activeTab')
.input-group.mb-4 .input-group.mb-4
.input-group-prepend .input-group-prepend
.input-group-text .input-group-text
i.fa.fa-fw.fa-search i.fas.fa-fw.fa-search
input.form-control(type='search', placeholder='Search hotkeys', [(ngModel)]='hotkeyFilter') input.form-control(type='search', placeholder='Search hotkeys', [(ngModel)]='hotkeyFilter')
.form-group .form-group
@@ -298,8 +298,8 @@ ngb-tabset.vertical(type='pills', [activeId]='activeTab')
) )
.mt-3 .mt-3
button.btn.btn-primary((click)='saveConfigFile()', *ngIf='isConfigFileValid()') button.btn.btn-primary((click)='saveConfigFile()', *ngIf='isConfigFileValid()')
i.fa.fa-check.mr-2 i.fas.fa-check.mr-2
| Save and apply | Save and apply
button.btn.btn-primary(disabled, *ngIf='!isConfigFileValid()') button.btn.btn-primary(disabled, *ngIf='!isConfigFileValid()')
i.fa.fa-warning.mr-2 i.fas.fa-exclamation-triangle.mr-2
| Invalid syntax | Invalid syntax

View File

@@ -56,7 +56,7 @@
) )
.input-group-btn .input-group-btn
button.btn.btn-secondary((click)='selectPrivateKey()') button.btn.btn-secondary((click)='selectPrivateKey()')
i.fa.fa-folder-open i.fas.fa-folder-open
ngb-tab(id='advanced') ngb-tab(id='advanced')
ng-template(ngbTabTitle) ng-template(ngbTabTitle)
@@ -119,11 +119,11 @@
td td
.input-group.flex-nowrap .input-group.flex-nowrap
button.btn.btn-outline-info.ml-0((click)='moveScriptUp(script)') button.btn.btn-outline-info.ml-0((click)='moveScriptUp(script)')
i.fa.fa-arrow-up i.fas.fa-arrow-up
button.btn.btn-outline-info.ml-0((click)='moveScriptDown(script)') button.btn.btn-outline-info.ml-0((click)='moveScriptDown(script)')
i.fa.fa-arrow-down i.fas.fa-arrow-down
button.btn.btn-outline-danger.ml-0((click)='deleteScript(script)') button.btn.btn-outline-danger.ml-0((click)='deleteScript(script)')
i.fa.fa-trash-o i.fas.fa-trash
tr tr
td td
input.form-control( input.form-control(
@@ -148,9 +148,9 @@
td td
.input-group.flex-nowrap .input-group.flex-nowrap
button.btn.btn-outline-info.ml-0((click)='addScript()') button.btn.btn-outline-info.ml-0((click)='addScript()')
i.fa.fa-check i.fas.fa-check
button.btn.btn-outline-danger.ml-0((click)='clearScript()') button.btn.btn-outline-danger.ml-0((click)='clearScript()')
i.fa.fa-trash-o i.fas.fa-trash
.modal-footer .modal-footer
button.btn.btn-outline-primary((click)='save()') Save button.btn.btn-outline-primary((click)='save()') Save

View File

@@ -10,10 +10,10 @@
.list-group.mt-3(*ngIf='lastConnection') .list-group.mt-3(*ngIf='lastConnection')
a.list-group-item.list-group-item-action.d-flex.align-items-center((click)='connect(lastConnection)') a.list-group-item.list-group-item-action.d-flex.align-items-center((click)='connect(lastConnection)')
i.fa.fa-fw.fa-history i.fas.fa-fw.fa-history
.mr-auto {{lastConnection.name}} .mr-auto {{lastConnection.name}}
button.btn.btn-outline-danger.btn-sm((click)='clearLastConnection(); $event.stopPropagation()') button.btn.btn-outline-danger.btn-sm((click)='clearLastConnection(); $event.stopPropagation()')
i.fa.fa-trash-o i.fas.fa-trash
.list-group.mt-3.connections-list(*ngIf='childGroups.length') .list-group.mt-3.connections-list(*ngIf='childGroups.length')
ng-container(*ngFor='let group of childGroups') ng-container(*ngFor='let group of childGroups')

View File

@@ -9,9 +9,9 @@ h3 Connections
.fa.fa-fw.fa-chevron-down(*ngIf='!groupCollapsed[group.name]') .fa.fa-fw.fa-chevron-down(*ngIf='!groupCollapsed[group.name]')
span.ml-3.mr-auto {{group.name || "Ungrouped"}} span.ml-3.mr-auto {{group.name || "Ungrouped"}}
button.btn.btn-outline-info.ml-2((click)='editGroup(group)') button.btn.btn-outline-info.ml-2((click)='editGroup(group)')
i.fa.fa-pencil i.fas.fa-edit
button.btn.btn-outline-danger.ml-1((click)='deleteGroup(group)') button.btn.btn-outline-danger.ml-1((click)='deleteGroup(group)')
i.fa.fa-trash-o i.fas.fa-trash
ng-container(*ngIf='!groupCollapsed[group.name]') ng-container(*ngIf='!groupCollapsed[group.name]')
.list-group-item.list-group-item-action.pl-5.d-flex.align-items-center( .list-group-item.list-group-item-action.pl-5.d-flex.align-items-center(
*ngFor='let connection of group.connections', *ngFor='let connection of group.connections',
@@ -21,8 +21,8 @@ h3 Connections
div {{connection.name}} div {{connection.name}}
.text-muted {{connection.host}} .text-muted {{connection.host}}
button.btn.btn-outline-danger.ml-1((click)='$event.stopPropagation(); deleteConnection(connection)') button.btn.btn-outline-danger.ml-1((click)='$event.stopPropagation(); deleteConnection(connection)')
i.fa.fa-trash-o i.fas.fa-trash
button.btn.btn-primary((click)='createConnection()') button.btn.btn-primary((click)='createConnection()')
i.fa.fa-fw.fa-plus i.fas.fa-fw.fa-plus
span.ml-2 Add connection span.ml-2 Add connection

View File

@@ -1,6 +1,5 @@
import { Injectable, NgZone } from '@angular/core' import { Injectable, NgZone } from '@angular/core'
import { SSHConnection } from '../api' import { SSHConnection } from '../api'
import SSHModule from '..'
let xkeychain let xkeychain
let wincredmgr let wincredmgr
@@ -14,7 +13,7 @@ try {
} }
} }
@Injectable({ providedIn: SSHModule }) @Injectable({ providedIn: 'root' })
export class PasswordStorageService { export class PasswordStorageService {
constructor ( constructor (
private zone: NgZone, private zone: NgZone,

View File

@@ -9,7 +9,6 @@ import { TerminalTabComponent } from 'terminus-terminal'
import { SSHConnection, SSHSession } from '../api' import { SSHConnection, SSHSession } from '../api'
import { PromptModalComponent } from '../components/promptModal.component' import { PromptModalComponent } from '../components/promptModal.component'
import { PasswordStorageService } from './passwordStorage.service' import { PasswordStorageService } from './passwordStorage.service'
import SSHModule from '..'
const { SSH2Stream } = require('ssh2-streams') const { SSH2Stream } = require('ssh2-streams')
let windowsProcessTree let windowsProcessTree
@@ -18,7 +17,7 @@ try {
} catch (e) { } catch (e) {
} // tslint:disable-line } // tslint:disable-line
@Injectable({ providedIn: SSHModule }) @Injectable({ providedIn: 'root' })
export class SSHService { export class SSHService {
private logger: Logger private logger: Logger

View File

@@ -57,7 +57,7 @@ h3.mb-3 Appearance
(click)='deleteScheme(config.store.terminal.colorScheme)', (click)='deleteScheme(config.store.terminal.colorScheme)',
*ngIf='isCustomScheme(config.store.terminal.colorScheme)' *ngIf='isCustomScheme(config.store.terminal.colorScheme)'
) )
i.fa.fa-trash-o i.fas.fa-trash
.form-group(*ngIf='editingColorScheme') .form-group(*ngIf='editingColorScheme')
label Editing label Editing

View File

@@ -25,11 +25,11 @@
) )
.input-group-btn .input-group-btn
button.btn.btn-secondary((click)='profile.sessionOptions.args.splice(i, 1)') button.btn.btn-secondary((click)='profile.sessionOptions.args.splice(i, 1)')
i.fa.fa-trash-o i.fas.fa-trash
.mt-2 .mt-2
button.btn.btn-secondary((click)='profile.sessionOptions.args.push("")') button.btn.btn-secondary((click)='profile.sessionOptions.args.push("")')
i.fa.fa-plus.mr-2 i.fas.fa-plus.mr-2
| Add | Add
.form-group .form-group

View File

@@ -5,8 +5,8 @@
.input-group-text = .input-group-text =
input.form-control.w-50.mr-1([(ngModel)]='pair.value', (blur)='emitUpdate()', placeholder='Value') input.form-control.w-50.mr-1([(ngModel)]='pair.value', (blur)='emitUpdate()', placeholder='Value')
button.btn.btn-secondary((click)='removeEnvironmentVar(pair.key)') button.btn.btn-secondary((click)='removeEnvironmentVar(pair.key)')
i.fa.fa-trash-o i.fas.fa-trash
button.btn.btn-secondary((click)='addEnvironmentVar()') button.btn.btn-secondary((click)='addEnvironmentVar()')
i.fa.fa-plus.mr-2 i.fas.fa-plus.mr-2
span Add span Add

View File

@@ -50,7 +50,7 @@ h3.mb-3 Shell
) )
.input-group-btn .input-group-btn
button.btn.btn-secondary((click)='pickWorkingDirectory()') button.btn.btn-secondary((click)='pickWorkingDirectory()')
i.fa.fa-folder-open i.fas.fa-folder-open
.form-line.align-items-start .form-line.align-items-start
.header .header
@@ -70,11 +70,11 @@ h3.mt-3 Saved Profiles
div {{profile.name}} div {{profile.name}}
.text-muted {{profile.sessionOptions.command}} .text-muted {{profile.sessionOptions.command}}
button.btn.btn-outline-danger.ml-1((click)='$event.stopPropagation(); deleteProfile(profile)') button.btn.btn-outline-danger.ml-1((click)='$event.stopPropagation(); deleteProfile(profile)')
i.fa.fa-trash-o i.fas.fa-trash
div(ngbDropdown, placement='top-left') div(ngbDropdown, placement='top-left')
button.btn.btn-primary(ngbDropdownToggle) button.btn.btn-primary(ngbDropdownToggle)
i.fa.fa-fw.fa-plus i.fas.fa-fw.fa-plus
| New profile | New profile
div(ngbDropdownMenu) div(ngbDropdownMenu)
button.dropdown-item(*ngFor='let shell of shells', (click)='newProfile(shell)') {{shell.name}} button.dropdown-item(*ngFor='let shell of shells', (click)='newProfile(shell)') {{shell.name}}

View File

@@ -12,6 +12,11 @@
resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-4.1.0.tgz#33eff662a5c39c0c2061170cc003c5120743fff0" resolved "https://registry.yarnpkg.com/7zip-bin/-/7zip-bin-4.1.0.tgz#33eff662a5c39c0c2061170cc003c5120743fff0"
integrity sha512-AsnBZN3a8/JcNt+KPkGGODaA4c7l3W5+WpeKgGSbstSLxqWtTXqd1ieJGBQ8IFCtRg8DmmKUcSkIkUc0A4p3YA== integrity sha512-AsnBZN3a8/JcNt+KPkGGODaA4c7l3W5+WpeKgGSbstSLxqWtTXqd1ieJGBQ8IFCtRg8DmmKUcSkIkUc0A4p3YA==
"@fortawesome/fontawesome-free@^5.6.3":
version "5.6.3"
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-free/-/fontawesome-free-5.6.3.tgz#61c122c420d7a91613f393d6a06e5a4c6ae6abf3"
integrity sha512-s5PLdI9NYgjBvfrv6rhirPHlAHWx+Sfo/IjsAeiXYfmemC/GSjwsyz1wLnGPazbLPXWfk62ks980o9AmsxYUEQ==
"@types/babel-types@*", "@types/babel-types@^7.0.0": "@types/babel-types@*", "@types/babel-types@^7.0.0":
version "7.0.4" version "7.0.4"
resolved "https://registry.yarnpkg.com/@types/babel-types/-/babel-types-7.0.4.tgz#bfd5b0d0d1ba13e351dff65b6e52783b816826c8" resolved "https://registry.yarnpkg.com/@types/babel-types/-/babel-types-7.0.4.tgz#bfd5b0d0d1ba13e351dff65b6e52783b816826c8"
@@ -2658,11 +2663,6 @@ flush-write-stream@^1.0.0:
inherits "^2.0.1" inherits "^2.0.1"
readable-stream "^2.0.4" readable-stream "^2.0.4"
font-awesome@4.7.0:
version "4.7.0"
resolved "https://registry.yarnpkg.com/font-awesome/-/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133"
integrity sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM=
for-in@^0.1.3: for-in@^0.1.3:
version "0.1.8" version "0.1.8"
resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1"