chore: small changes

This commit is contained in:
surunzi
2020-01-07 15:57:17 +08:00
parent 24c3bc3db7
commit 7b829fe648
2 changed files with 386 additions and 357 deletions

View File

@@ -1,7 +0,0 @@
import stringifyAll from 'licia/stringifyAll'
onmessage = function(e) {
const [id, obj, options] = e.data
const result = stringifyAll(obj, options)
postMessage([id, result])
}

View File

@@ -1,4 +1,74 @@
import { extend } from './util'
import { extend, isArr } from './util'
const keyMap = [
'background',
'foreground',
'selectForeground',
'accent',
'highlight',
'border',
'primary',
'contrast',
'varColor',
'stringColor',
'keywordColor',
'numberColor',
'operatorColor',
'linkColor',
'textColor',
'tagNameColor',
'functionColor',
'attributeNameColor',
'commentColor'
]
const keyMapLen = keyMap.length
function arrToMap(arr) {
const ret = {}
for (let i = 0; i < keyMapLen; i++) {
ret[keyMap[i]] = arr[i]
}
return ret
}
function createDarkTheme(theme) {
if (isArr(theme)) theme = arrToMap(theme)
if (!theme.darkerBackground) theme.darkerBackground = theme.contrast
return extend(
{
consoleWarnBackground: '#332a00',
consoleWarnForeground: '#ffcb6b',
consoleWarnBorder: '#650',
consoleErrorBackground: '#290000',
consoleErrorForeground: '#ff8080',
consoleErrorBorder: '#5c0000',
light: '#ccc',
dark: '#aaa'
},
theme
)
}
function createLightTheme(theme) {
if (isArr(theme)) theme = arrToMap(theme)
if (!theme.darkerBackground) theme.darkerBackground = theme.contrast
return extend(
{
consoleWarnBackground: '#fffbe5',
consoleWarnForeground: '#5c5c00',
consoleWarnBorder: '#fff5c2',
consoleErrorBackground: '#fff0f0',
consoleErrorForeground: '#f00',
consoleErrorBorder: '#ffd6d6',
light: '#fff',
dark: '#eee'
},
theme
)
}
export default {
Light: createLightTheme({
@@ -46,353 +116,319 @@ export default {
attributeNameColor: '#9bbbdc',
commentColor: '#747474'
}),
'Material Oceanic': createDarkTheme({
background: '#263238',
foreground: '#B0BEC5',
selectForeground: '#FFFFFF',
accent: '#009688',
highlight: '#425B67',
border: '#2A373E',
primary: '#607D8B',
contrast: '#1E272C',
varColor: '#eeffff',
stringColor: '#c3e88d',
keywordColor: '#c792ea',
numberColor: '#f78c6c',
operatorColor: '#89ddff',
linkColor: '#80cbc4',
textColor: '#B0BEC5',
tagNameColor: '#f07178',
functionColor: '#82aaff',
attributeNameColor: '#ffcb6b',
commentColor: '#546e7a'
}),
'Material Darker': createDarkTheme({
background: '#212121',
foreground: '#B0BEC5',
selectForeground: '#FFFFFF',
accent: '#FF9800',
highlight: '#3F3F3F',
border: '#292929',
primary: '#727272',
contrast: '#1A1A1A',
varColor: '#eeffff',
stringColor: '#c3e88d',
keywordColor: '#c792ea',
numberColor: '#f78c6c',
operatorColor: '#89ddff',
linkColor: '#80cbc4',
textColor: '#B0BEC5',
tagNameColor: '#f07178',
functionColor: '#82aaff',
attributeNameColor: '#ffcb6b',
commentColor: '#616161'
}),
'Material Lighter': createLightTheme({
background: '#FAFAFA',
foreground: '#546E7A',
selectForeground: '#546e7a',
accent: '#00BCD4',
highlight: '#E7E7E8',
border: '#d3e1e8',
primary: '#94A7B0',
contrast: '#F4F4F4',
varColor: '#272727',
stringColor: '#91B859',
keywordColor: '#7C4DFF',
numberColor: '#F76D47',
operatorColor: '#39ADB5',
linkColor: '#39ADB5',
textColor: '#546E7A',
tagNameColor: '#E53935',
functionColor: '#6182B8',
attributeNameColor: '#F6A434',
commentColor: '#AABFC9'
}),
'Material Palenight': createDarkTheme({
background: '#292D3E',
foreground: '#A6ACCD',
selectForeground: '#FFFFFF',
accent: '#ab47bc',
highlight: '#444267',
border: '#2b2a3e',
primary: '#676E95',
contrast: '#202331',
varColor: '#eeffff',
stringColor: '#c3e88d',
keywordColor: '#c792ea',
numberColor: '#f78c6c',
operatorColor: '#89ddff',
linkColor: '#80cbc4',
textColor: '#A6ACCD',
tagNameColor: '#f07178',
functionColor: '#82aaff',
attributeNameColor: '#ffcb6b',
commentColor: '#676E95'
}),
'Material Deep Ocean': createDarkTheme({
background: '#0F111A',
foreground: '#8F93A2',
selectForeground: '#FFFFFF',
accent: '#84ffff',
highlight: '#1F2233',
border: '#41465b',
primary: '#4B526D',
contrast: '#090B10',
varColor: '#eeffff',
stringColor: '#c3e88d',
keywordColor: '#c792ea',
numberColor: '#f78c6c',
operatorColor: '#89ddff',
linkColor: '#80cbc4',
textColor: '#8F93A2',
tagNameColor: '#f07178',
functionColor: '#82aaff',
attributeNameColor: '#ffcb6b',
commentColor: '#717CB4'
}),
'Monokai Pro': createDarkTheme({
background: '#2D2A2E',
foreground: '#fcfcfa',
selectForeground: '#FFFFFF',
accent: '#ffd866',
highlight: '#5b595c',
border: '#423f43',
primary: '#939293',
contrast: '#221F22',
varColor: '#FCFCFA',
stringColor: '#FFD866',
keywordColor: '#FF6188',
numberColor: '#AB9DF2',
operatorColor: '#FF6188',
linkColor: '#78DCE8',
textColor: '#fcfcfa',
tagNameColor: '#FF6188',
functionColor: '#A9DC76',
attributeNameColor: '#78DCE8',
commentColor: '#727072'
}),
Dracula: createDarkTheme({
background: '#282A36',
foreground: '#F8F8F2',
selectForeground: '#8BE9FD',
accent: '#FF79C5',
highlight: '#6272A4',
border: '#21222C',
primary: '#6272A4',
contrast: '#191A21',
varColor: '#F8F8F2',
stringColor: '#F1FA8C',
keywordColor: '#FF79C6',
numberColor: '#BD93F9',
operatorColor: '#FF79C6',
linkColor: '#F1FA8C',
textColor: '#F8F8F2',
tagNameColor: '#FF79C6',
functionColor: '#50FA78',
attributeNameColor: '#50FA7B',
commentColor: '#6272A4'
}),
'Arc Dark': createDarkTheme({
background: '#2f343f',
foreground: '#D3DAE3',
selectForeground: '#FFFFFF',
accent: '#42A5F5',
highlight: '#3F3F46',
border: '#404552',
primary: '#8b9eb5',
contrast: '#262b33',
varColor: '#CF6A4C',
stringColor: '#8F9D6A',
keywordColor: '#9B859D',
numberColor: '#CDA869',
operatorColor: '#A7A7A7',
linkColor: '#7587A6',
textColor: '#D3DAE3',
tagNameColor: '#CF6A4C',
functionColor: '#7587A6',
attributeNameColor: '#F9EE98',
commentColor: '#747C84'
}),
'Atom One Dark': createDarkTheme({
background: '#282C34',
foreground: '#979FAD',
selectForeground: '#FFFFFF',
accent: '#2979ff',
highlight: '#383D48',
border: '#2e3239',
primary: '#979FAD',
contrast: '#21252B',
varColor: '#D19A66',
stringColor: '#98C379',
keywordColor: '#C679DD',
numberColor: '#D19A66',
operatorColor: '#61AFEF',
linkColor: '#56B6C2',
textColor: '#979FAD',
tagNameColor: '#F07178',
functionColor: '#61AEEF',
attributeNameColor: '#E5C17C',
commentColor: '#59626F'
}),
'Atom One Light': createLightTheme({
background: '#FAFAFA',
foreground: '#232324',
selectForeground: '#232324',
accent: '#2979ff',
highlight: '#EAEAEB',
border: '#DBDBDC',
primary: '#9D9D9F',
contrast: '#FFFFFF',
varColor: '#986801',
stringColor: '#50A14E',
keywordColor: '#A626A4',
numberColor: '#986801',
operatorColor: '#4078F2',
linkColor: '#0184BC',
textColor: '#232324',
tagNameColor: '#E4564A',
functionColor: '#4078F2',
attributeNameColor: '#C18401',
commentColor: '#A0A1A7'
}),
'Solarized Dark': createDarkTheme({
background: '#002B36',
foreground: '#839496',
selectForeground: '#FFFFFF',
accent: '#d33682',
highlight: '#11353F',
border: '#0D3640',
primary: '#586e75',
contrast: '#00252E',
varColor: '#268BD2',
stringColor: '#2AA198',
keywordColor: '#859900',
numberColor: '#D33682',
operatorColor: '#93A1A1',
linkColor: '#268BD2',
textColor: '#839496',
tagNameColor: '#268BD2',
functionColor: '#B58900',
attributeNameColor: '#B58900',
commentColor: '#657B83'
}),
'Solarized Light': createLightTheme({
background: '#fdf6e3',
foreground: '#586e75',
selectForeground: '#002b36',
accent: '#d33682',
highlight: '#F6F0DE',
border: '#f7f2e2',
primary: '#93a1a1',
contrast: '#eee8d5',
varColor: '#268BD2',
stringColor: '#2AA198',
keywordColor: '#859900',
numberColor: '#D33682',
operatorColor: '#657B83',
linkColor: '#268BD2',
textColor: '#586e75',
tagNameColor: '#268BD2',
functionColor: '#B58900',
attributeNameColor: '#657B83',
commentColor: '#93A1A1'
}),
Github: createLightTheme({
background: '#F7F8FA',
foreground: '#5B6168',
selectForeground: '#FFFFFF',
accent: '#79CB60',
highlight: '#CCE5FF',
border: '#DFE1E4',
primary: '#292D31',
contrast: '#FFFFFF',
varColor: '#24292E',
stringColor: '#032F62',
keywordColor: '#D73A49',
numberColor: '#005CC5',
operatorColor: '#D73A49',
linkColor: '#005CC5',
textColor: '#5B6168',
tagNameColor: '#22863A',
functionColor: '#6F42C1',
attributeNameColor: '#6F42C1',
commentColor: '#6A737D'
}),
'Night Owl': createDarkTheme({
background: '#011627',
foreground: '#b0bec5',
selectForeground: '#ffffff',
accent: '#7e57c2',
highlight: '#152C3B',
border: '#2a373e',
primary: '#607d8b',
contrast: '#001424',
varColor: '#addb67',
stringColor: '#ecc48d',
keywordColor: '#c792ea',
numberColor: '#f78c6c',
operatorColor: '#c792ea',
linkColor: '#80CBC4',
textColor: '#b0bec5',
tagNameColor: '#7fdbca',
functionColor: '#82AAFF',
attributeNameColor: '#FAD430',
commentColor: '#637777'
}),
'Light Owl': createLightTheme({
background: '#FAFAFA',
foreground: '#546e7a',
selectForeground: '#403f53',
accent: '#269386',
highlight: '#E0E7EA',
border: '#efefef',
primary: '#403F53',
contrast: '#FAFAFA',
varColor: '#0C969B',
stringColor: '#c96765',
keywordColor: '#994cc3',
numberColor: '#aa0982',
operatorColor: '#7d818b',
linkColor: '#994cc3',
textColor: '#546e7a',
tagNameColor: '#994cc3',
functionColor: '#4876d6',
attributeNameColor: '#4876d6',
commentColor: '#637777'
})
}
function createDarkTheme(theme) {
if (!theme.darkerBackground) theme.darkerBackground = theme.contrast
return extend(
{
consoleWarnBackground: '#332a00',
consoleWarnForeground: '#ffcb6b',
consoleWarnBorder: '#650',
consoleErrorBackground: '#290000',
consoleErrorForeground: '#ff8080',
consoleErrorBorder: '#5c0000',
light: '#ccc',
dark: '#aaa'
},
theme
)
}
function createLightTheme(theme) {
if (!theme.darkerBackground) theme.darkerBackground = theme.contrast
return extend(
{
consoleWarnBackground: '#fffbe5',
consoleWarnForeground: '#5c5c00',
consoleWarnBorder: '#fff5c2',
consoleErrorBackground: '#fff0f0',
consoleErrorForeground: '#f00',
consoleErrorBorder: '#ffd6d6',
light: '#fff',
dark: '#eee'
},
theme
)
'Material Oceanic': createDarkTheme([
'#263238',
'#B0BEC5',
'#FFFFFF',
'#009688',
'#425B67',
'#2A373E',
'#607D8B',
'#1E272C',
'#eeffff',
'#c3e88d',
'#c792ea',
'#f78c6c',
'#89ddff',
'#80cbc4',
'#B0BEC5',
'#f07178',
'#82aaff',
'#ffcb6b',
'#546e7a'
]),
'Material Darker': createDarkTheme([
'#212121',
'#B0BEC5',
'#FFFFFF',
'#FF9800',
'#3F3F3F',
'#292929',
'#727272',
'#1A1A1A',
'#eeffff',
'#c3e88d',
'#c792ea',
'#f78c6c',
'#89ddff',
'#80cbc4',
'#B0BEC5',
'#f07178',
'#82aaff',
'#ffcb6b',
'#616161'
]),
'Material Lighter': createLightTheme([
'#FAFAFA',
'#546E7A',
'#546e7a',
'#00BCD4',
'#E7E7E8',
'#d3e1e8',
'#94A7B0',
'#F4F4F4',
'#272727',
'#91B859',
'#7C4DFF',
'#F76D47',
'#39ADB5',
'#39ADB5',
'#546E7A',
'#E53935',
'#6182B8',
'#F6A434',
'#AABFC9'
]),
'Material Palenight': createDarkTheme([
'#292D3E',
'#A6ACCD',
'#FFFFFF',
'#ab47bc',
'#444267',
'#2b2a3e',
'#676E95',
'#202331',
'#eeffff',
'#c3e88d',
'#c792ea',
'#f78c6c',
'#89ddff',
'#80cbc4',
'#A6ACCD',
'#f07178',
'#82aaff',
'#ffcb6b',
'#676E95'
]),
'Material Deep Ocean': createDarkTheme([
'#0F111A',
'#8F93A2',
'#FFFFFF',
'#84ffff',
'#1F2233',
'#41465b',
'#4B526D',
'#090B10',
'#eeffff',
'#c3e88d',
'#c792ea',
'#f78c6c',
'#89ddff',
'#80cbc4',
'#8F93A2',
'#f07178',
'#82aaff',
'#ffcb6b',
'#717CB4'
]),
'Monokai Pro': createDarkTheme([
'#2D2A2E',
'#fcfcfa',
'#FFFFFF',
'#ffd866',
'#5b595c',
'#423f43',
'#939293',
'#221F22',
'#FCFCFA',
'#FFD866',
'#FF6188',
'#AB9DF2',
'#FF6188',
'#78DCE8',
'#fcfcfa',
'#FF6188',
'#A9DC76',
'#78DCE8',
'#727072'
]),
Dracula: createDarkTheme([
'#282A36',
'#F8F8F2',
'#8BE9FD',
'#FF79C5',
'#6272A4',
'#21222C',
'#6272A4',
'#191A21',
'#F8F8F2',
'#F1FA8C',
'#FF79C6',
'#BD93F9',
'#FF79C6',
'#F1FA8C',
'#F8F8F2',
'#FF79C6',
'#50FA78',
'#50FA7B',
'#6272A4'
]),
'Arc Dark': createDarkTheme([
'#2f343f',
'#D3DAE3',
'#FFFFFF',
'#42A5F5',
'#3F3F46',
'#404552',
'#8b9eb5',
'#262b33',
'#CF6A4C',
'#8F9D6A',
'#9B859D',
'#CDA869',
'#A7A7A7',
'#7587A6',
'#D3DAE3',
'#CF6A4C',
'#7587A6',
'#F9EE98',
'#747C84'
]),
'Atom One Dark': createDarkTheme([
'#282C34',
'#979FAD',
'#FFFFFF',
'#2979ff',
'#383D48',
'#2e3239',
'#979FAD',
'#21252B',
'#D19A66',
'#98C379',
'#C679DD',
'#D19A66',
'#61AFEF',
'#56B6C2',
'#979FAD',
'#F07178',
'#61AEEF',
'#E5C17C',
'#59626F'
]),
'Atom One Light': createLightTheme([
'#FAFAFA',
'#232324',
'#232324',
'#2979ff',
'#EAEAEB',
'#DBDBDC',
'#9D9D9F',
'#FFFFFF',
'#986801',
'#50A14E',
'#A626A4',
'#986801',
'#4078F2',
'#0184BC',
'#232324',
'#E4564A',
'#4078F2',
'#C18401',
'#A0A1A7'
]),
'Solarized Dark': createDarkTheme([
'#002B36',
'#839496',
'#FFFFFF',
'#d33682',
'#11353F',
'#0D3640',
'#586e75',
'#00252E',
'#268BD2',
'#2AA198',
'#859900',
'#D33682',
'#93A1A1',
'#268BD2',
'#839496',
'#268BD2',
'#B58900',
'#B58900',
'#657B83'
]),
'Solarized Light': createLightTheme([
'#fdf6e3',
'#586e75',
'#002b36',
'#d33682',
'#F6F0DE',
'#f7f2e2',
'#93a1a1',
'#eee8d5',
'#268BD2',
'#2AA198',
'#859900',
'#D33682',
'#657B83',
'#268BD2',
'#586e75',
'#268BD2',
'#B58900',
'#657B83',
'#93A1A1'
]),
Github: createLightTheme([
'#F7F8FA',
'#5B6168',
'#FFFFFF',
'#79CB60',
'#CCE5FF',
'#DFE1E4',
'#292D31',
'#FFFFFF',
'#24292E',
'#032F62',
'#D73A49',
'#005CC5',
'#D73A49',
'#005CC5',
'#5B6168',
'#22863A',
'#6F42C1',
'#6F42C1',
'#6A737D'
]),
'Night Owl': createDarkTheme([
'#011627',
'#b0bec5',
'#ffffff',
'#7e57c2',
'#152C3B',
'#2a373e',
'#607d8b',
'#001424',
'#addb67',
'#ecc48d',
'#c792ea',
'#f78c6c',
'#c792ea',
'#80CBC4',
'#b0bec5',
'#7fdbca',
'#82AAFF',
'#FAD430',
'#637777'
]),
'Light Owl': createLightTheme([
'#FAFAFA',
'#546e7a',
'#403f53',
'#269386',
'#E0E7EA',
'#efefef',
'#403F53',
'#FAFAFA',
'#0C969B',
'#c96765',
'#994cc3',
'#aa0982',
'#7d818b',
'#994cc3',
'#546e7a',
'#994cc3',
'#4876d6',
'#4876d6',
'#637777'
])
}