├── robots.txt ├── precache-manifest.2cd8f09d7b5e6e5531a0a10771da7462.js ├── service-worker.js ├── static ├── js │ ├── runtime-main.04525c49.js │ ├── 2.bcf18c92.chunk.js.LICENSE.txt │ ├── main.4df9d157.chunk.js │ ├── runtime-main.04525c49.js.map │ └── main.4df9d157.chunk.js.map └── css │ ├── main.6787aedf.chunk.css │ ├── main.6787aedf.chunk.css.map │ ├── 2.9de32946.chunk.css │ └── 2.9de32946.chunk.css.map ├── asset-manifest.json └── index.html /robots.txt: -------------------------------------------------------------------------------- 1 | # https://www.robotstxt.org/robotstxt.html 2 | User-agent: * 3 | Disallow: 4 | -------------------------------------------------------------------------------- /precache-manifest.2cd8f09d7b5e6e5531a0a10771da7462.js: -------------------------------------------------------------------------------- 1 | self.__precacheManifest = (self.__precacheManifest || []).concat([ 2 | { 3 | "revision": "5f2312d91e4e9efcf5bc00588f16b3c7", 4 | "url": "/web-coder-codepen-clone/index.html" 5 | }, 6 | { 7 | "revision": "65b06863ff56ca341df1", 8 | "url": "/web-coder-codepen-clone/static/css/2.9de32946.chunk.css" 9 | }, 10 | { 11 | "revision": "fa1a792088d76a9bf48e", 12 | "url": "/web-coder-codepen-clone/static/css/main.6787aedf.chunk.css" 13 | }, 14 | { 15 | "revision": "65b06863ff56ca341df1", 16 | "url": "/web-coder-codepen-clone/static/js/2.bcf18c92.chunk.js" 17 | }, 18 | { 19 | "revision": "c97fb91e7dd1c7b19ae67fb152a2e6b2", 20 | "url": "/web-coder-codepen-clone/static/js/2.bcf18c92.chunk.js.LICENSE.txt" 21 | }, 22 | { 23 | "revision": "fa1a792088d76a9bf48e", 24 | "url": "/web-coder-codepen-clone/static/js/main.4df9d157.chunk.js" 25 | }, 26 | { 27 | "revision": "79278256a39ae5fffb66", 28 | "url": "/web-coder-codepen-clone/static/js/runtime-main.04525c49.js" 29 | } 30 | ]); -------------------------------------------------------------------------------- /service-worker.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Welcome to your Workbox-powered service worker! 3 | * 4 | * You'll need to register this file in your web app and you should 5 | * disable HTTP caching for this file too. 6 | * See https://goo.gl/nhQhGp 7 | * 8 | * The rest of the code is auto-generated. Please don't update this file 9 | * directly; instead, make changes to your Workbox build configuration 10 | * and re-run your build process. 11 | * See https://goo.gl/2aRDsh 12 | */ 13 | 14 | importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js"); 15 | 16 | importScripts( 17 | "/web-coder-codepen-clone/precache-manifest.2cd8f09d7b5e6e5531a0a10771da7462.js" 18 | ); 19 | 20 | self.addEventListener('message', (event) => { 21 | if (event.data && event.data.type === 'SKIP_WAITING') { 22 | self.skipWaiting(); 23 | } 24 | }); 25 | 26 | workbox.core.clientsClaim(); 27 | 28 | /** 29 | * The workboxSW.precacheAndRoute() method efficiently caches and responds to 30 | * requests for URLs in the manifest. 31 | * See https://goo.gl/S9QRab 32 | */ 33 | self.__precacheManifest = [].concat(self.__precacheManifest || []); 34 | workbox.precaching.precacheAndRoute(self.__precacheManifest, {}); 35 | 36 | workbox.routing.registerNavigationRoute(workbox.precaching.getCacheKeyForURL("/web-coder-codepen-clone/index.html"), { 37 | 38 | blacklist: [/^\/_/,/\/[^/?]+\.[^/]+$/], 39 | }); 40 | -------------------------------------------------------------------------------- /static/js/runtime-main.04525c49.js: -------------------------------------------------------------------------------- 1 | !function(e){function r(r){for(var n,l,c=r[0],f=r[1],i=r[2],a=0,s=[];aWeb Coder
-------------------------------------------------------------------------------- /static/js/main.4df9d157.chunk.js: -------------------------------------------------------------------------------- 1 | (this["webpackJsonpweb-coder"]=this["webpackJsonpweb-coder"]||[]).push([[0],{115:function(e,t,a){},116:function(e,t,a){},117:function(e,t,a){},118:function(e,t,a){"use strict";a.r(t);var n=a(4),r=a.n(n),l=a(79),c=a.n(l),o=a(38),i=(a(86),a(87),a(88),a(89),a(90),a(91),a(92),a(93),a(94),a(95),a(98),a(99),a(78),a(101),a(102),a(103),a(104),a(33)),s=a(80),u={background:"#eeeeee"},m=function(e){var t=e.handleChange,a=e.value,l=e.language,c=e.handleDownload;return r.a.createElement(n.Fragment,null,r.a.createElement(i.Section,{minSize:window.innerWidth<500?0:50,style:u},r.a.createElement("div",{className:"codebox-header"},r.a.createElement("span",null,"xml"===l?"html":l),r.a.createElement("button",{className:"download",onClick:function(){return c(l)}},r.a.createElement("i",{className:"fas fa-long-arrow-alt-down"}))),r.a.createElement(s.Controlled,{onBeforeChange:function(e,a,n){return t(n)},value:a,className:"codemirror-wrapper",options:{lineWrapping:!0,smartIndent:!0,lineNumbers:!0,foldGutter:!0,gutters:["CodeMirror-linenumbers","CodeMirror-foldgutter"],autoCloseTags:!0,keyMap:"sublime",matchBrackets:!0,autoCloseBrackets:!0,extraKeys:{"Ctrl-Space":"autocomplete"},lint:!0,theme:"material",mode:l,scrollbarStyle:"null"}})))},d=(a(115),function(e){var t=e.handleSave,a=e.handleChangeView;return r.a.createElement("nav",{style:{height:"6vh"}},r.a.createElement("h3",{className:"title"},"Web Coder"),r.a.createElement("div",{className:"nav-buttons"},r.a.createElement("button",{className:"nav-button",onClick:function(){return a()}},"Change View"),r.a.createElement("button",{className:"nav-button",onClick:function(){return t()}},"Save")))});function h(e,t){var a="webcoder-"+e,r=Object(n.useState)((function(){var e=localStorage.getItem(a);return null!=e?JSON.parse(e):"function"===typeof t?t():t})),l=Object(o.a)(r,2);return[l[0],l[1]]}var g={background:"#191D20",cursor:"col-resize"},v={background:"transparent"},f=function(){var e=h("view","horizantal"),t=Object(o.a)(e,2),a=t[0],l=t[1],c=h("html",""),s=Object(o.a)(c,2),u=s[0],f=s[1],b=h("css",""),y=Object(o.a)(b,2),p=y[0],E=y[1],w=h("js",""),S=Object(o.a)(w,2),C=S[0],N=S[1],j=Object(n.useState)(""),O=Object(o.a)(j,2),z=O[0],x=O[1],k=!1;Object(n.useEffect)((function(){var e=setTimeout((function(){x("").concat(u,"`);\r\n }, 250);\r\n return () => clearTimeout(timeout);\r\n }, [html, css, js]);\r\n\r\n const handleSave = () => {\r\n const htmlPrefixedKey = 'webcoder-html';\r\n const cssPrefixedKey = 'webcoder-css';\r\n const jsPrefixedKey = 'webcoder-js';\r\n localStorage.setItem(htmlPrefixedKey, JSON.stringify(html));\r\n localStorage.setItem(cssPrefixedKey, JSON.stringify(css));\r\n localStorage.setItem(jsPrefixedKey, JSON.stringify(js));\r\n };\r\n\r\n const handleChangeView = () => {\r\n const viewPrefixedKey = 'webcoder-view';\r\n localStorage.setItem(\r\n viewPrefixedKey,\r\n view === 'horizantal' ? JSON.stringify('vertical') : JSON.stringify('horizantal')\r\n );\r\n setView((v) => (v === 'horizantal' ? 'vertical' : 'horizantal'));\r\n };\r\n\r\n const handleDownload = (l) => {\r\n const element = document.createElement('a');\r\n const file = new Blob(l === 'xml' ? [html] : l === 'css' ? [css] : l === 'javascript' ? [js] : 'NULL', {\r\n type: 'text/plain;charset=utf-8',\r\n });\r\n element.href = URL.createObjectURL(file);\r\n element.download =\r\n l === 'xml' ? 'index.html' : l === 'css' ? 'style.css' : l === 'javascript' ? 'main.js' : 'error.txt';\r\n document.body.appendChild(element);\r\n element.click();\r\n element.parentNode.removeChild(element);\r\n };\r\n\r\n return (\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {\r\n draggingNow = !draggingNow;\r\n let iframeObj = document.querySelector('iframe');\r\n if (draggingNow) {\r\n if (iframeObj) iframeObj.style.zIndex = -1;\r\n } else {\r\n if (iframeObj) {\r\n iframeObj.style.zIndex = 1;\r\n }\r\n }\r\n }}\r\n />\r\n
\r\n {!html && !css && !js ? (\r\n
Start Coding!
\r\n ) : (\r\n \r\n )}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default CodeArea;\r\n","import React, { Fragment } from 'react';\n\nimport CodeArea from './pages/code_area';\n\nimport './css/main.css';\nimport './css/resizable_divs.css';\n\nconst App = () => {\n return (\n \n \n \n );\n};\n\nexport default App;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport App from './App';\n\nReactDOM.render(, document.getElementById('root'));\n"],"sourceRoot":""} -------------------------------------------------------------------------------- /static/css/2.9de32946.chunk.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["codemirror.css","material.css","show-hint.css","foldgutter.css"],"names":[],"mappings":"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","file":"2.9de32946.chunk.css","sourcesContent":["/* BASICS */\n\n.CodeMirror {\n /* Set height, width, borders, and global font properties here */\n font-family: monospace;\n height: 300px;\n color: black;\n direction: ltr;\n}\n\n/* PADDING */\n\n.CodeMirror-lines {\n padding: 4px 0; /* Vertical padding around content */\n}\n.CodeMirror pre.CodeMirror-line,\n.CodeMirror pre.CodeMirror-line-like {\n padding: 0 4px; /* Horizontal padding of content */\n}\n\n.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {\n background-color: white; /* The little square between H and V scrollbars */\n}\n\n/* GUTTER */\n\n.CodeMirror-gutters {\n border-right: 1px solid #ddd;\n background-color: #f7f7f7;\n white-space: nowrap;\n}\n.CodeMirror-linenumbers {}\n.CodeMirror-linenumber {\n padding: 0 3px 0 5px;\n min-width: 20px;\n text-align: right;\n color: #999;\n white-space: nowrap;\n}\n\n.CodeMirror-guttermarker { color: black; }\n.CodeMirror-guttermarker-subtle { color: #999; }\n\n/* CURSOR */\n\n.CodeMirror-cursor {\n border-left: 1px solid black;\n border-right: none;\n width: 0;\n}\n/* Shown when moving in bi-directional text */\n.CodeMirror div.CodeMirror-secondarycursor {\n border-left: 1px solid silver;\n}\n.cm-fat-cursor .CodeMirror-cursor {\n width: auto;\n border: 0 !important;\n background: #7e7;\n}\n.cm-fat-cursor div.CodeMirror-cursors {\n z-index: 1;\n}\n.cm-fat-cursor-mark {\n background-color: rgba(20, 255, 20, 0.5);\n -webkit-animation: blink 1.06s steps(1) infinite;\n -moz-animation: blink 1.06s steps(1) infinite;\n animation: blink 1.06s steps(1) infinite;\n}\n.cm-animate-fat-cursor {\n width: auto;\n border: 0;\n -webkit-animation: blink 1.06s steps(1) infinite;\n -moz-animation: blink 1.06s steps(1) infinite;\n animation: blink 1.06s steps(1) infinite;\n background-color: #7e7;\n}\n@-moz-keyframes blink {\n 0% {}\n 50% { background-color: transparent; }\n 100% {}\n}\n@-webkit-keyframes blink {\n 0% {}\n 50% { background-color: transparent; }\n 100% {}\n}\n@keyframes blink {\n 0% {}\n 50% { background-color: transparent; }\n 100% {}\n}\n\n/* Can style cursor different in overwrite (non-insert) mode */\n.CodeMirror-overwrite .CodeMirror-cursor {}\n\n.cm-tab { display: inline-block; text-decoration: inherit; }\n\n.CodeMirror-rulers {\n position: absolute;\n left: 0; right: 0; top: -50px; bottom: 0;\n overflow: hidden;\n}\n.CodeMirror-ruler {\n border-left: 1px solid #ccc;\n top: 0; bottom: 0;\n position: absolute;\n}\n\n/* DEFAULT THEME */\n\n.cm-s-default .cm-header {color: blue;}\n.cm-s-default .cm-quote {color: #090;}\n.cm-negative {color: #d44;}\n.cm-positive {color: #292;}\n.cm-header, .cm-strong {font-weight: bold;}\n.cm-em {font-style: italic;}\n.cm-link {text-decoration: underline;}\n.cm-strikethrough {text-decoration: line-through;}\n\n.cm-s-default .cm-keyword {color: #708;}\n.cm-s-default .cm-atom {color: #219;}\n.cm-s-default .cm-number {color: #164;}\n.cm-s-default .cm-def {color: #00f;}\n.cm-s-default .cm-variable,\n.cm-s-default .cm-punctuation,\n.cm-s-default .cm-property,\n.cm-s-default .cm-operator {}\n.cm-s-default .cm-variable-2 {color: #05a;}\n.cm-s-default .cm-variable-3, .cm-s-default .cm-type {color: #085;}\n.cm-s-default .cm-comment {color: #a50;}\n.cm-s-default .cm-string {color: #a11;}\n.cm-s-default .cm-string-2 {color: #f50;}\n.cm-s-default .cm-meta {color: #555;}\n.cm-s-default .cm-qualifier {color: #555;}\n.cm-s-default .cm-builtin {color: #30a;}\n.cm-s-default .cm-bracket {color: #997;}\n.cm-s-default .cm-tag {color: #170;}\n.cm-s-default .cm-attribute {color: #00c;}\n.cm-s-default .cm-hr {color: #999;}\n.cm-s-default .cm-link {color: #00c;}\n\n.cm-s-default .cm-error {color: #f00;}\n.cm-invalidchar {color: #f00;}\n\n.CodeMirror-composing { border-bottom: 2px solid; }\n\n/* Default styles for common addons */\n\ndiv.CodeMirror span.CodeMirror-matchingbracket {color: #0b0;}\ndiv.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}\n.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); }\n.CodeMirror-activeline-background {background: #e8f2ff;}\n\n/* STOP */\n\n/* The rest of this file contains styles related to the mechanics of\n the editor. You probably shouldn't touch them. */\n\n.CodeMirror {\n position: relative;\n overflow: hidden;\n background: white;\n}\n\n.CodeMirror-scroll {\n overflow: scroll !important; /* Things will break if this is overridden */\n /* 50px is the magic margin used to hide the element's real scrollbars */\n /* See overflow: hidden in .CodeMirror */\n margin-bottom: -50px; margin-right: -50px;\n padding-bottom: 50px;\n height: 100%;\n outline: none; /* Prevent dragging from highlighting the element */\n position: relative;\n}\n.CodeMirror-sizer {\n position: relative;\n border-right: 50px solid transparent;\n}\n\n/* The fake, visible scrollbars. Used to force redraw during scrolling\n before actual scrolling happens, thus preventing shaking and\n flickering artifacts. */\n.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {\n position: absolute;\n z-index: 6;\n display: none;\n}\n.CodeMirror-vscrollbar {\n right: 0; top: 0;\n overflow-x: hidden;\n overflow-y: scroll;\n}\n.CodeMirror-hscrollbar {\n bottom: 0; left: 0;\n overflow-y: hidden;\n overflow-x: scroll;\n}\n.CodeMirror-scrollbar-filler {\n right: 0; bottom: 0;\n}\n.CodeMirror-gutter-filler {\n left: 0; bottom: 0;\n}\n\n.CodeMirror-gutters {\n position: absolute; left: 0; top: 0;\n min-height: 100%;\n z-index: 3;\n}\n.CodeMirror-gutter {\n white-space: normal;\n height: 100%;\n display: inline-block;\n vertical-align: top;\n margin-bottom: -50px;\n}\n.CodeMirror-gutter-wrapper {\n position: absolute;\n z-index: 4;\n background: none !important;\n border: none !important;\n}\n.CodeMirror-gutter-background {\n position: absolute;\n top: 0; bottom: 0;\n z-index: 4;\n}\n.CodeMirror-gutter-elt {\n position: absolute;\n cursor: default;\n z-index: 4;\n}\n.CodeMirror-gutter-wrapper ::selection { background-color: transparent }\n.CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent }\n\n.CodeMirror-lines {\n cursor: text;\n min-height: 1px; /* prevents collapsing before first draw */\n}\n.CodeMirror pre.CodeMirror-line,\n.CodeMirror pre.CodeMirror-line-like {\n /* Reset some styles that the rest of the page might have set */\n -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;\n border-width: 0;\n background: transparent;\n font-family: inherit;\n font-size: inherit;\n margin: 0;\n white-space: pre;\n word-wrap: normal;\n line-height: inherit;\n color: inherit;\n z-index: 2;\n position: relative;\n overflow: visible;\n -webkit-tap-highlight-color: transparent;\n -webkit-font-variant-ligatures: contextual;\n font-variant-ligatures: contextual;\n}\n.CodeMirror-wrap pre.CodeMirror-line,\n.CodeMirror-wrap pre.CodeMirror-line-like {\n word-wrap: break-word;\n white-space: pre-wrap;\n word-break: normal;\n}\n\n.CodeMirror-linebackground {\n position: absolute;\n left: 0; right: 0; top: 0; bottom: 0;\n z-index: 0;\n}\n\n.CodeMirror-linewidget {\n position: relative;\n z-index: 2;\n padding: 0.1px; /* Force widget margins to stay inside of the container */\n}\n\n.CodeMirror-widget {}\n\n.CodeMirror-rtl pre { direction: rtl; }\n\n.CodeMirror-code {\n outline: none;\n}\n\n/* Force content-box sizing for the elements where we expect it */\n.CodeMirror-scroll,\n.CodeMirror-sizer,\n.CodeMirror-gutter,\n.CodeMirror-gutters,\n.CodeMirror-linenumber {\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n}\n\n.CodeMirror-measure {\n position: absolute;\n width: 100%;\n height: 0;\n overflow: hidden;\n visibility: hidden;\n}\n\n.CodeMirror-cursor {\n position: absolute;\n pointer-events: none;\n}\n.CodeMirror-measure pre { position: static; }\n\ndiv.CodeMirror-cursors {\n visibility: hidden;\n position: relative;\n z-index: 3;\n}\ndiv.CodeMirror-dragcursors {\n visibility: visible;\n}\n\n.CodeMirror-focused div.CodeMirror-cursors {\n visibility: visible;\n}\n\n.CodeMirror-selected { background: #d9d9d9; }\n.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }\n.CodeMirror-crosshair { cursor: crosshair; }\n.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }\n.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; }\n\n.cm-searching {\n background-color: #ffa;\n background-color: rgba(255, 255, 0, .4);\n}\n\n/* Used to force a border model for a node */\n.cm-force-border { padding-right: .1px; }\n\n@media print {\n /* Hide the cursor when printing */\n .CodeMirror div.CodeMirror-cursors {\n visibility: hidden;\n }\n}\n\n/* See issue #2901 */\n.cm-tab-wrap-hack:after { content: ''; }\n\n/* Help users use markselection to safely style text background */\nspan.CodeMirror-selectedtext { background: none; }\n","/*\n Name: material\n Author: Mattia Astorino (http://github.com/equinusocio)\n Website: https://material-theme.site/\n*/\n\n.cm-s-material.CodeMirror {\n background-color: #263238;\n color: #EEFFFF;\n}\n\n.cm-s-material .CodeMirror-gutters {\n background: #263238;\n color: #546E7A;\n border: none;\n}\n\n.cm-s-material .CodeMirror-guttermarker,\n.cm-s-material .CodeMirror-guttermarker-subtle,\n.cm-s-material .CodeMirror-linenumber {\n color: #546E7A;\n}\n\n.cm-s-material .CodeMirror-cursor {\n border-left: 1px solid #FFCC00;\n}\n\n.cm-s-material div.CodeMirror-selected {\n background: rgba(128, 203, 196, 0.2);\n}\n\n.cm-s-material.CodeMirror-focused div.CodeMirror-selected {\n background: rgba(128, 203, 196, 0.2);\n}\n\n.cm-s-material .CodeMirror-line::selection,\n.cm-s-material .CodeMirror-line>span::selection,\n.cm-s-material .CodeMirror-line>span>span::selection {\n background: rgba(128, 203, 196, 0.2);\n}\n\n.cm-s-material .CodeMirror-line::-moz-selection,\n.cm-s-material .CodeMirror-line>span::-moz-selection,\n.cm-s-material .CodeMirror-line>span>span::-moz-selection {\n background: rgba(128, 203, 196, 0.2);\n}\n\n.cm-s-material .CodeMirror-activeline-background {\n background: rgba(0, 0, 0, 0.5);\n}\n\n.cm-s-material .cm-keyword {\n color: #C792EA;\n}\n\n.cm-s-material .cm-operator {\n color: #89DDFF;\n}\n\n.cm-s-material .cm-variable-2 {\n color: #EEFFFF;\n}\n\n.cm-s-material .cm-variable-3,\n.cm-s-material .cm-type {\n color: #f07178;\n}\n\n.cm-s-material .cm-builtin {\n color: #FFCB6B;\n}\n\n.cm-s-material .cm-atom {\n color: #F78C6C;\n}\n\n.cm-s-material .cm-number {\n color: #FF5370;\n}\n\n.cm-s-material .cm-def {\n color: #82AAFF;\n}\n\n.cm-s-material .cm-string {\n color: #C3E88D;\n}\n\n.cm-s-material .cm-string-2 {\n color: #f07178;\n}\n\n.cm-s-material .cm-comment {\n color: #546E7A;\n}\n\n.cm-s-material .cm-variable {\n color: #f07178;\n}\n\n.cm-s-material .cm-tag {\n color: #FF5370;\n}\n\n.cm-s-material .cm-meta {\n color: #FFCB6B;\n}\n\n.cm-s-material .cm-attribute {\n color: #C792EA;\n}\n\n.cm-s-material .cm-property {\n color: #C792EA;\n}\n\n.cm-s-material .cm-qualifier {\n color: #DECB6B;\n}\n\n.cm-s-material .cm-variable-3,\n.cm-s-material .cm-type {\n color: #DECB6B;\n}\n\n\n.cm-s-material .cm-error {\n color: rgba(255, 255, 255, 1.0);\n background-color: #FF5370;\n}\n\n.cm-s-material .CodeMirror-matchingbracket {\n text-decoration: underline;\n color: white !important;\n}",".CodeMirror-hints {\n position: absolute;\n z-index: 10;\n overflow: hidden;\n list-style: none;\n\n margin: 0;\n padding: 2px;\n\n -webkit-box-shadow: 2px 3px 5px rgba(0,0,0,.2);\n -moz-box-shadow: 2px 3px 5px rgba(0,0,0,.2);\n box-shadow: 2px 3px 5px rgba(0,0,0,.2);\n border-radius: 3px;\n border: 1px solid silver;\n\n background: white;\n font-size: 90%;\n font-family: monospace;\n\n max-height: 20em;\n overflow-y: auto;\n}\n\n.CodeMirror-hint {\n margin: 0;\n padding: 0 4px;\n border-radius: 2px;\n white-space: pre;\n color: black;\n cursor: pointer;\n}\n\nli.CodeMirror-hint-active {\n background: #08f;\n color: white;\n}\n",".CodeMirror-foldmarker {\n color: blue;\n text-shadow: #b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px, #b9f -1px 1px 2px;\n font-family: arial;\n line-height: .3;\n cursor: pointer;\n}\n.CodeMirror-foldgutter {\n width: .7em;\n}\n.CodeMirror-foldgutter-open,\n.CodeMirror-foldgutter-folded {\n cursor: pointer;\n}\n.CodeMirror-foldgutter-open:after {\n content: \"\\25BE\";\n}\n.CodeMirror-foldgutter-folded:after {\n content: \"\\25B8\";\n}\n"]} --------------------------------------------------------------------------------