UNPKG

graviton-plugin-sdk

Version:

Gravtion plugin Dev Kit

1,094 lines (962 loc) 20.7 kB
/* ######################################## MIT License Copyright (c) 2019 Marc Espin Sanz License > https://github.com/Graviton-Code-Editor/Graviton-App/blob/master/LICENSE.md ######################################### */ /*Small components */ .input1 { transition: 0.1s; border-radius: var(--buttons-roundness); max-width: 37px; height: 30px; border: none; padding: 5px 7px; background: var(--primaryColor); color: var(--white-black); box-sizing: border-box; position: relative; text-align: center; } .input1.auto { min-width: 100% !important; max-width: 100% !important; text-align: left; } .input1:hover { transition: 0.1s; cursor: text; background: var(--widget-color); } input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } input[type="number"]::selection { background-color: var(--accentColor); color: var(--black-white); } .input2 { padding: 6px; border: 0; background: transparent; color:var(--white-black); } .input3 { padding: 4px; border: 0; border-radius: 3px; box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.3); background: var(--secondaryColor); max-width: 70px; color:var(--white-black); } .input4 { padding: 8px; border: 0; border-radius: 3px; box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.3); background: var(--primaryColor); max-width: 125px; color:var(--white-black); } .slider { -webkit-appearance: none; width: auto; height: 20px; background: var(--primaryColor); outline: none; border-radius: 50px; padding: 0px 4px 0px 4px; font-family: _main_font; margin: 5px 2px; } .slider::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 13px; height: 13px; background: var(--accentColor); cursor: pointer; border-radius: 50px; outline: 0; box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.15); } .switch { width: 40px; height: 20px; border-radius: 20px; margin: 4px; transform: scale(1); } .switch:hover { cursor: pointer; } .switch > div { height: 13px; width: 13px; border-radius: 50px; position: relative; top: 3.4px; box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.15); } .switch:active { transform: scale(var(--scalation)); } .activated.switch { background: var(--accentColor); } .activated.switch > div { background: var(--secondaryColor); left: 23px; } .desactivated.switch { background: lightgray; } .desactivated.switch > div { background: gray; left: 4px; } .disabled.switch { transition: 0.07s; background: lightgray; box-sizing: border-box; } .disabled.switch.desactivated > div { transition: 0.07s; background-color: gray; left: -4px; position: relative; } /* Notifications */ #notifications { position: fixed; right: 20px; bottom: 20px; z-index: 200; } .notificationBody { transition: 0.1s; -webkit-app-region: no-drag; animation: open_up linear 0.15s; width: 300px; min-height: 65px; height: auto; max-height: 310px; background: var(--notifications-background-color); position: relative; color: var(--white-black); padding: 12px; margin: 10px; border-radius: var(--notifications-window-radius); box-shadow: 1px 3px 5px var(--shadows); transform: scale(1); } @keyframes open_up { from { opacity: 0; bottom: -15px; } to { bottom: 0px; opacity: 1; } } .notificationBody:active { transition: 0.1s; transform: scale(var(--scalation)); } .notificationBody > div { position: relative; height: auto; max-height: 100px; overflow: auto; } .notificationBody > button.close { position: absolute; right: 10px; background: transparent; border: 0; cursor: pointer; } .notificationBody > button.close path { fill: var(--white-black); stroke: transparent; border: 0; } .notificationBody > button.close:hover path { stroke: var(--accentColor); fill: var(--accentColor); border: 0; } .notificationBody > button.close:hover svg { stroke: var(--accentColor); fill: var(--accentColor); border: 0; } .notificationBody > h1 { font-size: 18px; line-height: 1px; user-select: none; } .notificationBody > div > p { font-size: 12px; } .notificationBody button:not(.close) { background: var(--notifications-background-color); border: none; outline: none; color: var(--white-black); padding: 7px 12px; border-radius: 5px; cursor: pointer; font-family: _main_font; user-select: none !important; } .notificationBody button:not(.close):hover { background: var(--widget-color); } /* Floating Windows*/ .floating_window { animation: window_in linear 0.2s; z-index: 50; top: 20px; right: 40px; transform: translate(20px, 40px); background: red; position: fixed; min-width: 50px; min-height: 50px; background: var(--notifications-background-color); color: var(--white-black); padding: 10px; margin: 10px; border-radius: var(--notifications-window-radius); box-shadow: 1px 3px 7px rgba(0, 0, 0, 40%); } @keyframes window_in { from { opacity: 0; transform: translate(20px, 55px); } to { opacity: 1; transform: translate(20px, 40px); } } .floating_window * { overflow: auto; } #openFolder { transition: 0.05s; top: 45%; left: 40%; transform: translate(-40%, -45%); position: relative; padding: 24px; width: 55px; height: 55px; margin: 0 auto; background: url("../icons/folder_closed.svg") no-repeat center; background-size: 55px 55px; } #openFolder:hover { background: url("../icons/folder_opened.svg") no-repeat center; background-size: 55px 55px; position: relative; padding: 24px; width: 55px; height: 55px; cursor: pointer; } #openFolder:active { transition: 0.05s; opacity: 0.6; } /* Tabs */ .g_tabs_bar .tabs { position: relative; transition: 0.05s; color: var(--white-black); text-align: center; vertical-align: middle; height: 37px; white-space: nowrap; display: inline-block; background: transparent; cursor: pointer; transform: scale(1); min-width: 300px; } .g_tabs_bar .tabs:hover { transform: scale(1); transition: 0.05; background: var(--widget-color); } .g_tabs_bar .tabs:active { transition: 0.05; transform: scale(var(--scalation)); } .g_tabs_bar .tabs.selected { background: var(--secondaryColor); box-shadow: 0px 0px 7px var(--shadows); } .g_tabs_bar .tabs > p { overflow: hidden; text-overflow:ellipsis; position: relative; font-size: 12px; min-width: 50px; max-width: 65%; white-space: nowrap; height: auto; line-height: 20px; bottom: 4.5px; left: 0px; margin-left: 11px; float: left; text-align: center; } .g_tabs_bar .tabs .close_tab { position: relative; top: 32%; right: 0; float: right; margin-right: 25px; margin-left: 5px; vertical-align: center; position: relative; min-width: 12px; width: 12px; min-height: 12px; height: 12px; border: none; background: transparent; fill: var(--white-black); } .g_tabs_bar .tabs[file_status~="saved"]:not(.selected) .close_tab { opacity: 0; } .g_tabs_bar .tabs[file_status~="saved"]:hover .close_tab { opacity: 1; } .g_tabs_bar .tabs .close_tab:hover { cursor: pointer; fill: var(--accentColor); stroke: var(--accentColor); } /* Explorer elements */ .directory.moving { animation: slide_right linear 0.1s; transform: translateX(3px); } .explorer div.directory { color: var(--white-black); border-radius: 70px; transition: 0.05s; clear: both; white-space: nowrap; font-size: 12px; padding-left: 3px; padding-top: 1px; padding-bottom: 4px; padding-right: 8px; background: transparent; line-height: 0px; height: 20px; cursor: pointer; background: transparent; transform: scale(1); width: auto; float: left; white-space: nowrap; display: flex; } .explorer div.directory p { line-height: 3px; margin: auto; font-size: 12px; } .explorer div.directory:hover { transition: 0.05s; border-radius: 4px; background: var(--widget-color); } .explorer div.directory:active { transition: 0.05s; transform: scale(var(--scalation)); } @keyframes slide_right { from { opacity: 0.6; transform: translateX(-3px); } to { transform: translateX(0px); opacity: 1; } } .panel_button{ color: var(--white-black); border-radius: 70px; transition: 0.05s; font-size: 12px; cursor: pointer; background: transparent; width: auto; white-space: nowrap; display: flex; padding:5px; border:0; } .panel_button:hover{ transition: 0.05s; border-radius: 4px; background: var(--widget-color); } .panel_button:active { transition: 0.05s; transform: scale(var(--scalation)); } /* Buttons, texts and sections*/ button.button1 { font-family: _main_font; transition: 0.03s; border-radius: var(--buttons-roundness); width: auto; margin: 2px 3px; padding: 7px 20px; background: var(--primaryColor); color: var(--white-black); box-sizing: border-box; opacity: 1; border: 2px solid transparent; user-select: auto; -webkit-app-region: auto; } button.button1:hover { transition: 0.03s; cursor: pointer; background: var(--widget-color); } button.button1.red { background: red; color: white; } button.button1.red:hover { background: darkred; color: white; } button.button1.disabled { pointer-events: none; } button.button1:active { transition: 0.1s; border: 2px solid var(--accentColor); box-sizing: border-box; box-shadow: 0px 2px 6px rgba(0,0,0,0.35); } button.button1 svg * { fill: var(--white-black); } .button1-round { position: absolute; border-radius: 50px; background: var(--primaryColor); bottom: 50px; right: 30px; border: 0px; width: 50px; height: 50px; } .button1-round:hover { background: var(--widget-color); cursor: pointer; } button.button1-round svg * { fill: var(--white-black); } .icon { background: transparent; border: 0px; color: var(--white-black); } .section-1 { margin: 5px; padding: 7px; background: transparent; height: auto; } .inline { display: flex; align-content: center; } .section-2 { position: relative; transition: 0.05s; margin: 7px 0; padding: 17px; background: var(--primaryColor); cursor: pointer; width: auto; min-height: auto; border-radius: 8px; overflow: auto; border: 2px solid transparent; } .section-2 h3{ font-weight: bold; font-size: 15px; margin:0px 0; } .section-2:hover { background: var(--widget-color); } .section-2:active { border: 2px solid var(--accentColor); } .section-3 { position: relative; transition: 0.05s; margin: 7px; padding: 17px; background: var(--primaryColor); cursor: pointer; width: auto; min-height: auto; border-radius: 8px; transform: scale(1); box-sizing: border-box; display: inline-block; flex: 1; } .section-3:hover { background: var(--widget-color); box-shadow: 0px 5px 7px var(--shadows); transform: translateY(-5px); } .section-3:active { opacity: 0.7; box-shadow: 0px 5px 7px var(--shadows); } .section-4 { position: relative; padding: 10px; padding-bottom: 5px; background: transparent; width: auto; min-height: auto; transform: scale(1); } button.button2 { font-weight: bold; right: 0; width: auto; border: none; margin-top: 2.5px; padding: 10px 16px; background: transparent; color: var(--white-black); box-sizing: border-box; position: relative; left: 0px; bottom: 0px; border-radius: 3px; font-family: _main_font; text-transform: uppercase; letter-spacing: 1px; font-size: 11px; border: 2px solid transparent; } button.button2:hover { cursor: pointer; background: var(--widget-color); } button.button2:active { border: 2px solid var(--accentColor); } button.button3 { background: var(--primaryColor); border-radius: 50px; border: 0; color: var(--white-black); padding: 6px 10px; max-height: 150px; position: relative; font-family: _main_font; transform: scale(1); border: 2px solid transparent; } button.button3:hover { cursor: pointer; background: var(--widget-color); } button.button3:active { border: 2px solid var(--accentColor); } .section-2 p.title { margin: 4px 0px; font-size: 19px; font-weight: 700; } .body_window h5 { font-weight: 570; margin: 0; padding: 5px; margin-bottom: 10px; } .link { text-decoration: underline; pointer-events: auto !important; cursor: pointer; } .link:hover { color: var(--accentColor); } .window_title { font-size: 30px; line-height: 25px; margin: 30px; text-align: center; letter-spacing: 1px; } .window_title2 { font-size: 30px; line-height: 15px; margin: 5px; text-align: left; letter-spacing: 0px; text-overflow: ellipsis; padding: 2px; margin-bottom: 20px; } /* Welcome and setup */ .body_window h2:not(.window_title) { font-size: 23px; font-weight: bold; } .body_window div.horizontal { position: relative; overflow: auto; width: 100%; max-height: 100%; overflow: auto; white-space: nowrap; display: inline-block; margin-left: 25px; box-sizing: border-box; } .body_window .welcomeButtons { position: absolute; bottom: 15px; right: 15px; } .theme_divs { display: flex; max-height: 60%; min-width: 0px; max-width: auto; } .theme_div2 { height: 100%; width: 100%; margin: 10px; cursor: pointer; flex: 1; min-width: 10px; transform: translateY(20px); transition: 0.1s; } .theme_div2:active { transform: translateY(20px) scale(0.95); } .theme_div2.active { transform: translateY(0px); transition: 0.1s; } .theme_div2.active:active { transition: 0.2s ease-in-out; transform: translateY(0px) scale(0.95); } .commander { box-shadow: 0px -2px 7px rgba(0, 0, 0, 0.4); overflow: hidden; position: relative; width: auto; background: var(--editor-background-color); padding: 10px; box-sizing: border-box; max-width: 100%; max-height: 40%; margin: 0; flex: 1; display: flex; flex-direction: column; } .commander > div { flex: 1; } .terminal_navbar { height: 20px; padding: 8px; display: flex; } .terminal_container { overflow: auto; position: relative; width: auto; background: var(--editor-background-color); box-sizing: border-box; max-width: 100%; padding: 0; min-height: auto; margin: 0; } .xterm > * { overflow: auto !important; z-index: 0 !important; } .static { border: 0 !important; box-shadow: none !important; cursor: auto !important; transform: scale(1) !important; } .page_hidden { display: none; } .page_showed { display: block; } .ext_content { padding: 15px; border-top: 2px solid var(--primaryColor); overflow: auto; position: relative; } .ext_content a { color: var(--white-black); font-style: oblique; } .close_exts { position: absolute; right: 15px !important; } .center { display: flex; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } textarea { border-radius: 5px; border: 0; background: var(--primaryColor); color: var(--white-black); } .radio { display: block; position: relative; padding-left: 35px; margin-bottom: 12px; cursor: pointer; -webkit-user-select: none; user-select: none; } .radio input { position: absolute; opacity: 0; cursor: pointer; } .radio_dot { position: absolute; top: 0; left: 0; height: 15px; width: 15px; background: var(--widget-color); border-radius: 50px; border: 2px solid transparent; } .radio:hover input { background-color: var(--widget-color); } .radio:hover .radio_dot{ box-shadow:0px 2px 6px rgba(0,0,0,0.25) } .radio input:checked ~ .radio_dot { border: 2px solid var(--accentColor); } .radio input:checked { display: block; } .radio .radio_dot:after { display: none; } .navbar { padding: 5px; user-select: none; -webkit-user-drag: none; } gv-navpanel.side-menu{ display: flex; min-width: 100%; max-width: 100%; min-height: 100%; overflow: auto; } gv-navpanel.side-menu gv-navtitle{ font-weight: bold; font-size: 30px; margin-bottom:20px; display: block } gv-navpanel.side-menu gv-navbar { width: 10%; min-width: 175px; padding: 30px 20px; display: block; box-shadow: 3px 0px 5px var(--shadows); background: var(--primaryColor); } gv-navpanel.side-menu gv-navbar gv-navbutton{ font-family: _main_font; font-size: 15px; color: var(--white-black); background-color: transparent; padding: 7px 10px; width: 80%; text-decoration: none; display: block; border: 0; margin: 2px 0px; border-radius: 5px; text-align: left; transform: scale(1); position: relative; } gv-navpanel.side-menu gv-navbar gv-navbutton.active ,gv-navpanel gv-navbar gv-navbutton[default=""]{ cursor: pointer; transition: 0.05s; background: var(--accentColor); color: var(--black-white); } gv-navpanel.side-menu gv-navbar gv-navbutton:hover { color: var(--accentColor); cursor: pointer; } gv-navpanel.side-menu gv-navbar gv-navbutton.active:hover , gv-navpanel gv-navbar gv-navbutton[default=""]:hover { background: var(--accentDarkColor); color:white; } gv-navpanel.side-menu gv-navcontent { margin: 20px 0; padding: 20px; width: 80%; max-width: 100%; max-height: 100%; border-radius: 8px; overflow: auto; display: block; } gv-navpanel.side-menu gv-navcontent gv-navpage{ display: none; overflow: auto; } gv-navpanel.side-menu gv-navcontent gv-navpage[default=""]{ display: block ; } gv-navpanel.top-bar{ display: flex; min-width: 100%; max-width: 100%; min-height: auto; overflow: auto; flex-direction: column; } gv-navpanel.top-bar gv-navtitle{ display: none; } gv-navpanel.top-bar gv-navbar { width: 100%; display: flex; justify-content: center; padding: 20px 0px; } gv-navpanel.top-bar gv-navbar gv-navbutton{ text-align: center; font-family: _main_font; font-size: 15px; color: var(--white-black); background-color: transparent; padding: 7px 10px; text-decoration: none; display: block; border: 0; margin: 2px 5px; border-radius: 5px; text-align: left; transform: scale(1); position: relative; } gv-navpanel.top-bar gv-navbar gv-navbutton.active ,gv-navpanel gv-navbar gv-navbutton[default=""]{ cursor: pointer; transition: 0.05s; background: var(--accentColor); color: var(--black-white); } gv-navpanel.top-bar gv-navbar gv-navbutton:hover { color: var(--accentColor); cursor: pointer; } gv-navpanel.top-bar gv-navbar gv-navbutton.active:hover , gv-navpanel gv-navbar gv-navbutton[default=""]:hover { background: var(--accentDarkColor); color:white; } gv-navpanel.top-bar gv-navcontent { width: auto; max-width: 100%; max-height: 100%; border-radius: 8px; overflow: auto; display: block; padding:15px; } gv-navpanel.top-bar gv-navcontent gv-navpage{ display: none; overflow: auto; } gv-navpanel.top-bar gv-navcontent gv-navpage[default=""]{ display: block ; } gv-navpanel gv-navcontent gv-blocktitle { display: block; font-size: 14px; background:var(--primaryColor); margin: 5px; padding:15px; border-radius: 10px; font-weight: bold; display: flex; align-content: center; overflow: hidden; text-overflow: ellipsis; } gv-navpanel gv-navcontent gv-blockcontent { display: block; padding:10px; margin:10px; } select{ padding:5px 8px; border-radius: 5px; background:var(--primaryColor); border:0; } select:hover{ cursor: pointer; box-shadow: 0px 1px 3px rgba(0,0,0,0.15); }