@electerm/electerm-react 1.34.39 → 1.34.46
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/client/common/constants.js +1 -1
- package/client/components/common/animate-text.styl +38 -53
- package/client/components/context-menu/context-menu.styl +1 -2
- package/client/components/setting-panel/setting.jsx +2 -24
- package/client/components/sftp/file-item.jsx +3 -5
- package/client/components/sftp/sftp-entry.jsx +1 -1
- package/client/components/sidebar/sidebar.styl +23 -37
- package/client/components/sidebar/transfer-history-modal.jsx +11 -6
- package/client/components/sidebar/transfer.styl +0 -1
- package/client/components/terminal/index.jsx +8 -9
- package/client/components/terminal-info/base.jsx +4 -1
- package/package.json +1 -1
|
@@ -33,7 +33,7 @@ export const splitDraggerWidth = 5
|
|
|
33
33
|
export const minTerminalWidth = 90
|
|
34
34
|
export const filePropMinWidth = 1
|
|
35
35
|
export const contextMenuHeight = 28
|
|
36
|
-
export const contextMenuWidth =
|
|
36
|
+
export const contextMenuWidth = 280
|
|
37
37
|
export const contextMenuPaddingTop = 10
|
|
38
38
|
export const sftpControlHeight = 28 + 42 + 33 + 56
|
|
39
39
|
export const sidebarWidth = 43
|
|
@@ -1,54 +1,39 @@
|
|
|
1
|
+
// animate.css -http://daneden.me/animate
|
|
2
|
+
// Version - 3.5.2
|
|
3
|
+
// Licensed under the MIT license - http://opensource.org/licenses/MIT
|
|
4
|
+
// Copyright (c) 2017 Daniel Eden
|
|
1
5
|
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
.
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
60% {
|
|
38
|
-
opacity: 1;
|
|
39
|
-
transform: scale3d(1.03, 1.03, 1.03);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
80% {
|
|
43
|
-
transform: scale3d(.97, .97, .97);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
to {
|
|
47
|
-
opacity: 1;
|
|
48
|
-
transform: scale3d(1, 1, 1);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
.bounceIn {
|
|
53
|
-
animation-name: bounceIn;
|
|
54
|
-
}
|
|
6
|
+
.animated
|
|
7
|
+
animation-duration 1s
|
|
8
|
+
animation-fill-mode both
|
|
9
|
+
|
|
10
|
+
.animated.bounceIn
|
|
11
|
+
animation-duration .45s
|
|
12
|
+
|
|
13
|
+
@keyframes bounceIn
|
|
14
|
+
from, 20%, 40%, 60%, 80%, to
|
|
15
|
+
animation-timing-function cubic-bezier(0.215, 0.610, 0.355, 1.000)
|
|
16
|
+
|
|
17
|
+
0%
|
|
18
|
+
opacity 0
|
|
19
|
+
transform scale3d(.3, .3, .3)
|
|
20
|
+
|
|
21
|
+
20%
|
|
22
|
+
transform scale3d(1.1, 1.1, 1.1)
|
|
23
|
+
|
|
24
|
+
40%
|
|
25
|
+
transform scale3d(.9, .9, .9)
|
|
26
|
+
|
|
27
|
+
60%
|
|
28
|
+
opacity 1
|
|
29
|
+
transform scale3d(1.03, 1.03, 1.03)
|
|
30
|
+
|
|
31
|
+
80%
|
|
32
|
+
transform scale3d(.97, .97, .97)
|
|
33
|
+
|
|
34
|
+
to
|
|
35
|
+
opacity 1
|
|
36
|
+
transform scale3d(1, 1, 1)
|
|
37
|
+
|
|
38
|
+
.bounceIn
|
|
39
|
+
animation-name bounceIn
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
@require '../../css/includes/theme-default'
|
|
2
2
|
.context-menu
|
|
3
3
|
position: absolute
|
|
4
|
-
width
|
|
4
|
+
width 280px
|
|
5
5
|
background main-dark
|
|
6
6
|
box-shadow 0px 0px 3px 3px alpha(main-dark, .35)
|
|
7
|
-
// border 1px solid #222
|
|
8
7
|
padding 10px 0
|
|
9
8
|
z-index 999
|
|
10
9
|
-webkit-app-region no-drag
|
|
@@ -19,8 +19,7 @@ import {
|
|
|
19
19
|
noTerminalBgValue,
|
|
20
20
|
settingMap,
|
|
21
21
|
rendererTypes,
|
|
22
|
-
proxyHelpLink
|
|
23
|
-
isWin
|
|
22
|
+
proxyHelpLink
|
|
24
23
|
} from '../../common/constants'
|
|
25
24
|
import defaultSettings from '../../common/default-setting'
|
|
26
25
|
import ShowItem from '../common/show-item'
|
|
@@ -618,24 +617,6 @@ export default class Setting extends Component {
|
|
|
618
617
|
}
|
|
619
618
|
}
|
|
620
619
|
|
|
621
|
-
renderMakePortable () {
|
|
622
|
-
const {
|
|
623
|
-
isPortable
|
|
624
|
-
} = this.props.store
|
|
625
|
-
if (!isWin || isPortable) {
|
|
626
|
-
return null
|
|
627
|
-
}
|
|
628
|
-
return (
|
|
629
|
-
<div className='pd1y'>
|
|
630
|
-
<Button
|
|
631
|
-
onClick={this.handlePortable}
|
|
632
|
-
>
|
|
633
|
-
{e('makeItPortable')}
|
|
634
|
-
</Button>
|
|
635
|
-
</div>
|
|
636
|
-
)
|
|
637
|
-
}
|
|
638
|
-
|
|
639
620
|
render () {
|
|
640
621
|
const { ready } = this.state
|
|
641
622
|
if (!ready) {
|
|
@@ -655,7 +636,7 @@ export default class Setting extends Component {
|
|
|
655
636
|
appPath,
|
|
656
637
|
langs
|
|
657
638
|
} = this.props.store
|
|
658
|
-
const terminalLogPath = osResolve(appPath, 'electerm', 'session_logs')
|
|
639
|
+
const terminalLogPath = appPath ? osResolve(appPath, 'electerm', 'session_logs') : window.et.sessionLogPath
|
|
659
640
|
const terminalThemes = this.props.store.getSidebarList(settingMap.terminalThemes)
|
|
660
641
|
const [modifier, key] = hotkey.split('+')
|
|
661
642
|
const pops = {
|
|
@@ -848,9 +829,6 @@ export default class Setting extends Component {
|
|
|
848
829
|
{this.renderToggle('saveTerminalLogToFile', (
|
|
849
830
|
<ShowItem to={terminalLogPath} className='mg1l'>{p('open')}</ShowItem>
|
|
850
831
|
))}
|
|
851
|
-
{
|
|
852
|
-
this.renderMakePortable()
|
|
853
|
-
}
|
|
854
832
|
{this.renderReset()}
|
|
855
833
|
</div>
|
|
856
834
|
)
|
|
@@ -871,7 +871,7 @@ export default class FileSection extends React.Component {
|
|
|
871
871
|
|
|
872
872
|
newItem = (isDirectory) => {
|
|
873
873
|
const { type } = this.state.file
|
|
874
|
-
const list = this.props[type]
|
|
874
|
+
const list = copy(this.props[type])
|
|
875
875
|
list.unshift({
|
|
876
876
|
name: '',
|
|
877
877
|
nameTemp: '',
|
|
@@ -1031,14 +1031,12 @@ export default class FileSection extends React.Component {
|
|
|
1031
1031
|
res.push({
|
|
1032
1032
|
func: 'newFile',
|
|
1033
1033
|
icon: 'FileAddOutlined',
|
|
1034
|
-
text: e('newFile')
|
|
1035
|
-
subText: `${ctrlOrCmd}+v`
|
|
1034
|
+
text: e('newFile')
|
|
1036
1035
|
})
|
|
1037
1036
|
res.push({
|
|
1038
1037
|
func: 'newDirectory',
|
|
1039
1038
|
icon: 'FolderAddOutlined',
|
|
1040
|
-
text: e('newFolder')
|
|
1041
|
-
subText: `${ctrlOrCmd}+v`
|
|
1039
|
+
text: e('newFolder')
|
|
1042
1040
|
})
|
|
1043
1041
|
res.push({
|
|
1044
1042
|
func: 'selectAll',
|
|
@@ -137,7 +137,7 @@ export default class Sftp extends Component {
|
|
|
137
137
|
[`${k}FileTree`]: {},
|
|
138
138
|
[`${k}Loading`]: false,
|
|
139
139
|
[`${k}InputFocus`]: false,
|
|
140
|
-
[`${k}ShowHiddenFile`]:
|
|
140
|
+
[`${k}ShowHiddenFile`]: true,
|
|
141
141
|
[`${k}Path`]: '',
|
|
142
142
|
[`${k}PathTemp`]: '',
|
|
143
143
|
[`${k}PathHistory`]: [],
|
|
@@ -71,43 +71,29 @@
|
|
|
71
71
|
// color #aaa
|
|
72
72
|
// border-color #555
|
|
73
73
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
74
|
+
// Hover.css (http://ianlunn.github.io/Hover/)
|
|
75
|
+
// Version: 2.3.2
|
|
76
|
+
// Author: Ian Lunn @IanLunn
|
|
77
|
+
// Author URL: http://ianlunn.co.uk/
|
|
78
|
+
// Github: https://github.com/IanLunn/Hover
|
|
79
|
+
// Hover.css Copyright Ian Lunn 2017. Generated with Sass.
|
|
80
80
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
transform
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
100%
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
}
|
|
98
|
-
@-webkit-keyframes hvr-bob-float {
|
|
99
|
-
100% {
|
|
100
|
-
-webkit-transform: translateY(-8px);
|
|
101
|
-
transform: translateY(-8px);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
@keyframes hvr-bob-float {
|
|
105
|
-
100% {
|
|
106
|
-
-webkit-transform: translateY(-8px);
|
|
107
|
-
transform: translateY(-8px);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
.hvr-bob {
|
|
81
|
+
// Bob
|
|
82
|
+
@keyframes hvr-bob
|
|
83
|
+
0%
|
|
84
|
+
transform translateY(-8px)
|
|
85
|
+
|
|
86
|
+
50%
|
|
87
|
+
transform translateY(-4px)
|
|
88
|
+
|
|
89
|
+
100%
|
|
90
|
+
transform translateY(-8px)
|
|
91
|
+
|
|
92
|
+
@keyframes hvr-bob-float
|
|
93
|
+
100%
|
|
94
|
+
transform translateY(-8px)
|
|
95
|
+
|
|
96
|
+
.hvr-bob
|
|
111
97
|
transform perspective(1px) translateZ(0)
|
|
112
98
|
box-shadow 0 0 1px rgba(0, 0, 0, 0)
|
|
113
99
|
animation-name hvr-bob-float, hvr-bob
|
|
@@ -117,7 +103,7 @@
|
|
|
117
103
|
animation-iteration-count 1, infinite
|
|
118
104
|
animation-fill-mode forwards
|
|
119
105
|
animation-direction normal, alternate
|
|
120
|
-
|
|
106
|
+
|
|
121
107
|
.btns .upgrade-icon
|
|
122
108
|
color success
|
|
123
109
|
.close-info-modal
|
|
@@ -83,6 +83,16 @@ export default class TransferHistoryModal extends Component {
|
|
|
83
83
|
key: 'speed',
|
|
84
84
|
sorter: sorterFactory('speed')
|
|
85
85
|
}]
|
|
86
|
+
const tabConf = {
|
|
87
|
+
dataSource: transferHistory,
|
|
88
|
+
columns,
|
|
89
|
+
bordered: true,
|
|
90
|
+
pagination: {
|
|
91
|
+
pageSize: 10
|
|
92
|
+
},
|
|
93
|
+
size: 'small',
|
|
94
|
+
rowKey: 'id'
|
|
95
|
+
}
|
|
86
96
|
return (
|
|
87
97
|
<div className='pd2'>
|
|
88
98
|
<div>
|
|
@@ -96,12 +106,7 @@ export default class TransferHistoryModal extends Component {
|
|
|
96
106
|
</div>
|
|
97
107
|
<div className='table-scroll-wrap'>
|
|
98
108
|
<Table
|
|
99
|
-
|
|
100
|
-
columns={columns}
|
|
101
|
-
bordered
|
|
102
|
-
pagination={false}
|
|
103
|
-
size='small'
|
|
104
|
-
rowKey='id'
|
|
109
|
+
{...tabConf}
|
|
105
110
|
/>
|
|
106
111
|
</div>
|
|
107
112
|
</div>
|
|
@@ -684,7 +684,6 @@ export default class Term extends Component {
|
|
|
684
684
|
}
|
|
685
685
|
|
|
686
686
|
searchNext = (searchInput, options) => {
|
|
687
|
-
console.log(this.searchAddon.onDidChangeResults, 'searchAddon')
|
|
688
687
|
this.searchAddon.findNext(
|
|
689
688
|
searchInput, options
|
|
690
689
|
)
|
|
@@ -1018,15 +1017,16 @@ export default class Term extends Component {
|
|
|
1018
1017
|
const socket = new WebSocket(wsUrl)
|
|
1019
1018
|
socket.onclose = this.oncloseSocket
|
|
1020
1019
|
socket.onerror = this.onerrorSocket
|
|
1021
|
-
this.attachAddon = new AttachAddon(
|
|
1022
|
-
socket,
|
|
1023
|
-
undefined,
|
|
1024
|
-
encode,
|
|
1025
|
-
isWin && !this.isRemote()
|
|
1026
|
-
)
|
|
1027
|
-
term.loadAddon(this.attachAddon)
|
|
1028
1020
|
socket.onopen = () => {
|
|
1021
|
+
this.attachAddon = new AttachAddon(
|
|
1022
|
+
socket,
|
|
1023
|
+
undefined,
|
|
1024
|
+
encode,
|
|
1025
|
+
isWin && !this.isRemote()
|
|
1026
|
+
)
|
|
1027
|
+
term.loadAddon(this.attachAddon)
|
|
1029
1028
|
socket.addEventListener('message', this.onSocketData)
|
|
1029
|
+
this.runInitScript()
|
|
1030
1030
|
term._initialized = true
|
|
1031
1031
|
}
|
|
1032
1032
|
this.socket = socket
|
|
@@ -1072,7 +1072,6 @@ export default class Term extends Component {
|
|
|
1072
1072
|
// }
|
|
1073
1073
|
// }
|
|
1074
1074
|
this.term = term
|
|
1075
|
-
this.runInitScript()
|
|
1076
1075
|
window.store.triggerResize()
|
|
1077
1076
|
}
|
|
1078
1077
|
|
|
@@ -11,7 +11,10 @@ const st = prefix('setting')
|
|
|
11
11
|
|
|
12
12
|
export default function TerminalInfoBase (props) {
|
|
13
13
|
const { id, saveTerminalLogToFile, logName } = props
|
|
14
|
-
const
|
|
14
|
+
const base = props.appPath
|
|
15
|
+
? osResolve(props.appPath, 'electerm', 'session_logs')
|
|
16
|
+
: window.et.sessionLogPath
|
|
17
|
+
const path = osResolve(base, logName + '.log')
|
|
15
18
|
const to = saveTerminalLogToFile
|
|
16
19
|
? <ShowItem disabled={!saveTerminalLogToFile} to={path}>{path}</ShowItem>
|
|
17
20
|
: `-> ${c('setting')} -> ${st('saveTerminalLogToFile')}`
|