enrecipes/app/app.scss

688 lines
11 KiB
SCSS
Raw Normal View History

2020-09-15 11:10:16 +00:00
// NativeScript core theme
// @see https://docs.nativescript.org/ui/theme
@import "~@nativescript/theme/core"; // Override variables here
2020-11-10 18:28:48 +00:00
$gray1: #f1f3f5;
$gray2: #e9ecef;
$gray3: #dee2e6;
$gray4: #ced4da;
2020-11-23 09:49:58 +00:00
$gray5: #adb5bd;
2020-11-10 18:28:48 +00:00
$gray6: #868e96;
$gray7: #495057;
$gray8: #343a40;
$gray9: #212529;
$orange: #ff5200;
2020-11-10 18:28:48 +00:00
$fabRipple: #ff864d;
$red: #c92a2a;
$breakfast: #ffb180;
$lunch: #ceff80;
$dinner: #80ceff;
$snacks: #b180ff; // Global SCSS styling
2020-09-15 11:10:16 +00:00
// @see https://docs.nativescript.org/ui/styling
.ns-modal,
Page {
font-family: 'Orkney-Regular';
2020-09-15 11:10:16 +00:00
}
.orkm {
font-family: 'Orkney-Medium';
2020-09-15 11:10:16 +00:00
}
.bx {
font-family: 'boxicons';
2020-10-14 19:32:32 +00:00
font-size: 24;
2020-11-02 11:36:53 +00:00
vertical-alignment: center;
&.small {
padding: 0;
font-size: 16;
}
2020-10-14 19:32:32 +00:00
}
.ns-light {
ActionBar,
ListPicker,
Page,
2020-10-21 17:54:45 +00:00
SearchBar,
2020-11-28 19:21:57 +00:00
TabStripItem,
Tabs {
2020-11-10 18:28:48 +00:00
color: $gray9;
background: $gray1;
2020-10-14 19:32:32 +00:00
}
MDButton,
MDRipple {
2020-11-10 18:28:48 +00:00
ripple-color: rgba($gray6, 0.2);
}
2020-10-14 19:32:32 +00:00
.hr {
2020-11-10 18:28:48 +00:00
border-color: $gray3;
2020-10-14 19:32:32 +00:00
}
.fieldLabel,
.sd {
2020-11-10 18:28:48 +00:00
background: $gray1;
2020-10-14 19:32:32 +00:00
}
2020-11-02 11:36:53 +00:00
.overviewItem,
.recipeItem,
.textCard,
.urlCard {
background: white;
}
2020-11-28 19:21:57 +00:00
TextField.combinationToken {
background: $gray3;
}
2020-10-14 19:32:32 +00:00
.sd-group-header,
.sd-item,
2020-11-02 11:36:53 +00:00
.time .bx {
2020-11-10 18:28:48 +00:00
color: $gray8;
2020-10-14 19:32:32 +00:00
}
2020-11-10 18:28:48 +00:00
.option .bx,
.option .info {
color: $gray7;
2020-10-14 19:32:32 +00:00
}
2020-11-02 11:36:53 +00:00
.imageHolder {
2020-11-10 18:28:48 +00:00
color: $gray4;
background: $gray3;
2020-10-14 19:32:32 +00:00
}
.count,
.marker {
2020-11-10 18:28:48 +00:00
color: $gray1;
background: $gray9;
2020-10-14 19:32:32 +00:00
}
.dayContainer,
.instruction {
2020-11-10 18:28:48 +00:00
border-color: $gray9;
}
MDProgress {
progress-background-color: $gray4;
}
MDFloatingActionButton {
color: white;
2020-11-02 11:36:53 +00:00
}
2020-11-12 12:06:17 +00:00
.appIconContainer {
background: $orange;
}
2020-10-14 19:32:32 +00:00
}
.ns-dark {
ActionBar,
ListPicker,
Page,
2020-10-21 17:54:45 +00:00
SearchBar,
2020-11-28 19:21:57 +00:00
TabStripItem,
Tabs {
2020-11-10 18:28:48 +00:00
color: $gray1;
background: $gray9;
2020-10-14 19:32:32 +00:00
}
2020-11-28 19:21:57 +00:00
// TabView {
// tab-background-color: $gray9;
// selected-tab-text-color: $gray1;
// }
MDButton,
MDRipple {
2020-11-10 18:28:48 +00:00
ripple-color: rgba($gray4, 0.1);
2020-10-14 19:32:32 +00:00
}
.hr {
border-color: #111;
}
.fieldLabel,
.sd {
2020-11-10 18:28:48 +00:00
background: $gray9;
2020-10-14 19:32:32 +00:00
}
2020-11-02 11:36:53 +00:00
.overviewItem,
2020-11-15 21:13:06 +00:00
.recipeItem,
.textCard,
.urlCard,
2020-11-15 21:13:06 +00:00
TextField.combinationToken {
2020-11-10 18:28:48 +00:00
background: $gray8;
2020-10-14 19:32:32 +00:00
}
.sd-group-header,
.sd-item,
2020-11-02 11:36:53 +00:00
.time .bx {
2020-11-10 18:28:48 +00:00
color: $gray3;
2020-11-02 11:36:53 +00:00
}
2020-11-10 18:28:48 +00:00
.option .bx,
.option .info {
color: $gray5;
2020-10-14 19:32:32 +00:00
}
2020-11-02 11:36:53 +00:00
.imageHolder {
2020-11-10 18:28:48 +00:00
color: $gray8;
2020-10-22 18:36:50 +00:00
background: #111;
2020-10-14 19:32:32 +00:00
}
.count,
.marker {
2020-11-10 18:28:48 +00:00
color: $gray9;
background: $gray1;
2020-10-14 19:32:32 +00:00
}
.dayContainer,
.instruction {
2020-11-10 18:28:48 +00:00
border-color: $gray1;
}
MDProgress {
progress-background-color: $gray6;
}
MDFloatingActionButton {
color: $gray9;
2020-10-14 19:32:32 +00:00
}
2020-11-12 12:06:17 +00:00
.appIconContainer {
background: $orange;
}
2020-10-14 19:32:32 +00:00
}
2020-11-02 11:36:53 +00:00
// -----------------------------
2020-10-14 19:32:32 +00:00
// Elements
TextField,
TextView,
TimePickerField {
2020-10-21 17:54:45 +00:00
width: 100%;
2020-10-14 19:32:32 +00:00
border-width: 1;
2020-10-21 17:54:45 +00:00
font-size: 14;
padding: 14 14 13;
margin: 8 0 0;
2020-10-14 19:32:32 +00:00
border-radius: 4;
2020-11-10 18:28:48 +00:00
border-color: $gray6;
placeholder-color: $gray6;
2020-10-14 19:32:32 +00:00
}
TextView {
line-height: 12;
}
ListPicker {
width: 25%;
}
2020-11-10 18:28:48 +00:00
SearchBar {
font-family: 'Orkney-Regular';
2020-11-10 18:28:48 +00:00
font-size: 16;
text-field-hint-color: $gray6;
}
2020-10-22 18:36:50 +00:00
TabView {
2020-11-10 18:28:48 +00:00
tab-text-color: $gray6;
2020-10-22 18:36:50 +00:00
}
2020-10-14 19:32:32 +00:00
.inputField {
2020-11-28 19:21:57 +00:00
margin-bottom: 4;
2020-10-14 19:32:32 +00:00
}
.fieldLabel {
2020-11-02 11:36:53 +00:00
font-size: 12;
2020-11-10 18:28:48 +00:00
margin-left: 12;
padding: 0 4;
2020-10-14 19:32:32 +00:00
}
2020-11-10 18:28:48 +00:00
.progressContainer {
2020-11-06 09:07:41 +00:00
width: 100%;
}
.category,
.group-header,
.text-btn,
2020-11-10 18:28:48 +00:00
MDActivityIndicator {
color: $orange;
}
2020-11-10 18:28:48 +00:00
MDProgress {
progress-color: $orange;
}
2020-11-02 11:36:53 +00:00
// -----------------------------
2020-10-14 19:32:32 +00:00
// ActionBar
ActionBar {
margin: 0;
2020-11-28 19:21:57 +00:00
padding: 6 8;
// height: 64;
2020-11-10 18:28:48 +00:00
GridLayout {
padding: 0;
margin: 0;
}
MDButton.bx {
padding: 0;
2020-10-14 19:32:32 +00:00
margin: 0;
2020-11-28 19:21:57 +00:00
&.flip {
transform: scaleX(-1);
}
2020-11-02 11:36:53 +00:00
}
.title {
2020-11-10 18:28:48 +00:00
padding-left: 12;
2020-11-02 11:36:53 +00:00
text-align: left;
font-size: 18;
2020-10-14 19:32:32 +00:00
}
}
2020-11-02 11:36:53 +00:00
// -----------------------------
2020-10-14 19:32:32 +00:00
// Side Drawer
.sd {
padding: 8;
}
2020-10-14 19:32:32 +00:00
.sd-item {
border-radius: 4;
2020-10-21 17:54:45 +00:00
height: 48;
vertical-alignment: center;
2020-11-02 11:36:53 +00:00
.bx {
font-size: 24;
}
&.selected-sd-item {
color: $orange;
2020-11-10 18:28:48 +00:00
background: rgba($orange, 0.1);
MDRipple {
ripple-color: transparent;
}
}
2020-10-21 17:54:45 +00:00
// prettier-ignore
2020-11-02 11:36:53 +00:00
Label {
2020-11-23 09:49:58 +00:00
padding: 2 16 0 0;
2020-11-02 11:36:53 +00:00
font-size: 16;
2020-10-21 17:54:45 +00:00
vertical-alignment: center;
&.bx {
2020-11-10 18:28:48 +00:00
padding: 0 0 0 16;
}
}
MDRipple {
padding: 0 16;
2020-10-21 17:54:45 +00:00
}
MDButton.bx {
margin: 0;
}
2020-10-14 19:32:32 +00:00
}
.sd-group-header {
2020-10-21 17:54:45 +00:00
width: 100%;
padding: 0 0 8 8;
2020-11-10 18:28:48 +00:00
}
MDRipple {
border-radius: 4;
}
MDButton {
padding: 8;
min-width: 0;
min-height: 0;
&.bx {
padding: 0;
width: 48;
height: 48;
margin: 0 8 0 0;
border-radius: 99;
}
2020-10-14 19:32:32 +00:00
}
2020-11-02 11:36:53 +00:00
// -----------------------------
// HOME
2020-11-10 18:28:48 +00:00
.emptyStateContainer {
width: 100%;
height: 100%;
}
2020-11-10 18:28:48 +00:00
.emptyState {
line-height: 8;
padding: 0 32;
text-align: center;
2020-11-02 11:36:53 +00:00
font-size: 16;
horizontal-alignment: center;
2020-11-02 11:36:53 +00:00
.icon {
font-size: 64;
text-align: center;
2020-11-10 18:28:48 +00:00
color: $gray5;
margin-bottom: 16;
}
2020-11-06 09:07:41 +00:00
.logo {
width: 64;
margin-bottom: 16;
}
2020-11-02 11:36:53 +00:00
.title {
font-size: 20;
text-align: center;
padding: 0;
margin: 0 0 8;
2020-11-02 11:36:53 +00:00
horizontal-alignment: center;
.bx {
font-size: 24;
vertical-alignment: center;
}
}
}
2020-11-02 11:36:53 +00:00
// -----------------------------
// Recipe Items
RadListView {
margin: 0 0 128;
font-size: 16;
}
.recipeItem {
margin: 8 16;
2020-11-06 09:07:41 +00:00
border-radius: 4;
2020-11-02 11:36:53 +00:00
.recipeInfo {
margin: 4;
.category,
.time {
font-size: 12;
padding: 0;
margin: 0;
}
.title {
margin: 0;
padding: 4 0;
}
.timeContainer {
padding: 0;
.time {
padding: 0 0 0 4;
}
}
}
}
2020-11-02 11:36:53 +00:00
.imageHolder {
vertical-alignment: center;
&.card {
2020-11-06 09:07:41 +00:00
border-radius: 4 0 0 4;
// prettier-ignore
Image {
border-radius: 4 0 0 4;
}
}
}
2020-11-02 11:36:53 +00:00
.swipe-item {
margin: 0 8;
2020-11-10 18:28:48 +00:00
background: $red;
2020-11-02 11:36:53 +00:00
color: #fff;
height: 128;
2020-11-06 09:07:41 +00:00
border-radius: 4;
2020-11-02 11:36:53 +00:00
}
// -----------------------------
// SETTINGS
2020-10-14 19:32:32 +00:00
.group-header {
text-transform: uppercase;
2020-10-21 17:54:45 +00:00
padding: 8;
2020-10-14 19:32:32 +00:00
}
.main-container {
2020-11-28 19:21:57 +00:00
padding: 8 8 88;
2020-10-14 19:32:32 +00:00
.option {
font-size: 16;
.bx {
2020-11-28 19:21:57 +00:00
margin: 11 24 11 16;
2020-10-14 19:32:32 +00:00
}
2020-11-10 18:28:48 +00:00
.info {
2020-10-14 19:32:32 +00:00
font-size: 12;
2020-11-06 09:07:41 +00:00
line-height: 4;
2020-10-14 19:32:32 +00:00
}
2020-11-10 18:28:48 +00:00
StackLayout {
2020-11-28 19:21:57 +00:00
margin: 9 24 9 0;
2020-11-10 18:28:48 +00:00
}
2020-10-14 19:32:32 +00:00
}
}
2020-11-02 11:36:53 +00:00
// -----------------------------
// ABOUT
.appIconContainer {
2020-11-06 09:07:41 +00:00
background: $orange;
padding: 24 0;
2020-10-14 19:32:32 +00:00
width: 100%;
border-radius: 4;
2020-11-02 11:36:53 +00:00
.appIcon {
2020-11-06 09:07:41 +00:00
height: 128;
2020-10-14 19:32:32 +00:00
}
}
2020-11-02 11:36:53 +00:00
// -----------------------------
// VIEW RECIPE
.viewRecipe {
.category,
.ingredient,
.time {
2020-11-02 11:36:53 +00:00
font-size: 16;
}
.category {
margin: 0 8;
}
.time {
margin: 0 8;
}
.title {
font-size: 22;
line-height: 6;
}
.subTitle {
font-size: 18;
line-height: 4;
}
2020-11-02 11:36:53 +00:00
.overviewContainer {
margin-top: 12;
.overviewItem {
2020-11-06 09:07:41 +00:00
border-radius: 4;
2020-11-02 11:36:53 +00:00
margin: 8;
android-elevation: 1;
.bx {
2020-11-10 18:28:48 +00:00
padding: 12 0 0 12;
color: $gray6;
2020-11-02 11:36:53 +00:00
horizontal-alignment: left;
}
.itemCount {
font-size: 16;
2020-11-10 18:28:48 +00:00
padding: 8 12 12;
2020-11-02 11:36:53 +00:00
}
}
}
2020-11-28 19:21:57 +00:00
.ingredient {
2020-11-02 11:36:53 +00:00
line-height: 6;
2020-11-10 18:28:48 +00:00
padding-bottom: 0;
2020-11-02 11:36:53 +00:00
}
.count {
width: 24;
height: 24;
padding-top: 4%;
margin: 0 0 0 8;
text-align: center;
2020-11-06 09:07:41 +00:00
border-radius: 99;
2020-11-02 11:36:53 +00:00
}
2020-11-28 19:21:57 +00:00
.instruction {
2020-10-14 19:32:32 +00:00
font-size: 16;
2020-11-02 11:36:53 +00:00
line-height: 6;
2020-11-28 19:21:57 +00:00
padding: 1 0 24 36;
2020-11-02 11:36:53 +00:00
margin: 0 0 0 19;
border-width: 0 0 0 2;
}
.instruction.noBorder {
border-color: transparent;
}
2020-11-28 19:21:57 +00:00
.urlCard {
2020-11-10 18:28:48 +00:00
margin: 8 16;
2020-11-06 09:07:41 +00:00
border-radius: 4;
2020-11-02 11:36:53 +00:00
font-size: 16;
.bx {
font-size: 24;
}
2020-11-28 19:21:57 +00:00
.link {
padding: 13 16 13 11;
2020-11-02 11:36:53 +00:00
margin: 0;
2020-11-15 10:51:10 +00:00
line-height: 6;
2020-11-02 11:36:53 +00:00
}
2020-11-15 21:13:06 +00:00
.linkIcon {
2020-11-28 19:21:57 +00:00
padding: 0 0 0 12;
2020-11-15 21:13:06 +00:00
}
2020-11-02 11:36:53 +00:00
}
2020-11-28 19:21:57 +00:00
.textCard {
2020-11-02 11:36:53 +00:00
font-size: 16;
line-height: 6;
2020-11-28 19:21:57 +00:00
padding: 13 16;
2020-11-10 18:28:48 +00:00
margin: 8 16;
2020-11-06 09:07:41 +00:00
border-radius: 4;
2020-10-14 19:32:32 +00:00
}
}
2020-11-02 11:36:53 +00:00
// -----------------------------
// FAB
2020-10-22 18:36:50 +00:00
#btnFabContainer {
2020-11-28 19:21:57 +00:00
z-index: 100;
2020-10-22 18:36:50 +00:00
width: 100%;
height: 100%;
}
2020-11-10 18:28:48 +00:00
MDFloatingActionButton {
2020-11-11 15:49:06 +00:00
width: 56;
height: 56;
2020-10-14 19:32:32 +00:00
margin: 16;
2020-11-10 18:28:48 +00:00
background: $orange;
ripple-color: $fabRipple;
2020-10-14 19:32:32 +00:00
}
2020-11-02 11:36:53 +00:00
// -----------------------------
// EDIT RECIPE
2020-10-14 19:32:32 +00:00
.sectionTitle {
font-size: 20;
}
2020-11-02 11:36:53 +00:00
.text-btn {
2020-10-14 19:32:32 +00:00
font-size: 14;
2020-11-02 11:36:53 +00:00
horizontal-alignment: left;
2020-11-10 18:28:48 +00:00
padding: 12;
margin: 8 0 0;
2020-11-10 18:28:48 +00:00
min-width: 0;
2020-09-15 11:10:16 +00:00
}
2020-11-10 18:28:48 +00:00
MDButton.closeBtn {
2020-11-11 13:50:33 +00:00
margin: 16 0 0;
width: 32;
height: 32;
2020-11-10 18:28:48 +00:00
min-width: 0;
vertical-alignment: top;
2020-10-21 17:54:45 +00:00
}
2020-11-02 11:36:53 +00:00
// -----------------------------
// MEAL PLANNER
2020-11-23 09:49:58 +00:00
.dayPlan {
2020-11-28 19:21:57 +00:00
padding: 0 0 88;
width: 100%;
2020-11-23 09:49:58 +00:00
.plansContainer {
padding: 8 4;
color: $gray9;
&.breakfast {
background: $breakfast;
}
&.lunch {
background: $lunch;
}
&.dinner {
background: $dinner;
}
&.snacks {
background: $snacks;
}
.periodLabel {
text-transform: uppercase;
vertical-alignment: center;
2020-11-23 09:49:58 +00:00
font-size: 14;
padding: 0 0 0 16;
}
.recipes {
margin: 4 8;
.recipeTitle {
font-size: 14;
padding: 6 8;
line-height: 4;
}
.closeBtn {
margin: 0 8;
vertical-alignment: top;
}
}
MDButton,
MDRipple {
ripple-color: rgba($gray6, 0.2);
}
}
}
// -----------------------------
2020-11-02 11:36:53 +00:00
// DIALOGS
2020-10-22 18:36:50 +00:00
.dialogContainer {
2020-11-23 09:49:58 +00:00
max-width: 480;
width: 100%;
2020-11-10 18:28:48 +00:00
color: $gray9;
background: $gray1;
2020-11-02 11:36:53 +00:00
font-size: 16;
2020-10-22 18:36:50 +00:00
&.dark {
2020-11-10 18:28:48 +00:00
color: $gray1;
background: $gray9;
2020-10-22 18:36:50 +00:00
}
.dialogTitle {
2020-11-23 09:49:58 +00:00
line-height: 6;
2020-11-10 18:28:48 +00:00
padding: 24 24 16;
2020-10-22 18:36:50 +00:00
font-size: 20;
}
2020-11-02 11:36:53 +00:00
.dialogInput {
padding: 0 24 16;
}
2020-10-22 18:36:50 +00:00
.dialogDescription {
2020-11-10 18:28:48 +00:00
line-height: 6;
padding: 0 24 8;
2020-10-22 18:36:50 +00:00
}
.actionItem {
2020-11-10 18:28:48 +00:00
letter-spacing: 0;
text-transform: none;
2020-11-15 10:51:10 +00:00
line-height: 6;
2020-11-28 19:21:57 +00:00
padding: 13 24;
2020-11-02 11:36:53 +00:00
margin: 0;
2020-10-22 18:36:50 +00:00
}
2020-11-02 11:36:53 +00:00
.actionsContainer {
2020-11-10 18:28:48 +00:00
padding: 8;
2020-11-02 11:36:53 +00:00
}
.action {
2020-10-22 18:36:50 +00:00
font-size: 12;
2020-11-10 18:28:48 +00:00
padding: 12;
min-width: 0;
2020-10-22 18:36:50 +00:00
color: #ff7043;
}
2020-11-10 18:28:48 +00:00
MDButton.actionIcon {
width: auto;
height: auto;
min-width: 0;
padding: 16 24;
border-radius: 4;
letter-spacing: 0;
text-transform: none;
margin: 0 16 16;
}
2020-10-22 18:36:50 +00:00
}
2020-11-02 11:36:53 +00:00
// -----------------------------
2020-11-10 18:28:48 +00:00
MDActivityIndicator {
2020-11-02 11:36:53 +00:00
width: 24;
height: 24;
2020-11-11 15:49:06 +00:00
margin: 16 12;
}
2020-11-02 11:36:53 +00:00
// -----------------------------
// Transitions
.bounce-enter-active {
animation-name: bounce-in;
2020-11-02 11:36:53 +00:00
animation-duration: 1s;
animation-fill-mode: forwards;
2020-11-02 11:36:53 +00:00
animation-timing-function: ease-in-out;
}
.bounce-leave-active {
animation-name: bounce-out;
animation-duration: 0.25s;
animation-fill-mode: forwards;
}
@keyframes bounce-in {
0% {
transform: scale(0);
opacity: 0;
}
2020-11-02 11:36:53 +00:00
25% {
transform: scale(1.2);
opacity: 1;
}
2020-11-02 11:36:53 +00:00
50% {
transform: scale(0.9);
}
75% {
transform: scale(1.1);
}
100% {
transform: scale(1);
}
}
@keyframes bounce-out {
0% {
transform: scale(1);
}
100% {
transform: scale(0);
opacity: 0;
}
}
.dolly-enter-active {
animation-name: dolly;
animation-duration: 1s;
animation-delay: 0.25s;
animation-fill-mode: forwards;
2020-11-02 11:36:53 +00:00
animation-timing-function: ease-in-out;
}
.dolly-leave-active {
opacity: 0;
}
@keyframes dolly {
0% {
transform: rotate(20deg);
}
25% {
transform: rotate(-20deg);
}
50% {
transform: rotate(10deg);
}
75% {
transform: rotate(-10deg);
}
100% {
transform: rotate(0deg);
}
}