diff --git a/.DS_Store b/.DS_Store index 206831e9..bac96f5d 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/src/components/modals/main/scss/marketplace/_main.scss b/src/components/modals/main/scss/marketplace/_main.scss index 5fa64acf..669b243b 100644 --- a/src/components/modals/main/scss/marketplace/_main.scss +++ b/src/components/modals/main/scss/marketplace/_main.scss @@ -231,6 +231,11 @@ -webkit-background-clip: text; -webkit-text-fill-color: transparent;*/ } + button { + svg { + font-size: 1rem; + } + } .buttonsRow { display: flex; flex-flow: row; diff --git a/src/components/modals/main/scss/settings/_main.scss b/src/components/modals/main/scss/settings/_main.scss index cc9b285d..5e41de81 100644 --- a/src/components/modals/main/scss/settings/_main.scss +++ b/src/components/modals/main/scss/settings/_main.scss @@ -88,33 +88,45 @@ h4 { } } -.dropzone { - @include themed() { - background: t($modal-sidebar); - border: 3px solid t($modal-sidebarActive); - color: t($color); - border-radius: 12px; - font-size: 1rem; +.photosEmpty { + height: 400px; + display: grid; + place-items: center; + button { + padding: 0 20px 0 20px; + } +} + +.imagesTopBar { + padding-top: 25px; + display: flex; + flex-flow: row; + justify-content: space-between; + align-items: center; + div:nth-child(1) { display: flex; + flex-flow: row; align-items: center; - flex-flow: column; - justify-content: center; - gap: 10px; - transition: 0.5s; - padding: 45px 25px 45px 25px; + gap: 20px; svg { - font-size: 48px; + font-size: 30px; + @include themed() { + color: t($subColor); + } } - .title { - font-size: 18px; - } - &:hover { - border-style: dashed; - } - button { - width: 80% !important; + div { + display: flex; + flex-flow: column; } } + .topbarbuttons { + display: flex; + flex-flow: row; + gap: 25px; + } + button { + padding: 0 20px 0 20px; + } } .statsGrid { diff --git a/src/components/modals/main/scss/settings/modules/tabs/_order.scss b/src/components/modals/main/scss/settings/modules/tabs/_order.scss index 5240bc3c..96b68825 100644 --- a/src/components/modals/main/scss/settings/modules/tabs/_order.scss +++ b/src/components/modals/main/scss/settings/modules/tabs/_order.scss @@ -45,16 +45,20 @@ } .images-row { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + height: 250px; + padding: 20px; + grid-gap: 20px; @include themed() { - display: flex; - flex-wrap: wrap; - gap: 15px; div { background: t($modal-sidebar); padding: 10px; box-shadow: 0 0 0 4px t($modal-sidebarActive); border-radius: t($borderRadius); gap: 10px; + display: flex; + justify-content: center; img { width: auto; height: 100px; diff --git a/src/components/modals/main/settings/sections/background/Background.jsx b/src/components/modals/main/settings/sections/background/Background.jsx index 4807b2fe..5ef1614b 100644 --- a/src/components/modals/main/settings/sections/background/Background.jsx +++ b/src/components/modals/main/settings/sections/background/Background.jsx @@ -98,6 +98,7 @@ export default class BackgroundSettings extends PureComponent { const APISettings = ( <> + {interval} this.setState({ backgroundAPI: e })} /> - {interval} ); @@ -217,7 +217,7 @@ export default class BackgroundSettings extends PureComponent { className="mainTitle" onClick={() => this.setState({ backgroundSettingsSection: false })} > - {getMessage('modals.main.settings.sections.background.title')}{' '} + {getMessage('modals.main.settings.sections.background.title')}{' '} {' '} {getMessage('modals.main.settings.sections.background.source.title')} diff --git a/src/components/modals/main/settings/sections/background/Custom.jsx b/src/components/modals/main/settings/sections/background/Custom.jsx index 932fb0cc..79f063c9 100644 --- a/src/components/modals/main/settings/sections/background/Custom.jsx +++ b/src/components/modals/main/settings/sections/background/Custom.jsx @@ -1,7 +1,14 @@ import variables from 'modules/variables'; import { PureComponent, createRef } from 'react'; import { toast } from 'react-toastify'; -import { MdCancel, MdAddLink, MdAddPhotoAlternate, MdPersonalVideo } from 'react-icons/md'; +import { + MdCancel, + MdAddLink, + MdAddPhotoAlternate, + MdPersonalVideo, + MdOutlineFileUpload, + MdFolder, +} from 'react-icons/md'; import EventBus from 'modules/helpers/eventbus'; import { compressAccurately, filetoDataURL } from 'image-conversion'; import { videoCheck } from 'modules/helpers/background/widget'; @@ -14,7 +21,7 @@ import Modal from 'react-modal'; import CustomURLModal from './CustomURLModal'; export default class CustomSettings extends PureComponent { - getMessage = (text) => variables.language.getMessage(variables.languagecode, text); + getMessage = (text, obj) => variables.language.getMessage(variables.languagecode, text, obj || {}); constructor() { super(); @@ -165,9 +172,10 @@ export default class CustomSettings extends PureComponent { return ( <> {this.props.interval} -
+ + {/*
-
+ {/*
{this.state.customBackground.map((url, index) => (
))} -
+
+
@@ -210,6 +219,74 @@ export default class CustomSettings extends PureComponent {
+
*/} + +
+
+
+ +
+ Custom Images + Select images from your local computer +
+
+
+ + +
+
+
+ {this.state.customBackground.length > 0 ? ( +
+ {this.state.customBackground.map((url, index) => ( +
+ {'Custom + {this.videoCheck(url) ? : null} + {this.state.customBackground.length > 0 ? ( + + ) : null} +
+ ))} +
+ ) : ( +
+
+ + + {this.getMessage( + 'modals.main.settings.sections.background.source.drop_to_upload', + )} + + + {this.getMessage( + 'modals.main.settings.sections.background.source.formats', + { + list: 'jpeg, png, webp, webm, gif, mp4, webm, ogg', + }, + )} + + +
+
+ )} +