UNPKG

@silexlabs/grapesjs-data-source

Version:
395 lines (390 loc) 10.6 kB
/* * Silex website builder, free/libre no-code tool for makers. * Copyright (c) 2023 lexoyo and Silex Labs foundation * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see <https://www.gnu.org/licenses/>. */ export const OPTIONS_STYLES = ` form { display: flex; flex-direction: column; align-items: stretch; padding: 5px; color: var(--ds-tertiary); min-width: 300px; } form label { text-align: left; margin-top: 5px; } form .buttons { display: flex; justify-content: flex-end; margin: 5px 0; width: 100%; } form input { padding: 4px; background-color: transparent; border-radius: 2px; color: var(--ds-tertiary); border: 1px solid var(--ds-tertiary); } form .buttons input { margin-left: 5px; cursor: pointer; padding: 4px 10px; background-color: var(--ds-button-bg); } form .buttons input[type="reset"] { border-color: transparent; } form .buttons input:hover { color: var(--ds-primary); } form input.ds-expression-input__fixed { color: black; } ` export const PROPERTY_STYLES = ` :root { --ds-primary: #8873FE; --ds-secondary: #E5E5E5; --ds-tertiary: #1D1D1D; --ds-highlight: #8873FE; --ds-lowlight: #252525; --ds-button-color: #E5E5E5; --ds-button-bg: #252525; --ds-button-border: var(--ds-button-bg); --expression-input-dirty-background-color: var(--ds-button-bg); --expression-input-dirty-border-color: var(--ds-tertiary); --expression-input-dirty-color: var(--ds-highlight); --expression-input-active-color: var(--ds-tertiary); --expression-input-active-background-color: var(--ds-secondary); --popin-dialog-background: var(--ds-secondary); --popin-dialog-color: var(--ds-tertiary); --popin-dialog-header-background: transparent; --popin-dialog-body-background: transparent; --popin-dialog-footer-background: transparent; --expression-input-placeholder-margin: 0 10px; --expression-input-item-button-margin: 0; --expression-input-item-button-padding: 2px; --expression-input-item-button-border-radius: 50%; --expression-input-item-button-width: 20px; --expression-input-item-button-height: 20px; --expression-input-item-button-background-color: transparent; --expression-input-item-button-color: var(--ds-button-color); --expression-input-separator-color: var(--ds-button-color); --expression-input-separator-font-size: 0.7em; --expression-input-separator-margin: 0; --expression-input-separator-padding: 0 3px 0 1px; --expression-input-item-arrow-padding: 5px 5px 0 5px; --expression-input-values-li-icon-margin-right: 0; /* --popin-dialog-header-color: #333; --popin-dialog-body-color: #666; --popin-dialog-footer-color: #333; --popin-dialog-header-border-bottom: none; --popin-dialog-footer-border-top: none; --popin-dialog-header-padding: 0; --popin-dialog-body-padding: 5px; --popin-dialog-footer-padding: 0; */ } .ds-state-editor__options { --ds-secondary: #252525; --ds-tertiary: #E5E5E5; --ds-lowlight: #333; --ds-button-color: #E5E5E5; --ds-button-bg: #1A1A1A; --ds-button-border: #333; --expression-input-dirty-background-color: var(--ds-button-bg); --expression-input-dirty-border-color: #333; --expression-input-dirty-color: var(--ds-highlight); --expression-input-active-color: #1A1A1A; --expression-input-active-background-color: var(--ds-highlight); } .gjs-traits-label { font-family: inherit; font-size: 0.65rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; padding: 8px 10px; text-align: left; display: flex; justify-content: space-between; align-items: center; min-height: 30px; border-bottom: 1px solid var(--ds-lowlight); } expression-input { padding: 10px; display: block; } expression-input::part(separator__delete) { border-right: 1px solid var(--ds-button-border); height: 20px; } expression-input::part(add-button) { background-color: var(--ds-tertiary); border-radius: 2px; padding: 3px; margin: 0; border: 1px solid var(--ds-tertiary); width: 24px; height: 24px; box-sizing: border-box; cursor: pointer; } expression-input::part(delete-button) { margin: 0; padding: 0; display: flex; justify-content: center; color: var(--ds-button); } expression-input::part(header) { border: none; } expression-input::part(type) { padding-bottom: 0; padding-top: 4px; display: none; } expression-input::part(name) { font-weight: normal; padding-bottom: 0; padding-top: 0; padding-left: 5px; } expression-input::part(property-input) { padding: 4px; border: medium; flex: 1 1 auto; background-color: transparent; color: var(--ds-secondary); } expression-input::part(property-container) { background-color: var(--ds-tertiary); border-radius: 2px; box-sizing: border-box; padding: 5px; margin: 5px 0; border: 1px solid var(--silex-border-color-strong); border-radius: 4px; appearance: none; padding: var(--gjs-input-padding); margin: 2px; background: var(--darkerPrimaryColor); } expression-input::part(scroll-container) { overflow: auto; box-sizing: border-box; /* inner shadow to make it visible when content is overflowing */ box-shadow: inset 0 0 5px 0 rgba(0,0,0,.3); } expression-input::part(steps-container) { display: flex; align-items: center; background-color: var(--ds-button-bg); border-radius: 2px; padding: 5px; margin: 5px 0; width: max-content; min-width: 100%; box-sizing: border-box; } expression-input::part(dirty-icon) { cursor: pointer; margin: 0 10px; color: var(--ds-highlight); } expression-input::part(dirty-icon) { color: var(--ds-highlight); vertical-align: bottom; display: inline-flex; margin: 0; margin-left: 20px; } expression-input::part(expression-input-item) { border: 1px solid var(--ds-tertiary); background-color: var(--ds-tertiary); border-radius: 2px; margin-right: 5px; } .ds-section { &:last-child { margin-bottom: 100px; } details { margin: 2px; padding: 2px; background-color: transparent; border-radius: 2px; color: var(--ds-secondary); text-align: left; } details[open] { background-color: var(--ds-tertiary); } details summary { color: var(--ds-secondary); cursor: pointer; padding: 10px 0; } details a { color: var(--ds-link-color); } details .ds-states__help-link { display: block; } details .ds-states__help--tooltip { position: absolute; left: 50%; background: var(--ds-secondary); color: var(--ds-tertiary); padding: 10px; } .gjs-traits-label { background-color: var(--ds-tertiary); span { display: flex; align-items: center; } } main { display: flex; flex-direction: column; } .ds-slot-fixed { width: 100%; } select { -webkit-appearance: none; -moz-appearance: none; appearance: none; width: 150px; flex: 0; margin: 5px; padding: 5px; background-color: var(--ds-button-bg); border-radius: 2px; color: var(--ds-secondary); border: 1px solid var(--ds-tertiary); cursor: pointer; font-size: medium; } input.ds-expression-input__fixed { color: var(--ds-secondary); width: 98%; box-sizing: border-box; border-radius: 4px; appearance: none; padding: 10px var(--gjs-input-padding); margin: 2px; background: var(--darkerPrimaryColor); } .ds-expression-input__add { max-width: 40px; text-align: center; font-size: large; padding-right: 9px; -webkit-appearance: none; -moz-appearance: none; text-indent: 1px; text-overflow: ''; margin-right: 150px; } .ds-expression-input__add { option { font-size: medium; } optgroup option { /* all options but the "+" */ text-align: left; } } .ds-expression-input__options-button { background-color: transparent; border: none; color: var(--ds-secondary); cursor: pointer; padding: 0; margin: 10px; margin-left: 0; } label.ds-label { display: flex; align-items: center; padding: 10px; color: var(--ds-secondary); } label.ds-label--disabled { justify-content: space-between; } label.ds-label--disabled .ds-label__message { opacity: .5; } select.ds-visibility__condition-operator { margin: 10px; } } /* States CSS Styles */ .ds-states { display: flex; flex-direction: column; } .ds-states__buttons { display: flex; flex-direction: row; justify-content: flex-end; margin: 0 5px; } .ds-states__button { cursor: pointer; border: 1px solid var(--ds-button-border); border-radius: 2px; padding: 5px; background: var(--ds-button-bg); color: var(--ds-button-color); margin: 5px; padding: 7px 14px; } .ds-states__button--disabled { opacity: 0.5; cursor: default; } .ds-states__remove-button { margin-left: 1em; } .ds-states__sep { width: 100%; border: none; height: 1px; background: var(--ds-button-bg); } /* real data */ .ds-real-data { code { overflow: hidden; text-wrap: nowrap; display: block; padding: 0 10px; text-overflow: ellipsis; margin-top: -5px; margin-bottom: 10px; text-align: right; } } `