commitall

This commit is contained in:
Sampanna Rimal
2024-07-10 18:28:19 +05:45
parent 140abda4e6
commit 9cd05ef3cb
15723 changed files with 4818733 additions and 0 deletions

View File

@@ -0,0 +1,106 @@
//
// Mixins: Accent
//
// Accent Variant
@mixin accent-variant($name, $color) {
$link-color: $color;
.accent-#{$name} {
$link-hover-color: darken($color, 15%);
$pagination-active-bg: $color;
$pagination-active-border-color: $color;
.btn-link,
a:not(.dropdown-item):not(.btn-app):not(.nav-link):not(.brand-link):not(.page-link):not(.badge):not(.btn),
.nav-tabs .nav-link {
color: $link-color;
@include hover () {
color: $link-hover-color;
}
}
.dropdown-item {
&:active,
&.active {
background-color: $color;
color: color-yiq($color);
}
}
.custom-control-input:checked ~ .custom-control-label {
&::before {
background-color: $color;
border-color: darken($color, 20%);
}
&::after {
$new-color: color-yiq($color);
background-image: str-replace($custom-checkbox-indicator-icon-checked, str-replace(#{$custom-control-indicator-checked-color}, "#", "%23"), str-replace(#{$new-color}, "#", "%23"));
}
}
.form-control:focus:not(.is-invalid):not(.is-warning):not(.is-valid),
.custom-select:focus,
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before,
.custom-file-input:focus ~ .custom-file-label {
border-color: lighten($color, 25%);
}
.page-item {
.page-link {
color: $link-color;
}
&.active a,
&.active .page-link {
background-color: $pagination-active-bg;
border-color: $pagination-active-border-color;
color: $pagination-active-color;
}
&.disabled a,
&.disabled .page-link {
background-color: $pagination-disabled-bg;
border-color: $pagination-disabled-border-color;
color: $pagination-disabled-color;
}
}
[class*="sidebar-dark-"] {
.sidebar {
a:not(.dropdown-item):not(.btn-app):not(.nav-link):not(.brand-link) {
color: $sidebar-dark-color;
@include hover () {
color: $sidebar-dark-hover-color;
}
}
}
}
[class*="sidebar-light-"] {
.sidebar {
a:not(.dropdown-item):not(.btn-app):not(.nav-link):not(.brand-link) {
color: $sidebar-light-color;
@include hover () {
color: $sidebar-light-hover-color;
}
}
}
}
}
@include dark-mode () {
&.accent-#{$name} {
.page-item {
.page-link {
&:hover,
&:focus {
color: lighten($link-color, 5%);
}
}
}
}
}
}

View File

@@ -0,0 +1,119 @@
//
// Mixins: Animation
//
@keyframes flipInX {
0% {
transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
transition-timing-function: ease-in;
opacity: 0;
}
40% {
transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
transition-timing-function: ease-in;
}
60% {
transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
opacity: 1;
}
80% {
transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
}
100% {
transform: perspective(400px);
}
}
@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes fadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
@keyframes shake {
0% {
transform: translate(2px, 1px) rotate(0deg);
}
10% {
transform: translate(-1px, -2px) rotate(-2deg);
}
20% {
transform: translate(-3px, 0) rotate(3deg);
}
30% {
transform: translate(0, 2px) rotate(0deg);
}
40% {
transform: translate(1px, -1px) rotate(1deg);
}
50% {
transform: translate(-1px, 2px) rotate(-1deg);
}
60% {
transform: translate(-3px, 1px) rotate(0deg);
}
70% {
transform: translate(2px, 1px) rotate(-2deg);
}
80% {
transform: translate(-1px, -1px) rotate(4deg);
}
90% {
transform: translate(2px, 2px) rotate(0deg);
}
100% {
transform: translate(1px, -2px) rotate(-1deg);
}
}
@keyframes wobble {
0% {
transform: none;
}
15% {
transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
}
30% {
transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
}
45% {
transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
}
60% {
transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
}
75% {
transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
}
100% {
transform: none;
}
}
//

View File

@@ -0,0 +1,69 @@
//
// Mixins: Backgrounds
//
// Background Variant
@mixin background-variant($name, $color) {
&.bg-#{$name} {
background-color: #{$color} !important;
&,
> a {
color: color-yiq($color) !important;
}
&.btn {
&:hover {
border-color: darken($color, 10%);
color: darken(color-yiq($color), 7.5%);
}
&:not(:disabled):not(.disabled):active,
&:not(:disabled):not(.disabled).active,
&:active,
&.active {
background-color: darken($color, 10%) !important;
border-color: darken($color, 12.5%);
color: color-yiq(darken($color, 10%));
}
}
}
}
// Background Gradient Variant
@mixin background-gradient-variant($name, $color) {
.bg-gradient-#{$name} {
background: $color linear-gradient(180deg, mix($body-bg, $color, 15%), $color) repeat-x !important;
color: color-yiq($color);
&.btn {
&:not(:disabled):not(.disabled):active,
&:not(:disabled):not(.disabled).active,
.show > &.dropdown-toggle {
background-image: none !important;
}
&:hover {
background: $color linear-gradient(180deg, mix($body-bg, darken($color, 7.5%), 15%), darken($color, 7.5%)) repeat-x !important;
border-color: darken($color, 10%);
color: darken(color-yiq($color), 7.5%);
}
&:not(:disabled):not(.disabled):active,
&:not(:disabled):not(.disabled).active,
&:active,
&.active {
background: $color linear-gradient(180deg, mix($body-bg, darken($color, 10%), 15%), darken($color, 10%)) repeat-x !important;
border-color: darken($color, 12.5%);
color: color-yiq(darken($color, 10%));
}
&:disabled,
&.disabled {
background-image: none !important;
border-color: $color;
color: color-yiq($color);
}
}
}
}

View File

@@ -0,0 +1,82 @@
//
// Mixins: Cards Variant
//
@mixin cards-variant($name, $color) {
.card-#{$name} {
&:not(.card-outline) {
> .card-header {
background-color: $color;
&,
a {
color: color-yiq($color);
}
a.active {
color: color-yiq($white);
}
}
}
&.card-outline {
border-top: 3px solid $color;
}
&.card-outline-tabs {
> .card-header {
a:hover{
border-top: 3px solid $nav-tabs-border-color;
}
a.active,
a.active:hover{
border-top: 3px solid $color;
}
}
}
}
.bg-#{$name},
.bg-gradient-#{$name},
.card-#{$name}:not(.card-outline) {
> .card-header {
.btn-tool {
color: rgba(color-yiq($color), .8);
&:hover {
color: color-yiq($color);
}
}
}
}
.card.bg-#{$name},
.card.bg-gradient-#{$name} {
.bootstrap-datetimepicker-widget {
.table td,
.table th {
border: none;
}
table thead tr:first-child th:hover,
table td.day:hover,
table td.hour:hover,
table td.minute:hover,
table td.second:hover {
background-color: darken($color, 8%);
color: color-yiq($color);
}
table td.today::before {
border-bottom-color: color-yiq($color);
}
table td.active,
table td.active:hover {
background-color: lighten($color, 10%);
color: color-yiq($color);
}
}
}
}

View File

@@ -0,0 +1,123 @@
//
// Mixins: Custom Forms
//
// Custom Switch Variant
@mixin custom-switch-variant($name, $color) {
&.custom-switch-off-#{$name} {
.custom-control-input ~ .custom-control-label::before {
background-color: #{$color};
border-color: darken($color, 20%);
}
.custom-control-input:focus ~ .custom-control-label::before {
box-shadow: 0 0 0 1px $body-bg, 0 0 0 2px rgba($color, .25);
}
.custom-control-input ~ .custom-control-label::after {
background-color: darken($color, 25%);
}
}
&.custom-switch-on-#{$name} {
.custom-control-input:checked ~ .custom-control-label::before {
background-color: #{$color};
border-color: darken($color, 20%);
}
.custom-control-input:checked:focus ~ .custom-control-label::before {
box-shadow: 0 0 0 1px $body-bg, 0 0 0 2px rgba($color, .25);
}
.custom-control-input:checked ~ .custom-control-label::after {
background-color: lighten($color, 30%);
}
}
}
// Custom Range Variant
@mixin custom-range-variant($name, $color) {
&.custom-range-#{$name} {
&:focus {
outline: none;
&::-webkit-slider-thumb {
box-shadow: 0 0 0 1px $body-bg, 0 0 0 2px rgba($color, .25);
}
&::-moz-range-thumb {
box-shadow: 0 0 0 1px $body-bg, 0 0 0 2px rgba($color, .25);
}
&::-ms-thumb {
box-shadow: 0 0 0 1px $body-bg, 0 0 0 2px rgba($color, .25);
}
}
&::-webkit-slider-thumb {
background-color: $color;
&:active {
background-color: lighten($color, 35%);
}
}
&::-moz-range-thumb {
background-color: $color;
&:active {
background-color: lighten($color, 35%);
}
}
&::-ms-thumb {
background-color: $color;
&:active {
background-color: lighten($color, 35%);
}
}
}
}
// Custom Control Input Variant
@mixin custom-control-input-variant($name, $color) {
$custom-control-indicator-checked-color: $color;
$custom-checkbox-indicator-icon-checked: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E"), "#", "%23");
$custom-radio-indicator-icon-checked: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='#{$custom-control-indicator-checked-color}'/%3E%3C/svg%3E"), "#", "%23");
.custom-control-input-#{$name} {
&:checked ~ .custom-control-label::before {
border-color: $color;
@include gradient-bg($color);
}
&.custom-control-input-outline:checked {
&[type="checkbox"] ~ .custom-control-label::after {
background-image: $custom-checkbox-indicator-icon-checked !important;
}
&[type="radio"] ~ .custom-control-label::after {
background-image: $custom-radio-indicator-icon-checked !important;
}
}
&:focus ~ .custom-control-label::before {
// the mixin is not used here to make sure there is feedback
@if $enable-shadows {
box-shadow: $input-box-shadow, 0 0 0 $input-btn-focus-width rgba($color, .25);
} @else {
box-shadow: 0 0 0 $input-btn-focus-width rgba($color, .25);
}
}
&:focus:not(:checked) ~ .custom-control-label::before {
border-color: lighten($color, 25%);
}
&:not(:disabled):active ~ .custom-control-label::before {
background-color: lighten($color, 35%);
border-color: lighten($color, 35%);
}
}
}

View File

@@ -0,0 +1,11 @@
//
// Mixins: Dark Mode Controll
//
@mixin dark-mode {
@if $enable-dark-mode {
.dark-mode {
@content;
}
}
}

View File

@@ -0,0 +1,17 @@
//
// Mixins: Direct Chat
//
// Direct Chat Variant
@mixin direct-chat-variant($bg-color, $color: $white) {
.right > .direct-chat-text {
background-color: $bg-color;
border-color: $bg-color;
color: color-yiq($bg-color);
&::after,
&::before {
border-left-color: $bg-color;
}
}
}

View File

@@ -0,0 +1,33 @@
//
// Mixins: Miscellaneous
//
// ETC
@mixin translate($x, $y) {
transform: translate($x, $y);
}
// Different radius each side
@mixin border-radius-sides($top-left, $top-right, $bottom-left, $bottom-right) {
border-radius: $top-left $top-right $bottom-left $bottom-right;
}
@mixin calc($property, $expression) {
#{$property}: calc(#{$expression});
}
@mixin rotate($value) {
transform: rotate($value);
}
@mixin animation($animation) {
animation: $animation;
}
// Gradient background
@mixin gradient($color: #f5f5f5, $start: #eee, $stop: $white) {
background-color: $color;
background-image: gradient(linear, left bottom, left top, color-stop(0, $start), color-stop(1, $stop));
}
//

View File

@@ -0,0 +1,62 @@
//
// Mixins: Navbar
//
// Navbar Variant
@mixin navbar-variant($name, $color) {
.navbar-#{$name} {
background-color: $color;
color: color-yiq($color);
&.navbar-light {
.form-control-navbar {
&::placeholder {
color: rgba($gray-800, .8);
}
&,
+ .input-group-append > .btn-navbar {
background-color: darken($color, 4%);
border-color: darken($color, 9%);
color: rgba($gray-800, .8);
}
&:focus {
&::placeholder {
color: $gray-800;
}
&,
+ .input-group-append .btn-navbar {
background-color: darken($color, 5%);
border-color: darken($color, 9%) !important;
color: $gray-800;
}
}
}
}
&.navbar-dark {
.form-control-navbar {
&::placeholder {
color: rgba($white, .8);
}
&,
+ .input-group-append > .btn-navbar {
background-color: lighten($color, 4%);
border-color: lighten($color, 9%);
color: rgba($white, .8);
}
&:focus {
&::placeholder {
color: $white;
}
&,
+ .input-group-append .btn-navbar {
background-color: lighten($color, 5%);
border-color: lighten($color, 9%) !important;
color: $white;
}
}
}
}
}
}

View File

@@ -0,0 +1,38 @@
//
// Mixins: Scrollbar
//
@mixin scrollbar-color-gray() {
scrollbar-color: #a9a9a9 transparent;
&::-webkit-scrollbar-thumb {
background-color: #a9a9a9;
}
&::-webkit-scrollbar-track {
background-color: transparent;
}
&::-webkit-scrollbar-corner {
background-color: transparent;
}
}
@mixin scrollbar-width-thin() {
scrollbar-width: thin;
&::-webkit-scrollbar {
width: .5rem;
height: .5rem;
}
}
@mixin scrollbar-width-none() {
scrollbar-width: none;
&::-webkit-scrollbar {
width: 0;
}
}
//

View File

@@ -0,0 +1,167 @@
//
// Mixins: Sidebar
//
// Sidebar Color
@mixin sidebar-color($color) {
.nav-sidebar > .nav-item {
> .nav-link.active {
background-color: $color;
color: color-yiq($color);
}
}
.nav-sidebar.nav-legacy > .nav-item {
> .nav-link.active {
border-color: $color;
}
}
}
// Sidebar Mini Breakpoints
@mixin sidebar-mini-breakpoint() {
// A fix for text overflow while transitioning from sidebar mini to full sidebar
.nav-sidebar,
.nav-sidebar > .nav-header,
.nav-sidebar .nav-link {
white-space: nowrap;
}
// When the sidebar is collapsed...
&.sidebar-collapse {
.d-hidden-mini {
display: none;
}
// Apply the new margins to the main content and footer
.content-wrapper,
.main-footer,
.main-header {
margin-left: $sidebar-mini-width !important;
}
// Make the sidebar headers
.nav-sidebar .nav-header {
display: none;
}
.sidebar .nav-sidebar .nav-link p {
width: 0;
white-space: nowrap;
}
.sidebar .user-panel > .info,
.sidebar .nav-sidebar .nav-link p,
.brand-text {
margin-left: -10px;
animation-name: fadeOut;
animation-duration: $transition-speed;
animation-fill-mode: both;
visibility: hidden;
}
.logo-xl {
animation-name: fadeOut;
animation-duration: $transition-speed;
animation-fill-mode: both;
visibility: hidden;
}
.logo-xs {
display: inline-block;
animation-name: fadeIn;
animation-duration: $transition-speed;
animation-fill-mode: both;
visibility: visible;
}
// Modify the sidebar to shrink instead of disappearing
.main-sidebar {
overflow-x: hidden;
&,
&::before {
// Don't go away! Just shrink
margin-left: 0;
width: $sidebar-mini-width;
}
.user-panel {
.image {
float: none;
}
}
&:not(.sidebar-no-expand) {
&:hover,
&.sidebar-focused {
width: $sidebar-width;
.brand-link {
width: $sidebar-width;
}
.user-panel {
text-align: left;
.image {
float: left;
}
}
.user-panel > .info,
.sidebar .nav-sidebar .nav-link p,
.brand-text,
.logo-xl {
display: inline-block;
margin-left: 0;
animation-name: fadeIn;
animation-duration: $transition-speed;
animation-fill-mode: both;
visibility: visible;
}
.logo-xs {
animation-name: fadeOut;
animation-duration: $transition-speed;
animation-fill-mode: both;
visibility: hidden;
}
.brand-image {
margin-right: .5rem;
}
// Make the sidebar links, menus, labels, badges
// and angle icons disappear
.sidebar-form,
.user-panel > .info {
display: block !important;
transform: translateZ(0);
}
.nav-sidebar > .nav-item > .nav-link > span {
display: inline-block !important;
}
}
}
}
// Make an element visible only when sidebar mini is active
.visible-sidebar-mini {
display: block !important;
}
&.layout-fixed {
.main-sidebar:hover {
.brand-link {
width: $sidebar-width;
}
}
.brand-link {
width: $sidebar-mini-width;
}
}
}
}

View File

@@ -0,0 +1,23 @@
//
// Mixins: Toasts
//
// Toast Variant
@mixin toast-variant($name, $color) {
&.bg-#{$name} {
background-color: rgba($color, .9) !important;
@if (color-yiq($color) == $yiq-text-light) {
.close {
color: color-yiq($color);
text-shadow: 0 1px 0 $black;
}
}
.toast-header {
background-color: rgba($color, .85);
color: color-yiq($color);
}
}
}

View File

@@ -0,0 +1,11 @@
//
// Mixins: Touch Support
//
@mixin on-touch-device {
@media (hover: none) and (pointer: coarse) {
@content;
}
}
//