minimum_viable_product 0.2.7 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/views/layouts/minimum_viable_product/application.html.erb +3 -3
- data/lib/minimum_viable_product/version.rb +1 -1
- metadata +1 -10
- data/app/assets/javascripts/mvp/application.js.erb +0 -55
- data/app/assets/javascripts/mvp/init/controllers.js +0 -23
- data/app/assets/javascripts/mvp/init/forms.js +0 -16
- data/app/assets/javascripts/mvp/init/modals.js +0 -5
- data/app/assets/stylesheets/mvp/application.scss +0 -6
- data/app/assets/stylesheets/mvp/components/spacing.scss +0 -71
- data/app/assets/stylesheets/mvp/components/typography.scss +0 -28
- data/app/assets/stylesheets/mvp/init/bootstrap.scss +0 -42
- data/app/assets/stylesheets/mvp/init/reset.scss +0 -43
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: afb400e0c31a4aca2e08b0626c99c476b53590d0
|
4
|
+
data.tar.gz: 297d6de5487049618600b014ba0003062883c42c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b0b2696726eeffc783a1c791a766693fb9516e401ce9d1742fb9a4a86a6a0f080822dd2add581de64b0ee44ee1b2ba1b618f1c2b67414d17e61b89b965be4f8b
|
7
|
+
data.tar.gz: 3692de9b1d1acc3e97c443461d96b4ad493489f7bbf1b62f9e957f172a1e8c5178338d696a5d687ef77f96b3ca59a3dce66fde0160204d99e8000fef14f0830f
|
@@ -3,13 +3,13 @@
|
|
3
3
|
<head>
|
4
4
|
<%= render('layouts/minimum_viable_product/meta').gsub(/\n/,'').html_safe %>
|
5
5
|
|
6
|
-
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
|
6
|
+
<%= stylesheet_link_tag '/assets/stylesheets/application', media: 'all', 'data-turbolinks-track' => true %>
|
7
7
|
<%= yield :stylesheets %>
|
8
|
-
|
8
|
+
|
9
9
|
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
|
10
10
|
<!--[if lt IE 9]> <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]-->
|
11
11
|
|
12
|
-
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
|
12
|
+
<%= javascript_include_tag '/assets/javascripts/application', 'data-turbolinks-track' => true %>
|
13
13
|
<%= yield :javascripts %>
|
14
14
|
<%= csrf_meta_tags %>
|
15
15
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: minimum_viable_product
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ian Hunter
|
@@ -426,15 +426,6 @@ extra_rdoc_files: []
|
|
426
426
|
files:
|
427
427
|
- MIT-LICENSE
|
428
428
|
- Rakefile
|
429
|
-
- app/assets/javascripts/mvp/application.js.erb
|
430
|
-
- app/assets/javascripts/mvp/init/controllers.js
|
431
|
-
- app/assets/javascripts/mvp/init/forms.js
|
432
|
-
- app/assets/javascripts/mvp/init/modals.js
|
433
|
-
- app/assets/stylesheets/mvp/application.scss
|
434
|
-
- app/assets/stylesheets/mvp/components/spacing.scss
|
435
|
-
- app/assets/stylesheets/mvp/components/typography.scss
|
436
|
-
- app/assets/stylesheets/mvp/init/bootstrap.scss
|
437
|
-
- app/assets/stylesheets/mvp/init/reset.scss
|
438
429
|
- app/controllers/concerns/minimum_viable_product/analytics_concern.rb
|
439
430
|
- app/controllers/concerns/minimum_viable_product/seo_concern.rb
|
440
431
|
- app/controllers/concerns/minimum_viable_product/session_concern.rb
|
@@ -1,55 +0,0 @@
|
|
1
|
-
//= require jquery
|
2
|
-
//= require jquery_ujs
|
3
|
-
//= require jquery.cookie
|
4
|
-
//= require lodash
|
5
|
-
//= require is
|
6
|
-
//= require bootstrap
|
7
|
-
//= require rails.validations
|
8
|
-
//= require rails.validations.simple_form
|
9
|
-
//
|
10
|
-
//= require_tree ./init
|
11
|
-
//
|
12
|
-
//= require_self
|
13
|
-
|
14
|
-
var is = require('is')
|
15
|
-
var _ = require('lodash')
|
16
|
-
|
17
|
-
track = function(event, attributes, fn){
|
18
|
-
console.log("Track: " + event + " " + JSON.stringify(attributes))
|
19
|
-
|
20
|
-
if (is.fn(attributes)) fn = attributes, attributes = null;
|
21
|
-
if (is.undefined(attributes)) { attributes = {} }
|
22
|
-
if ($.cookie('invisible') == "true") {
|
23
|
-
if (!is.undefined(fn)) { fn() }
|
24
|
-
return
|
25
|
-
}
|
26
|
-
|
27
|
-
if (typeof(analytics) == 'undefined') {
|
28
|
-
return
|
29
|
-
}
|
30
|
-
|
31
|
-
attrs = _.extend({
|
32
|
-
iteration: '<%= MVP::Iteration.version %>'
|
33
|
-
}, attributes)
|
34
|
-
|
35
|
-
analytics.track(event, attrs, fn)
|
36
|
-
}
|
37
|
-
|
38
|
-
setupAutomaticTracing = function(){
|
39
|
-
_.each(arguments, function(e){
|
40
|
-
switch (e.toLowerCase()) {
|
41
|
-
case 'buttons':
|
42
|
-
$('.btn').on('click', function(){
|
43
|
-
window.track("Button Clicked", { name: $(this).text() || $(this).attr('value') })
|
44
|
-
})
|
45
|
-
break;
|
46
|
-
case 'links':
|
47
|
-
$('a:not(.btn)').on('click', function(){
|
48
|
-
window.track("Link Clicked", { name: ($(this).text() || $(this).attr('value')) })
|
49
|
-
})
|
50
|
-
break;
|
51
|
-
}
|
52
|
-
})
|
53
|
-
}
|
54
|
-
|
55
|
-
window.track = track;
|
@@ -1,23 +0,0 @@
|
|
1
|
-
window.controllers = {}
|
2
|
-
|
3
|
-
$(function() {
|
4
|
-
var $body = $("body");
|
5
|
-
var controller = $body.data("controller").replace(/\//g, "_");
|
6
|
-
var action = $body.data("action");
|
7
|
-
|
8
|
-
var activeController = window.controllers[controller];
|
9
|
-
|
10
|
-
if (activeController !== undefined) {
|
11
|
-
if (window.env == "development") {
|
12
|
-
console.log("[Controllers] " + controller + "." + action + "()");
|
13
|
-
}
|
14
|
-
|
15
|
-
if ($.isFunction(activeController.init)) {
|
16
|
-
activeController.init();
|
17
|
-
}
|
18
|
-
|
19
|
-
if ($.isFunction(activeController[action])) {
|
20
|
-
activeController[action]();
|
21
|
-
}
|
22
|
-
}
|
23
|
-
});
|
@@ -1,16 +0,0 @@
|
|
1
|
-
$(function(){
|
2
|
-
$('form.no-enter-submit').bind("keypress", function(e) {
|
3
|
-
if (e.keyCode == 13) {
|
4
|
-
e.preventDefault();
|
5
|
-
return false;
|
6
|
-
}
|
7
|
-
});
|
8
|
-
|
9
|
-
$('form.disable-on-submit').on('submit', function(e){
|
10
|
-
$(this).find(".btn").addClass('disabled')
|
11
|
-
})
|
12
|
-
|
13
|
-
ClientSideValidations.callbacks.form.fail = function(form, eventData){
|
14
|
-
$("form.disable-on-submit .btn").removeClass('disabled')
|
15
|
-
}
|
16
|
-
})
|
@@ -1,71 +0,0 @@
|
|
1
|
-
@import 'bootstrap';
|
2
|
-
|
3
|
-
@for $i from 0 through 100 {
|
4
|
-
.mt#{$i} { margin-top: #{$i}px !important; }
|
5
|
-
.mb#{$i} { margin-bottom: #{$i}px !important; }
|
6
|
-
.ml#{$i} { margin-left: #{$i}px !important; }
|
7
|
-
.mr#{$i} { margin-right: #{$i}px !important; }
|
8
|
-
.m#{$i} { margin: #{$i}px !important; }
|
9
|
-
|
10
|
-
.pt#{$i} { padding-top: #{$i}px !important; }
|
11
|
-
.pb#{$i} { padding-bottom: #{$i}px !important; }
|
12
|
-
.pl#{$i} { padding-left: #{$i}px !important; }
|
13
|
-
.pr#{$i} { padding-right: #{$i}px !important; }
|
14
|
-
.p#{$i} { padding: #{$i}px !important; }
|
15
|
-
|
16
|
-
@media (min-width: $screen-xs-min) {
|
17
|
-
.mt#{$i}-xs { margin-top: #{$i}px !important; }
|
18
|
-
.mb#{$i}-xs { margin-bottom: #{$i}px !important; }
|
19
|
-
.ml#{$i}-xs { margin-left: #{$i}px !important; }
|
20
|
-
.mr#{$i}-xs { margin-right: #{$i}px !important; }
|
21
|
-
.m#{$i}-xs { margin: #{$i}px !important; }
|
22
|
-
|
23
|
-
.pt#{$i}-xs { padding-top: #{$i}px !important; }
|
24
|
-
.pb#{$i}-xs { padding-bottom: #{$i}px !important; }
|
25
|
-
.pl#{$i}-xs { padding-left: #{$i}px !important; }
|
26
|
-
.pr#{$i}-xs { padding-right: #{$i}px !important; }
|
27
|
-
.p#{$i}-xs { padding: #{$i}px !important; }
|
28
|
-
}
|
29
|
-
|
30
|
-
@media (min-width: $screen-sm-min) {
|
31
|
-
.mt#{$i}-sm { margin-top: #{$i}px !important; }
|
32
|
-
.mb#{$i}-sm { margin-bottom: #{$i}px !important; }
|
33
|
-
.ml#{$i}-sm { margin-left: #{$i}px !important; }
|
34
|
-
.mr#{$i}-sm { margin-right: #{$i}px !important; }
|
35
|
-
.m#{$i}-sm { margin: #{$i}px !important; }
|
36
|
-
|
37
|
-
.pt#{$i}-sm { padding-top: #{$i}px !important; }
|
38
|
-
.pb#{$i}-sm { padding-bottom: #{$i}px !important; }
|
39
|
-
.pl#{$i}-sm { padding-left: #{$i}px !important; }
|
40
|
-
.pr#{$i}-sm { padding-right: #{$i}px !important; }
|
41
|
-
.p#{$i}-sm { padding: #{$i}px !important; }
|
42
|
-
}
|
43
|
-
|
44
|
-
@media (min-width: $screen-md-min) {
|
45
|
-
.mt#{$i}-md { margin-top: #{$i}px !important; }
|
46
|
-
.mb#{$i}-md { margin-bottom: #{$i}px !important; }
|
47
|
-
.ml#{$i}-md { margin-left: #{$i}px !important; }
|
48
|
-
.mr#{$i}-md { margin-right: #{$i}px !important; }
|
49
|
-
.m#{$i}-md { margin: #{$i}px !important; }
|
50
|
-
|
51
|
-
.pt#{$i}-md { padding-top: #{$i}px !important; }
|
52
|
-
.pb#{$i}-md { padding-bottom: #{$i}px !important; }
|
53
|
-
.pl#{$i}-md { padding-left: #{$i}px !important; }
|
54
|
-
.pr#{$i}-md { padding-right: #{$i}px !important; }
|
55
|
-
.p#{$i}-md { padding: #{$i}px !important; }
|
56
|
-
}
|
57
|
-
|
58
|
-
@media (min-width: $screen-lg-min) {
|
59
|
-
.mt#{$i}-lg { margin-top: #{$i}px !important; }
|
60
|
-
.mb#{$i}-lg { margin-bottom: #{$i}px !important; }
|
61
|
-
.ml#{$i}-lg { margin-left: #{$i}px !important; }
|
62
|
-
.mr#{$i}-lg { margin-right: #{$i}px !important; }
|
63
|
-
.m#{$i}-lg { margin: #{$i}px !important; }
|
64
|
-
|
65
|
-
.pt#{$i}-lg { padding-top: #{$i}px !important; }
|
66
|
-
.pb#{$i}-lg { padding-bottom: #{$i}px !important; }
|
67
|
-
.pl#{$i}-lg { padding-left: #{$i}px !important; }
|
68
|
-
.pr#{$i}-lg { padding-right: #{$i}px !important; }
|
69
|
-
.p#{$i}-lg { padding: #{$i}px !important; }
|
70
|
-
}
|
71
|
-
}
|
@@ -1,28 +0,0 @@
|
|
1
|
-
.text-white {
|
2
|
-
color: #FFF;
|
3
|
-
}
|
4
|
-
|
5
|
-
.text-black {
|
6
|
-
color: #000;
|
7
|
-
}
|
8
|
-
|
9
|
-
.text-shadow {
|
10
|
-
text-shadow: 0 1px 3px rgba(0,0,0,.5);
|
11
|
-
}
|
12
|
-
|
13
|
-
.text-light { font-weight: 300; }
|
14
|
-
.text-normal { font-weight: 400; }
|
15
|
-
.text-bold { font-weight: 700; }
|
16
|
-
|
17
|
-
.text-underline {
|
18
|
-
text-decoration: underline;
|
19
|
-
}
|
20
|
-
|
21
|
-
@for $i from 1 through 99 {
|
22
|
-
.text-sm-#{$i} {
|
23
|
-
font-size: #{$i/100}em;
|
24
|
-
}
|
25
|
-
.text-lg-#{$i} {
|
26
|
-
font-size: #{$i/100 + 100}em;
|
27
|
-
}
|
28
|
-
}
|
@@ -1,42 +0,0 @@
|
|
1
|
-
@import '_bootstrap';
|
2
|
-
@import "font-awesome-sprockets";
|
3
|
-
@import "font-awesome";
|
4
|
-
|
5
|
-
html,
|
6
|
-
body {
|
7
|
-
height: 100%;
|
8
|
-
}
|
9
|
-
|
10
|
-
.modal {
|
11
|
-
-webkit-transition: all 0.5s ease;
|
12
|
-
-moz-transition: all 0.5s ease;
|
13
|
-
-o-transition: all 0.5s ease;
|
14
|
-
transition: all 0.5s ease;
|
15
|
-
}
|
16
|
-
|
17
|
-
div.muted {
|
18
|
-
opacity: 0.5;
|
19
|
-
}
|
20
|
-
|
21
|
-
.navbar-transparent {
|
22
|
-
// @extend .navbar-default;
|
23
|
-
background-color: transparent;
|
24
|
-
border-color: transparent;
|
25
|
-
}
|
26
|
-
|
27
|
-
.overlay {
|
28
|
-
width: 100%;
|
29
|
-
height: 100%;
|
30
|
-
position: absolute;
|
31
|
-
|
32
|
-
@for $i from 1 through 99 {
|
33
|
-
&.white-#{$i} {
|
34
|
-
background-color: #FFF;
|
35
|
-
opacity: $i / 100;
|
36
|
-
}
|
37
|
-
&.black-#{$i} {
|
38
|
-
background-color: #000;
|
39
|
-
opacity: $i / 100;
|
40
|
-
}
|
41
|
-
}
|
42
|
-
}
|
@@ -1,43 +0,0 @@
|
|
1
|
-
html, body, div, span, applet, object, iframe,
|
2
|
-
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
3
|
-
a, abbr, acronym, address, big, cite, code,
|
4
|
-
del, dfn, em, img, ins, kbd, q, s, samp,
|
5
|
-
small, strike, strong, sub, sup, tt, var,
|
6
|
-
b, u, i, center,
|
7
|
-
dl, dt, dd, ol, ul, li,
|
8
|
-
fieldset, form, label, legend,
|
9
|
-
table, caption, tbody, tfoot, thead, tr, th, td,
|
10
|
-
article, aside, canvas, details, embed,
|
11
|
-
figure, figcaption, footer, header, hgroup,
|
12
|
-
menu, nav, output, ruby, section, summary,
|
13
|
-
time, mark, audio, video {
|
14
|
-
margin: 0;
|
15
|
-
padding: 0;
|
16
|
-
border: 0;
|
17
|
-
// font-size: 100%;
|
18
|
-
// font: inherit;
|
19
|
-
// vertical-align: baseline;
|
20
|
-
}
|
21
|
-
/* HTML5 display-role reset for older browsers */
|
22
|
-
article, aside, details, figcaption, figure,
|
23
|
-
footer, header, hgroup, menu, nav, section {
|
24
|
-
display: block;
|
25
|
-
}
|
26
|
-
body {
|
27
|
-
// line-height: 1;
|
28
|
-
}
|
29
|
-
ol, ul {
|
30
|
-
list-style: none;
|
31
|
-
}
|
32
|
-
blockquote, q {
|
33
|
-
quotes: none;
|
34
|
-
}
|
35
|
-
blockquote:before, blockquote:after,
|
36
|
-
q:before, q:after {
|
37
|
-
content: '';
|
38
|
-
content: none;
|
39
|
-
}
|
40
|
-
table {
|
41
|
-
border-collapse: collapse;
|
42
|
-
border-spacing: 0;
|
43
|
-
}
|