From 37bdf17bd0ddced1c08e54b0ba3e782b1a319516 Mon Sep 17 00:00:00 2001 From: Michael Becker Date: Sat, 26 Jul 2025 01:22:54 -0400 Subject: [PATCH] move to Ninja build system because it's awesome --- .gitignore | 4 +- build.ninja | 35 +++ build.sh | 46 ---- cssc.sh | 33 +++ jsc.sh | 27 +++ src/{ => uwt-web}/fonts/awesome/css/all.css | 0 .../fonts/awesome/webfonts/fa-brands-400.ttf | Bin .../awesome/webfonts/fa-brands-400.woff2 | Bin .../fonts/awesome/webfonts/fa-duotone-900.ttf | Bin .../awesome/webfonts/fa-duotone-900.woff2 | Bin .../fonts/awesome/webfonts/fa-light-300.ttf | Bin .../fonts/awesome/webfonts/fa-light-300.woff2 | Bin .../fonts/awesome/webfonts/fa-regular-400.ttf | Bin .../awesome/webfonts/fa-regular-400.woff2 | Bin .../fonts/awesome/webfonts/fa-solid-900.ttf | Bin .../fonts/awesome/webfonts/fa-solid-900.woff2 | Bin .../fonts/awesome/webfonts/fa-thin-100.ttf | Bin .../fonts/awesome/webfonts/fa-thin-100.woff2 | Bin .../themes/avondale/mobile/uwt-formview.less | 7 + .../avondale/mobile/uwt-htmlheading.less | 11 + .../themes/avondale/mobile/uwt-searchbar.less | 37 +++ src/uwt-web/themes/avondale/mobile/uwt.less | 3 + .../avondale/uwt-actionpreviewbutton.less | 129 +++++++++++ src/uwt-web/themes/avondale/uwt-alert.less | 128 +++++++++++ .../themes/avondale/uwt-applicationmenu.less | 21 ++ src/uwt-web/themes/avondale/uwt-badge.less | 70 ++++++ .../themes/avondale/uwt-binaryswitch.less | 47 ++++ .../themes/avondale/uwt-blockquote.less | 47 ++++ src/uwt-web/themes/avondale/uwt-branding.less | 22 ++ src/uwt-web/themes/avondale/uwt-button.less | 129 +++++++++++ src/uwt-web/themes/avondale/uwt-checkbox.less | 20 ++ src/uwt-web/themes/avondale/uwt-colors.less | 58 +++++ .../themes/avondale/uwt-countdown.less | 10 + src/uwt-web/themes/avondale/uwt-footer.less | 9 + src/uwt-web/themes/avondale/uwt-formview.less | 16 ++ src/uwt-web/themes/avondale/uwt-header.less | 216 ++++++++++++++++++ .../themes/avondale/uwt-htmlheading.less | 9 + .../themes/avondale/uwt-linkbutton.less | 10 + src/uwt-web/themes/avondale/uwt-listbox.less | 18 ++ src/uwt-web/themes/avondale/uwt-listview.less | 190 +++++++++++++++ src/uwt-web/themes/avondale/uwt-mainpage.less | 5 + src/uwt-web/themes/avondale/uwt-megamenu.less | 15 ++ src/uwt-web/themes/avondale/uwt-menu.less | 112 +++++++++ src/uwt-web/themes/avondale/uwt-page.less | 16 ++ src/uwt-web/themes/avondale/uwt-panel.less | 61 +++++ src/uwt-web/themes/avondale/uwt-popup.less | 5 + .../themes/avondale/uwt-richtextbox.less | 10 + .../themes/avondale/uwt-rotaryswitch.less | 7 + src/uwt-web/themes/avondale/uwt-sidebar.less | 115 ++++++++++ src/uwt-web/themes/avondale/uwt-slider.less | 27 +++ src/uwt-web/themes/avondale/uwt-spinner.less | 11 + .../themes/avondale/uwt-tabcontainer.less | 37 +++ src/uwt-web/themes/avondale/uwt-textbox.less | 42 ++++ src/uwt-web/themes/avondale/uwt-tile.less | 24 ++ src/uwt-web/themes/avondale/uwt-toggle.less | 107 +++++++++ src/uwt-web/themes/avondale/uwt-toolbar.less | 29 +++ src/uwt-web/themes/avondale/uwt-trackbar.less | 130 +++++++++++ src/uwt-web/themes/avondale/uwt-window.less | 35 +++ src/uwt-web/themes/avondale/uwt-wizard.less | 96 ++++++++ src/uwt-web/themes/avondale/uwt.less | 124 ++++++++++ 60 files changed, 2312 insertions(+), 48 deletions(-) create mode 100644 build.ninja delete mode 100755 build.sh create mode 100644 cssc.sh create mode 100644 jsc.sh rename src/{ => uwt-web}/fonts/awesome/css/all.css (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-brands-400.ttf (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-brands-400.woff2 (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-duotone-900.ttf (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-duotone-900.woff2 (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-light-300.ttf (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-light-300.woff2 (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-regular-400.ttf (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-regular-400.woff2 (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-solid-900.ttf (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-solid-900.woff2 (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-thin-100.ttf (100%) rename src/{ => uwt-web}/fonts/awesome/webfonts/fa-thin-100.woff2 (100%) create mode 100644 src/uwt-web/themes/avondale/mobile/uwt-formview.less create mode 100644 src/uwt-web/themes/avondale/mobile/uwt-htmlheading.less create mode 100644 src/uwt-web/themes/avondale/mobile/uwt-searchbar.less create mode 100644 src/uwt-web/themes/avondale/mobile/uwt.less create mode 100644 src/uwt-web/themes/avondale/uwt-actionpreviewbutton.less create mode 100644 src/uwt-web/themes/avondale/uwt-alert.less create mode 100644 src/uwt-web/themes/avondale/uwt-applicationmenu.less create mode 100644 src/uwt-web/themes/avondale/uwt-badge.less create mode 100644 src/uwt-web/themes/avondale/uwt-binaryswitch.less create mode 100644 src/uwt-web/themes/avondale/uwt-blockquote.less create mode 100644 src/uwt-web/themes/avondale/uwt-branding.less create mode 100644 src/uwt-web/themes/avondale/uwt-button.less create mode 100644 src/uwt-web/themes/avondale/uwt-checkbox.less create mode 100644 src/uwt-web/themes/avondale/uwt-colors.less create mode 100644 src/uwt-web/themes/avondale/uwt-countdown.less create mode 100644 src/uwt-web/themes/avondale/uwt-footer.less create mode 100644 src/uwt-web/themes/avondale/uwt-formview.less create mode 100644 src/uwt-web/themes/avondale/uwt-header.less create mode 100644 src/uwt-web/themes/avondale/uwt-htmlheading.less create mode 100644 src/uwt-web/themes/avondale/uwt-linkbutton.less create mode 100644 src/uwt-web/themes/avondale/uwt-listbox.less create mode 100644 src/uwt-web/themes/avondale/uwt-listview.less create mode 100644 src/uwt-web/themes/avondale/uwt-mainpage.less create mode 100644 src/uwt-web/themes/avondale/uwt-megamenu.less create mode 100644 src/uwt-web/themes/avondale/uwt-menu.less create mode 100644 src/uwt-web/themes/avondale/uwt-page.less create mode 100644 src/uwt-web/themes/avondale/uwt-panel.less create mode 100644 src/uwt-web/themes/avondale/uwt-popup.less create mode 100644 src/uwt-web/themes/avondale/uwt-richtextbox.less create mode 100644 src/uwt-web/themes/avondale/uwt-rotaryswitch.less create mode 100644 src/uwt-web/themes/avondale/uwt-sidebar.less create mode 100644 src/uwt-web/themes/avondale/uwt-slider.less create mode 100644 src/uwt-web/themes/avondale/uwt-spinner.less create mode 100644 src/uwt-web/themes/avondale/uwt-tabcontainer.less create mode 100644 src/uwt-web/themes/avondale/uwt-textbox.less create mode 100644 src/uwt-web/themes/avondale/uwt-tile.less create mode 100644 src/uwt-web/themes/avondale/uwt-toggle.less create mode 100644 src/uwt-web/themes/avondale/uwt-toolbar.less create mode 100644 src/uwt-web/themes/avondale/uwt-trackbar.less create mode 100644 src/uwt-web/themes/avondale/uwt-window.less create mode 100644 src/uwt-web/themes/avondale/uwt-wizard.less create mode 100644 src/uwt-web/themes/avondale/uwt.less diff --git a/.gitignore b/.gitignore index 0959a98..2bd8d1a 100644 --- a/.gitignore +++ b/.gitignore @@ -12,6 +12,6 @@ # Built Visual Studio Code Extensions *.vsix -# Output of ./build.sh +# Output of ninja output/ - +build/ \ No newline at end of file diff --git a/build.ninja b/build.ninja new file mode 100644 index 0000000..f833dcb --- /dev/null +++ b/build.ninja @@ -0,0 +1,35 @@ +# Copyright (C) 2025 Michael Becker +# +# This file is part of mocha-docker. +# +# mocha-docker is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# mocha-docker 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 General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with mocha-docker. If not, see . + +root = . +builddir = build +bash = bash + +rule rm + command = rm $in + +rule cssc + command = $bash cssc.sh $out $in + description = compile LESS stylesheets for $out + +rule jsc + command = $bash jsc.sh $out $in + description = compile and minify JavaScript for $out + +build $root/output/common.css: cssc src/uwt-web/common/uwt-actionpreviewbutton.less src/uwt-web/common/uwt-alert.less src/uwt-web/common/uwt-applicationmenu.less src/uwt-web/common/uwt-badge.less src/uwt-web/common/uwt-binaryswitch.less src/uwt-web/common/uwt-button-group.less src/uwt-web/common/uwt-button.less src/uwt-web/common/uwt-calendar.less src/uwt-web/common/uwt-checkbox.less src/uwt-web/common/uwt-column.less src/uwt-web/common/uwt-combobox.less src/uwt-web/common/uwt-dialog.less src/uwt-web/common/uwt-disclosure.less src/uwt-web/common/uwt-expand.less src/uwt-web/common/uwt-footer.less src/uwt-web/common/uwt-formview.less src/uwt-web/common/uwt-gripper.less src/uwt-web/common/uwt-header.less src/uwt-web/common/uwt-image.less src/uwt-web/common/uwt-label.less src/uwt-web/common/uwt-layout-box.less src/uwt-web/common/uwt.less src/uwt-web/common/uwt-listbox.less src/uwt-web/common/uwt-listview.less src/uwt-web/common/uwt-megamenu.less src/uwt-web/common/uwt-menu.less src/uwt-web/common/uwt-meter.less src/uwt-web/common/uwt-page-footer.less src/uwt-web/common/uwt-page-header.less src/uwt-web/common/uwt-page.less src/uwt-web/common/uwt-panel.less src/uwt-web/common/uwt-popup.less src/uwt-web/common/uwt-progressbar.less src/uwt-web/common/uwt-ribbon.less src/uwt-web/common/uwt-ribbon-listview.less src/uwt-web/common/uwt-rotaryswitch.less src/uwt-web/common/uwt-searchbar.less src/uwt-web/common/uwt-sidebar.less src/uwt-web/common/uwt-sidebar-profile.less src/uwt-web/common/uwt-slider.less src/uwt-web/common/uwt-spinbutton.less src/uwt-web/common/uwt-spinner.less src/uwt-web/common/uwt-splashscreen.less src/uwt-web/common/uwt-stack.less src/uwt-web/common/uwt-switch.less src/uwt-web/common/uwt-tabcontainer.less src/uwt-web/common/uwt-textbox.less src/uwt-web/common/uwt-tile.less src/uwt-web/common/uwt-toolbar.less src/uwt-web/common/uwt-tooltip.less src/uwt-web/common/uwt-treeview.less src/uwt-web/common/uwt-uml-diagram.less src/uwt-web/common/uwt-window.less src/uwt-web/common/uwt-wunderbar.less +build $root/output/themes/avondale.css: cssc src/uwt-web/themes/avondale/uwt-actionpreviewbutton.less src/uwt-web/themes/avondale/uwt-alert.less src/uwt-web/themes/avondale/uwt-applicationmenu.less src/uwt-web/themes/avondale/uwt-badge.less src/uwt-web/themes/avondale/uwt-binaryswitch.less src/uwt-web/themes/avondale/uwt-blockquote.less src/uwt-web/themes/avondale/uwt-branding.less src/uwt-web/themes/avondale/uwt-button.less src/uwt-web/themes/avondale/uwt-checkbox.less src/uwt-web/themes/avondale/uwt-colors.less src/uwt-web/themes/avondale/uwt-countdown.less src/uwt-web/themes/avondale/uwt-footer.less src/uwt-web/themes/avondale/uwt-formview.less src/uwt-web/themes/avondale/uwt-header.less src/uwt-web/themes/avondale/uwt-htmlheading.less src/uwt-web/themes/avondale/uwt.less src/uwt-web/themes/avondale/uwt-linkbutton.less src/uwt-web/themes/avondale/uwt-listbox.less src/uwt-web/themes/avondale/uwt-listview.less src/uwt-web/themes/avondale/uwt-mainpage.less src/uwt-web/themes/avondale/uwt-megamenu.less src/uwt-web/themes/avondale/uwt-menu.less src/uwt-web/themes/avondale/uwt-page.less src/uwt-web/themes/avondale/uwt-panel.less src/uwt-web/themes/avondale/uwt-popup.less src/uwt-web/themes/avondale/uwt-richtextbox.less src/uwt-web/themes/avondale/uwt-rotaryswitch.less src/uwt-web/themes/avondale/uwt-sidebar.less src/uwt-web/themes/avondale/uwt-slider.less src/uwt-web/themes/avondale/uwt-spinner.less src/uwt-web/themes/avondale/uwt-tabcontainer.less src/uwt-web/themes/avondale/uwt-textbox.less src/uwt-web/themes/avondale/uwt-tile.less src/uwt-web/themes/avondale/uwt-toggle.less src/uwt-web/themes/avondale/uwt-toolbar.less src/uwt-web/themes/avondale/uwt-trackbar.less src/uwt-web/themes/avondale/uwt-window.less src/uwt-web/themes/avondale/uwt-wizard.less +build $root/output/uwt.min.js: jsc src/uwt-web/scripts/Base64.js src/uwt-web/scripts/datetime.1-1.js src/uwt-web/scripts/json2.min.js src/uwt-web/scripts/MousePosition.js src/uwt-web/scripts/PrependArgument.js src/uwt-web/scripts/System.js src/uwt-web/scripts/WindowDimensions.js src/uwt-web/scripts/controls/AdditionalDetailWidget.js src/uwt-web/scripts/controls/Alert.js src/uwt-web/scripts/controls/BinarySwitch.js src/uwt-web/scripts/controls/Button.js src/uwt-web/scripts/controls/CheckBox.js src/uwt-web/scripts/controls/CodeEditor.js src/uwt-web/scripts/controls/CommandBar.js src/uwt-web/scripts/controls/Countdown.js src/uwt-web/scripts/controls/Disclosure.js src/uwt-web/scripts/controls/DropDown.js src/uwt-web/scripts/controls/FlyoutTabContainer.js src/uwt-web/scripts/controls/LinkButton.js src/uwt-web/scripts/controls/ListView.js src/uwt-web/scripts/controls/Menu.js src/uwt-web/scripts/controls/Meter.js src/uwt-web/scripts/controls/Panel.js src/uwt-web/scripts/controls/Popup.js src/uwt-web/scripts/controls/ProgressBar.js src/uwt-web/scripts/controls/Ribbon.js src/uwt-web/scripts/controls/RichTextBox.js src/uwt-web/scripts/controls/RotarySwitch.js src/uwt-web/scripts/controls/Sidebar.js src/uwt-web/scripts/controls/SlideContainer.js src/uwt-web/scripts/controls/Slider.js src/uwt-web/scripts/controls/SplitContainer.js src/uwt-web/scripts/controls/Switch.js src/uwt-web/scripts/controls/TabContainer.js src/uwt-web/scripts/controls/TextBox.js src/uwt-web/scripts/controls/ToggleSwitch.js src/uwt-web/scripts/controls/ToolTip.js src/uwt-web/scripts/controls/TrackBar.js src/uwt-web/scripts/controls/Window.js src/uwt-web/scripts/controls/Wizard.js diff --git a/build.sh b/build.sh deleted file mode 100755 index acc6b9c..0000000 --- a/build.sh +++ /dev/null @@ -1,46 +0,0 @@ -if [ ! -d output ]; then - mkdir output -fi - -echo " *** Building Themes *** " - -if [ -d src/uwt-web/common ]; then - pushd src/uwt-web/common - - # first compile common CSS - # since lessc doesn't support multiple files, we have to cat =(^.^)= them first :( - cat *.less > ../common.less - lessc --verbose --plugin=less-plugin-clean-css ../common.less ../../../output/common.css - rm ../common.less - - popd -fi - -if [ -d src/uwt-web/themes ]; then - - if [ ! -d output/themes ]; then - mkdir output/themes - fi - - # for each dir in themes dir, compile its own .css file - for theme in $(ls src/uwt-web/themes); do - cat src/uwt-web/themes/$theme/*.less > src/uwt-web/themes/$theme.less - lessc --verbose --plugin=less-plugin-clean-css src/uwt-web/themes/$theme.less output/themes/$theme.css - rm src/uwt-web/themes/$theme.less - done - -fi - -echo " *** Building Scripts *** " - -if [ -d src/uwt-web/scripts ]; then - - cat src/uwt-web/scripts/*.js src/uwt-web/scripts/controls/*.js > src/uwt-web/scripts.js - jsmin src/uwt-web/scripts.js > output/uwt.min.js - rm src/uwt-web/scripts.js - -fi - -echo " *** Build Completed ***" - - diff --git a/cssc.sh b/cssc.sh new file mode 100644 index 0000000..0a63638 --- /dev/null +++ b/cssc.sh @@ -0,0 +1,33 @@ +# Copyright (C) 2025 Michael Becker +# +# This file is part of mocha-docker. +# +# mocha-docker is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# mocha-docker 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 General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with mocha-docker. If not, see . + +#!/bin/bash +OUTPUT="$1" +shift + +TARGETS=$@ +WORKDIR=$(dirname $1) + +cat $TARGETS > $WORKDIR/common.less + +pushd $WORKDIR +lessc --verbose --plugin=less-plugin-clean-css common.less output.css +popd + +rm $WORKDIR/common.less + +mv $WORKDIR/output.css $OUTPUT diff --git a/jsc.sh b/jsc.sh new file mode 100644 index 0000000..8c4f841 --- /dev/null +++ b/jsc.sh @@ -0,0 +1,27 @@ +# Copyright (C) 2025 Michael Becker +# +# This file is part of mocha-docker. +# +# mocha-docker is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# mocha-docker 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 General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with mocha-docker. If not, see . + +#!/bin/bash +OUTPUT="$1" +shift + +TARGETS=$@ +WORKDIR=$(dirname $1) + +cat $TARGETS > $WORKDIR/common.js +jsmin $WORKDIR/common.js > $OUTPUT +rm $WORKDIR/common.js diff --git a/src/fonts/awesome/css/all.css b/src/uwt-web/fonts/awesome/css/all.css similarity index 100% rename from src/fonts/awesome/css/all.css rename to src/uwt-web/fonts/awesome/css/all.css diff --git a/src/fonts/awesome/webfonts/fa-brands-400.ttf b/src/uwt-web/fonts/awesome/webfonts/fa-brands-400.ttf similarity index 100% rename from src/fonts/awesome/webfonts/fa-brands-400.ttf rename to src/uwt-web/fonts/awesome/webfonts/fa-brands-400.ttf diff --git a/src/fonts/awesome/webfonts/fa-brands-400.woff2 b/src/uwt-web/fonts/awesome/webfonts/fa-brands-400.woff2 similarity index 100% rename from src/fonts/awesome/webfonts/fa-brands-400.woff2 rename to src/uwt-web/fonts/awesome/webfonts/fa-brands-400.woff2 diff --git a/src/fonts/awesome/webfonts/fa-duotone-900.ttf b/src/uwt-web/fonts/awesome/webfonts/fa-duotone-900.ttf similarity index 100% rename from src/fonts/awesome/webfonts/fa-duotone-900.ttf rename to src/uwt-web/fonts/awesome/webfonts/fa-duotone-900.ttf diff --git a/src/fonts/awesome/webfonts/fa-duotone-900.woff2 b/src/uwt-web/fonts/awesome/webfonts/fa-duotone-900.woff2 similarity index 100% rename from src/fonts/awesome/webfonts/fa-duotone-900.woff2 rename to src/uwt-web/fonts/awesome/webfonts/fa-duotone-900.woff2 diff --git a/src/fonts/awesome/webfonts/fa-light-300.ttf b/src/uwt-web/fonts/awesome/webfonts/fa-light-300.ttf similarity index 100% rename from src/fonts/awesome/webfonts/fa-light-300.ttf rename to src/uwt-web/fonts/awesome/webfonts/fa-light-300.ttf diff --git a/src/fonts/awesome/webfonts/fa-light-300.woff2 b/src/uwt-web/fonts/awesome/webfonts/fa-light-300.woff2 similarity index 100% rename from src/fonts/awesome/webfonts/fa-light-300.woff2 rename to src/uwt-web/fonts/awesome/webfonts/fa-light-300.woff2 diff --git a/src/fonts/awesome/webfonts/fa-regular-400.ttf b/src/uwt-web/fonts/awesome/webfonts/fa-regular-400.ttf similarity index 100% rename from src/fonts/awesome/webfonts/fa-regular-400.ttf rename to src/uwt-web/fonts/awesome/webfonts/fa-regular-400.ttf diff --git a/src/fonts/awesome/webfonts/fa-regular-400.woff2 b/src/uwt-web/fonts/awesome/webfonts/fa-regular-400.woff2 similarity index 100% rename from src/fonts/awesome/webfonts/fa-regular-400.woff2 rename to src/uwt-web/fonts/awesome/webfonts/fa-regular-400.woff2 diff --git a/src/fonts/awesome/webfonts/fa-solid-900.ttf b/src/uwt-web/fonts/awesome/webfonts/fa-solid-900.ttf similarity index 100% rename from src/fonts/awesome/webfonts/fa-solid-900.ttf rename to src/uwt-web/fonts/awesome/webfonts/fa-solid-900.ttf diff --git a/src/fonts/awesome/webfonts/fa-solid-900.woff2 b/src/uwt-web/fonts/awesome/webfonts/fa-solid-900.woff2 similarity index 100% rename from src/fonts/awesome/webfonts/fa-solid-900.woff2 rename to src/uwt-web/fonts/awesome/webfonts/fa-solid-900.woff2 diff --git a/src/fonts/awesome/webfonts/fa-thin-100.ttf b/src/uwt-web/fonts/awesome/webfonts/fa-thin-100.ttf similarity index 100% rename from src/fonts/awesome/webfonts/fa-thin-100.ttf rename to src/uwt-web/fonts/awesome/webfonts/fa-thin-100.ttf diff --git a/src/fonts/awesome/webfonts/fa-thin-100.woff2 b/src/uwt-web/fonts/awesome/webfonts/fa-thin-100.woff2 similarity index 100% rename from src/fonts/awesome/webfonts/fa-thin-100.woff2 rename to src/uwt-web/fonts/awesome/webfonts/fa-thin-100.woff2 diff --git a/src/uwt-web/themes/avondale/mobile/uwt-formview.less b/src/uwt-web/themes/avondale/mobile/uwt-formview.less new file mode 100644 index 0000000..54ab985 --- /dev/null +++ b/src/uwt-web/themes/avondale/mobile/uwt-formview.less @@ -0,0 +1,7 @@ +@media (max-width: 1000px) +{ + div.uwt-formview > div.uwt-formview-item + { + padding: 0px 8px; + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/mobile/uwt-htmlheading.less b/src/uwt-web/themes/avondale/mobile/uwt-htmlheading.less new file mode 100644 index 0000000..887a66e --- /dev/null +++ b/src/uwt-web/themes/avondale/mobile/uwt-htmlheading.less @@ -0,0 +1,11 @@ +@media (max-width: 1000px) +{ + h1 + { + font-size: 20pt; + } + h2 + { + font-size: 16pt; + } +} diff --git a/src/uwt-web/themes/avondale/mobile/uwt-searchbar.less b/src/uwt-web/themes/avondale/mobile/uwt-searchbar.less new file mode 100644 index 0000000..7291394 --- /dev/null +++ b/src/uwt-web/themes/avondale/mobile/uwt-searchbar.less @@ -0,0 +1,37 @@ +@media (max-width: 800px) +{ + body + { + &> div.uwt-header, &> form > div.uwt-header + { + &> div.uwt-header-item + { + &.uwt-searchbar + { + &:not(:focus-within) + { + &::before + { + color: #4e5155; + font-size: 16pt; + top: 6px; + } + &:hover + { + cursor: pointer; + &::before + { + color: #fff; + } + } + } + input:not(:focus) + { + width: 32px; + background: transparent; + } + } + } + } + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/mobile/uwt.less b/src/uwt-web/themes/avondale/mobile/uwt.less new file mode 100644 index 0000000..48ab2f6 --- /dev/null +++ b/src/uwt-web/themes/avondale/mobile/uwt.less @@ -0,0 +1,3 @@ +@import "uwt-htmlheading.less"; +@import "uwt-formview.less"; +@import "uwt-searchbar.less"; \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-actionpreviewbutton.less b/src/uwt-web/themes/avondale/uwt-actionpreviewbutton.less new file mode 100644 index 0000000..e996a53 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-actionpreviewbutton.less @@ -0,0 +1,129 @@ +div.uwt-actionpreviewbutton +{ + + &.apb-selected > a.apb-button + { + background-color: #129283 !important; + color: #fff !important; + } + + &> a.apb-button + { + &:hover + { + background-color: @ThemeColor; + color: #fff !important; + } + + border: solid 1px @ThemeColor; + background-color: #fff; + color: @ThemeColor !important; + } +} +div.apb-preview +{ + background: #fff; + border: solid 1px #ccc; + + &> a.uwt-button.uwt-button-close + { + right: 0px; + top: 0px; + border: solid 1px; + border-top: none; + border-top-left-radius: 0px; + border-top-right-radius: 0px; + color: #666; + background-color: #fff; + border-color: #ccc; + &:hover + { + background-color: @ThemeColor; + color: #fff; + } + } + &> div.apb-actions + { + background: #eeeeee; // #ccaaff - we could use this for Sydne; + border-right: solid 1px #ccc; + &> h2 + { + margin: 16px; + border-bottom: solid 1px #ccc; + } + &> ul.uwt-menu + { + &> li + { + &> a + { + /* + &> span.uwt-title + { + font-size: 12pt; + font-weight: 300; + } + */ + } + &.uwt-menu-item-popup + { + &::after + { + content: "\f105"; + position: absolute; + right: 8px; + top: 7px; + font-family: FontAwesome; + font-size: 16px; /* in case it gets changed by parent */ + color: #707478; + } + &> ul.uwt-menu + { + background-color: #fff; + border: solid 1px #ccc; + box-shadow: 2px 2px 4px #ccc; + } + } + } + } + + } + &> div.uwt-gripper + { + border-bottom: solid 1px #cccccc; + border-right: solid 1px #ccc; + border-left: solid 1px #ccc; + border-bottom-right-radius: 8px; + border-bottom-left-radius: 8px; + + &:hover + { + background-color: @ThemeColor; + &::after + { + color: #fff; + } + } + &::after + { + content: ". . . . . ."; + display: block; + text-align: center; + margin-top: -9px; + font-size: 14pt; + font-weight: bold; + color: #ccc; + } + } + &.uwt-dragging + { + &> div.uwt-gripper + { + background-color: darken(@ThemeColor, 5%); + &::after + { + color: #fff; + } + } + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-alert.less b/src/uwt-web/themes/avondale/uwt-alert.less new file mode 100644 index 0000000..a210386 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-alert.less @@ -0,0 +1,128 @@ +div.uwt-alert +{ + padding: .9375rem; + box-shadow: 4px 4px 10px rgba(0,0,0,0.3); + + &:not(.uwt-visible) + { + opacity: 0; + visibility: hidden; + } + + &> div.uwt-title + { + font-weight: 300; + font-size: 24px; + margin-bottom: 16px; + } + + .AlertColor(@color) + { + border: solid 1px shade(@color, 40%); + background-color: tint(@color, 75%); + color: shade(@color, 20%); + &> div.uwt-badge + { + background-color: tint(@color, 50%); + color: shade(@color, 50%); + } + } + .AlertColor2(@textColor, @backgroundColor, @borderColor) + { + border: solid 1px @borderColor; + background-color: @backgroundColor; + color: @textColor; + } + + &.uwt-color-primary + { + // .AlertColor(@ThemeColorPrimary); + //.AlertColor2(#ffffff, #1c75c7, #0c55a7); + } + + &.uwt-color-info + { + // .AlertColor(@ThemeColorPrimary); + //.AlertColor2(#ffffff, #49b6d6, #3789a1); + } + &.uwt-collapsible + { + padding: 8px; + } + &> div.uwt-icon + { + padding: 12px; + &::before + { + font-family: "Font Awesome 6 Pro"; + font-size: 32pt; + font-weight: 100; + } + } + &:not(.uwt-collapsed) + { + &> div.uwt-icon::before + { + content: "\f0a8"; + } + } + + &.uwt-color-danger + { + //.AlertColor2(#4d1b1a, #ffcecd, #ffcecd); + &.uwt-collapsed + { + &> div.uwt-icon::before + { + content: "\f321"; + } + } + } + &.uwt-color-warning + { + //.AlertColor2(#4d1b1a, #ffcecd, #ffcecd); + &.uwt-collapsed + { + &> div.uwt-icon::before + { + content: "\f071"; + } + } + } + &.uwt-color-info + { + &.uwt-collapsed + { + &> div.uwt-icon::before + { + content: "\f05a"; + } + } + } + &:not(.uwt-disabled) + { + &.uwt-color-success + { + .AlertColor2(#ffffff, #00acac, #008181); + } + &.uwt-color-danger + { + .AlertColor(@ThemeColorDanger); + } + &.uwt-color-warning + { + .AlertColor(@ThemeColorWarning); + } + &.uwt-color-info + { + .AlertColor(@ThemeColorInfo); + } + } + + &.uwt-disabled + { + color: #999; + background: #ccc; + border-color: #999; + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-applicationmenu.less b/src/uwt-web/themes/avondale/uwt-applicationmenu.less new file mode 100644 index 0000000..e694f3d --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-applicationmenu.less @@ -0,0 +1,21 @@ +div.uwt-header > div.uwt-header-item.uwt-applicationmenu > div.uwt-button > button +{ + background-color: transparent; + + border: none; /* solid 1px @ThemeColor; */ + border-radius: 0px; + // color: @ThemeColor; + color: #4E5155; + + &.uwt-selected + { + background-color: @ThemeColor; + color: #FFFFFF; + } + &:hover + { + /* background-color: @ThemeColor; */ + color: #FFFFFF; + /* box-shadow: 0px 0px 4px @ThemeColor; */ + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-badge.less b/src/uwt-web/themes/avondale/uwt-badge.less new file mode 100644 index 0000000..9ef6e1f --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-badge.less @@ -0,0 +1,70 @@ +.uwt-badge +{ + padding: 3px 6px 4px; + font-size: 75%; + font-weight: 600; + + background-color: #e4e7ea; + color: #fff; + + text-align: center; + border-radius: 3px; + + &.uwt-color-danger + { + background-color: #ff5b57; + } + &.uwt-color-warning + { + background-color: #f59c1a; + } + &.uwt-color-yellow + { + color: #2d353c; + background-color: #ffd900; + } + &.uwt-color-lime + { + background-color: #90ca4b; + } + &.uwt-color-green + { + background-color: #32a932; + } + &.uwt-color-success + { + background-color: #00acac; + } + &.uwt-color-primary + { + background-color: #348fe2; + } + &.uwt-color-info + { + background-color: #49b6d6; + } + &.uwt-color-purple + { + background-color: #727cb6; + } + &.uwt-color-indigo + { + background-color: #8753de; + } + &.uwt-color-black + { + background-color: #2d353c; + } + &.uwt-color-pink + { + background-color: #fb5597; + } + &.uwt-color-secondary + { + background-color: #6c757d; + } + &.uwt-color-gray + { + background-color: #f2f3f4; + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-binaryswitch.less b/src/uwt-web/themes/avondale/uwt-binaryswitch.less new file mode 100644 index 0000000..44ad944 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-binaryswitch.less @@ -0,0 +1,47 @@ +div.uwt-binaryswitch +{ + border: solid 1px var(--uwt-color-gray-400); + + &:not([disabled]) + { + &:hover + { + border-color: var(--uwt-color-accent); + } + &> div.uwt-binaryswitch-switches + { + &> div.uwt-switch + { + &:hover + { + border-color: var(--uwt-color-gray-600); + &> div.uwt-switch-indicator + { + background-color: var(--uwt-color-gray-600); + } + } + } + } + } + + &> div.uwt-binaryswitch-switches + { + &> div.uwt-switch + { + transition: all 0.3s; + border: solid 1px var(--uwt-color-gray-400); + &> div.uwt-switch-indicator + { + background-color: var(--uwt-color-gray-200); + } + &.uwt-selected + { + border-color: var(--uwt-color-accent); + &> div.uwt-switch-indicator + { + background-color: var(--uwt-color-accent); + } + } + } + } +} diff --git a/src/uwt-web/themes/avondale/uwt-blockquote.less b/src/uwt-web/themes/avondale/uwt-blockquote.less new file mode 100644 index 0000000..1f3b561 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-blockquote.less @@ -0,0 +1,47 @@ +blockquote +{ + border-left: solid 5px rgba(0, 0, 0, 0.08); + font-size: 17.5px; + margin: 0px 0px 20px; + padding: 20px; + &> p + { + margin: 0px 0px 10px; + } + &> small + { + color: rgba(0, 0, 0, 0.5); + display: block; + font-size: 80%; + line-height: 1.42857; + &::before + { + content: "— "; + } + } + + &.Success + { + background-color: #B0EBCA; + border-color: #4A8564; + color: #3C763D; + } + &.Information + { + background-color: #BEE2EF; + border-color: #587C89; + color: #31708F; + } + &.Warning + { + background-color: #FFF2E3; + border-color: #9D9080; + color: #8A6D3B; + } + &.Danger + { + background-color: #FBD1D1; + border-color: #986E6E; + color: #A94442; + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-branding.less b/src/uwt-web/themes/avondale/uwt-branding.less new file mode 100644 index 0000000..95a7d30 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-branding.less @@ -0,0 +1,22 @@ +@ThemeColor: #009A9A; /* #00ACAC; */ + +@ThemeColorPrimary: #348FE2; +@ThemeColorSuccess: @ThemeColor; + +@ThemeColorPrimary: #348FE2; +// @ThemeColorSuccess: #00ACAC; + +@ThemeColorDanger: #FF5B57; +@ThemeColorInfo: #2BBCE0; +@ThemeColorWarning: #F59C1A; + +@ThemeColorRed: @ThemeColorDanger; +@ThemeColorBlue: @ThemeColorPrimary; +@ThemeColorPurple: #727CB6; +@ThemeColorOrange: #F59C1A; +@ThemeColorBlack: #242A30; /* #2D353C; */ + +@HeaderHeight: 64px; +@SidebarWidth: 220px; + +@PageBackgroundColor: #D9E0E7; \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-button.less b/src/uwt-web/themes/avondale/uwt-button.less new file mode 100644 index 0000000..603a77a --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-button.less @@ -0,0 +1,129 @@ +//(~'@{ButtonSelector}') +a.uwt-button, button, input[type=button], input[type=submit], input[type=reset], div.uwt-button > a +{ + &[disabled] + { + opacity: 0.5; + } + .ButtonColor(@backcolor, @forecolor) + { + background-color: @backcolor; + border-color: @backcolor; + color: @forecolor; + &:hover + { + background-color: darken(@backcolor, 10%); + color: @forecolor; + } + + &:active + { + background-color: darken(@backcolor, 25%); + color: @forecolor; + } + + &[disabled] + { + background-color: lighten(@backcolor, 20%); + border-color: lighten(@backcolor, 20%); + pointer-events: none; + } + } + + &.Large + { + font-size: 18px; + line-height: 1.33; + padding: 10px 16px; + } + + cursor: pointer; + border: solid 1px transparent; + + border-bottom: solid 2px transparent; + border-radius: 3px; + line-height: 1.42857; + font-size: 14px; + font-weight: 600; + padding: 6px 12px; + text-align: center; + text-decoration: none; + vertical-align: middle; + white-space: nowrap; + + transition: all 0.3s; + + .ButtonColor(#f1f3f4, #2d353c); + + &:hover + { + text-decoration: none; + } + + &:focus + { + border-bottom-color: #2d353c; + } + + &+ input[type=submit], &+ input[type=reset], &+ input[type=button], &+ a.uwt-button, &+ button + { + margin-left: 5px; + } + + &.uwt-color-gray + { + .ButtonColor(#b6c2c9, #fff); + } + &.uwt-color-purple + { + .ButtonColor(#727cb6, #fff); + } + &.uwt-color-indigo + { + .ButtonColor(#8753de, #fff); + } + &.uwt-color-primary + { + .ButtonColor(#348fe2, #fff); + } + &.uwt-color-info + { + .ButtonColor(#49b6d6, #fff); + } + &.uwt-color-yellow + { + .ButtonColor(#ffd900, #2d353c); + } + &.uwt-color-warning + { + .ButtonColor(#f59c1a, #fff); + } + &.uwt-color-pink + { + .ButtonColor(#fb5597, #fff); + } + &.uwt-color-danger + { + .ButtonColor(#ff5b57, #fff); + } + &.uwt-color-success + { + .ButtonColor(#00acac, #fff); + } + &.uwt-color-green + { + .ButtonColor(#32a932, #fff); + } + &.uwt-color-lime + { + .ButtonColor(#90ca4b, #fff); + } + &.uwt-color-inverse + { + .ButtonColor(#2d353c, #fff); + } + &.uwt-color-none + { + .ButtonColor(transparent, inherit); + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-checkbox.less b/src/uwt-web/themes/avondale/uwt-checkbox.less new file mode 100644 index 0000000..ce36611 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-checkbox.less @@ -0,0 +1,20 @@ +div.uwt-checkbox +{ + background-color: #FFFFFF; + border: solid 1px var(--uwt-color-gray-400); + + &:hover, &.Hover, &.uwt-checked, &.uwt-indeterminate + { + border-color: @ThemeColor; + } + + &.uwt-checked, &.uwt-indeterminate + { + background-color: @ThemeColor; + color: #FFFFFF; + } + &:active + { + background-color: shade(@ThemeColor, 25%); + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-colors.less b/src/uwt-web/themes/avondale/uwt-colors.less new file mode 100644 index 0000000..704d66c --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-colors.less @@ -0,0 +1,58 @@ +@ThemeColor: #00acac; + +@ThemeColorSuccess: #00acac; +@ThemeColorDanger: #ff5b57; + +:root +{ + --uwt-color-default: #e9ecef; + --uwt-color-primary: #348fe2; + --uwt-color-secondary: #6c757d; + + --uwt-color-success-light: tint(@ThemeColorSuccess, 35%); + --uwt-color-success-dark: shade(@ThemeColorSuccess, 35%); + --uwt-color-success: @ThemeColorSuccess; + + --uwt-color-info: #49b6d6; + --uwt-color-warning: #f59c1a; + + --uwt-color-danger-light: tint(@ThemeColorDanger, 35%); + --uwt-color-danger-dark: shade(@ThemeColorDanger, 35%); + --uwt-color-danger: @ThemeColorDanger; + + --uwt-color-light: #f2f3f4; + --uwt-color-dark: #2d353c; + --uwt-color-inverse: #2d353c; + --uwt-color-blue: #348fe2; + --uwt-color-indigo: #8753de; + --uwt-color-purple: #727cb6; + --uwt-color-pink: #fb5597; + --uwt-color-red: #ff5b57; + --uwt-color-orange: #f59c1a; + --uwt-color-yellow: #ffd900; + --uwt-color-green: #32a932; + --uwt-color-teal: #00acac; + --uwt-color-lime: #90ca4b; + --uwt-color-cyan: #49b6d6; + --uwt-color-white: #FFFFFF; + --uwt-color-gray: #6c757d; + --uwt-color-gray-dark: #2d353c; + --uwt-color-muted: #adb5bd; + --uwt-color-black: #000000; + --uwt-color-silver: #b6c2c9; + --uwt-color-gray-100: #f8f9fa; + --uwt-color-gray-200: #e9ecef; + --uwt-color-gray-300: #dee2e6; + --uwt-color-gray-400: #ced4da; + --uwt-color-gray-500: #adb5bd; + --uwt-color-gray-600: #6c757d; + --uwt-color-gray-700: #495057; + --uwt-color-gray-800: #2d353c; + --uwt-color-gray-900: #20252a; + + --uwt-color-accent: @ThemeColor; + --uwt-control-text: var(--uwt-color-gray-900); + + --uwt-dropdown-menu-highlight-background: #eff1f3; + --uwt-dropdown-menu-highlight-foreground: var(--uwt-control-text); +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-countdown.less b/src/uwt-web/themes/avondale/uwt-countdown.less new file mode 100644 index 0000000..a9846c9 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-countdown.less @@ -0,0 +1,10 @@ +div.Countdown +{ + &> div.Segment + { + background-color: rgba(0, 0, 0, 0.5); + border: solid 1px @ThemeColor; + border-radius: 4px; + color: #FFFFFF; + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-footer.less b/src/uwt-web/themes/avondale/uwt-footer.less new file mode 100644 index 0000000..6f91af6 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-footer.less @@ -0,0 +1,9 @@ +body > div.uwt-footer, body > form > div.uwt-footer +{ + background-color: #242A30; + + color: #707478; + + box-shadow: 0px 100px 80px -80px rgba(0, 0, 0, 0.7) inset; + /* padding: 60px 16px; */ +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-formview.less b/src/uwt-web/themes/avondale/uwt-formview.less new file mode 100644 index 0000000..b513aaf --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-formview.less @@ -0,0 +1,16 @@ +div.FormView +{ + &> div.Field + { + &> label + { + color: @ThemeColorBlack; + text-align: right; + } + } + &> div.Field + { + /* fake margin-bottom for elements displayed as table-row */ + border-bottom: solid 16px transparent; + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-header.less b/src/uwt-web/themes/avondale/uwt-header.less new file mode 100644 index 0000000..e43d049 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-header.less @@ -0,0 +1,216 @@ +@UnfocusedSearchBarWidth: 220px; +@FocusedSearchBarWidth: 400px; + +body +{ + &> div.uwt-header, &> form > div.uwt-header + { + background-color: #fff; + &.uwt-color-inverse + { + background-color: #2d353c; + } + + &> div.uwt-header-item + { + position: relative; + input[type=text] + { + background-color: #f2f3f4; + border-color: #f2f3f4; + color: #2d353c; + + &::placeholder + { + color: rgba(255,255,255,.5); + } + } + + &.uwt-searchbar + { + &::before + { + content: "\f002"; + display: inline-block; + + font-family: "FontAwesome"; + font-size: 0.75rem; + font-weight: 900; + + position: absolute; + margin-left: -16px; + left: 28px; + top: 10px; + + pointer-events: none; + } + input + { + border-radius: 30px; + border: 1px solid #d5dbe0; + + width: @UnfocusedSearchBarWidth; + transition: width 0.2s; + + padding-left: 32px; + + &:focus + { + border-color: #f2f3f4; + width: @FocusedSearchBarWidth; + + /* Remove the focus indicator on mouse-focus for browsers + that do support :focus-visible */ + outline: none; + } + } + + div.uwt-textbox-popup + { + &> div.uwt-dropdown-content > ul.uwt-menu > li > a + { + &> span + { + display: block; + padding-top: 4px; + padding-bottom: 4px; + } + &> span.uwt-title + { + font-weight: bold; + } + &> span.uwt-subtitle, &> span.uwt-content + { + font-size: small; + } + } + + background-color: #fff; + } + } + } + + margin-bottom: 20px; + height: @HeaderHeight; + + &> div.uwt-logo + { + color: #FFFFFF; + + font-size: 24px; + padding: (@HeaderHeight / 4); + + width: 128px; + + a + { + text-decoration: none; + color: inherit; + } + + span.Primary + { + color: @ThemeColor; + } + } + + &> ul.uwt-menu + { + position: absolute; + right: 24px; + + &> li + { + &> a + { + text-transform: uppercase; + font-size: 12px; + font-weight: 600; + line-height: 20px; + padding: 26px 16px; + } + &.uwt-selected + { + &> a + { + background-color: #00ACAC; + color: #ffffff; + } + &::after + { + border-bottom: 16px solid @PageBackgroundColor; + border-left: 16px solid rgba(0, 0, 0, 0); + border-radius: 0; + border-right: 16px solid rgba(0, 0, 0, 0); + content: ""; + display: block; + height: 0px; + margin-left: auto; + margin-right: auto; + position: relative; + top: -16px; + width: 0px; + } + } + } + } + } +} +body.uwt-header-inverse +{ + &> div.uwt-header, &> form > div.uwt-header + { + background-color: #1a2229; + + &> div.uwt-header-item + { + &::before + { + color: #fff; + } + &.uwt-searchbar + { + input + { + border-color: transparent; + } + div.uwt-popup + { + background-color: #1a2229; + color: #fff; + + &> ul.uwt-menu + { + width: @FocusedSearchBarWidth; + &> li.uwt-menu-item + { + &> span.uwt-title, &> span.uwt-description + { + display: block; + } + &> span.uwt-description + { + color: var(--uwt-color-gray-500); + } + &:hover, &.uwt-highlight + { + background-color: rgba(255,255,255,0.2); + color: #fff; + } + } + } + } + } + input + { + background-color: rgba(255,255,255,.25); + color: #fff; + + &::placeholder + { + color: rgba(255,255,255,.5); + } + } + } + } +} diff --git a/src/uwt-web/themes/avondale/uwt-htmlheading.less b/src/uwt-web/themes/avondale/uwt-htmlheading.less new file mode 100644 index 0000000..9321465 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-htmlheading.less @@ -0,0 +1,9 @@ +h1, h2, h3, h4, h5, h6 +{ + // color: #242A30; // not sure why this is here, it should just inherit from the body right? + font-weight: 300; +} +h1 +{ + font-size: 36px; +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-linkbutton.less b/src/uwt-web/themes/avondale/uwt-linkbutton.less new file mode 100644 index 0000000..6ede5a2 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-linkbutton.less @@ -0,0 +1,10 @@ +a +{ + color: @ThemeColor; + text-decoration: none; + &:hover + { + color: darken(@ThemeColor, 15%); + text-decoration: underline; + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-listbox.less b/src/uwt-web/themes/avondale/uwt-listbox.less new file mode 100644 index 0000000..061fd1f --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-listbox.less @@ -0,0 +1,18 @@ +.uwt-listbox +{ + border: 1px solid #ced4da; +} +.uwt-listbox > li:hover +{ + background-color: rgba(233, 236, 239, 0.85); +} +.uwt-listbox > li.uwt-selected +{ + background-color: @ThemeColor; + color: #fff; +} +.uwt-listbox > li.uwt-selected > div.uwt-detail +{ + background-color: @ThemeColor; + color: #fff; +} diff --git a/src/uwt-web/themes/avondale/uwt-listview.less b/src/uwt-web/themes/avondale/uwt-listview.less new file mode 100644 index 0000000..3a0381b --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-listview.less @@ -0,0 +1,190 @@ +@TableBorderColor: #E2E7EB; +@TableGridLineColor: #F5F5F5; + +@TableRowHoverBackgroundColor: @TableGridLineColor; +@TableRowHoverForegroundColor: #000000; + +@TableRowSelectedBackgroundColor: #fff7cc; // darken(@ThemeColor, 5%); /* #E2E7E9; */ +@TableRowSelectedForegroundColor: #665700; // #FFFFFF; + +@TableRowSelectedHoverBackgroundColor: lighten(@TableRowSelectedBackgroundColor, 5%); +@TableRowSelectedHoverForegroundColor: @TableRowSelectedForegroundColor; + +div.uwt-listview > .uwt-content +{ + background-color: #FFFFFF; + border-collapse: collapse; + + border: solid 1px #ced4da; +} +.uwt-listview +{ + &:not(.uwt-gridlines) + { + &> thead, &> .uwt-content > .uwt-listview-column-headers + { + border-bottom: solid 2px; + border-bottom-color: @TableGridLineColor; + } + } + &> thead, &> .uwt-content > .uwt-listview-column-headers + { + //border-bottom: solid 2px; + //border-bottom-color: @TableGridLineColor; + &> tr + { + &> th + { + border-bottom: solid 2px @TableBorderColor; + color: #242A30; + font-weight: 600; + a + { + color: inherit; + display: block; + text-align: left; + &:hover + { + text-decoration: none; + } + } + &[colspan] + { + font-weight: normal; + background-color: tint(@ThemeColor, 75%); + a + { + text-align: center; + } + } + } + } + } + &> tbody, &> .uwt-content > .uwt-listview-items + { + &> tr:nth-of-type(2n+1), &> div:nth-of-type(2n+1) + { + background-color: #e9ecef; // #f2f4f5; + } + &> tr + { + border: solid 1px transparent; + &.uwt-selected + { + border-color: @ThemeColor; + &> td + { + background-color: fade(@ThemeColor, 25%); + } + } + } + &> div.uwt-listview-item + { + border-bottom: 1px solid rgb(206, 212, 218); + &.uwt-selected + { + // border-color: @ThemeColor; + &> td + { + background-color: fade(@ThemeColor, 25%); + } + } + } + } + + &> thead, &> tbody, &> .uwt-listview-section, &> .uwt-listview-contents + { + &> tr + { + &> th, &> td + { + border: solid 1px #cccccc; + } + &:hover > td + { + background-color: tint(@ThemeColor, 85%); + } + } + &> div + { + &:hover + { + // background-color: rgba(233,236,239,0.5); + background-color: tint(@ThemeColor, 85%); + } + } + } + + &> .uwt-content > .uwt-listview-column-headers > .uwt-listview-column-header > a, + &> .uwt-content > .uwt-listview-items > .uwt-listview-item > .uwt-listview-item-column + { + padding: 10px 15px; + } + &> .uwt-content > .uwt-listview-items > .uwt-listview-item + { + &.uwt-selected + { + background-color: @TableRowSelectedBackgroundColor; + color: @TableRowSelectedForegroundColor; + } + } + &.HasBorder + { + border-color: @TableBorderColor; + } + &.uwt-gridlines + { + &> .uwt-content, &> .uwt-content > .uwt-listview-column-headers + { + border: 1px solid rgba(0,0,0,0.2); + } + &> .uwt-content > .uwt-listview-column-headers > .uwt-listview-column-header + { + border: 1px solid @TableGridLineColor; + /* + &:not(:first-child) + { + border-left: 1px solid rgba(0,0,0,0.1); + } + &:not(:last-child) + { + border-right: 1px solid rgba(0,0,0,0.1); + } + */ + font-weight: bold; + } + &> .uwt-content > .uwt-listview-items > .uwt-listview-item > .uwt-listview-item-column + { + border: 1px solid rgba(0,0,0,0.05); + } + &> .uwt-content > .uwt-listview-items > .uwt-listview-item + { + border-bottom: none; + } + } + &.uwt-hottracking + { + &> .uwt-content > .uwt-listview-items + { + &> div.uwt-listview-item:hover + { + /* + background-color: @TableRowHoverBackgroundColor; + color: @TableRowHoverForegroundColor; + */ + // background-color: tint(@ThemeColor, 75%); + background-color: rgba(233,236,239,0.5); + &.uwt-selected + { + background-color: @TableRowSelectedHoverBackgroundColor; + color: @TableRowSelectedHoverForegroundColor; + } + } + } + } +} + +tr.uwt-color-danger > td +{ + background-color: var(--uwt-color-danger-light); +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-mainpage.less b/src/uwt-web/themes/avondale/uwt-mainpage.less new file mode 100644 index 0000000..976d98f --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-mainpage.less @@ -0,0 +1,5 @@ +body.MainPage h1 +{ + font-size: 64px; + font-weight: 600; +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-megamenu.less b/src/uwt-web/themes/avondale/uwt-megamenu.less new file mode 100644 index 0000000..9dc7e20 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-megamenu.less @@ -0,0 +1,15 @@ +div.uwt-menu-large +{ + background-color: #ffffff; +} +body.uwt-header-inverse +{ + &> form > div.uwt-header, &> div.uwt-header + { + div.uwt-menu-large + { + background-color: #1a2229; + color: #A8ACB1; + } + } +} diff --git a/src/uwt-web/themes/avondale/uwt-menu.less b/src/uwt-web/themes/avondale/uwt-menu.less new file mode 100644 index 0000000..e81a23b --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-menu.less @@ -0,0 +1,112 @@ +ul.uwt-menu +{ + padding: 0.5rem 0rem; + margin: 0px; + + &.Popup + { + background: #FFFFFF; + border: solid 1px @ThemeColor; + border-top: none; + box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); + } + + &> li:not(.uwt-section) + { + &:not(.uwt-selected) > a:not(:hover) + { + &> span.uwt-description + { + color: #666666; + } + } + + &> a + { + /* + font-size: 12px; + font-weight: 600; + */ + font-size: 12pt; + // font-weight: 300; + + padding: 0.309375rem 0.9375rem; + } + &:not(.uwt-disabled) > a + { + &:hover + { + text-decoration: none; + } + } + + &.uwt-disabled > a + { + color: #666; + pointer-events: none; + cursor: not; + } + + &.Header + { + color: #6D7983; + font-size: 11px; + line-height: 20px; + margin: 0; + padding: 10px 20px; + } + &.HasChildren > a + { + &::after + { + content: ""; + font-family: "FontAwesome"; + + position: absolute; + + padding: 8px; + } + } + } + + &.uwt-orientation-vertical + { + &> li + { + display: block; + &.HasChildren + { + &> a + { + &::after + { + right: 0px; + top: 0px; + } + } + } + } + } + &.uwt-orientation-horizontal + { + display: inline-block; + &> li + { + display: inline-block; + &> a + { + color: #8F8E8E; + display: block; + + text-decoration: none; + transition: color linear 0.3s, background-color linear 0.3s; + + &:hover + { + background: none; + color: @ThemeColor; + } + } + } + } +} diff --git a/src/uwt-web/themes/avondale/uwt-page.less b/src/uwt-web/themes/avondale/uwt-page.less new file mode 100644 index 0000000..be934b5 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-page.less @@ -0,0 +1,16 @@ +div.uwt-page-header, div.uwt-page > div.uwt-header, +div.uwt-page-footer, div.uwt-page > div.uwt-footer +{ + border-top: 1px solid #d5dbe0; + background: #ffffff; + padding: 16px; + &.uwt-color-inverse + { + background: #2d353c; + } +} + +body:not(.uwt-hide-header) > div.uwt-page, body:not(.uwt-hide-header) > form > div.uwt-page +{ + margin-top: 64px; +} diff --git a/src/uwt-web/themes/avondale/uwt-panel.less b/src/uwt-web/themes/avondale/uwt-panel.less new file mode 100644 index 0000000..6b51541 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-panel.less @@ -0,0 +1,61 @@ +div.Panel +{ + background-color: #FFFFFF; + border-radius: 3px; + + &> div.Header, &> div.Content, &> div.Footer + { + padding: 10px 15px; + } + &> div.Header + { + background-color: #DDDDDD; + + border-top-left-radius: 3px; + border-top-right-radius: 3px; + + color: #333333; + + font-size: 12px; + font-weight: 500; + + line-height: 20px; + } + &> div.Footer + { + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; + } + + &.Danger > div.Header + { + background-color: #CC4946; + } + &.Info > div.Header + { + background-color: #3A92AB; + } + &.Inverse > div.Header + { + background-color: #242A30; + } + &.Primary > div.Header + { + background-color: #2A72B5; + } + &.Success > div.Header + { + background-color: #008A8A; + } + &.Warning > div.Header + { + background-color: #C47D15; + } + &.Danger, &.Info, &.Inverse, &.Primary, &.Success, &.Warning + { + &> div.Header + { + color: #FFFFFF; + } + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-popup.less b/src/uwt-web/themes/avondale/uwt-popup.less new file mode 100644 index 0000000..d6d2954 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-popup.less @@ -0,0 +1,5 @@ +.uwt-popup +{ + background-color: #ffffff; + box-shadow: 4px 4px 10px rgba(0,0,0,0.5); +} diff --git a/src/uwt-web/themes/avondale/uwt-richtextbox.less b/src/uwt-web/themes/avondale/uwt-richtextbox.less new file mode 100644 index 0000000..0063e8d --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-richtextbox.less @@ -0,0 +1,10 @@ +div.ck-editor +{ + &:hover + { + &> div.ck-content + { + border-color: var(--uwt-color-accent); + } + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-rotaryswitch.less b/src/uwt-web/themes/avondale/uwt-rotaryswitch.less new file mode 100644 index 0000000..b175699 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-rotaryswitch.less @@ -0,0 +1,7 @@ +div.uwt-rotaryswitch +{ + &> div.uwt-rotaryswitch-indicator + { + background-color: var(--uwt-color-accent); + } +} diff --git a/src/uwt-web/themes/avondale/uwt-sidebar.less b/src/uwt-web/themes/avondale/uwt-sidebar.less new file mode 100644 index 0000000..ab4977d --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-sidebar.less @@ -0,0 +1,115 @@ +body > div.uwt-sidebar, body > form > div.uwt-sidebar +{ + background: #2D353C; + + div.UserInfo + { + background-color: #1A2229; + padding: 20px; + + &> div.Icon + { + display: table-cell; + width: 56px; + } + &> div.Text + { + display: table-cell; + font-size: 14px; + + &> span.UserName, span.StatusText + { + display: block; + } + &> span.UserName + { + color: #FFFFFF; + } + &> span.StatusText + { + color: #889097; + font-size: 85%; + } + } + } + + ul.uwt-menu > li + { + &.uwt-section > a + { + color: #707478; + font-size: 85%; + letter-spacing: 2px; + text-transform: uppercase; + padding-top: 16px; + padding-bottom: 16px; + } + &> a + { + display: block; + line-height: 20px; + text-decoration: none; + &> i.fa + { + float: left; + font-size: 14px; + line-height: 20px; + margin-right: 16px; + text-align: center; + width: 14px; + } + } + &> ul.uwt-menu + { + background-color: #1A2229; + height: 0px; + transition: height linear 0.3s; + overflow: hidden; + padding: 0px; + &> li + { + &> a + { + color: #889097; + font-weight: 300; + padding: 5px 20px; + &:hover + { + color: #FFFFFF; + text-decoration: none; + } + } + } + } + &.uwt-opened > ul.uwt-menu + { + height: auto; + padding: 10px 0px 10px 30px; + } + } + + /* first child styles only */ + &> ul.uwt-menu > li + { + &.uwt-opened > a, > a:hover + { + background-color: #232A2F; + text-decoration: none; + } + &> a + { + padding: 8px 20px; + + color: #A8ACB1; + } + &.uwt-selected > a + { + background-color: @ThemeColor; + color: #FFFFFF + } + } + &> ul.uwt-menu > li.uwt-section > a + { + background-color: transparent; + } +} diff --git a/src/uwt-web/themes/avondale/uwt-slider.less b/src/uwt-web/themes/avondale/uwt-slider.less new file mode 100644 index 0000000..4399113 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-slider.less @@ -0,0 +1,27 @@ +div.uwt-slider +{ + &.uwt-color-primary > div.uwt-slider-bar > div.uwt-slider-selection + { + background-color: #348fe2; + } + &.uwt-color-danger > div.uwt-slider-bar > div.uwt-slider-selection + { + background-color: #ff5b57; + } + &.uwt-color-teal > div.uwt-slider-bar > div.uwt-slider-selection + { + background-color: #00acac; + } + &.uwt-color-purple > div.uwt-slider-bar > div.uwt-slider-selection + { + background-color: #727cb6; + } + &.uwt-color-orange > div.uwt-slider-bar > div.uwt-slider-selection + { + background-color: #f59c1a; + } + &.uwt-color-black > div.uwt-slider-bar > div.uwt-slider-selection + { + background-color: #2d353c; + } +} diff --git a/src/uwt-web/themes/avondale/uwt-spinner.less b/src/uwt-web/themes/avondale/uwt-spinner.less new file mode 100644 index 0000000..c59a355 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-spinner.less @@ -0,0 +1,11 @@ +div.uwt-spinner +{ + border-color: #24b498 #ffffff #ffffff; + border-image: none; + border-radius: 100%; + border-right: solid 2px #ffffff; + border-style: solid; + border-width: 2px; + height: 40px; + width: 40px; +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-tabcontainer.less b/src/uwt-web/themes/avondale/uwt-tabcontainer.less new file mode 100644 index 0000000..a2c88c2 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-tabcontainer.less @@ -0,0 +1,37 @@ +div.uwt-tabcontainer +{ + &> ul.uwt-tabcontainer-tabs + { + background-color: #C1CCD1; + &> li + { + &> a + { + color: #6E7179; + // font-size: 12px; + padding: 10px 16px; + + &:hover + { + background-color: #FAFAFA; + color: #333333; + } + } + + &.uwt-selected > a + { + background-color: #FFFFFF; + color: #242A30; + } + } + } + + &> div.uwt-tabcontainer-tabpages + { + background-color: #FFFFFF; + &> div.uwt-tabpage + { + padding: 16px; + } + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-textbox.less b/src/uwt-web/themes/avondale/uwt-textbox.less new file mode 100644 index 0000000..1bc9b37 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-textbox.less @@ -0,0 +1,42 @@ +.TextBoxBase() +{ + border: solid 1px var(--uwt-color-gray-400); + border-radius: 3px; + box-shadow: none; + + font: inherit; + font-size: 12px; + + &:not([disabled]) + { + &:hover, &:focus + { + border-color: @ThemeColor; + } + } + &:focus + { + box-shadow: 0px 0px 4px #00ACAC; + } + &::placeholder + { + color: #6c757d; + opacity: 1; + } + + // .UwtColors(); +} +input[type=text], input[type=password], input[type=number], input[type=search], textarea +{ + .TextBoxBase(); + + line-height: 1.42857; + padding: 6px 12px; + transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s; +} +div.uwt-richtextbox +{ + border: 1px solid var(--uwt-color-gray-400); + height: 100px; + background-color: var(--uwt-color-gray-200); +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-tile.less b/src/uwt-web/themes/avondale/uwt-tile.less new file mode 100644 index 0000000..01213e0 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-tile.less @@ -0,0 +1,24 @@ + +div.uwt-tile +{ + &> div.uwt-footer + { + &> a + { + display: block; + background-color: rgba(0,0,0,.4); + margin: none; + + &:hover + { + background-color: rgba(0,0,0,.6); + } + } + } + + &.uwt-color-alizarin, &.uwt-color-danger, &.uwt-color-red + { + background-color: #ff5b57; + color: #fff; + } +} diff --git a/src/uwt-web/themes/avondale/uwt-toggle.less b/src/uwt-web/themes/avondale/uwt-toggle.less new file mode 100644 index 0000000..4a37f15 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-toggle.less @@ -0,0 +1,107 @@ +@ToggleSwitchAnimationLength: 150ms; /* 250ms; */ +@ToggleSwitchSize: 50px; +@ToggleSwitchThumbSize: 30px; + +.ToggleSwitchColors(@color) +{ + &.Checked + { + background-color: @color; + border-color: @color; + box-shadow: 0 0 0 16px @color inset; + } +} + +div.ToggleSwitch +{ + position: relative; + width: @ToggleSwitchSize; + + &[disabled] + { + opacity: 0.5; + } + + .ToggleSwitchColors(@ThemeColor); + &.Primary + { + .ToggleSwitchColors(@ThemeColorPrimary); + } + &.Success + { + .ToggleSwitchColors(@ThemeColorSuccess); + } + &.Danger + { + .ToggleSwitchColors(@ThemeColorDanger); + } + &.Info + { + .ToggleSwitchColors(@ThemeColorInfo); + } + &.Warning + { + .ToggleSwitchColors(@ThemeColorWarning); + } + &.Red + { + .ToggleSwitchColors(@ThemeColorRed); + } + &.Blue + { + .ToggleSwitchColors(@ThemeColorBlue); + } + &.Purple + { + .ToggleSwitchColors(@ThemeColorPurple); + } + &.Orange + { + .ToggleSwitchColors(@ThemeColorOrange); + } + &.Black + { + .ToggleSwitchColors(@ThemeColorBlack); + } + + &.Checked + { + &> div.ToggleSwitchInner > div.ToggleThumb + { + margin-left: (@ToggleSwitchSize - @ToggleSwitchThumbSize); + } + } + &:not(.Checked) + { + background-color: #FFFFFF; + border-color: #DFDFDF; + box-shadow: 0 0 0 0 #DFDFDF inset; + &> div.ToggleSwitchInner > div.ToggleThumb + { + margin-left: 0px; + } + } + &> div.ToggleSwitchInner > div.ToggleThumb + { + transition: margin-left @ToggleSwitchAnimationLength ease-in 0s; + } + + transition: border 0.5s ease 0s, box-shadow 0.5s ease 0s, background-color 1.5s ease 0s; + + border-radius: 20px; + cursor: pointer; + height: 30px; + + div.ToggleOn, div.ToggleOff + { + display: none; + } + div.ToggleThumb + { + background: none repeat scroll 0 0 #FFFFFF; + border-radius: 100%; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4); + height: @ToggleSwitchThumbSize; + width: @ToggleSwitchThumbSize; + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-toolbar.less b/src/uwt-web/themes/avondale/uwt-toolbar.less new file mode 100644 index 0000000..ea0cf8b --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-toolbar.less @@ -0,0 +1,29 @@ +div.uwt-toolbar +{ + &> a + { + margin: 0px !important; + &.uwt-button + { + border: 1px solid transparent; + color: var(--uwt-color-gray-600); + &:hover + { + background-color: tint(@ThemeColor, 75%); + border: 1px solid @ThemeColor; + color: var(--uwt-color-black); + } + &.uwt-selected + { + background-color: tint(@ThemeColor, 50%); + border: 1px solid @ThemeColor; + color: var(--uwt-color-black); + &:hover + { + background-color: tint(@ThemeColor, 30%); + border: 1px solid @ThemeColor; + } + } + } + } +} diff --git a/src/uwt-web/themes/avondale/uwt-trackbar.less b/src/uwt-web/themes/avondale/uwt-trackbar.less new file mode 100644 index 0000000..321c2db --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-trackbar.less @@ -0,0 +1,130 @@ +@ThumbSize: 30px; +@TrackSize: 8px; +@ThumbOffset: ((@ThumbSize - @TrackSize) / 2); + +div.uwt-trackbar +{ + margin-bottom: 10px; + padding: 16px 30px; + + &> div.uwt-trackbar-track + { + background-color: #A9ACB1; + border-radius: 16px; + + &> div.uwt-trackbar-track-quantity + { + background-color: #017AFD; + border-radius: 15px; + } + &> div.uwt-trackbar-track-thumb + { + background-color: #FFFFFF; + border-radius: 100%; + box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.4); + cursor: move; + height: @ThumbSize; + width: @ThumbSize; + } + } + + &.uwt-orientation-horizontal + { + &> div.uwt-trackbar-track + { + height: @TrackSize; + &> div.uwt-trackbar-track-uantity + { + /* transition: width linear 0.1s; */ + } + &> div.uwt-trackbar-track-thumb + { + top: -@ThumbOffset; + /* transition: left linear 0.1s; */ + } + } + } + &.uwt-orientation-vertical + { + &> div.uwt-trackbar-track + { + width: @TrackSize; + &> div.uwt-trackbar-track-quantity + { + /* transition: height linear 0.1s; */ + } + &> div.uwt-trackbar-track-thumb + { + left: -@ThumbOffset; + /* transition: top linear 0.1s; */ + } + } + } + + &> div.uwt-trackbar-track + { + &> div.uwt-trackbar-track-quantity + { + background-color: @ThemeColor; + } + &> div.uwt-trackbar-track-thumb + { + color: @ThemeColor; + } + } + &.uwt-color-red > div.uwt-trackbar-track + { + &> div.uwt-trackbar-track-quantity + { + background-color: @ThemeColorRed; + } + &> div.uwt-trackbar-track-thumb + { + color: @ThemeColorRed; + } + } + &.uwt-color-blue > div.uwt-trackbar-track + { + &> div.uwt-trackbar-track-quantity + { + background-color: @ThemeColorBlue; + } + &> div.uwt-trackbar-track-thumb + { + color: @ThemeColorBlue; + } + } + &.uwt-color-purple > div.uwt-trackbar-track + { + &> div.uwt-trackbar-track-quantity + { + background-color: @ThemeColorPurple; + } + &> div.uwt-trackbar-track-thumb + { + color: @ThemeColorPurple; + } + } + &.uwt-color-orange > div.uwt-trackbar-track + { + &> div.uwt-trackbar-track-quantity + { + background-color: @ThemeColorOrange; + } + &> div.uwt-trackbar-track-thumb + { + color: @ThemeColorOrange; + } + } + &.uwt-color-black > div.uwt-trackbar-track + { + &> div.uwt-trackbar-track-quantity + { + background-color: @ThemeColorBlack; + } + &> div.uwt-trackbar-track-thumb + { + color: @ThemeColorBlack; + } + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-window.less b/src/uwt-web/themes/avondale/uwt-window.less new file mode 100644 index 0000000..4be7596 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-window.less @@ -0,0 +1,35 @@ +div.uwt-window +{ + background-color: #FFFFFF; + + &> div.uwt-header, &> div.uwt-content, &> div.uwt-footer + { + padding: 16px; + } + &> div.uwt-header + { + border-bottom: solid 1px #E2E7EB; + color: #242A30; + font-size: 18px; + font-weight: 500; + } + &> div.uwt-footer + { + border-top: solid 1px #E2E7EB; + } + &> div.uwt-content + { + &> div.uwt-loading + { + background-color: rgba(255, 255, 255, 0.8); + } + } + + transition: visibility linear 0.3s, opacity linear 0.3s, transform linear 0.3s; + transform-origin: center center; + transform: scale(0.0) scaleX(-2.0); + &.uwt-visible + { + transform: scale(1.0) scaleX(1.0); + } +} \ No newline at end of file diff --git a/src/uwt-web/themes/avondale/uwt-wizard.less b/src/uwt-web/themes/avondale/uwt-wizard.less new file mode 100644 index 0000000..b9e50a5 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt-wizard.less @@ -0,0 +1,96 @@ +div.uwt-wizard +{ + background-color: #fff; + ol + { + background-color: #F0F3F4; + li + { + cursor: pointer; + font-size: 14px; + line-height: 20px; + padding: 16px; + + span.uwt-title, span.uwt-description + { + display: block; + margin-left: 30px; + } + span.uwt-title + { + color: #333333; + } + span.uwt-description + { + color: #999999; + font-size: 85%; + } + span.uwt-wizard-page-number + { + background-color: #6D7479; + color: #FFFFFF; + + border-radius: 50%; + float: left; + height: 20px; + line-height: 20px; + margin-right: 10px; + padding: 0; + text-align: center; + top: 0; + width: 20px; + + font-size: 75%; + font-weight: 600; + } + + &:hover + { + background-color: #D3DADF; + } + &.uwt-selected + { + background-color: @ThemeColor; + cursor: default; + + span.uwt-title + { + color: #FFFFFF; + } + span.uwt-description + { + color: rgba(255, 255, 255, 0.6); + } + } + } + } + div.uwt-wizard-pages + { + margin: 10px 0px -10px; + padding: 16px; + /* + div.uwt-wizard-page + { + border: solid 1px #E3E3E3; + border-radius: 4px; + min-height: 20px; + } + */ + } + &> div.uwt-footer + { + background-color: #f2f3f4; + padding: 25px 30px; + } + + &.uwt-color-inverse + { + ol + { + background-color: #2d353c; + li + { + } + } + } +} diff --git a/src/uwt-web/themes/avondale/uwt.less b/src/uwt-web/themes/avondale/uwt.less new file mode 100644 index 0000000..dcf9969 --- /dev/null +++ b/src/uwt-web/themes/avondale/uwt.less @@ -0,0 +1,124 @@ +/* +@import "Fonts/SourceSansPro/SourceSansPro.css"; + +@import "../common/styles/uwt.less"; + +@import "uwt-branding.less"; +@import "uwt-colors.less"; + +@import "uwt-actionpreviewbutton.less"; +@import "uwt-alert.less"; +@import "uwt-applicationmenu.less"; +@import "uwt-badge.less"; +@import "uwt-binaryswitch.less"; +@import "uwt-blockquote.less"; +@import "uwt-button.less"; +@import "uwt-checkbox.less"; +@import "uwt-countdown.less"; +@import "uwt-footer.less"; +@import "uwt-formview.less"; +@import "uwt-header.less"; +@import "uwt-htmlheading.less"; +@import "uwt-linkbutton.less"; +@import "uwt-listbox.less"; +@import "uwt-listview.less"; +@import "uwt-mainpage.less"; +@import "uwt-megamenu.less"; +@import "uwt-menu.less"; +@import "uwt-page.less"; +@import "uwt-panel.less"; +@import "uwt-popup.less"; +@import "uwt-richtextbox.less"; +@import "uwt-rotaryswitch.less"; +@import "uwt-sidebar.less"; +@import "uwt-slider.less"; +@import "uwt-spinner.less"; +@import "uwt-tabcontainer.less"; +@import "uwt-textbox.less"; +@import "uwt-tile.less"; +@import "uwt-toolbar.less"; +@import "uwt-toggle.less"; +@import "uwt-trackbar.less"; +@import "uwt-window.less"; +@import "uwt-wizard.less"; + +@import "mobile/uwt.less"; +*/ + +body +{ + background-color: @PageBackgroundColor; + color: #333; + font-family: "Source Sans Pro", "Source Sans 3", "Segoe UI", "Droid Sans", "Tahoma", "Arial", sans-serif; + /* font-size: 14px; */ + font-size: 16px; + + margin: 0px; + + &.Loading + { + background: @PageBackgroundColor !important; + } + + overflow: auto; +} +body > div.Content +{ + padding: 24px; +} + +::selection +{ + background-color: @ThemeColor; + color: #FFFFFF; +} +::-moz-selection +{ + background-color: @ThemeColor; + color: #FFFFFF; +} + +@ThemeColor: #00acac; + +@ThemeColorPrimaryLight: #cce3f8; +@ThemeColorPrimary: #348fe2; + +@ThemeColorInfoLight: #d2edf5; +@ThemeColorInfo: #49b6d6; + +@ThemeColorPurpleLight: #dcdeed; +@ThemeColorPurple: #727cb6; + +@ThemeColorIndigoLight: #e1d4f7; +@ThemeColorIndigo: #8753de; + +@ThemeColorSuccessLight: #bfeaea; +@ThemeColorSuccess: #00acac; + +@ThemeColorGreenLight: #cceacc; +@ThemeColorGreen: #32a932; + +@ThemeColorLimeLight: #e3f2d2; +@ThemeColorLime: #90ca4b; + +@ThemeColorWarningLight: #fde6c6; +@ThemeColorWarning: #f59c1a; + +@ThemeColorYellowLight: #fff6bf; +@ThemeColorYellow: #ffd900; + +@ThemeColorDangerLight: #ffd6d5; +@ThemeColorDanger: #ff5b57; + +@ThemeColorPinkLight: #fed5e5; +@ThemeColorPink: #fb5597; + + +//body.uwt-postback +//{ +input.uwt-failed-validation +{ + border: solid 1px var(--uwt-color-danger) !important; + box-shadow: 0px 0px 4px var(--uwt-color-danger) !important; +} +//}