| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147 | 
							- 'use strict';
 
- const escapeStringRegexp = require('escape-string-regexp');
 
- const platform = process.platform;
 
- const main = {
 
- 	tick: '✔',
 
- 	cross: '✖',
 
- 	star: '★',
 
- 	square: '▇',
 
- 	squareSmall: '◻',
 
- 	squareSmallFilled: '◼',
 
- 	play: '▶',
 
- 	circle: '◯',
 
- 	circleFilled: '◉',
 
- 	circleDotted: '◌',
 
- 	circleDouble: '◎',
 
- 	circleCircle: 'ⓞ',
 
- 	circleCross: 'ⓧ',
 
- 	circlePipe: 'Ⓘ',
 
- 	circleQuestionMark: '?⃝',
 
- 	bullet: '●',
 
- 	dot: '․',
 
- 	line: '─',
 
- 	ellipsis: '…',
 
- 	pointer: '❯',
 
- 	pointerSmall: '›',
 
- 	info: 'ℹ',
 
- 	warning: '⚠',
 
- 	hamburger: '☰',
 
- 	smiley: '㋡',
 
- 	mustache: '෴',
 
- 	heart: '♥',
 
- 	arrowUp: '↑',
 
- 	arrowDown: '↓',
 
- 	arrowLeft: '←',
 
- 	arrowRight: '→',
 
- 	radioOn: '◉',
 
- 	radioOff: '◯',
 
- 	checkboxOn: '☒',
 
- 	checkboxOff: '☐',
 
- 	checkboxCircleOn: 'ⓧ',
 
- 	checkboxCircleOff: 'Ⓘ',
 
- 	questionMarkPrefix: '?⃝',
 
- 	oneHalf: '½',
 
- 	oneThird: '⅓',
 
- 	oneQuarter: '¼',
 
- 	oneFifth: '⅕',
 
- 	oneSixth: '⅙',
 
- 	oneSeventh: '⅐',
 
- 	oneEighth: '⅛',
 
- 	oneNinth: '⅑',
 
- 	oneTenth: '⅒',
 
- 	twoThirds: '⅔',
 
- 	twoFifths: '⅖',
 
- 	threeQuarters: '¾',
 
- 	threeFifths: '⅗',
 
- 	threeEighths: '⅜',
 
- 	fourFifths: '⅘',
 
- 	fiveSixths: '⅚',
 
- 	fiveEighths: '⅝',
 
- 	sevenEighths: '⅞'
 
- };
 
- const win = {
 
- 	tick: '√',
 
- 	cross: '×',
 
- 	star: '*',
 
- 	square: '█',
 
- 	squareSmall: '[ ]',
 
- 	squareSmallFilled: '[█]',
 
- 	play: '►',
 
- 	circle: '( )',
 
- 	circleFilled: '(*)',
 
- 	circleDotted: '( )',
 
- 	circleDouble: '( )',
 
- 	circleCircle: '(○)',
 
- 	circleCross: '(×)',
 
- 	circlePipe: '(│)',
 
- 	circleQuestionMark: '(?)',
 
- 	bullet: '*',
 
- 	dot: '.',
 
- 	line: '─',
 
- 	ellipsis: '...',
 
- 	pointer: '>',
 
- 	pointerSmall: '»',
 
- 	info: 'i',
 
- 	warning: '‼',
 
- 	hamburger: '≡',
 
- 	smiley: '☺',
 
- 	mustache: '┌─┐',
 
- 	heart: main.heart,
 
- 	arrowUp: main.arrowUp,
 
- 	arrowDown: main.arrowDown,
 
- 	arrowLeft: main.arrowLeft,
 
- 	arrowRight: main.arrowRight,
 
- 	radioOn: '(*)',
 
- 	radioOff: '( )',
 
- 	checkboxOn: '[×]',
 
- 	checkboxOff: '[ ]',
 
- 	checkboxCircleOn: '(×)',
 
- 	checkboxCircleOff: '( )',
 
- 	questionMarkPrefix: '?',
 
- 	oneHalf: '1/2',
 
- 	oneThird: '1/3',
 
- 	oneQuarter: '1/4',
 
- 	oneFifth: '1/5',
 
- 	oneSixth: '1/6',
 
- 	oneSeventh: '1/7',
 
- 	oneEighth: '1/8',
 
- 	oneNinth: '1/9',
 
- 	oneTenth: '1/10',
 
- 	twoThirds: '2/3',
 
- 	twoFifths: '2/5',
 
- 	threeQuarters: '3/4',
 
- 	threeFifths: '3/5',
 
- 	threeEighths: '3/8',
 
- 	fourFifths: '4/5',
 
- 	fiveSixths: '5/6',
 
- 	fiveEighths: '5/8',
 
- 	sevenEighths: '7/8'
 
- };
 
- if (platform === 'linux') {
 
- 	// the main one doesn't look that good on Ubuntu
 
- 	main.questionMarkPrefix = '?';
 
- }
 
- const figures = platform === 'win32' ? win : main;
 
- const fn = str => {
 
- 	if (figures === main) {
 
- 		return str;
 
- 	}
 
- 	Object.keys(main).forEach(key => {
 
- 		if (main[key] === figures[key]) {
 
- 			return;
 
- 		}
 
- 		str = str.replace(new RegExp(escapeStringRegexp(main[key]), 'g'), figures[key]);
 
- 	});
 
- 	return str;
 
- };
 
- module.exports = Object.assign(fn, figures);
 
 
  |