` elements
53 | a.btn.disabled,
54 | fieldset:disabled a.btn {
55 | pointer-events: none;
56 | }
57 |
58 |
59 | //
60 | // Alternate buttons
61 | //
62 |
63 | @each $color, $value in $theme-colors {
64 | .btn-#{$color} {
65 | @include button-variant($value, $value);
66 | }
67 | }
68 |
69 | @each $color, $value in $theme-colors {
70 | .btn-outline-#{$color} {
71 | @include button-outline-variant($value);
72 | }
73 | }
74 |
75 |
76 | //
77 | // Link buttons
78 | //
79 |
80 | // Make a button look and behave like a link
81 | .btn-link {
82 | font-weight: $font-weight-normal;
83 | color: $link-color;
84 | background-color: transparent;
85 |
86 | @include hover {
87 | color: $link-hover-color;
88 | text-decoration: $link-hover-decoration;
89 | background-color: transparent;
90 | border-color: transparent;
91 | }
92 |
93 | &:focus,
94 | &.focus {
95 | text-decoration: $link-hover-decoration;
96 | border-color: transparent;
97 | box-shadow: none;
98 | }
99 |
100 | &:disabled,
101 | &.disabled {
102 | color: $btn-link-disabled-color;
103 | pointer-events: none;
104 | }
105 |
106 | // No need for an active state here
107 | }
108 |
109 |
110 | //
111 | // Button Sizes
112 | //
113 |
114 | .btn-lg {
115 | @include button-size($btn-padding-y-lg, $btn-padding-x-lg, $font-size-lg, $btn-line-height-lg, $btn-border-radius-lg);
116 | }
117 |
118 | .btn-sm {
119 | @include button-size($btn-padding-y-sm, $btn-padding-x-sm, $font-size-sm, $btn-line-height-sm, $btn-border-radius-sm);
120 | }
121 |
122 |
123 | //
124 | // Block button
125 | //
126 |
127 | .btn-block {
128 | display: block;
129 | width: 100%;
130 |
131 | // Vertically space out multiple block buttons
132 | + .btn-block {
133 | margin-top: $btn-block-spacing-y;
134 | }
135 | }
136 |
137 | // Specificity overrides
138 | input[type="submit"],
139 | input[type="reset"],
140 | input[type="button"] {
141 | &.btn-block {
142 | width: 100%;
143 | }
144 | }
145 |
--------------------------------------------------------------------------------
/landingpage/dist/scss/bootstrap/mixins/_buttons.scss:
--------------------------------------------------------------------------------
1 | // Button variants
2 | //
3 | // Easily pump out default styles, as well as :hover, :focus, :active,
4 | // and disabled options for all buttons
5 |
6 | @mixin button-variant($background, $border, $hover-background: darken($background, 7.5%), $hover-border: darken($border, 10%), $active-background: darken($background, 10%), $active-border: darken($border, 12.5%)) {
7 | color: color-yiq($background);
8 | @include gradient-bg($background);
9 | border-color: $border;
10 | @include box-shadow($btn-box-shadow);
11 |
12 | @include hover {
13 | color: color-yiq($hover-background);
14 | @include gradient-bg($hover-background);
15 | border-color: $hover-border;
16 | }
17 |
18 | &:focus,
19 | &.focus {
20 | // Avoid using mixin so we can pass custom focus shadow properly
21 | @if $enable-shadows {
22 | box-shadow: $btn-box-shadow, 0 0 0 $btn-focus-width rgba($border, .5);
23 | } @else {
24 | box-shadow: 0 0 0 $btn-focus-width rgba($border, .5);
25 | }
26 | }
27 |
28 | // Disabled comes first so active can properly restyle
29 | &.disabled,
30 | &:disabled {
31 | color: color-yiq($background);
32 | background-color: $background;
33 | border-color: $border;
34 | }
35 |
36 | &:not(:disabled):not(.disabled):active,
37 | &:not(:disabled):not(.disabled).active,
38 | .show > &.dropdown-toggle {
39 | color: color-yiq($active-background);
40 | background-color: $active-background;
41 | @if $enable-gradients {
42 | background-image: none; // Remove the gradient for the pressed/active state
43 | }
44 | border-color: $active-border;
45 |
46 | &:focus {
47 | // Avoid using mixin so we can pass custom focus shadow properly
48 | @if $enable-shadows {
49 | box-shadow: $btn-active-box-shadow, 0 0 0 $btn-focus-width rgba($border, .5);
50 | } @else {
51 | box-shadow: 0 0 0 $btn-focus-width rgba($border, .5);
52 | }
53 | }
54 | }
55 | }
56 |
57 | @mixin button-outline-variant($color, $color-hover: color-yiq($color), $active-background: $color, $active-border: $color) {
58 | color: $color;
59 | background-color: transparent;
60 | background-image: none;
61 | border-color: $color;
62 |
63 | &:hover {
64 | color: $color-hover;
65 | background-color: $active-background;
66 | border-color: $active-border;
67 | }
68 |
69 | &:focus,
70 | &.focus {
71 | box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);
72 | }
73 |
74 | &.disabled,
75 | &:disabled {
76 | color: $color;
77 | background-color: transparent;
78 | }
79 |
80 | &:not(:disabled):not(.disabled):active,
81 | &:not(:disabled):not(.disabled).active,
82 | .show > &.dropdown-toggle {
83 | color: color-yiq($active-background);
84 | background-color: $active-background;
85 | border-color: $active-border;
86 |
87 | &:focus {
88 | // Avoid using mixin so we can pass custom focus shadow properly
89 | @if $enable-shadows and $btn-active-box-shadow != none {
90 | box-shadow: $btn-active-box-shadow, 0 0 0 $btn-focus-width rgba($color, .5);
91 | } @else {
92 | box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);
93 | }
94 | }
95 | }
96 | }
97 |
98 | // Button sizes
99 | @mixin button-size($padding-y, $padding-x, $font-size, $line-height, $border-radius) {
100 | padding: $padding-y $padding-x;
101 | font-size: $font-size;
102 | line-height: $line-height;
103 | // Manually declare to provide an override to the browser default
104 | @if $enable-rounded {
105 | border-radius: $border-radius;
106 | } @else {
107 | border-radius: 0;
108 | }
109 | }
110 |
--------------------------------------------------------------------------------
/landingpage/dist/scss/bootstrap/_print.scss:
--------------------------------------------------------------------------------
1 | // stylelint-disable declaration-no-important, selector-no-qualifying-type
2 |
3 | // Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css
4 |
5 | // ==========================================================================
6 | // Print styles.
7 | // Inlined to avoid the additional HTTP request:
8 | // https://www.phpied.com/delay-loading-your-print-css/
9 | // ==========================================================================
10 |
11 | @if $enable-print-styles {
12 | @media print {
13 | *,
14 | *::before,
15 | *::after {
16 | // Bootstrap specific; comment out `color` and `background`
17 | //color: $black !important; // Black prints faster
18 | text-shadow: none !important;
19 | //background: transparent !important;
20 | box-shadow: none !important;
21 | }
22 |
23 | a {
24 | &:not(.btn) {
25 | text-decoration: underline;
26 | }
27 | }
28 |
29 | // Bootstrap specific; comment the following selector out
30 | //a[href]::after {
31 | // content: " (" attr(href) ")";
32 | //}
33 |
34 | abbr[title]::after {
35 | content: " (" attr(title) ")";
36 | }
37 |
38 | // Bootstrap specific; comment the following selector out
39 | //
40 | // Don't show links that are fragment identifiers,
41 | // or use the `javascript:` pseudo protocol
42 | //
43 |
44 | //a[href^="#"]::after,
45 | //a[href^="javascript:"]::after {
46 | // content: "";
47 | //}
48 |
49 | pre {
50 | white-space: pre-wrap !important;
51 | }
52 | pre,
53 | blockquote {
54 | border: $border-width solid $gray-500; // Bootstrap custom code; using `$border-width` instead of 1px
55 | page-break-inside: avoid;
56 | }
57 |
58 | //
59 | // Printing Tables:
60 | // http://css-discuss.incutio.com/wiki/Printing_Tables
61 | //
62 |
63 | thead {
64 | display: table-header-group;
65 | }
66 |
67 | tr,
68 | img {
69 | page-break-inside: avoid;
70 | }
71 |
72 | p,
73 | h2,
74 | h3 {
75 | orphans: 3;
76 | widows: 3;
77 | }
78 |
79 | h2,
80 | h3 {
81 | page-break-after: avoid;
82 | }
83 |
84 | // Bootstrap specific changes start
85 |
86 | // Specify a size and min-width to make printing closer across browsers.
87 | // We don't set margin here because it breaks `size` in Chrome. We also
88 | // don't use `!important` on `size` as it breaks in Chrome.
89 | @page {
90 | size: $print-page-size;
91 | }
92 | body {
93 | min-width: $print-body-min-width !important;
94 | }
95 | .container {
96 | min-width: $print-body-min-width !important;
97 | }
98 |
99 | // Bootstrap components
100 | .navbar {
101 | display: none;
102 | }
103 | .badge {
104 | border: $border-width solid $black;
105 | }
106 |
107 | .table {
108 | border-collapse: collapse !important;
109 |
110 | td,
111 | th {
112 | background-color: $white !important;
113 | }
114 | }
115 |
116 | .table-bordered {
117 | th,
118 | td {
119 | border: 1px solid $gray-300 !important;
120 | }
121 | }
122 |
123 | .table-dark {
124 | color: inherit;
125 |
126 | th,
127 | td,
128 | thead th,
129 | tbody + tbody {
130 | border-color: $table-border-color;
131 | }
132 | }
133 |
134 | .table .thead-dark th {
135 | color: inherit;
136 | border-color: $table-border-color;
137 | }
138 |
139 | // Bootstrap specific changes end
140 | }
141 | }
142 |
--------------------------------------------------------------------------------
/package/components/dashboard/TimelineInbox.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Wordpress
7 | 80%
8 |
9 |
17 |
18 | HTML 5
19 | 90%
20 |
21 |
28 |
29 | jQuery
30 | 50%
31 |
32 |
39 |
40 | Photoshop
41 | 70%
42 |
49 |
50 |
51 | Vuejs
52 | 80%
53 |
60 |
61 |
62 | Nextjs
63 | 50%
64 |
71 |
72 |
73 | Nuxtjs
74 | 90%
75 |
82 |
83 |
84 |
85 | Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim
86 | justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis
87 | eu pede mollis pretium. Integer tincidunt.Cras dapibus. Vivamus elementum
88 | semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor
89 | eu, consequat vitae, eleifend ac, enim.
90 |
91 |
92 | Lorem Ipsum is simply dummy text of the printing and typesetting industry.
93 | Lorem Ipsum has been the industry's standard dummy text ever since the
94 | 1500s, when an unknown printer took a galley of type and scrambled it to
95 | make a type specimen book. It has survived not only five centuries
96 |
97 |
98 | It was popularised in the 1960s with the release of Letraset sheets
99 | containing Lorem Ipsum passages, and more recently with desktop publishing
100 | software like Aldus PageMaker including versions of Lorem Ipsum.
101 |
102 |
103 |
104 |
105 |
106 |
--------------------------------------------------------------------------------
/package/components/dashboard/TotalSales.vue:
--------------------------------------------------------------------------------
1 |
76 |
77 |
78 |
79 |
80 |
81 |
Our Visitors
82 | Different Devices Used to Visit
83 |
84 |
87 |
88 |
89 |
90 |
91 | Mobile
92 |
93 |
94 |
95 | Desktop
96 |
97 |
98 |
99 | Tablet
100 |
101 |
102 |
103 |
104 |
105 |
113 |
--------------------------------------------------------------------------------
/package/components/dashboard/TimelineProfile.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | Full Name
9 |
10 | Johnathan Deo
11 |
12 |
13 | Mobile
14 |
15 | (123) 456 7890
16 |
17 |
18 | Email
19 |
20 | johnathan@admin.com
21 |
22 |
23 | Location
24 |
25 | London
26 |
27 |
28 |
29 |
30 |
31 | Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim
32 | justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis
33 | eu pede mollis pretium. Integer tincidunt.Cras dapibus. Vivamus elementum
34 | semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor
35 | eu, consequat vitae, eleifend ac, enim.
36 |
37 |
38 | Lorem Ipsum is simply dummy text of the printing and typesetting industry.
39 | Lorem Ipsum has been the industry's standard dummy text ever since the
40 | 1500s, when an unknown printer took a galley of type and scrambled it to
41 | make a type specimen book. It has survived not only five centuries
42 |
43 |
44 | It was popularised in the 1960s with the release of Letraset sheets
45 | containing Lorem Ipsum passages, and more recently with desktop publishing
46 | software like Aldus PageMaker including versions of Lorem Ipsum.
47 |
48 |
49 |
Skill Set
50 |
51 |
52 | Wordpress
53 | 80%
54 |
55 |
63 |
64 | HTML 5
65 | 90%
66 |
67 |
74 |
75 | jQuery
76 | 50%
77 |
78 |
85 |
86 | Photoshop
87 | 70%
88 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
--------------------------------------------------------------------------------
/landingpage/assets/plugins/bootstrap/dist/css/bootstrap-reboot.min.css:
--------------------------------------------------------------------------------
1 | /*!
2 | * Bootstrap Reboot v4.1.0 (https://getbootstrap.com/)
3 | * Copyright 2011-2018 The Bootstrap Authors
4 | * Copyright 2011-2018 Twitter, Inc.
5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
6 | * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
7 | */*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}@-ms-viewport{width:device-width}article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}
8 | /*# sourceMappingURL=bootstrap-reboot.min.css.map */
--------------------------------------------------------------------------------
/package/data/dashboard/dashboardData.ts:
--------------------------------------------------------------------------------
1 | import type { recentTrans, productPerformanceType, productsCards } from '@/types/dashboard/index';
2 |
3 | /*--Recent Transaction--*/
4 | const recentTransaction: recentTrans[] = [
5 | {
6 | title: '09:30 am',
7 | subtitle: 'Payment received from John Doe of $385.90',
8 | textcolor: 'primary',
9 | boldtext: false,
10 | line: true,
11 | link: '',
12 | url: ''
13 | },
14 | {
15 | title: '10:00 am',
16 | subtitle: 'New sale recorded',
17 | textcolor: 'secondary',
18 | boldtext: true,
19 | line: true,
20 | link: '#ML-3467',
21 | url: ''
22 | },
23 | {
24 | title: '12:00 am',
25 | subtitle: 'Payment was made of $64.95 to Michael',
26 | textcolor: 'success',
27 | boldtext: false,
28 | line: true,
29 | link: '',
30 | url: ''
31 | },
32 | {
33 | title: '09:30 am',
34 | subtitle: 'New sale recorded',
35 | textcolor: 'warning',
36 | boldtext: true,
37 | line: true,
38 | link: '#ML-3467',
39 | url: ''
40 | },
41 | {
42 | title: '09:30 am',
43 | subtitle: 'New arrival recorded',
44 | textcolor: 'error',
45 | boldtext: true,
46 | line: true,
47 | link: '',
48 | url: ''
49 | },
50 | {
51 | title: '12:00 am',
52 | subtitle: 'Payment Received',
53 | textcolor: 'success',
54 | boldtext: false,
55 | line: false,
56 | link: '',
57 | url: ''
58 | },
59 | ]
60 |
61 | /*Basic Table 1*/
62 | const productPerformance: productPerformanceType[] = [
63 | {
64 | id: 1,
65 | name: 'Sunil Joshi',
66 | post: 'Web Designer',
67 | pname: 'Elite Admin',
68 | status: 'Low',
69 | statuscolor: 'primary',
70 | budget: '$3.9'
71 | },
72 | {
73 | id: 2,
74 | name: 'Andrew McDownland',
75 | post: 'Project Manager',
76 | pname: 'Real Homes WP Theme',
77 | status: 'Medium',
78 | statuscolor: 'secondary',
79 | budget: '$24.5k'
80 | },
81 | {
82 | id: 3,
83 | name: 'Christopher Jamil',
84 | post: 'Project Manager',
85 | pname: 'MedicalPro WP Theme',
86 | status: 'High',
87 | statuscolor: 'error',
88 | budget: '$12.8k'
89 | },
90 | {
91 | id: 4,
92 | name: 'Nirav Joshi',
93 | post: 'Frontend Engineer',
94 | pname: 'Hosting Press HTML',
95 | status: 'Critical',
96 | statuscolor: 'success',
97 | budget: '$2.4k'
98 | }
99 |
100 | ];
101 |
102 | /*--Products Cards--*/
103 | import proimg1 from '/images/products/s4.jpg';
104 | import proimg2 from '/images/products/s5.jpg';
105 | import proimg3 from '/images/products/s7.jpg';
106 | import proimg4 from '/images/products/s11.jpg';
107 | const productsCard: productsCards[] = [
108 | {
109 | title: 'Boat Headphone',
110 | link: '/',
111 | photo: proimg1,
112 | salesPrice: 375,
113 | price: 285,
114 | rating: 4
115 | },
116 | {
117 | title: 'MacBook Air Pro',
118 | link: '/',
119 | photo: proimg2,
120 | salesPrice: 650,
121 | price: 900,
122 | rating: 5
123 | },
124 | {
125 | title: 'Red Valvet Dress',
126 | link: '/',
127 | photo: proimg3,
128 | salesPrice: 150,
129 | price: 200,
130 | rating: 3
131 | },
132 | {
133 | title: 'Cute Soft Teddybear',
134 | link: '/',
135 | photo: proimg4,
136 | salesPrice: 285,
137 | price: 345,
138 | rating: 2
139 | }
140 | ];
141 |
142 |
143 | export { recentTransaction, productPerformance, productsCard }
--------------------------------------------------------------------------------
/landingpage/dist/scss/bootstrap/mixins/_forms.scss:
--------------------------------------------------------------------------------
1 | // Form control focus state
2 | //
3 | // Generate a customized focus state and for any input with the specified color,
4 | // which defaults to the `$input-focus-border-color` variable.
5 | //
6 | // We highly encourage you to not customize the default value, but instead use
7 | // this to tweak colors on an as-needed basis. This aesthetic change is based on
8 | // WebKit's default styles, but applicable to a wider range of browsers. Its
9 | // usability and accessibility should be taken into account with any change.
10 | //
11 | // Example usage: change the default blue border and shadow to white for better
12 | // contrast against a dark gray background.
13 | @mixin form-control-focus() {
14 | &:focus {
15 | color: $input-focus-color;
16 | background-color: $input-focus-bg;
17 | border-color: $input-focus-border-color;
18 | outline: 0;
19 | // Avoid using mixin so we can pass custom focus shadow properly
20 | @if $enable-shadows {
21 | box-shadow: $input-box-shadow, $input-focus-box-shadow;
22 | } @else {
23 | box-shadow: $input-focus-box-shadow;
24 | }
25 | }
26 | }
27 |
28 |
29 | @mixin form-validation-state($state, $color) {
30 | .#{$state}-feedback {
31 | display: none;
32 | width: 100%;
33 | margin-top: $form-feedback-margin-top;
34 | font-size: $form-feedback-font-size;
35 | color: $color;
36 | }
37 |
38 | .#{$state}-tooltip {
39 | position: absolute;
40 | top: 100%;
41 | z-index: 5;
42 | display: none;
43 | max-width: 100%; // Contain to parent when possible
44 | padding: .5rem;
45 | margin-top: .1rem;
46 | font-size: .875rem;
47 | line-height: 1;
48 | color: $white;
49 | background-color: rgba($color, .8);
50 | border-radius: .2rem;
51 | }
52 |
53 | .form-control,
54 | .custom-select {
55 | .was-validated &:#{$state},
56 | &.is-#{$state} {
57 | border-color: $color;
58 |
59 | &:focus {
60 | border-color: $color;
61 | box-shadow: 0 0 0 $input-focus-width rgba($color, .25);
62 | }
63 |
64 | ~ .#{$state}-feedback,
65 | ~ .#{$state}-tooltip {
66 | display: block;
67 | }
68 | }
69 | }
70 |
71 | .form-control-file {
72 | .was-validated &:#{$state},
73 | &.is-#{$state} {
74 | ~ .#{$state}-feedback,
75 | ~ .#{$state}-tooltip {
76 | display: block;
77 | }
78 | }
79 | }
80 |
81 | .form-check-input {
82 | .was-validated &:#{$state},
83 | &.is-#{$state} {
84 | ~ .form-check-label {
85 | color: $color;
86 | }
87 |
88 | ~ .#{$state}-feedback,
89 | ~ .#{$state}-tooltip {
90 | display: block;
91 | }
92 | }
93 | }
94 |
95 | .custom-control-input {
96 | .was-validated &:#{$state},
97 | &.is-#{$state} {
98 | ~ .custom-control-label {
99 | color: $color;
100 |
101 | &::before {
102 | background-color: lighten($color, 25%);
103 | }
104 | }
105 |
106 | ~ .#{$state}-feedback,
107 | ~ .#{$state}-tooltip {
108 | display: block;
109 | }
110 |
111 | &:checked {
112 | ~ .custom-control-label::before {
113 | @include gradient-bg(lighten($color, 10%));
114 | }
115 | }
116 |
117 | &:focus {
118 | ~ .custom-control-label::before {
119 | box-shadow: 0 0 0 1px $body-bg, 0 0 0 $input-focus-width rgba($color, .25);
120 | }
121 | }
122 | }
123 | }
124 |
125 | // custom file
126 | .custom-file-input {
127 | .was-validated &:#{$state},
128 | &.is-#{$state} {
129 | ~ .custom-file-label {
130 | border-color: $color;
131 |
132 | &::before { border-color: inherit; }
133 | }
134 |
135 | ~ .#{$state}-feedback,
136 | ~ .#{$state}-tooltip {
137 | display: block;
138 | }
139 |
140 | &:focus {
141 | ~ .custom-file-label {
142 | box-shadow: 0 0 0 $input-focus-width rgba($color, .25);
143 | }
144 | }
145 | }
146 | }
147 | }
148 |
--------------------------------------------------------------------------------
/package/components/layout/full/Main.vue:
--------------------------------------------------------------------------------
1 |
19 |
20 |
21 |
22 |
23 |
55 |
56 |
57 |
58 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
--------------------------------------------------------------------------------
/landingpage/dist/scss/bootstrap/_tables.scss:
--------------------------------------------------------------------------------
1 | //
2 | // Basic Bootstrap table
3 | //
4 |
5 | .table {
6 | width: 100%;
7 | max-width: 100%;
8 | margin-bottom: $spacer;
9 | background-color: $table-bg; // Reset for nesting within parents with `background-color`.
10 |
11 | th,
12 | td {
13 | padding: $table-cell-padding;
14 | vertical-align: top;
15 | border-top: $table-border-width solid $table-border-color;
16 | }
17 |
18 | thead th {
19 | vertical-align: bottom;
20 | border-bottom: (2 * $table-border-width) solid $table-border-color;
21 | }
22 |
23 | tbody + tbody {
24 | border-top: (2 * $table-border-width) solid $table-border-color;
25 | }
26 |
27 | .table {
28 | background-color: $body-bg;
29 | }
30 | }
31 |
32 |
33 | //
34 | // Condensed table w/ half padding
35 | //
36 |
37 | .table-sm {
38 | th,
39 | td {
40 | padding: $table-cell-padding-sm;
41 | }
42 | }
43 |
44 |
45 | // Border versions
46 | //
47 | // Add or remove borders all around the table and between all the columns.
48 |
49 | .table-bordered {
50 | border: $table-border-width solid $table-border-color;
51 |
52 | th,
53 | td {
54 | border: $table-border-width solid $table-border-color;
55 | }
56 |
57 | thead {
58 | th,
59 | td {
60 | border-bottom-width: (2 * $table-border-width);
61 | }
62 | }
63 | }
64 |
65 | .table-borderless {
66 | th,
67 | td,
68 | thead th,
69 | tbody + tbody {
70 | border: 0;
71 | }
72 | }
73 |
74 | // Zebra-striping
75 | //
76 | // Default zebra-stripe styles (alternating gray and transparent backgrounds)
77 |
78 | .table-striped {
79 | tbody tr:nth-of-type(#{$table-striped-order}) {
80 | background-color: $table-accent-bg;
81 | }
82 | }
83 |
84 |
85 | // Hover effect
86 | //
87 | // Placed here since it has to come after the potential zebra striping
88 |
89 | .table-hover {
90 | tbody tr {
91 | @include hover {
92 | background-color: $table-hover-bg;
93 | }
94 | }
95 | }
96 |
97 |
98 | // Table backgrounds
99 | //
100 | // Exact selectors below required to override `.table-striped` and prevent
101 | // inheritance to nested tables.
102 |
103 | @each $color, $value in $theme-colors {
104 | @include table-row-variant($color, theme-color-level($color, -9));
105 | }
106 |
107 | @include table-row-variant(active, $table-active-bg);
108 |
109 |
110 | // Dark styles
111 | //
112 | // Same table markup, but inverted color scheme: dark background and light text.
113 |
114 | // stylelint-disable-next-line no-duplicate-selectors
115 | .table {
116 | .thead-dark {
117 | th {
118 | color: $table-dark-color;
119 | background-color: $table-dark-bg;
120 | border-color: $table-dark-border-color;
121 | }
122 | }
123 |
124 | .thead-light {
125 | th {
126 | color: $table-head-color;
127 | background-color: $table-head-bg;
128 | border-color: $table-border-color;
129 | }
130 | }
131 | }
132 |
133 | .table-dark {
134 | color: $table-dark-color;
135 | background-color: $table-dark-bg;
136 |
137 | th,
138 | td,
139 | thead th {
140 | border-color: $table-dark-border-color;
141 | }
142 |
143 | &.table-bordered {
144 | border: 0;
145 | }
146 |
147 | &.table-striped {
148 | tbody tr:nth-of-type(odd) {
149 | background-color: $table-dark-accent-bg;
150 | }
151 | }
152 |
153 | &.table-hover {
154 | tbody tr {
155 | @include hover {
156 | background-color: $table-dark-hover-bg;
157 | }
158 | }
159 | }
160 | }
161 |
162 |
163 | // Responsive tables
164 | //
165 | // Generate series of `.table-responsive-*` classes for configuring the screen
166 | // size of where your table will overflow.
167 |
168 | .table-responsive {
169 | @each $breakpoint in map-keys($grid-breakpoints) {
170 | $next: breakpoint-next($breakpoint, $grid-breakpoints);
171 | $infix: breakpoint-infix($next, $grid-breakpoints);
172 |
173 | {$infix} {
174 | @include media-breakpoint-down($breakpoint) {
175 | display: block;
176 | width: 100%;
177 | overflow-x: auto;
178 | -webkit-overflow-scrolling: touch;
179 | -ms-overflow-style: -ms-autohiding-scrollbar; // See https://github.com/twbs/bootstrap/pull/10057
180 |
181 | // Prevent double border on horizontal scroll due to use of `display: block;`
182 | > .table-bordered {
183 | border: 0;
184 | }
185 | }
186 | }
187 | }
188 | }
189 |
--------------------------------------------------------------------------------
/landingpage/dist/scss/bootstrap/_dropdown.scss:
--------------------------------------------------------------------------------
1 | // The dropdown wrapper (``)
2 | .dropup,
3 | .dropright,
4 | .dropdown,
5 | .dropleft {
6 | position: relative;
7 | }
8 |
9 | .dropdown-toggle {
10 | // Generate the caret automatically
11 | @include caret;
12 | }
13 |
14 | // The dropdown menu
15 | .dropdown-menu {
16 | position: absolute;
17 | top: 100%;
18 | left: 0;
19 | z-index: $zindex-dropdown;
20 | display: none; // none by default, but block on "open" of the menu
21 | float: left;
22 | min-width: $dropdown-min-width;
23 | padding: $dropdown-padding-y 0;
24 | margin: $dropdown-spacer 0 0; // override default ul
25 | font-size: $font-size-base; // Redeclare because nesting can cause inheritance issues
26 | color: $body-color;
27 | text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)
28 | list-style: none;
29 | background-color: $dropdown-bg;
30 | background-clip: padding-box;
31 | border: $dropdown-border-width solid $dropdown-border-color;
32 | @include border-radius($dropdown-border-radius);
33 | @include box-shadow($dropdown-box-shadow);
34 | }
35 |
36 | .dropdown-menu-right {
37 | right: 0;
38 | left: auto;
39 | }
40 |
41 | // Allow for dropdowns to go bottom up (aka, dropup-menu)
42 | // Just add .dropup after the standard .dropdown class and you're set.
43 | .dropup {
44 | .dropdown-menu {
45 | top: auto;
46 | bottom: 100%;
47 | margin-top: 0;
48 | margin-bottom: $dropdown-spacer;
49 | }
50 |
51 | .dropdown-toggle {
52 | @include caret(up);
53 | }
54 | }
55 |
56 | .dropright {
57 | .dropdown-menu {
58 | top: 0;
59 | right: auto;
60 | left: 100%;
61 | margin-top: 0;
62 | margin-left: $dropdown-spacer;
63 | }
64 |
65 | .dropdown-toggle {
66 | @include caret(right);
67 | &::after {
68 | vertical-align: 0;
69 | }
70 | }
71 | }
72 |
73 | .dropleft {
74 | .dropdown-menu {
75 | top: 0;
76 | right: 100%;
77 | left: auto;
78 | margin-top: 0;
79 | margin-right: $dropdown-spacer;
80 | }
81 |
82 | .dropdown-toggle {
83 | @include caret(left);
84 | &::before {
85 | vertical-align: 0;
86 | }
87 | }
88 | }
89 |
90 | // When enabled Popper.js, reset basic dropdown position
91 | // stylelint-disable no-duplicate-selectors
92 | .dropdown-menu {
93 | &[x-placement^="top"],
94 | &[x-placement^="right"],
95 | &[x-placement^="bottom"],
96 | &[x-placement^="left"] {
97 | right: auto;
98 | bottom: auto;
99 | }
100 | }
101 | // stylelint-enable no-duplicate-selectors
102 |
103 | // Dividers (basically an `
`) within the dropdown
104 | .dropdown-divider {
105 | @include nav-divider($dropdown-divider-bg);
106 | }
107 |
108 | // Links, buttons, and more within the dropdown menu
109 | //
110 | // `