text: import toHash from 'tohash'
  
  export const DEFAULT_ASPECT_RATIO = 1
  export const ASPECT_RATIOS = [
    { id: 'auto', name: 'Auto', value: null },
    { id: '1:1', name: '1:1', value: 1 },
    { id: '4:5', name: '4:5', value: 4 / 5 },
    { id: '1.91:1', name: '1.91:1', value: 1.91 / 1 }
  ]
  
  export const FONTS = [
    { id: 'Anonymous Pro', name: 'Anonymous Pro' },
    { id: 'Droid Sans Mono', name: 'Droid Sans Mono' },
    { id: 'Fantasque Sans Mono', name: 'Fantasque Sans Mono' },
    { id: 'Fira Code', name: 'Fira Code' },
    { id: 'Hack', name: 'Hack' },
    { id: 'IBM Plex Mono', name: 'IBM Plex Mono' },
    { id: 'Inconsolata', name: 'Inconsolata' },
    { id: 'Iosevka', name: 'Iosevka' },
    { id: 'Monoid', name: 'Monoid' },
    { id: 'Source Code Pro', name: 'Source Code Pro' },
    { id: 'Space Mono', name: 'Space Mono' },
    { id: 'Ubuntu Mono', name: 'Ubuntu Mono' }
  ]
  
  export const HIGHLIGHT_KEYS = [
    'background',
    'text',
    'variable',
    'attribute',
    'definition',
    'keyword',
    'operator',
    'property',
    'number',
    'string',
    'comment',
    'meta'
  ]
  
  export const THEMES = [
    {
      id: '3024-night',
      name: '3024 Night',
      highlights: {
        background: '#090300',
        text: '#d6d5d4',
        variable: '#01a0e4',
        attribute: '#00c',
        definition: '#e8bbd0',
        keyword: '#db2d20',
        operator: '#fff',
        property: '#01a252',
        number: '#a16a94',
        string: '#fded02',
        comment: '#cdab53',
        meta: '#555'
      }
    },
    {
      id: 'a11y-dark',
      name: 'A11y Dark',
      highlights: {
        background: '#2b2b2b',
        text: '#f8f8f2',
        variable: '#00e0e0',
        attribute: '#abe338',
        definition: '#ffd700',
        keyword: '#ffa07a',
        operator: '#f8f8f2',
        property: '#abe338',
        number: '#dcc6e0',
        string: '#ffd700',
        comment: '#d4d0ab',
        meta: '#d4d0ab',
        tag: '#dcc6e0'
      }
    },
    {
      id: 'blackboard',
      name: 'Blackboard',
      highlights: {
        background: '#0C1021',
        text: '#F8F8F8',
        variable: '#FF6400',
        attribute: '#8DA6CE',
        definition: '#8DA6CE',
        keyword: '#FBDE2D',
        operator: '#fff',
        property: '#fff',
        number: '#D8FA3C',
        string: '#61CE3C',
        comment: '#AEAEAE',
        meta: '#D8FA3C',
        tag: '#8DA6CE'
      }
    },
    {
      id: 'base16-dark',
      name: 'Base 16 (Dark)',
      highlights: {
        background: '#151515',
        text: '#e0e0e0',
        variable: '#6a9fb5',
        attribute: '#00c',
        definition: '#d28445',
        keyword: '#ac4142',
        operator: '#fff',
        property: '#90a959',
        number: '#aa759f',
        string: '#f4bf75',
        comment: '#8f5536',
        meta: '#555',
        tag: '#ac4142'
      }
    },
    {
      id: 'base16-light',
      name: 'Base 16 (Light)',
      light: true,
      highlights: {
        background: '#f5f5f5',
        text: '#202020',
        variable: '#90a959',
        attribute: '#90a959',
        definition: '#d28445',
        keyword: '#ac4142',
        operator: '#fff',
        property: '#90a959',
        number: '#aa759f',
        string: '#f4bf75',
        comment: '#8f5536',
        meta: '#555',
        tag: '#ac4142'
      }
    },
    {
      id: 'cobalt',
      name: 'Cobalt',
      highlights: {
        background: '#002240',
        text: '#fff',
        variable: '#9effff',
        attribute: '#ff80e1',
        definition: '#fff',
        keyword: '#ffee80',
        operator: '#fff',
        property: '#fff',
        number: '#ff80e1',
        string: '#3ad900',
        comment: '#08f',
        meta: '#ff9d00',
        tag: '#9effff'
      }
    },
    {
      id: 'dracula',
      name: 'Dracula',
      highlights: {
        background: '#282a36',
        text: '#f8f8f2',
        variable: '#fff',
        attribute: '#50fa7b',
        definition: '#50fa7b',
        keyword: '#ff79c6',
        operator: '#ff79c6',
        property: '#66d9ef',
        number: '#bd93f9',
        string: '#f1fa8c',
        comment: '#6272a4',
        meta: '#f8f8f2',
        tag: '#ff79c6'
      }
    },
    {
      id: 'duotone-dark',
      name: 'Duotone',
      highlights: {
        background: '#2a2734',
        text: '#6c6783',
        variable: '#ffcc99',
        attribute: '#ffcc99',
        definition: '#eeebff',
        keyword: '#ffcc99',
        operator: '#ffad5c',
        property: '#9a86fd',
        number: '#ffcc99',
        string: '#ffb870',
        comment: '#6c6783',
        meta: '#555',
        tag: '#eeebff'
      }
    },
    {
      id: 'hopscotch',
      name: 'Hopscotch',
      highlights: {
        background: '#322931',
        text: '#d5d3d5',
        variable: '#0066ff',
        attribute: '#8fc13e',
        definition: '#fd8b19',
        keyword: '#dd464c',
        operator: '#fff',
        property: '#8fc13e',
        number: '#c85e7c',
        string: '#fdcc59',
        comment: '#b33508',
        meta: '#555',
        tag: '#dd464c'
      }
    },
    {
      id: 'lucario',
      name: 'Lucario',
      highlights: {
        background: '#2b3e50',
        text: '#f8f8f2',
        variable: '#f8f8f2',
        attribute: '#66D9EF',
        definition: '#72C05D',
        keyword: '#ff6541',
        operator: '#66D9EF',
        property: '#f8f8f2',
        number: '#ca94ff',
        string: '#E6DB74',
        comment: '#5c98cd',
        meta: '#f8f8f2',
        tag: '#ff6541'
      }
    },
    {
      id: 'material',
      name: 'Material',
      highlights: {
        background: '#263238',
        text: 'rgba(233, 237, 237, 1)',
        variable: '#80CBC4',
        attribute: '#FFCB6B',
        definition: 'rgba(233, 237, 237, 1)',
        keyword: 'rgba(199, 146, 234, 1)',
        operator: 'rgba(233, 237, 237, 1)',
        property: '#80CBAE',
        number: '#F77669',
        string: '#C3E88D',
        comment: '#546E7A',
        meta: '#80CBC4',
        tag: 'rgba(255, 83, 112, 1)'
      }
    },
    {
      id: 'monokai',
      name: 'Monokai',
      highlights: {
        background: '#272822',
        text: '#f8f8f2',
        variable: '#9effff',
        attribute: '#a6e22e',
        definition: '#fd971f',
        keyword: '#f92672',
        operator: '#fff',
        property: '#a6e22e',
        number: '#ae81ff',
        string: '#e6db74',
        comment: '#75715e',
        meta: '#555',
        tag: '#bc6283'
      }
    },
    {
      id: 'night-owl',
      name: 'Night Owl',
      highlights: {
        background: '#011627',
        text: '#abb2bf',
        variable: '#82AAFF',
        attribute: '#F78C6C',
        definition: '#82AAFF',
        keyword: '#c792ea',
        operator: '#c792ea',
        property: '#fff',
        number: '#F78C6C',
        string: '#ecc48d',
        comment: '#5c6370',
        meta: '#7fdbca'
      }
    },
    {
      id: 'nord',
      name: 'Nord',
      highlights: {
        background: '#2e3440',
        text: '#d8dee9',
        variable: '#88C0D0',
        attribute: '#8FBCBB',
        definition: '#D8DEE9',
        keyword: '#81A1C1',
        operator: '#81A1C1',
        property: '#D8DEE9',
        number: '#B48EAD',
        string: '#A3BE8C',
        comment: '#4C566A',
        meta: '#81A1C1',
        tag: '#81A1C1'
      }
    },
    {
      id: 'oceanic-next',
      name: 'Oceanic Next',
      highlights: {
        background: '#304148',
        text: '#f8f8f2',
        variable: '#f8f8f2',
        attribute: '#C594C5',
        definition: '#6699CC',
        keyword: '#C594C5',
        operator: '#fff',
        property: '#99C794',
        number: '#F99157',
        string: '#99C794',
        comment: '#65737E',
        meta: '#555',
        tag: '#C594C5'
      }
    },
    {
      id: 'one-light',
      name: 'One Light',
      light: true,
      highlights: {
        background: '#fafafa',
        text: '#383a42',
        variable: '#e06c75',
        attribute: '#d19a66',
        definition: '#4078f2',
        keyword: '#a626a4',
        operator: '#0184bc',
        property: '#4078f2',
        number: '#986801',
        string: '#50a14f',
        comment: '#a0a1a7',
        meta: '#383a42',
        tag: '#e45649'
      }
    },
    {
      id: 'one-dark',
      name: 'One Dark',
      highlights: {
        background: '#282c34',
        text: '#abb2bf',
        variable: '#e06c75',
        attribute: '#d19a66',
        definition: '#e5c07b',
        keyword: '#c678dd',
        operator: '#56b6c2',
        property: '#56b6c2',
        number: '#d19a66',
        string: '#98c379',
        comment: '#5c6370',
        meta: '#abb2bf',
        tag: '#e06c75'
      }
    },
    {
      id: 'panda-syntax',
      name: 'Panda',
      highlights: {
        background: '#292A2B',
        text: '#E6E6E6',
        variable: '#ff9ac1',
        attribute: '#ffb86c',
        definition: '#e6e6e6',
        keyword: '#FF75B5',
        operator: '#f3f3f3',
        property: '#f3f3f3',
        number: '#FFB86C',
        string: '#19F9D8',
        comment: '#676B79',
        meta: '#b084eb',
        tag: '#ff2c6d'
      }
    },
    {
      id: 'paraiso-dark',
      name: 'Paraiso',
      highlights: {
        background: '#2f1e2e',
        text: '#b9b6b0',
        variable: '#06b6ef',
        attribute: '#48b685',
        definition: '#f99b15',
        keyword: '#ef6155;',
        operator: '#fff',
        property: '#48b685',
        number: '#815ba4',
        string: '#fec418',
        comment: '#e96ba8',
        meta: '#555',
        tag: '#ef6155'
      }
    },
    {
      id: 'seti',
      name: 'Seti',
      highlights: {
        background: '#151718',
        text: '#CFD2D1',
        variable: '#a074c4',
        attribute: '#9fca56',
        definition: '#55b5db',
        keyword: '#e6cd69',
        operator: '#9fca56',
        property: '#a074c4',
        number: '#cd3f45',
        string: '#55b5db',
        comment: '#41535b',
        meta: '#55b5db',
        tag: '#55b5db'
      }
    },
    {
      id: 'shades-of-purple',
      name: 'Shades of Purple ',
      highlights: {
        background: '#2D2B55',
        text: '#FFFFFF',
        variable: '#9EFFFF',
        attribute: '#9EFFFF',
        definition: '#9EFFFF',
        keyword: '#FF9D00',
        operator: '#FF9D00',
        property: '#FAD000',
        number: '#FF628C',
        string: '#A5FF90',
        comment: '#B362FF',
        meta: '#FF9D00',
        tag: '#9EFFFF'
      }
    },
    {
      id: 'solarized dark',
      name: 'Solarized (Dark)',
      link: 'solarized',
      highlights: {
        background: '#002b36',
        text: '#839496',
        variable: '#b58900',
        attribute: '#2aa198',
        definition: '#2aa198',
        keyword: '#cb4b16',
        operator: '#6c71c4',
        property: '#2aa198',
        number: '#d33682',
        string: '#859900',
        comment: '#586e75',
        meta: '#859900',
        tag: '#93a1a1'
      }
    },
    {
      id: 'solarized light',
      name: 'Solarized (Light)',
      link: 'solarized',
      light: true,
      highlights: {
        background: '#fdf6e3',
        text: '#657b83',
        variable: '#839496',
        attribute: '#2aa198',
        definition: '#2aa198',
        keyword: '#cb4b16',
        operator: '#6c71c4',
        property: '#2aa198',
        number: '#d33682',
        string: '#859900',
        comment: '#586e75',
        meta: '#859900',
        tag: '#93a1a1'
      }
    },
    {
      id: 'synthwave-84',
      name: "SynthWave '84",
      highlights: {
        background: '#2b213a',
        text: '#b6b1b1',
        variable: '#f92aad',
        attribute: '#fff5f6',
        definition: '#fdfdfd',
        keyword: '#f4eee4',
        operator: '#f4eee4',
        property: '#fdfdfd',
        number: '#f97e72',
        string: '#ff8b39',
        comment: '#6d77b3',
        meta: '#ff8b39',
        tag: '#f92aad'
      }
    },
    {
      id: 'twilight',
      name: 'Twilight',
      highlights: {
        background: '#141414',
        text: '#f7f7f7',
        variable: '#607392',
        attribute: '#d6bb6d',
        definition: '#607392',
        keyword: '#f9ee98',
        operator: '#cda869',
        property: '#fff',
        number: '#ca7841',
        string: '#8f9d6a',
        comment: '#777',
        meta: '#f7f7f7',
        tag: '#997643'
      }
    },
    {
      id: 'verminal',
      name: 'Verminal',
      highlights: {
        background: 'rgba(0, 0, 0, 0.85)',
        text: '#fff',
        variable: '#ff9ba3',
        attribute: '#d19a66',
        definition: '#34B7FF',
        keyword: '#9AE1FF',
        operator: '#FA78C3',
        property: '#0af',
        number: '#d19a66',
        string: '#98c379',
        comment: '#5c6370',
        meta: '#abb2bf',
        tag: '#e06c75'
      }
    },
    {
      id: 'vscode',
      name: 'VSCode',
      highlights: {
        background: '#1E1E1E',
        text: '#D4D4D4',
        variable: '#9CDCFE',
        attribute: '#d19a66',
        definition: '#DCDCAA',
        keyword: '#C586C0',
        operator: '#D4D4D4',
        property: '#DCDCAA',
        number: '#B5CEA8',
        string: '#CE9178',
        comment: '#6A9955',
        meta: '#D4D4D4',
        tag: '#569cd6'
      }
    },
    {
      id: 'yeti',
      name: 'Yeti',
      light: true,
      highlights: {
        background: '#ECEAE8',
        text: '#d1c9c0',
        variable: '#a074c4',
        attribute: '#9fb96e',
        definition: '#55b5db',
        keyword: '#9fb96e',
        operator: '#9fb96e',
        property: '#a074c4',
        number: '#a074c4',
        string: '#96c0d8',
        comment: '#d4c8be',
        meta: '#96c0d8',
        tag: '#96c0d8'
      }
    },
    {
      id: 'zenburn',
      name: 'Zenburn',
      highlights: {
        background: '#3f3f3f',
        text: '#dcdccc',
        variable: '#dcdccc',
        attribute: '#dfaf8f',
        definition: '#dcdccc',
        keyword: '#f0dfaf',
        operator: '#f0efd0',
        property: '#dfaf8f',
        number: '#dcdccc',
        string: '#cc9393',
        comment: '#7f9f7f',
        meta: '#f0dfaf',
        tag: '#93e0e3'
      }
    }
  ]
  
  export const THEMES_HASH = toHash(THEMES)
  
  export const LANGUAGES = [
    {
      name: 'Auto',
      mode: 'auto'
    },
    {
      name: 'Apache',
      mode: 'apache',
      mime: 'text/apache',
      custom: true,
      highlight: true
    },
    {
      name: 'Bash',
      mode: 'shell',
      mime: 'application/x-sh',
      highlight: true
    },
    {
      name: 'Plain Text',
      mode: 'text'
    },
    {
      name: 'C',
      mode: 'clike',
      mime: 'text/x-csrc',
      short: 'c'
    },
    {
      name: 'C++',
      mode: 'clike',
      mime: 'text/x-c++src',
      short: 'cpp',
      highlight: true
    },
    {
      name: 'C#',
      mode: 'clike',
      mime: 'text/x-csharp',
      short: 'cs',
      highlight: true
    },
    {
      name: 'Clojure',
      mode: 'clojure',
      highlight: true
    },
    {
      name: 'COBOL',
      mode: 'cobol'
    },
    {
      name: 'CoffeeScript',
      mode: 'coffeescript',
      highlight: true
    },
    {
      name: 'Crystal',
      mode: 'crystal',
      highlight: true
    },
    {
      name: 'CSS',
      mode: 'css',
      highlight: true
    },
    {
      name: 'D',
      mode: 'd',
      highlight: true
    },
    {
      name: 'Dart',
      mode: 'dart',
      highlight: true
    },
    {
      name: 'Diff',
      mode: 'diff',
      mime: 'text/x-diff',
      highlight: true
    },
    {
      name: 'Django',
      mode: 'django',
      highlight: true
    },
    {
      name: 'Docker',
      mode: 'dockerfile',
      highlight: true
    },
    {
      name: 'Elixir',
      mode: 'elixir',
      custom: true,
      highlight: true
    },
    {
      name: 'Elm',
      mode: 'elm',
      highlight: true
    },
    {
      name: 'Erlang',
      mode: 'erlang',
      highlight: true
    },
    {
      name: 'Fortran',
      mode: 'fortran',
      highlight: true
    },
    {
      name: 'Gherkin',
      mode: 'gherkin',
      highlight: true
    },
    {
      name: 'GraphQL',
      mode: 'graphql',
      custom: true
    },
    {
      name: 'Go',
      mode: 'go',
      mime: 'text/x-go',
      highlight: true
    },
    {
      name: 'Groovy',
      mode: 'groovy',
      highlight: true
    },
    {
      name: 'Handlebars',
      mode: 'handlebars',
      highlight: true
    },
    {
      name: 'Haskell',
      mode: 'haskell',
      highlight: true
    },
    {
      name: 'HTML/XML',
      mode: 'htmlmixed'
    },
    {
      name: 'Java',
      mode: 'clike',
      mime: 'text/x-java',
      short: 'java',
      highlight: true
    },
    {
      name: 'JavaScript',
      mode: 'javascript',
      short: 'javascript',
      highlight: true
    },
    {
      name: 'JSON',
      mode: 'javascript',
      mime: 'application/json',
      short: 'json',
      highlight: true
    },
    {
      name: 'JSX',
      mode: 'jsx',
      short: 'jsx'
    },
    {
      name: 'Julia',
      mode: 'julia',
      highlight: true
    },
    {
      name: 'Kotlin',
      mode: 'clike',
      mime: 'text/x-kotlin',
      short: 'kotlin',
      highlight: true
    },
    {
      name: 'LaTeX',
      mode: 'stex'
    },
    {
      name: 'Lisp',
      mode: 'commonlisp'
    },
    {
      name: 'Lua',
      mode: 'lua',
      highlight: true
    },
    {
      name: 'Markdown',
      mode: 'markdown',
      highlight: true
    },
    {
      name: 'Mathematica',
      mode: 'mathematica',
      highlight: true
    },
    {
      name: 'MATLAB/Octave',
      mode: 'octave',
      mime: 'text/x-octave'
    },
    {
      name: 'MySQL',
      mode: 'sql',
      mime: 'text/x-mysql',
      short: 'mysql'
    },
    {
      name: 'N-Triples',
      mode: 'ntriples',
      mime: 'application/n-triples'
    },
    {
      name: 'NGINX',
      mode: 'nginx',
      highlight: true
    },
    {
      name: 'Nim',
      mode: 'nimrod',
      custom: true,
      highlight: true
    },
    {
      name: 'Objective C',
      mode: 'clike',
      mime: 'text/x-objectivec',
      short: 'objectivec',
      highlight: true
    },
    {
      name: 'OCaml/F#',
      mode: 'mllike'
    },
    {
      name: 'Pascal',
      mode: 'pascal'
    },
    {
      name: 'Perl',
      mode: 'perl',
      highlight: true
    },
    {
      name: 'PHP',
      mode: 'php',
      mime: 'text/x-php',
      short: 'php',
      highlight: true
    },
    {
      name: 'PowerShell',
      mode: 'powershell',
      highlight: true
    },
    {
      name: 'Python',
      mode: 'python',
      highlight: true
    },
    {
      name: 'R',
      mode: 'r',
      highlight: true
    },
    {
      name: 'RISC-V',
      mode: 'riscv',
      custom: true
    },
    {
      name: 'Ruby',
      mode: 'ruby',
      highlight: true
    },
    {
      name: 'Rust',
      mode: 'rust',
      highlight: true
    },
    {
      name: 'Sass',
      mode: 'sass'
    },
    {
      name: 'Scala',
      mode: 'clike',
      mime: 'text/x-scala',
      short: 'scala',
      highlight: true
    },
    {
      name: 'Smalltalk',
      mode: 'smalltalk',
      highlight: true
    },
    {
      name: 'Solidity',
      mode: 'solidity',
      custom: true
    },
    {
      name: 'SPARQL',
      mode: 'sparql',
      mime: 'application/sparql-query'
    },
    {
      name: 'SQL',
      mode: 'sql',
      highlight: true
    },
    {
      name: 'Stylus',
      mode: 'stylus',
      mime: 'stylus',
      highlight: true
    },
    {
      name: 'Swift',
      mode: 'swift',
      highlight: true
    },
    {
      name: 'TCL',
      mode: 'tcl',
      highlight: true
    },
    {
      name: 'TOML',
      mode: 'toml'
    },
    {
      name: 'Turtle',
      mode: 'turtle',
      mime: 'text/turtle'
    },
    {
      name: 'TypeScript',
      mode: 'javascript',
      mime: 'application/typescript',
      short: 'typescript',
      highlight: true
    },
    {
      name: 'TSX',
      mode: 'jsx',
      mime: 'text/typescript-jsx',
      short: 'tsx'
    },
    {
      name: 'Twig',
      mode: 'twig',
      mime: 'text/x-twig',
      highlight: true
    },
    {
      name: 'VB.NET',
      mode: 'vb'
    },
    {
      name: 'Verilog',
      mode: 'verilog',
      highlight: true
    },
    {
      name: 'VHDL',
      mode: 'vhdl',
      highlight: true
    },
    {
      name: 'Vue',
      mode: 'vue'
    },
    {
      name: 'XQuery',
      mode: 'xquery',
      highlight: true
    },
    {
      name: 'YAML',
      mode: 'yaml',
      highlight: true
    }
  ]
  
  export const EXPORT_SIZES = [
    { id: '1x', name: '1x', value: 1 },
    { id: '2x', name: '2x', value: 2 },
    { id: '4x', name: '4x', value: 4 }
  ]
  
  export const EXPORT_SIZES_HASH = toHash(EXPORT_SIZES)
  
  export const LANGUAGE_MIME_HASH = toHash(LANGUAGES, 'mime')
  export const LANGUAGE_MODE_HASH = toHash(LANGUAGES, 'mode')
  export const LANGUAGE_NAME_HASH = toHash(LANGUAGES, 'short')
  
  export const DEFAULT_LANGUAGE = 'auto'
  export const DEFAULT_THEME = THEMES_HASH.seti
  export const DEFAULT_BG_COLOR = 'rgba(171, 184, 195, 1)'
  export const DEFAULT_EXPORT_SIZE = EXPORT_SIZES_HASH['2x']
  
  export const COLORS = {
    BLACK: '#121212',
    PRIMARY: '#F8E81C',
    SECONDARY: '#fff',
    GRAY: '#858585',
    DARK_GRAY: '#393939',
    HOVER: '#1F1F1F',
    PURPLE: '#C198FB',
    DARK_PURPLE: '#55436F',
    RED: '#ff5f56',
    BLUE: '#57b5f9'
  }
  
  export const DEFAULT_CODE = `const pluckDeep = key => obj => key.split('.').reduce((accum, key) => accum[key], obj)
  
  const compose = (...fns) => res => fns.reduce((accum, next) => next(accum), res)
  
  const unfold = (f, seed) => {
    const go = (f, seed, acc) => {
      const res = f(seed)
      return res ? go(f, res[1], acc.concat([res[0]])) : acc
    }
    return go(f, seed, [])
  }`
  
  export const DEFAULT_SETTINGS = {
    paddingVertical: '56px',
    paddingHorizontal: '56px',
    backgroundImage: null,
    backgroundImageSelection: null,
    backgroundMode: 'color',
    backgroundColor: DEFAULT_BG_COLOR,
    dropShadow: true,
    dropShadowOffsetY: '20px',
    dropShadowBlurRadius: '68px',
    theme: DEFAULT_THEME.id,
    windowTheme: 'none',
    language: DEFAULT_LANGUAGE,
    fontFamily: 'Hack',
    fontSize: '14px',
    lineHeight: '133%',
    windowControls: true,
    widthAdjustment: true,
    lineNumbers: false,
    firstLineNumber: 1,
    exportSize: '2x',
    watermark: false,
    squaredImage: false,
    hiddenCharacters: false,
    preset: 'preset:4',
    aspectRatio: DEFAULT_ASPECT_RATIO
  }
  
  export const DEFAULT_PRESETS = [
    {
      ...DEFAULT_SETTINGS,
      icon: '/static/presets/4.png',
      id: 'preset:4'
    },
    {
      ...DEFAULT_SETTINGS,
      backgroundColor: 'rgba(74,144,226,1)',
      dropShadow: false,
      theme: 'material',
      fontFamily: 'Fira Code',
      lineHeight: '152%',
      icon: '/static/presets/7.png',
      id: 'preset:7'
    },
    {
      ...DEFAULT_SETTINGS,
      backgroundColor: 'rgba(248,231,28,1)',
      dropShadow: false,
      theme: 'blackboard',
      fontFamily: 'Fira Code',
      lineHeight: '152%',
      icon: '/static/presets/8.png',
      id: 'preset:8'
    },
    {
      ...DEFAULT_SETTINGS,
      backgroundColor: 'rgba(182,162,145,1)',
      dropShadow: false,
      theme: 'zenburn',
      windowTheme: 'bw',
      lineHeight: '152%',
      icon: '/static/presets/9.png',
      id: 'preset:9'
    },
    {
      ...DEFAULT_SETTINGS,
      backgroundColor: 'rgba(121,72,185,1)',
      dropShadow: false,
      theme: 'verminal',
      windowTheme: 'bw',
      fontFamily: 'Fira Code',
      fontSize: '14px',
      lineHeight: '143%',
      icon: '/static/presets/0.png',
      id: 'preset:0'
    },
    {
      ...DEFAULT_SETTINGS,
      backgroundColor: 'rgba(239,40,44,1)',
      theme: 'one-light',
      lineHeight: '143%',
      icon: '/static/presets/1.png',
      id: 'preset:1'
    },
    {
      ...DEFAULT_SETTINGS,
      backgroundColor: 'rgba(31,129,109,1)',
      dropShadow: false,
      theme: 'night-owl',
      lineHeight: '143%',
      windowControls: false,
      icon: '/static/presets/2.png',
      id: 'preset:2'
    },
    {
      ...DEFAULT_SETTINGS,
      backgroundColor: 'rgba(249,237,212,1)',
      theme: 'twilight',
      fontFamily: 'IBM Plex Mono',
      lineHeight: '143%',
      icon: '/static/presets/3.png',
      id: 'preset:3'
    },
  
    {
      ...DEFAULT_SETTINGS,
      backgroundColor: 'rgba(222,171,99,1)',
      theme: 'duotone-dark',
      icon: '/static/presets/5.png',
      id: 'preset:5'
    },
    {
      ...DEFAULT_SETTINGS,
      backgroundColor: 'rgba(187,187,187,1)',
      dropShadowOffsetY: '3px',
      dropShadowBlurRadius: '13px',
      theme: 'solarized light',
      windowTheme: 'sharp',
      icon: '/static/presets/6.png',
      id: 'preset:6'
    }
  ]
  