sneat_rails 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +28 -0
- data/Rakefile +6 -0
- data/app/assets/builds/sneat_rails/application.css +3 -0
- data/app/assets/builds/sneat_rails/fonts/boxicons.eot +0 -0
- data/app/assets/builds/sneat_rails/fonts/boxicons.svg +1660 -0
- data/app/assets/builds/sneat_rails/fonts/boxicons.ttf +0 -0
- data/app/assets/builds/sneat_rails/fonts/boxicons.woff +0 -0
- data/app/assets/builds/sneat_rails/fonts/boxicons.woff2 +0 -0
- data/app/assets/builds/sneat_rails/sneat.css +43157 -0
- data/app/assets/builds/sneat_rails/sneat.css.map +1 -0
- data/app/assets/config/manifest.js +3 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_accordion.scss +56 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_alert.scss +9 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_badge.scss +18 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_breadcrumb.scss +47 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_button-group.scss +59 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_buttons.scss +127 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_card.scss +197 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_carousel.scss +42 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_close.scss +6 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_dropdown.scss +63 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_forms.scss +10 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_functions.scss +147 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_include.scss +13 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_list-group.scss +58 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_mixins.scss +16 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_modal.scss +110 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_nav.scss +327 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_navbar.scss +58 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_offcanvas.scss +10 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_pagination.scss +92 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_popover.scss +31 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_progress.scss +31 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_reboot.scss +32 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_root.scss +4 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_spinners.scss +21 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_tables.scss +106 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_toasts.scss +61 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_tooltip.scss +11 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_type.scss +2 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_utilities-ltr.scss +283 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_utilities.scss +1027 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/_variables.scss +935 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/forms/_floating-labels.scss +12 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/forms/_form-control.scss +15 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/forms/_form-range.scss +52 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/forms/_form-select.scss +11 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/forms/_input-group.scss +77 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/forms/_labels.scss +17 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/forms/_validation.scss +58 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_alert.scss +39 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_badge.scss +9 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_buttons.scss +190 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_caret.scss +42 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_dropdown.scss +26 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_forms.scss +281 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_list-group.scss +66 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_misc.scss +120 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_navs.scss +37 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_pagination.scss +21 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_progress.scss +19 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_table-variants.scss +31 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended/mixins/_toasts.scss +33 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap-extended.scss +39 -0
- data/app/assets/stylesheets/sneat_rails/_bootstrap.scss +44 -0
- data/app/assets/stylesheets/sneat_rails/_boxicons.scss +6944 -0
- data/app/assets/stylesheets/sneat_rails/_colors.scss +39 -0
- data/app/assets/stylesheets/sneat_rails/_components/_app-brand.scss +64 -0
- data/app/assets/stylesheets/sneat_rails/_components/_avatar.scss +126 -0
- data/app/assets/stylesheets/sneat_rails/_components/_base.scss +159 -0
- data/app/assets/stylesheets/sneat_rails/_components/_common.scss +232 -0
- data/app/assets/stylesheets/sneat_rails/_components/_footer.scss +39 -0
- data/app/assets/stylesheets/sneat_rails/_components/_include.scss +11 -0
- data/app/assets/stylesheets/sneat_rails/_components/_layout.scss +539 -0
- data/app/assets/stylesheets/sneat_rails/_components/_menu.scss +346 -0
- data/app/assets/stylesheets/sneat_rails/_components/_mixins.scss +6 -0
- data/app/assets/stylesheets/sneat_rails/_components/_text-divider.scss +89 -0
- data/app/assets/stylesheets/sneat_rails/_components/_variables.scss +93 -0
- data/app/assets/stylesheets/sneat_rails/_components/mixins/_app-brand.scss +33 -0
- data/app/assets/stylesheets/sneat_rails/_components/mixins/_avatar.scss +22 -0
- data/app/assets/stylesheets/sneat_rails/_components/mixins/_footer.scss +39 -0
- data/app/assets/stylesheets/sneat_rails/_components/mixins/_menu.scss +124 -0
- data/app/assets/stylesheets/sneat_rails/_components/mixins/_misc.scss +6 -0
- data/app/assets/stylesheets/sneat_rails/_components/mixins/_navbar.scss +90 -0
- data/app/assets/stylesheets/sneat_rails/_components/mixins/_text-divider.scss +16 -0
- data/app/assets/stylesheets/sneat_rails/_components.scss +11 -0
- data/app/assets/stylesheets/sneat_rails/_custom-variables/_bootstrap-extended.scss +7 -0
- data/app/assets/stylesheets/sneat_rails/_custom-variables/_components.scss +6 -0
- data/app/assets/stylesheets/sneat_rails/_custom-variables/_libs.scss +8 -0
- data/app/assets/stylesheets/sneat_rails/_custom-variables/_pages.scss +8 -0
- data/app/assets/stylesheets/sneat_rails/_custom-variables/_support.scss +9 -0
- data/app/assets/stylesheets/sneat_rails/_theme/_common.scss +49 -0
- data/app/assets/stylesheets/sneat_rails/_theme/_theme.scss +131 -0
- data/app/assets/stylesheets/sneat_rails/application.css +15 -0
- data/app/assets/stylesheets/sneat_rails/application.scss +9 -0
- data/app/assets/stylesheets/sneat_rails/core.scss +4 -0
- data/app/assets/stylesheets/sneat_rails/pages/page-account-settings.scss +13 -0
- data/app/assets/stylesheets/sneat_rails/pages/page-auth.scss +106 -0
- data/app/assets/stylesheets/sneat_rails/pages/page-icons.scss +46 -0
- data/app/assets/stylesheets/sneat_rails/pages/page-misc.scss +15 -0
- data/app/assets/stylesheets/sneat_rails/sneat.css +3 -0
- data/app/assets/stylesheets/sneat_rails/sneat.scss +6 -0
- data/app/assets/stylesheets/sneat_rails/theme-default.scss +111 -0
- data/app/controllers/sneat_rails/application_controller.rb +4 -0
- data/app/controllers/sneat_rails/dashboard_controller.rb +10 -0
- data/app/helpers/sneat_rails/application_helper.rb +4 -0
- data/app/jobs/sneat_rails/application_job.rb +4 -0
- data/app/mailers/sneat_rails/application_mailer.rb +6 -0
- data/app/models/sneat_rails/application_record.rb +5 -0
- data/app/views/layouts/sneat_rails/application.html.erb +30 -0
- data/app/views/sneat_rails/dashboard/index.html.erb +1 -0
- data/app/views/sneat_rails/shared/_navbar.html.erb +3 -0
- data/app/views/sneat_rails/shared/_sidebar.html.erb +3 -0
- data/config/dartsass.rb +3 -0
- data/config/routes.rb +3 -0
- data/lib/generators/sneat_rails/install/install_generator.rb +16 -0
- data/lib/sneat_rails/engine.rb +20 -0
- data/lib/sneat_rails/version.rb +3 -0
- data/lib/sneat_rails.rb +6 -0
- data/lib/tasks/sneat_rails_tasks.rake +4 -0
- metadata +193 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
@import '_components/include';
|
|
2
|
+
|
|
3
|
+
// * Bootstrap colors (Uncomment required colors)
|
|
4
|
+
// *******************************************************************************
|
|
5
|
+
|
|
6
|
+
$bootstrap-colors: () !default;
|
|
7
|
+
|
|
8
|
+
@each $color-name, $color-value in $bootstrap-colors {
|
|
9
|
+
@include bg-variant('.bg-#{$color-name}', $color-value);
|
|
10
|
+
@include bg-label-variant('.bg-label-#{$color-name}', $color-value);
|
|
11
|
+
|
|
12
|
+
@include border-label-variant('.border-label-#{$color-name}', $color-value);
|
|
13
|
+
@include border-light-variant('.border-light-#{$color-name}', $color-value);
|
|
14
|
+
|
|
15
|
+
.border-#{$color-name} {
|
|
16
|
+
border-color: $color-value !important;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
@include template-button-variant('.btn-#{$color-name}', $color-value);
|
|
20
|
+
@include template-button-outline-variant('.btn-outline-#{$color-name}', $color-value);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// * Navbar
|
|
24
|
+
// *******************************************************************************
|
|
25
|
+
|
|
26
|
+
@each $color, $value in $theme-colors {
|
|
27
|
+
@if $color !=primary and $color !=light {
|
|
28
|
+
@include template-navbar-style('.navbar.bg-#{$color}', $value);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
@include template-navbar-style('.navbar.bg-white', #fff, $color: $text-muted, $active-color: $body-color);
|
|
33
|
+
@include template-navbar-style('.navbar.bg-light', $gray-100, $color: $text-muted, $active-color: $body-color);
|
|
34
|
+
|
|
35
|
+
// * Footer
|
|
36
|
+
// *******************************************************************************
|
|
37
|
+
|
|
38
|
+
@include template-footer-style('.footer.bg-white', #fff, $color: $text-muted, $active-color: $body-color);
|
|
39
|
+
@include template-footer-style('.footer.bg-light', $gray-100, $color: $text-muted, $active-color: $body-color);
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
// App Brand
|
|
2
|
+
// *******************************************************************************
|
|
3
|
+
|
|
4
|
+
@import 'mixins/app-brand';
|
|
5
|
+
|
|
6
|
+
.app-brand {
|
|
7
|
+
display: flex;
|
|
8
|
+
flex-grow: 0;
|
|
9
|
+
flex-shrink: 0;
|
|
10
|
+
overflow: hidden;
|
|
11
|
+
line-height: 1;
|
|
12
|
+
min-height: 1px;
|
|
13
|
+
align-items: center;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.app-brand-link {
|
|
17
|
+
display: flex;
|
|
18
|
+
align-items: center;
|
|
19
|
+
}
|
|
20
|
+
.app-brand-logo {
|
|
21
|
+
display: block;
|
|
22
|
+
flex-grow: 0;
|
|
23
|
+
flex-shrink: 0;
|
|
24
|
+
overflow: hidden;
|
|
25
|
+
min-height: 1px;
|
|
26
|
+
|
|
27
|
+
img,
|
|
28
|
+
svg {
|
|
29
|
+
display: block;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.app-brand-text {
|
|
34
|
+
flex-shrink: 0;
|
|
35
|
+
opacity: 1;
|
|
36
|
+
transition: opacity $menu-animation-duration * 0.5 ease-in-out;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.app-brand-img-collapsed {
|
|
40
|
+
display: none;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
// App brand with vertical menu
|
|
44
|
+
.menu-vertical .app-brand {
|
|
45
|
+
padding-right: $menu-vertical-link-padding-x + $menu-vertical-link-margin-x;
|
|
46
|
+
padding-left: $menu-vertical-link-padding-x + $menu-vertical-link-margin-x;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
// App brand with vertical menu
|
|
50
|
+
.menu-horizontal .app-brand,
|
|
51
|
+
.menu-horizontal .app-brand + .menu-divider {
|
|
52
|
+
display: none !important;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
:not(.layout-menu) > .menu-vertical.menu-collapsed:not(.layout-menu):not(:hover) {
|
|
56
|
+
@include template-app-brand-collapsed();
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
@include media-breakpoint-up($menu-collapsed-layout-breakpoint) {
|
|
60
|
+
.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas)
|
|
61
|
+
.layout-menu {
|
|
62
|
+
@include template-app-brand-collapsed();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
// Avatar
|
|
2
|
+
// *******************************************************************************
|
|
3
|
+
|
|
4
|
+
// Avatar Styles
|
|
5
|
+
.avatar {
|
|
6
|
+
position: relative;
|
|
7
|
+
width: $avatar-size;
|
|
8
|
+
height: $avatar-size;
|
|
9
|
+
cursor: pointer;
|
|
10
|
+
img {
|
|
11
|
+
width: 100%;
|
|
12
|
+
height: 100%;
|
|
13
|
+
}
|
|
14
|
+
// Avatar Initials if no images added
|
|
15
|
+
.avatar-initial {
|
|
16
|
+
position: absolute;
|
|
17
|
+
top: 0;
|
|
18
|
+
left: 0;
|
|
19
|
+
right: 0;
|
|
20
|
+
bottom: 0;
|
|
21
|
+
text-transform: uppercase;
|
|
22
|
+
display: flex;
|
|
23
|
+
align-items: center;
|
|
24
|
+
justify-content: center;
|
|
25
|
+
color: $white;
|
|
26
|
+
background-color: $secondary;
|
|
27
|
+
font-weight: $font-weight-medium;
|
|
28
|
+
}
|
|
29
|
+
// Avatar Status indication
|
|
30
|
+
&.avatar-online,
|
|
31
|
+
&.avatar-offline,
|
|
32
|
+
&.avatar-away,
|
|
33
|
+
&.avatar-busy {
|
|
34
|
+
&:after {
|
|
35
|
+
content: '';
|
|
36
|
+
position: absolute;
|
|
37
|
+
bottom: 0;
|
|
38
|
+
right: 3px;
|
|
39
|
+
width: 8px;
|
|
40
|
+
height: 8px;
|
|
41
|
+
border-radius: 100%;
|
|
42
|
+
box-shadow: 0 0 0 2px $white;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
&.avatar-online:after {
|
|
46
|
+
background-color: $success;
|
|
47
|
+
}
|
|
48
|
+
&.avatar-offline:after {
|
|
49
|
+
background-color: $secondary;
|
|
50
|
+
}
|
|
51
|
+
&.avatar-away:after {
|
|
52
|
+
background-color: $warning;
|
|
53
|
+
}
|
|
54
|
+
&.avatar-busy:after {
|
|
55
|
+
background-color: $danger;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// Pull up avatar style
|
|
60
|
+
.pull-up {
|
|
61
|
+
transition: all 0.25s ease;
|
|
62
|
+
&:hover {
|
|
63
|
+
transform: translateY(-4px) scale(1.02);
|
|
64
|
+
box-shadow: $box-shadow;
|
|
65
|
+
z-index: 30;
|
|
66
|
+
border-radius: 50%;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// Avatar Sizes
|
|
71
|
+
.avatar-xs {
|
|
72
|
+
@include template-avatar-style($avatar-size-xs, $avatar-size-xs, $avatar-initial-xs, 1px);
|
|
73
|
+
}
|
|
74
|
+
.avatar-sm {
|
|
75
|
+
@include template-avatar-style($avatar-size-sm, $avatar-size-sm, $avatar-initial-sm, 2px);
|
|
76
|
+
}
|
|
77
|
+
.avatar-md {
|
|
78
|
+
@include template-avatar-style($avatar-size-md, $avatar-size-md, $avatar-initial-md, 4px);
|
|
79
|
+
}
|
|
80
|
+
.avatar-lg {
|
|
81
|
+
@include template-avatar-style($avatar-size-lg, $avatar-size-lg, $avatar-initial-lg, 5px);
|
|
82
|
+
}
|
|
83
|
+
.avatar-xl {
|
|
84
|
+
@include template-avatar-style($avatar-size-xl, $avatar-size-xl, $avatar-initial-xl, 6px);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// Avatar Group SCSS
|
|
88
|
+
.avatar-group {
|
|
89
|
+
.avatar {
|
|
90
|
+
transition: all 0.25s ease;
|
|
91
|
+
img,
|
|
92
|
+
.avatar-initial {
|
|
93
|
+
border: 2px solid $avatar-group-border;
|
|
94
|
+
// box-shadow: 0 0 0 2px $avatar-group-border, inset 0 0 0 1px rgba($black, 0.07); //0 2px 10px 0 rgba($secondary,.3);
|
|
95
|
+
}
|
|
96
|
+
.avatar-initial {
|
|
97
|
+
background-color: tint-color($secondary, 20%);
|
|
98
|
+
}
|
|
99
|
+
&:hover {
|
|
100
|
+
z-index: 30;
|
|
101
|
+
transition: all 0.25s ease;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
// Avatar Group Sizings
|
|
105
|
+
.avatar {
|
|
106
|
+
margin-left: -0.8rem;
|
|
107
|
+
&:first-child {
|
|
108
|
+
margin-left: 0;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
.avatar-xs {
|
|
112
|
+
margin-left: -0.65rem;
|
|
113
|
+
}
|
|
114
|
+
.avatar-sm {
|
|
115
|
+
margin-left: -0.75rem;
|
|
116
|
+
}
|
|
117
|
+
.avatar-md {
|
|
118
|
+
margin-left: -0.9rem;
|
|
119
|
+
}
|
|
120
|
+
.avatar-lg {
|
|
121
|
+
margin-left: -1.5rem;
|
|
122
|
+
}
|
|
123
|
+
.avatar-xl {
|
|
124
|
+
margin-left: -1.75rem;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
// Base
|
|
2
|
+
// *******************************************************************************
|
|
3
|
+
|
|
4
|
+
body {
|
|
5
|
+
text-rendering: optimizeLegibility;
|
|
6
|
+
font-smoothing: antialiased;
|
|
7
|
+
-moz-font-feature-settings: 'liga' on;
|
|
8
|
+
-webkit-font-smoothing: antialiased;
|
|
9
|
+
-moz-osx-font-smoothing: grayscale;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@include media-breakpoint-up(md) {
|
|
13
|
+
button.list-group-item {
|
|
14
|
+
outline: none;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
// * App Overlay
|
|
19
|
+
// *******************************************************************************
|
|
20
|
+
|
|
21
|
+
.app-overlay {
|
|
22
|
+
position: absolute;
|
|
23
|
+
top: 0;
|
|
24
|
+
left: 0;
|
|
25
|
+
right: 0;
|
|
26
|
+
bottom: 0;
|
|
27
|
+
background-color: rgba($black, 0.5);
|
|
28
|
+
visibility: hidden;
|
|
29
|
+
z-index: 3;
|
|
30
|
+
transition: all 0.25s ease;
|
|
31
|
+
&.show {
|
|
32
|
+
visibility: visible;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// * Containers
|
|
37
|
+
// *******************************************************************************
|
|
38
|
+
|
|
39
|
+
.container,
|
|
40
|
+
.container-fluid,
|
|
41
|
+
.container-xxl {
|
|
42
|
+
padding-right: $container-padding-x-sm;
|
|
43
|
+
padding-left: $container-padding-x-sm;
|
|
44
|
+
|
|
45
|
+
@include media-breakpoint-up(lg) {
|
|
46
|
+
padding-right: $container-padding-x;
|
|
47
|
+
padding-left: $container-padding-x;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// * Thumbnails
|
|
52
|
+
// *******************************************************************************
|
|
53
|
+
|
|
54
|
+
.img-thumbnail {
|
|
55
|
+
position: relative;
|
|
56
|
+
display: block;
|
|
57
|
+
img {
|
|
58
|
+
z-index: 1;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
.img-thumbnail-content {
|
|
62
|
+
position: absolute;
|
|
63
|
+
top: 50%;
|
|
64
|
+
left: 50%;
|
|
65
|
+
z-index: 3;
|
|
66
|
+
display: block;
|
|
67
|
+
opacity: 0;
|
|
68
|
+
transition: all 0.2s ease-in-out;
|
|
69
|
+
transform: translate(-50%, -50%);
|
|
70
|
+
|
|
71
|
+
.img-thumbnail:hover &,
|
|
72
|
+
.img-thumbnail:focus & {
|
|
73
|
+
opacity: 1;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// Overlay effect
|
|
78
|
+
.img-thumbnail-overlay {
|
|
79
|
+
position: absolute;
|
|
80
|
+
top: 0;
|
|
81
|
+
right: 0;
|
|
82
|
+
bottom: 0;
|
|
83
|
+
left: 0;
|
|
84
|
+
z-index: 2;
|
|
85
|
+
display: block;
|
|
86
|
+
transition: all 0.2s ease-in-out;
|
|
87
|
+
|
|
88
|
+
.img-thumbnail:not(:hover):not(:focus) & {
|
|
89
|
+
opacity: 0 !important;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.img-thumbnail-shadow {
|
|
94
|
+
transition: box-shadow 0.2s;
|
|
95
|
+
|
|
96
|
+
&:hover,
|
|
97
|
+
&:focus {
|
|
98
|
+
box-shadow: 0 5px 20px rgba($black, 0.4);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
// Zoom-in effect
|
|
103
|
+
.img-thumbnail-zoom-in {
|
|
104
|
+
overflow: hidden;
|
|
105
|
+
|
|
106
|
+
img {
|
|
107
|
+
transition: all 0.3s ease-in-out;
|
|
108
|
+
transform: translate3d(0);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.img-thumbnail-content {
|
|
112
|
+
transform: translate(-50%, -50%) scale(0.6);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
&:hover,
|
|
116
|
+
&:focus {
|
|
117
|
+
img {
|
|
118
|
+
transform: scale(1.1);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.img-thumbnail-content {
|
|
122
|
+
transform: translate(-50%, -50%) scale(1);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// * IE Fixes
|
|
128
|
+
// *******************************************************************************
|
|
129
|
+
|
|
130
|
+
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
|
|
131
|
+
// Fix IE parent container height bug when containing image with fluid width
|
|
132
|
+
.card,
|
|
133
|
+
.card-body,
|
|
134
|
+
.media,
|
|
135
|
+
.flex-column,
|
|
136
|
+
.tab-content {
|
|
137
|
+
min-height: 1px;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
img {
|
|
141
|
+
min-height: 1px;
|
|
142
|
+
height: auto;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
// * Buy now section
|
|
147
|
+
// *******************************************************************************
|
|
148
|
+
.buy-now {
|
|
149
|
+
.btn-buy-now {
|
|
150
|
+
position: fixed;
|
|
151
|
+
bottom: 3rem;
|
|
152
|
+
right: $container-padding-x;
|
|
153
|
+
z-index: $zindex-menu-fixed;
|
|
154
|
+
box-shadow: 0 1px 20px 1px $danger;
|
|
155
|
+
&:hover {
|
|
156
|
+
box-shadow: none;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
// * Common
|
|
2
|
+
// *******************************************************************************
|
|
3
|
+
|
|
4
|
+
@use '../_bootstrap-extended/include' as light;
|
|
5
|
+
|
|
6
|
+
.ui-square,
|
|
7
|
+
.ui-rect,
|
|
8
|
+
.ui-rect-30,
|
|
9
|
+
.ui-rect-60,
|
|
10
|
+
.ui-rect-67,
|
|
11
|
+
.ui-rect-75 {
|
|
12
|
+
position: relative !important;
|
|
13
|
+
display: block !important;
|
|
14
|
+
padding-top: 100% !important;
|
|
15
|
+
width: 100% !important;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.ui-square {
|
|
19
|
+
padding-top: 100% !important;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.ui-rect {
|
|
23
|
+
padding-top: 50% !important;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.ui-rect-30 {
|
|
27
|
+
padding-top: 30% !important;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.ui-rect-60 {
|
|
31
|
+
padding-top: 60% !important;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.ui-rect-67 {
|
|
35
|
+
padding-top: 67% !important;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.ui-rect-75 {
|
|
39
|
+
padding-top: 75% !important;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.ui-square-content,
|
|
43
|
+
.ui-rect-content {
|
|
44
|
+
position: absolute !important;
|
|
45
|
+
top: 0 !important;
|
|
46
|
+
right: 0 !important;
|
|
47
|
+
bottom: 0 !important;
|
|
48
|
+
left: 0 !important;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.text-strike-through {
|
|
52
|
+
text-decoration: line-through;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// * Line Clamp with ellipsis
|
|
56
|
+
// *******************************************************************************
|
|
57
|
+
|
|
58
|
+
$clamp-numbers: (
|
|
59
|
+
'1': 1,
|
|
60
|
+
'2': 2,
|
|
61
|
+
'3': 3
|
|
62
|
+
) !default;
|
|
63
|
+
|
|
64
|
+
@each $clamp-class, $clamp-value in $clamp-numbers {
|
|
65
|
+
.line-clamp-#{$clamp-class} {
|
|
66
|
+
overflow: hidden;
|
|
67
|
+
display: -webkit-box;
|
|
68
|
+
-webkit-line-clamp: $clamp-value;
|
|
69
|
+
-webkit-box-orient: vertical;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
// * Stars
|
|
74
|
+
// *******************************************************************************
|
|
75
|
+
|
|
76
|
+
.ui-stars,
|
|
77
|
+
.ui-star,
|
|
78
|
+
.ui-star > * {
|
|
79
|
+
height: $ui-star-size;
|
|
80
|
+
|
|
81
|
+
// Disable dragging
|
|
82
|
+
-webkit-user-drag: none;
|
|
83
|
+
-khtml-user-drag: none;
|
|
84
|
+
-moz-user-drag: none;
|
|
85
|
+
-o-user-drag: none;
|
|
86
|
+
user-drag: none;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.ui-stars {
|
|
90
|
+
display: inline-block;
|
|
91
|
+
vertical-align: middle;
|
|
92
|
+
white-space: nowrap;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.ui-star {
|
|
96
|
+
position: relative;
|
|
97
|
+
display: block;
|
|
98
|
+
float: left;
|
|
99
|
+
width: $ui-star-size;
|
|
100
|
+
height: $ui-star-size;
|
|
101
|
+
text-decoration: none !important;
|
|
102
|
+
font-size: $ui-star-size;
|
|
103
|
+
line-height: 1;
|
|
104
|
+
user-select: none;
|
|
105
|
+
|
|
106
|
+
& + & {
|
|
107
|
+
margin-left: $ui-stars-spacer;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
> *,
|
|
111
|
+
> *::before,
|
|
112
|
+
> *::after {
|
|
113
|
+
position: absolute;
|
|
114
|
+
left: $ui-star-size * 0.5;
|
|
115
|
+
height: 100%;
|
|
116
|
+
font-size: 1em;
|
|
117
|
+
line-height: 1;
|
|
118
|
+
transform: translateX(-50%);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
> * {
|
|
122
|
+
top: 0;
|
|
123
|
+
width: 100%;
|
|
124
|
+
text-align: center;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
> *:first-child {
|
|
128
|
+
z-index: 10;
|
|
129
|
+
display: none;
|
|
130
|
+
overflow: hidden;
|
|
131
|
+
color: $ui-star-filled-color;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
// Default icon
|
|
135
|
+
> *:last-child {
|
|
136
|
+
z-index: 5;
|
|
137
|
+
display: block;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
&.half-filled > *:first-child {
|
|
141
|
+
width: 50%;
|
|
142
|
+
transform: translateX(-100%);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
&.filled > *:first-child,
|
|
146
|
+
&.half-filled > *:first-child {
|
|
147
|
+
display: block;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
&.filled > *:last-child {
|
|
151
|
+
display: none;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
// Hoverable
|
|
156
|
+
|
|
157
|
+
.ui-stars.hoverable .ui-star > *:first-child {
|
|
158
|
+
display: block;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
// Empty stars if first star is not filled
|
|
162
|
+
.ui-stars.hoverable .ui-star:first-child:not(.filled),
|
|
163
|
+
.ui-stars.hoverable .ui-star:first-child:not(.half-filled) {
|
|
164
|
+
> *:first-child,
|
|
165
|
+
~ .ui-star > *:first-child {
|
|
166
|
+
display: none;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
.ui-stars.hoverable .ui-star.filled > *:first-child,
|
|
171
|
+
.ui-stars.hoverable .ui-star.half-filled > *:first-child {
|
|
172
|
+
display: block !important;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
.ui-stars.hoverable:hover .ui-star > *:first-child {
|
|
176
|
+
display: block !important;
|
|
177
|
+
width: 100% !important;
|
|
178
|
+
transform: translateX(-50%) !important;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
.ui-stars.hoverable .ui-star:hover ~ .ui-star {
|
|
182
|
+
> *:first-child {
|
|
183
|
+
display: none !important;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
> *:last-child {
|
|
187
|
+
display: block !important;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
// * Background
|
|
192
|
+
// *******************************************************************************
|
|
193
|
+
|
|
194
|
+
.ui-bg-cover {
|
|
195
|
+
background-color: rgba(0, 0, 0, 0);
|
|
196
|
+
background-position: center center;
|
|
197
|
+
background-size: cover;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
.ui-bg-overlay-container,
|
|
201
|
+
.ui-bg-video-container {
|
|
202
|
+
position: relative;
|
|
203
|
+
|
|
204
|
+
> * {
|
|
205
|
+
position: relative;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
.ui-bg-overlay-container .ui-bg-overlay {
|
|
210
|
+
position: absolute;
|
|
211
|
+
top: 0;
|
|
212
|
+
right: 0;
|
|
213
|
+
bottom: 0;
|
|
214
|
+
left: 0;
|
|
215
|
+
display: block;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
// * Styles
|
|
219
|
+
// *******************************************************************************
|
|
220
|
+
@if not $dark-style {
|
|
221
|
+
.light-style {
|
|
222
|
+
$ui-star-empty-color: light.$gray-200;
|
|
223
|
+
|
|
224
|
+
.ui-bordered {
|
|
225
|
+
border: 1px solid light.$border-color;
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
.ui-star > *:last-child {
|
|
229
|
+
color: $ui-star-empty-color;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// Footer
|
|
2
|
+
// *******************************************************************************
|
|
3
|
+
|
|
4
|
+
.footer-link {
|
|
5
|
+
display: inline-block;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
// Light footer
|
|
9
|
+
.footer-light {
|
|
10
|
+
color: $navbar-light-color;
|
|
11
|
+
|
|
12
|
+
.footer-text {
|
|
13
|
+
color: $navbar-light-active-color;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.footer-link {
|
|
17
|
+
color: $navbar-light-color;
|
|
18
|
+
|
|
19
|
+
&:hover,
|
|
20
|
+
&:focus {
|
|
21
|
+
color: $navbar-light-hover-color;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
&.disabled {
|
|
25
|
+
color: $navbar-light-disabled-color !important;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.show > .footer-link,
|
|
30
|
+
.active > .footer-link,
|
|
31
|
+
.footer-link.show,
|
|
32
|
+
.footer-link.active {
|
|
33
|
+
color: $navbar-light-active-color;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
hr {
|
|
37
|
+
border-color: $menu-light-border-color;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// Include
|
|
2
|
+
// *******************************************************************************
|
|
3
|
+
|
|
4
|
+
@import '../_bootstrap-extended/include';
|
|
5
|
+
|
|
6
|
+
//Mixins
|
|
7
|
+
@import './_mixins'; // Components mixins
|
|
8
|
+
|
|
9
|
+
//Components variables
|
|
10
|
+
@import '../_custom-variables/components'; // Components variable (for customization purpose)
|
|
11
|
+
@import 'variables'; // Components variable
|