mvpkit 1.1.2 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -24
- data/README.md +43 -48
- data/VERSION +1 -1
- data/bin/mvp +2 -2
- data/config/routes.rb +0 -4
- data/mvpkit.gemspec +57 -129
- data/package.json +3 -22
- data/project/.babelrc +23 -1
- data/project/.gitignore +2 -0
- data/project/.postcssrc.yml +4 -0
- data/project/Gemfile +21 -13
- data/project/Gemfile.lock +181 -153
- data/project/Procfile +1 -1
- data/project/README.md +2 -116
- data/project/app/assets/javascripts/application.js +0 -8
- data/project/app/assets/stylesheets/application.scss +9 -3
- data/project/app/assets/stylesheets/elements/alerts.scss +10 -0
- data/project/app/assets/stylesheets/elements/badges.scss +16 -0
- data/project/app/assets/stylesheets/elements/buttons.scss +107 -0
- data/project/app/assets/stylesheets/elements/cards.scss +68 -0
- data/project/app/assets/stylesheets/elements/drawer.scss +66 -0
- data/project/app/assets/stylesheets/elements/forms.scss +64 -0
- data/project/app/assets/stylesheets/elements/interstitial.scss +24 -0
- data/project/app/assets/stylesheets/elements/navs.scss +15 -0
- data/project/app/assets/stylesheets/elements/sidebar.scss +30 -0
- data/project/app/assets/stylesheets/elements/tables.scss +61 -0
- data/project/app/assets/stylesheets/elements/timeline.scss +38 -0
- data/project/app/assets/stylesheets/elements/typography.scss +80 -0
- data/project/app/assets/stylesheets/init/bootstrap.scss +53 -0
- data/project/app/assets/stylesheets/init/reset.scss +20 -0
- data/project/app/assets/stylesheets/init/variables.scss +40 -0
- data/project/app/assets/stylesheets/treatments/backgrounds.scss +23 -0
- data/project/app/assets/stylesheets/treatments/borders.scss +7 -0
- data/project/app/{webpack/stylesheets/skin → assets/stylesheets/treatments}/spacing.scss +4 -10
- data/{app/controllers/mvp → project/app/controllers}/analytics_controller.rb +0 -0
- data/{app/controllers/concerns/mvp → project/app/controllers/concerns}/analytics_concern.rb +0 -0
- data/{app/controllers/concerns/mvp → project/app/controllers/concerns}/seo_concern.rb +0 -0
- data/{app/controllers/concerns/mvp → project/app/controllers/concerns}/session_concern.rb +0 -0
- data/project/app/controllers/conversions_controller.rb +1 -2
- data/{app/controllers/mvp → project/app/controllers}/seo_controller.rb +0 -0
- data/project/app/engines/admin/app/views/layouts/admin/_header.html.erb +18 -18
- data/project/app/helpers/application_helper.rb +0 -14
- data/{app/assets/stylesheets/mvp/application.scss → project/app/javascript/components/.gitkeep} +0 -0
- data/project/app/javascript/components/conversion.jsx +73 -0
- data/project/app/javascript/packs/application.js +28 -0
- data/project/app/javascript/packs/server_rendering.js +5 -0
- data/project/app/models/conversion.rb +1 -1
- data/project/app/views/conversions/show.json.jbuilder +1 -0
- data/project/app/views/home/index.html.erb +22 -22
- data/project/app/views/layouts/_header.html.erb +35 -34
- data/{app/views/layouts/mvp → project/app/views/layouts}/_instrumentation.html.erb +0 -0
- data/{app/views/layouts/mvp → project/app/views/layouts}/_meta.html.erb +0 -0
- data/project/app/views/layouts/application.html.erb +31 -21
- data/project/bin/setup +1 -1
- data/project/bin/webpack +28 -0
- data/project/bin/webpack-dev-server +43 -0
- data/project/config/initializers/assets.rb +2 -0
- data/{config → project/config}/initializers/canonical_host.rb +0 -0
- data/{config → project/config}/initializers/cloudinary.rb +0 -0
- data/{config → project/config}/initializers/rollbar.rb +0 -0
- data/{config → project/config}/initializers/routing.rb +0 -0
- data/{config → project/config}/initializers/spoof_ip.rb +0 -0
- data/{config → project/config}/initializers/ssl.rb +0 -0
- data/project/config/routes.rb +5 -7
- data/project/config/webpack/configuration.js +35 -0
- data/project/config/webpack/development.js +32 -0
- data/project/config/webpack/loaders/assets.js +12 -0
- data/project/config/webpack/loaders/babel.js +5 -0
- data/project/config/webpack/loaders/coffee.js +4 -0
- data/project/config/webpack/loaders/erb.js +9 -0
- data/project/config/webpack/loaders/react.js +5 -0
- data/project/config/webpack/loaders/sass.js +15 -0
- data/project/config/webpack/production.js +35 -0
- data/project/config/webpack/shared.js +58 -0
- data/project/config/webpack/test.js +6 -0
- data/project/config/webpacker.yml +38 -0
- data/project/package-lock.json +250 -0
- data/project/package.json +37 -17
- data/project/yarn.lock +4538 -0
- metadata +56 -326
- data/app/assets/javascripts/mvp/application.js +0 -1
- data/app/controllers/mvp/styleguide_controller.rb +0 -23
- data/app/helpers/minimum_viable_product/body_helper.rb +0 -14
- data/app/helpers/minimum_viable_product/bootstrap_helper.rb +0 -38
- data/app/helpers/minimum_viable_product/styleguide_helper.rb +0 -4
- data/app/models/concerns/mvp/slugification.rb +0 -24
- data/app/views/layouts/mvp/application.html.erb +0 -19
- data/app/views/mvp/styleguide/_example.html.erb +0 -6
- data/app/views/mvp/styleguide/bootstrap.html.erb +0 -43
- data/app/views/mvp/styleguide/bootstrap/_buttons.html.erb +0 -191
- data/app/views/mvp/styleguide/bootstrap/_forms.html.erb +0 -192
- data/app/views/mvp/styleguide/bootstrap/_header.html.erb +0 -48
- data/app/views/mvp/styleguide/bootstrap/_panels.html.erb +0 -16
- data/app/views/mvp/styleguide/bootstrap/_tables.html.erb +0 -34
- data/app/views/mvp/styleguide/bootstrap/_typography.html.erb +0 -51
- data/app/views/mvp/styleguide/elements/_grouping.html.erb +0 -1
- data/app/views/mvp/styleguide/elements/partials/_row_groups_of.html.erb +0 -7
- data/app/views/mvp/styleguide/index.html.erb +0 -17
- data/app/views/mvp/styleguide/layouts/basic.html.erb +0 -4
- data/app/views/mvp/styleguide/layouts/carousel.html.erb +0 -120
- data/app/views/mvp/styleguide/layouts/cover.html.erb +0 -34
- data/config/initializers/assets.rb +0 -2
- data/config/initializers/geocoder.rb +0 -9
- data/project/app/assets/javascripts/pack-compiled.js +0 -37394
- data/project/app/assets/javascripts/pack-compiled.js.map +0 -1
- data/project/app/assets/javascripts/templates.js.erb +0 -14
- data/project/app/assets/stylesheets/pack-compiled.css +0 -33946
- data/project/app/assets/stylesheets/pack-compiled.css.map +0 -1
- data/project/app/controllers/examples_controller.rb +0 -2
- data/project/app/views/examples/index.html.erb +0 -1
- data/project/app/views/examples/mustache.html.erb +0 -40
- data/project/app/views/examples/mustache/template.mustache +0 -1
- data/project/app/views/home/conversion.html.erb +0 -12
- data/project/app/webpack/javascripts/behaviors/example.js +0 -21
- data/project/app/webpack/javascripts/controllers/home.js +0 -15
- data/project/app/webpack/javascripts/lib/analytics.js +0 -22
- data/project/app/webpack/javascripts/lib/clientsidevalidations.js +0 -3
- data/project/app/webpack/javascripts/lib/controllers.js +0 -28
- data/project/app/webpack/javascripts/lib/forms.js +0 -28
- data/project/app/webpack/javascripts/lib/selectize.js +0 -1
- data/project/app/webpack/javascripts/pack.js +0 -50
- data/project/app/webpack/stylesheets/config/variables.scss +0 -41
- data/project/app/webpack/stylesheets/init/reset.scss +0 -48
- data/project/app/webpack/stylesheets/layout/main.scss +0 -7
- data/project/app/webpack/stylesheets/pack.scss +0 -20
- data/project/app/webpack/stylesheets/skin/alerts.scss +0 -3
- data/project/app/webpack/stylesheets/skin/buttons.scss +0 -38
- data/project/app/webpack/stylesheets/skin/hero.scss +0 -45
- data/project/app/webpack/stylesheets/skin/images.scss +0 -13
- data/project/app/webpack/stylesheets/skin/progress.scss +0 -3
- data/project/app/webpack/stylesheets/skin/selectize.scss +0 -30
- data/project/app/webpack/stylesheets/skin/tables.scss +0 -24
- data/project/app/webpack/stylesheets/skin/treatments.scss +0 -3
- data/project/app/webpack/stylesheets/skin/turbolinks.scss +0 -4
- data/project/app/webpack/stylesheets/skin/typography.scss +0 -116
- data/project/webpack.config.js +0 -76
data/project/Procfile
CHANGED
data/project/README.md
CHANGED
@@ -1,116 +1,2 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
Install the mvp gem:
|
4
|
-
|
5
|
-
```
|
6
|
-
gem install mvpkit
|
7
|
-
```
|
8
|
-
|
9
|
-
Then setup your project:
|
10
|
-
|
11
|
-
```
|
12
|
-
mvp new PROJECT
|
13
|
-
```
|
14
|
-
|
15
|
-
# Setup
|
16
|
-
|
17
|
-
## `.env`
|
18
|
-
|
19
|
-
Set your `.env` file up with your own variables
|
20
|
-
|
21
|
-
```
|
22
|
-
ROLLBAR_CLIENT_ACCESS_TOKEN=
|
23
|
-
ROLLBAR_SERVER_ACCESS_TOKEN=
|
24
|
-
SEGMENT_WRITE_KEY=
|
25
|
-
FACEBOOK_TRACKING_ID=
|
26
|
-
CANONICAL_HOST=
|
27
|
-
GOOGLE_ANALYTICS_ID=
|
28
|
-
HOTJAR_ID=
|
29
|
-
AWS_ACCESS_KEY_ID=
|
30
|
-
AWS_SECRET_ACCESS_KEY=
|
31
|
-
AWS_S3_BUCKET=
|
32
|
-
SPOOF_IP=true
|
33
|
-
```
|
34
|
-
|
35
|
-
## Heroku
|
36
|
-
|
37
|
-
To setup deployment for heroku, first create the project:
|
38
|
-
|
39
|
-
```
|
40
|
-
heroku create PROJECT
|
41
|
-
```
|
42
|
-
|
43
|
-
You're probably going to want Database backups. This will let you use `rake db:import`
|
44
|
-
|
45
|
-
```
|
46
|
-
heroku pg:backups capture
|
47
|
-
```
|
48
|
-
|
49
|
-
You're also going to need to setup the buildpacks
|
50
|
-
|
51
|
-
```
|
52
|
-
heroku buildpacks:set heroku/ruby
|
53
|
-
heroku buildpacks:add --index 1 heroku/nodejs
|
54
|
-
```
|
55
|
-
|
56
|
-
Add a scheduled task to update your sitemaps: `rake sitemap:create_upload_and_ping`
|
57
|
-
|
58
|
-
# SEO
|
59
|
-
|
60
|
-
## Meta Properties
|
61
|
-
|
62
|
-
All meta fields are controlled via the `page` object. Set attributes on this in order to get meta properties populated. This is best done at the controller level.
|
63
|
-
|
64
|
-
### Available Properties
|
65
|
-
|
66
|
-
|Property|Description|Inheritance|
|
67
|
-
|---|---|---|
|
68
|
-
|`page.title`| | |
|
69
|
-
|`page.description`| | |
|
70
|
-
|`page.author`| | |
|
71
|
-
|`page.og_url`| | |
|
72
|
-
|`page.og_type`| | |
|
73
|
-
|`page.og_title`| |`page.title`|
|
74
|
-
|`page.og_description`| |`page.description`|
|
75
|
-
|`page.og_image`| | |
|
76
|
-
|`page.twitter_card`| | | |
|
77
|
-
|
78
|
-
## Sitemaps
|
79
|
-
|
80
|
-
### Setup
|
81
|
-
|
82
|
-
Edit `config/sitemap.rb` with your own custom routes.
|
83
|
-
|
84
|
-
### Updating
|
85
|
-
|
86
|
-
Run `sitemap:refresh` in production to update Bing/Google with changes to the sitemap.
|
87
|
-
|
88
|
-
Put this in a `cron` task or in Heroku Scheduler.
|
89
|
-
|
90
|
-
# Helpers
|
91
|
-
|
92
|
-
## Geolocation
|
93
|
-
|
94
|
-
By default, Geolocation of the session will automatically happen.
|
95
|
-
|
96
|
-
You can access the session's geolocation in `request.location`.
|
97
|
-
|
98
|
-
To test geolocation locally, set `SPOOF_IP=true` in your `.env`.
|
99
|
-
|
100
|
-
For more info see [Geocoder](https://github.com/alexreisner/geocoder).
|
101
|
-
|
102
|
-
## Bootstrap
|
103
|
-
|
104
|
-
### `row_groups_of`
|
105
|
-
|
106
|
-
Makes a series of row/col `div` elements based in group count.
|
107
|
-
|
108
|
-
```
|
109
|
-
<% row_groups_of(3, [1,2,3,4,5,6,7,8,9]) do |i| %>
|
110
|
-
<div class="panel panel-default">
|
111
|
-
<div class="panel-heading">
|
112
|
-
<h2 class="text-center"><%= i %></h2>
|
113
|
-
</div>
|
114
|
-
</div>
|
115
|
-
<% end %>
|
116
|
-
```
|
1
|
+
Automatically generated file,
|
2
|
+
see [mvpkit](http:github.com/ian/mvpkit) for more information.
|
@@ -1,4 +1,10 @@
|
|
1
|
-
|
1
|
+
@import "init/variables";
|
2
2
|
|
3
|
-
@import
|
4
|
-
@import "
|
3
|
+
@import 'font-awesome/scss/font-awesome';
|
4
|
+
@import "init/bootstrap";
|
5
|
+
@import "bootstrap/scss/bootstrap";
|
6
|
+
|
7
|
+
@import "init/reset";
|
8
|
+
|
9
|
+
@import "elements/*";
|
10
|
+
@import "treatments/*";
|
@@ -0,0 +1,16 @@
|
|
1
|
+
.badge {
|
2
|
+
padding: 0.5em 0.6em 0.25em 0.6em;
|
3
|
+
|
4
|
+
&.badge-outline-success {
|
5
|
+
color: $brand-success;
|
6
|
+
border: 1px solid $brand-success;
|
7
|
+
}
|
8
|
+
&.badge-outline-warning {
|
9
|
+
color: $brand-warning;
|
10
|
+
border: 1px solid $brand-warning;
|
11
|
+
}
|
12
|
+
&.badge-outline-danger {
|
13
|
+
color: $brand-danger;
|
14
|
+
border: 1px solid $brand-danger;
|
15
|
+
}
|
16
|
+
}
|
@@ -0,0 +1,107 @@
|
|
1
|
+
@import 'init/variables';
|
2
|
+
|
3
|
+
.btn {
|
4
|
+
box-shadow: 0 1px 2px 0 rgba(106, 116, 135, 0.1);
|
5
|
+
padding: 8px 15px 5px 15px;
|
6
|
+
|
7
|
+
&:hover {
|
8
|
+
cursor: pointer;
|
9
|
+
}
|
10
|
+
|
11
|
+
&.btn-lg {
|
12
|
+
padding: 9px 15px 5px 15px
|
13
|
+
}
|
14
|
+
|
15
|
+
&.btn-sm {
|
16
|
+
padding: 5px 5px 3px 5px
|
17
|
+
}
|
18
|
+
|
19
|
+
&.btn-wite {
|
20
|
+
padding-left: 30px;
|
21
|
+
padding-right: 30px;
|
22
|
+
}
|
23
|
+
|
24
|
+
&.btn-secondary {
|
25
|
+
border: solid 1px $color-grey;
|
26
|
+
color: $color-grey-dark;
|
27
|
+
background-color: $color-grey-lightest;
|
28
|
+
|
29
|
+
.fa {
|
30
|
+
color: $color-grey;
|
31
|
+
}
|
32
|
+
|
33
|
+
&:hover {
|
34
|
+
background-color: darken($color-grey-lightest, 5%);
|
35
|
+
}
|
36
|
+
|
37
|
+
&:focus,
|
38
|
+
&:active {
|
39
|
+
outline: none !important;
|
40
|
+
box-shadow: 0 1px 2px 0 rgba(106, 116, 135, 0.1);
|
41
|
+
}
|
42
|
+
|
43
|
+
&.selected {
|
44
|
+
color: $color-grey-lightest;
|
45
|
+
background-color: $color-grey;
|
46
|
+
}
|
47
|
+
}
|
48
|
+
|
49
|
+
&.has-error {
|
50
|
+
border: 1px solid $color-red !important;
|
51
|
+
color: $color-red !important;
|
52
|
+
background-color: #ffebeb !important;
|
53
|
+
|
54
|
+
&:focus {
|
55
|
+
box-shadow: 0 0 0 2px rgba($color-red, 0.5) !important;
|
56
|
+
}
|
57
|
+
|
58
|
+
.fa {
|
59
|
+
color: $color-red !important;
|
60
|
+
}
|
61
|
+
}
|
62
|
+
|
63
|
+
@each $name, $val in $colors {
|
64
|
+
&.btn-#{"" + $name} {
|
65
|
+
@include button-variant(#FFF, $val, $color-grey-light);
|
66
|
+
.fa { color: #fff; }
|
67
|
+
}
|
68
|
+
|
69
|
+
&.btn-outline-#{"" + $name} {
|
70
|
+
@include button-outline-variant($val);
|
71
|
+
border: 1px solid $val;
|
72
|
+
}
|
73
|
+
|
74
|
+
&:active,
|
75
|
+
&.active {
|
76
|
+
&.btn-active-#{"" + $name} {
|
77
|
+
color: #fff;
|
78
|
+
background-color: $val;
|
79
|
+
background-image: none;
|
80
|
+
// border-color: $active-border;
|
81
|
+
// @include box-shadow($btn-active-box-shadow);
|
82
|
+
|
83
|
+
.fa { color: #fff; }
|
84
|
+
}
|
85
|
+
}
|
86
|
+
}
|
87
|
+
|
88
|
+
&.disabled {
|
89
|
+
cursor: default;
|
90
|
+
}
|
91
|
+
|
92
|
+
@each $breakpoint in map-keys($grid-breakpoints) {
|
93
|
+
@include media-breakpoint-up($breakpoint) {
|
94
|
+
&.btn-block-#{$breakpoint}-up { width: 100%; display: block }
|
95
|
+
}
|
96
|
+
|
97
|
+
@include media-breakpoint-down($breakpoint) {
|
98
|
+
&.btn-block-#{$breakpoint}-down { width: 100%; display: block }
|
99
|
+
}
|
100
|
+
}
|
101
|
+
}
|
102
|
+
|
103
|
+
.btn-group {
|
104
|
+
.btn {
|
105
|
+
padding: 8px 10px 5px 10px;
|
106
|
+
}
|
107
|
+
}
|
@@ -0,0 +1,68 @@
|
|
1
|
+
@import 'init/variables';
|
2
|
+
|
3
|
+
.card {
|
4
|
+
border-radius: $border-radius;
|
5
|
+
background-color: #ffffff;
|
6
|
+
box-shadow: 0 1px 7px 0 rgba(180, 189, 195, 0.27);
|
7
|
+
border: 1px solid $color-grey;
|
8
|
+
|
9
|
+
.card-title {
|
10
|
+
margin-bottom: 0;
|
11
|
+
}
|
12
|
+
|
13
|
+
&.card-hover {
|
14
|
+
&:hover {
|
15
|
+
cursor: pointer;
|
16
|
+
background-color: $color-grey-lightest;
|
17
|
+
}
|
18
|
+
}
|
19
|
+
|
20
|
+
.card-block {
|
21
|
+
padding: 20px;
|
22
|
+
}
|
23
|
+
|
24
|
+
&.card-success {
|
25
|
+
box-shadow: 0 1px 7px 0 rgba($color-green, 0.27);
|
26
|
+
border: 1px solid $color-green;
|
27
|
+
background-color: $color-success-highlight;
|
28
|
+
|
29
|
+
a {
|
30
|
+
color: $color-green;
|
31
|
+
font-weight: bold;
|
32
|
+
}
|
33
|
+
|
34
|
+
&.card-hover:hover {
|
35
|
+
background-color: $color-success-highlight-hover;
|
36
|
+
}
|
37
|
+
}
|
38
|
+
|
39
|
+
&.card-warning {
|
40
|
+
box-shadow: 0 1px 7px 0 rgba($color-red, 0.27);
|
41
|
+
border: 1px solid $color-yellow;
|
42
|
+
background-color: lighten($color-yellow, 40%);
|
43
|
+
|
44
|
+
a {
|
45
|
+
color: $color-yellow;
|
46
|
+
font-weight: bold;
|
47
|
+
}
|
48
|
+
|
49
|
+
&.card-hover:hover {
|
50
|
+
background-color: lighten($color-yellow, 42%);
|
51
|
+
}
|
52
|
+
}
|
53
|
+
|
54
|
+
&.card-danger {
|
55
|
+
box-shadow: 0 1px 7px 0 rgba($color-red, 0.27);
|
56
|
+
border: 1px solid $color-red;
|
57
|
+
background-color: #ffebeb;;
|
58
|
+
|
59
|
+
a {
|
60
|
+
color: $color-red;
|
61
|
+
font-weight: bold;
|
62
|
+
}
|
63
|
+
|
64
|
+
&.card-hover:hover {
|
65
|
+
background-color: lighten(#ffebeb, 2%);
|
66
|
+
}
|
67
|
+
}
|
68
|
+
}
|
@@ -0,0 +1,66 @@
|
|
1
|
+
.drawer {
|
2
|
+
.icon {
|
3
|
+
position: absolute;
|
4
|
+
left: -43px;
|
5
|
+
|
6
|
+
&.prev {
|
7
|
+
top: 65px;
|
8
|
+
}
|
9
|
+
|
10
|
+
&.next {
|
11
|
+
top: 115px;
|
12
|
+
}
|
13
|
+
|
14
|
+
&.disabled {
|
15
|
+
opacity: 0.5;
|
16
|
+
}
|
17
|
+
}
|
18
|
+
|
19
|
+
.modal-dialog {
|
20
|
+
animation-duration: 0.3s;
|
21
|
+
animation-delay: 0s;
|
22
|
+
|
23
|
+
position: absolute;
|
24
|
+
margin: 0;
|
25
|
+
right: 0;
|
26
|
+
width: 100%;
|
27
|
+
height: 100vh;
|
28
|
+
|
29
|
+
@include media-breakpoint-up(md) {
|
30
|
+
width: 40vw;
|
31
|
+
}
|
32
|
+
|
33
|
+
max-width: 100%;
|
34
|
+
|
35
|
+
.modal-content {
|
36
|
+
border-radius: 0;
|
37
|
+
min-height: 100vh;
|
38
|
+
}
|
39
|
+
}
|
40
|
+
|
41
|
+
.modal-container {
|
42
|
+
@include media-breakpoint-up(md) {
|
43
|
+
height: 100vh;
|
44
|
+
overflow: hidden;
|
45
|
+
}
|
46
|
+
}
|
47
|
+
|
48
|
+
&.drawer-wide {
|
49
|
+
.modal-dialog {
|
50
|
+
@include media-breakpoint-up(md) {
|
51
|
+
width: 80vw;
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
|
56
|
+
.modal-content {
|
57
|
+
.row {
|
58
|
+
@each $breakpoint in map-keys($grid-breakpoints) {
|
59
|
+
@include media-breakpoint-up($breakpoint) {
|
60
|
+
margin-left: 0;
|
61
|
+
margin-right: 0;
|
62
|
+
}
|
63
|
+
}
|
64
|
+
}
|
65
|
+
}
|
66
|
+
}
|
@@ -0,0 +1,64 @@
|
|
1
|
+
.form-group {
|
2
|
+
margin-bottom: 0;
|
3
|
+
position: relative;
|
4
|
+
}
|
5
|
+
|
6
|
+
.form-control {
|
7
|
+
padding: 8px 10px 5px 10px;
|
8
|
+
box-shadow: 0 1px 2px 0 rgba(106, 116, 135, 0.1);
|
9
|
+
border-color: $color-grey;
|
10
|
+
border-radius: $border-radius;
|
11
|
+
|
12
|
+
&:focus {
|
13
|
+
border-color: $color-green;
|
14
|
+
box-shadow: none !important;
|
15
|
+
}
|
16
|
+
|
17
|
+
// text areas are diff color for some reason
|
18
|
+
&textarea {
|
19
|
+
color: $color-grey-dark;
|
20
|
+
&:focus {
|
21
|
+
color: $color-grey-dark;
|
22
|
+
}
|
23
|
+
}
|
24
|
+
|
25
|
+
&.has-error {
|
26
|
+
border: 1px solid $color-red !important;
|
27
|
+
color: $color-red !important;
|
28
|
+
background-color: #ffebeb;
|
29
|
+
&:focus {
|
30
|
+
box-shadow: none;
|
31
|
+
}
|
32
|
+
}
|
33
|
+
}
|
34
|
+
|
35
|
+
.custom-control {
|
36
|
+
padding-left: 25px;
|
37
|
+
top: -5px;
|
38
|
+
.custom-control-indicator {
|
39
|
+
width: 1.25rem;
|
40
|
+
height: 1.25rem;
|
41
|
+
top: 0;
|
42
|
+
}
|
43
|
+
}
|
44
|
+
|
45
|
+
.has-feedback {
|
46
|
+
.form-control-feedback-left {
|
47
|
+
position: absolute;
|
48
|
+
line-height: 24px;
|
49
|
+
left: 10px;
|
50
|
+
}
|
51
|
+
|
52
|
+
.form-control-feedback-right {
|
53
|
+
position: absolute;
|
54
|
+
line-height: 24px;
|
55
|
+
right: 10px;
|
56
|
+
}
|
57
|
+
}
|
58
|
+
|
59
|
+
input[type=radio], input[type=checkbox] {
|
60
|
+
transform: scale(1.25);
|
61
|
+
margin: 0;
|
62
|
+
background-color: #990000;
|
63
|
+
border-color: #990000;
|
64
|
+
}
|