feat: Implement Dark Mode

Added styles and configurations to enable dark mode throughout the application. The dark mode features a deep blue color scheme for primary elements and improved visibility for cursor. Selected option text in mat-select now appears in white for better contrast. This enhancement provides users with the option to switch between light and dark modes seamlessly.

Changes:
- Added dark mode styles in the theme service
- Updated mifosx-theme.scss for dark mode customization
- Adjusted cursor visibility in dark mode
- Modified selected option text color in mat-select

Fixes #2021

Implemented the black-logo image into white-logo-image dynamically
This commit is contained in:
Vikash Prem Sharma
2024-03-08 17:16:18 -06:00
committed by Jose Alberto Hernandez
parent fcbbb03acb
commit ccd6e8dded
12 changed files with 171 additions and 2 deletions
+27
View File
@@ -1,3 +1,6 @@
/* ############ Light mode palettes ################*/
$primary-palette: (
100: #5ba2ec,
500: #1074b9,
@@ -19,3 +22,27 @@ $accent-palette: (
700: rgba(black, 0.87)
)
);
/* ############ Dark mode palettes ################*/
$dark-primary-palette: (
100: #273350,
500: #313f6b,
700: #39415c,
contrast: (
100: white,
500: rgba(white, 0.87),
700: rgba(white, 0.87)
)
);
$dark-accent-palette: (
100: #364461,
500: #3e5372,
700: #476385,
contrast: (
100: white,
500: white,
700: white
)
);
+52
View File
@@ -15,6 +15,10 @@
// Be sure that you only ever include this mixin once!
@include mat.core();
/* ################################## Light theme ################################### */
// Define the palettes for your theme using the Material Design palettes available in palette.scss
// (imported above). For each palette, you can optionally specify a default, lighter, and darker
// hue. Available color palettes: https://material.io/design/color/
@@ -36,3 +40,51 @@ $mifosx-app-theme: mat.define-light-theme($mifosx-app-primary, $mifosx-app-accen
@include dashboard-component-theme($mifosx-app-theme);
@include shares-account-view-component-theme($mifosx-app-theme);
@include account-view-component-theme($mifosx-app-theme);
/* ################################## Dark theme ################################### */
// Define the palettes for your theme using the Material Design palettes available in palette.scss
$mifosx-app-dark-primary: mat.define-palette($dark-primary-palette);
$mifosx-app-dark-accent: mat.define-palette($dark-accent-palette);
$mifosx-app-dark-warn: mat.define-palette(mat.$red-palette);
// Create the theme object (a Sass map containing all of the palettes).
$mifosx-app-dark-theme: mat.define-dark-theme($mifosx-app-dark-primary, $mifosx-app-dark-accent, $mifosx-app-dark-warn);
// Include theme styles for core and each component used in your app.
.dark-theme {
// Override the background color of the label text for dark theme
.mat-option-text,.mat-input-element,.mat-form-field-label{
color: white !important;
}
mifosx-popover,.mat-menu-content{
background-color: #303135;
color : white;
}
// Override the background color of the calendar for dark theme
.mat-calendar,
.mat-calendar-body-cell,
.mat-calendar-body-label,
.mat-calendar-table{
background-color: #303135;
border: none;
}
// Changing the logo color for dark mode
.img-button,
.app-user-photo,
.profile-image{
filter: invert(100%);
}
@include mat.all-component-themes($mifosx-app-dark-theme);
@include groups-view-component-theme($mifosx-app-dark-theme);
@include centers-view-component-theme($mifosx-app-dark-theme);
@include dashboard-component-theme($mifosx-app-dark-theme);
@include shares-account-view-component-theme($mifosx-app-dark-theme);
@include account-view-component-theme($mifosx-app-dark-theme);
}