mvpkit 1.1.2 → 2.0.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.
Files changed (137) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -24
  3. data/README.md +43 -48
  4. data/VERSION +1 -1
  5. data/bin/mvp +2 -2
  6. data/config/routes.rb +0 -4
  7. data/mvpkit.gemspec +57 -129
  8. data/package.json +3 -22
  9. data/project/.babelrc +23 -1
  10. data/project/.gitignore +2 -0
  11. data/project/.postcssrc.yml +4 -0
  12. data/project/Gemfile +21 -13
  13. data/project/Gemfile.lock +181 -153
  14. data/project/Procfile +1 -1
  15. data/project/README.md +2 -116
  16. data/project/app/assets/javascripts/application.js +0 -8
  17. data/project/app/assets/stylesheets/application.scss +9 -3
  18. data/project/app/assets/stylesheets/elements/alerts.scss +10 -0
  19. data/project/app/assets/stylesheets/elements/badges.scss +16 -0
  20. data/project/app/assets/stylesheets/elements/buttons.scss +107 -0
  21. data/project/app/assets/stylesheets/elements/cards.scss +68 -0
  22. data/project/app/assets/stylesheets/elements/drawer.scss +66 -0
  23. data/project/app/assets/stylesheets/elements/forms.scss +64 -0
  24. data/project/app/assets/stylesheets/elements/interstitial.scss +24 -0
  25. data/project/app/assets/stylesheets/elements/navs.scss +15 -0
  26. data/project/app/assets/stylesheets/elements/sidebar.scss +30 -0
  27. data/project/app/assets/stylesheets/elements/tables.scss +61 -0
  28. data/project/app/assets/stylesheets/elements/timeline.scss +38 -0
  29. data/project/app/assets/stylesheets/elements/typography.scss +80 -0
  30. data/project/app/assets/stylesheets/init/bootstrap.scss +53 -0
  31. data/project/app/assets/stylesheets/init/reset.scss +20 -0
  32. data/project/app/assets/stylesheets/init/variables.scss +40 -0
  33. data/project/app/assets/stylesheets/treatments/backgrounds.scss +23 -0
  34. data/project/app/assets/stylesheets/treatments/borders.scss +7 -0
  35. data/project/app/{webpack/stylesheets/skin → assets/stylesheets/treatments}/spacing.scss +4 -10
  36. data/{app/controllers/mvp → project/app/controllers}/analytics_controller.rb +0 -0
  37. data/{app/controllers/concerns/mvp → project/app/controllers/concerns}/analytics_concern.rb +0 -0
  38. data/{app/controllers/concerns/mvp → project/app/controllers/concerns}/seo_concern.rb +0 -0
  39. data/{app/controllers/concerns/mvp → project/app/controllers/concerns}/session_concern.rb +0 -0
  40. data/project/app/controllers/conversions_controller.rb +1 -2
  41. data/{app/controllers/mvp → project/app/controllers}/seo_controller.rb +0 -0
  42. data/project/app/engines/admin/app/views/layouts/admin/_header.html.erb +18 -18
  43. data/project/app/helpers/application_helper.rb +0 -14
  44. data/{app/assets/stylesheets/mvp/application.scss → project/app/javascript/components/.gitkeep} +0 -0
  45. data/project/app/javascript/components/conversion.jsx +73 -0
  46. data/project/app/javascript/packs/application.js +28 -0
  47. data/project/app/javascript/packs/server_rendering.js +5 -0
  48. data/project/app/models/conversion.rb +1 -1
  49. data/project/app/views/conversions/show.json.jbuilder +1 -0
  50. data/project/app/views/home/index.html.erb +22 -22
  51. data/project/app/views/layouts/_header.html.erb +35 -34
  52. data/{app/views/layouts/mvp → project/app/views/layouts}/_instrumentation.html.erb +0 -0
  53. data/{app/views/layouts/mvp → project/app/views/layouts}/_meta.html.erb +0 -0
  54. data/project/app/views/layouts/application.html.erb +31 -21
  55. data/project/bin/setup +1 -1
  56. data/project/bin/webpack +28 -0
  57. data/project/bin/webpack-dev-server +43 -0
  58. data/project/config/initializers/assets.rb +2 -0
  59. data/{config → project/config}/initializers/canonical_host.rb +0 -0
  60. data/{config → project/config}/initializers/cloudinary.rb +0 -0
  61. data/{config → project/config}/initializers/rollbar.rb +0 -0
  62. data/{config → project/config}/initializers/routing.rb +0 -0
  63. data/{config → project/config}/initializers/spoof_ip.rb +0 -0
  64. data/{config → project/config}/initializers/ssl.rb +0 -0
  65. data/project/config/routes.rb +5 -7
  66. data/project/config/webpack/configuration.js +35 -0
  67. data/project/config/webpack/development.js +32 -0
  68. data/project/config/webpack/loaders/assets.js +12 -0
  69. data/project/config/webpack/loaders/babel.js +5 -0
  70. data/project/config/webpack/loaders/coffee.js +4 -0
  71. data/project/config/webpack/loaders/erb.js +9 -0
  72. data/project/config/webpack/loaders/react.js +5 -0
  73. data/project/config/webpack/loaders/sass.js +15 -0
  74. data/project/config/webpack/production.js +35 -0
  75. data/project/config/webpack/shared.js +58 -0
  76. data/project/config/webpack/test.js +6 -0
  77. data/project/config/webpacker.yml +38 -0
  78. data/project/package-lock.json +250 -0
  79. data/project/package.json +37 -17
  80. data/project/yarn.lock +4538 -0
  81. metadata +56 -326
  82. data/app/assets/javascripts/mvp/application.js +0 -1
  83. data/app/controllers/mvp/styleguide_controller.rb +0 -23
  84. data/app/helpers/minimum_viable_product/body_helper.rb +0 -14
  85. data/app/helpers/minimum_viable_product/bootstrap_helper.rb +0 -38
  86. data/app/helpers/minimum_viable_product/styleguide_helper.rb +0 -4
  87. data/app/models/concerns/mvp/slugification.rb +0 -24
  88. data/app/views/layouts/mvp/application.html.erb +0 -19
  89. data/app/views/mvp/styleguide/_example.html.erb +0 -6
  90. data/app/views/mvp/styleguide/bootstrap.html.erb +0 -43
  91. data/app/views/mvp/styleguide/bootstrap/_buttons.html.erb +0 -191
  92. data/app/views/mvp/styleguide/bootstrap/_forms.html.erb +0 -192
  93. data/app/views/mvp/styleguide/bootstrap/_header.html.erb +0 -48
  94. data/app/views/mvp/styleguide/bootstrap/_panels.html.erb +0 -16
  95. data/app/views/mvp/styleguide/bootstrap/_tables.html.erb +0 -34
  96. data/app/views/mvp/styleguide/bootstrap/_typography.html.erb +0 -51
  97. data/app/views/mvp/styleguide/elements/_grouping.html.erb +0 -1
  98. data/app/views/mvp/styleguide/elements/partials/_row_groups_of.html.erb +0 -7
  99. data/app/views/mvp/styleguide/index.html.erb +0 -17
  100. data/app/views/mvp/styleguide/layouts/basic.html.erb +0 -4
  101. data/app/views/mvp/styleguide/layouts/carousel.html.erb +0 -120
  102. data/app/views/mvp/styleguide/layouts/cover.html.erb +0 -34
  103. data/config/initializers/assets.rb +0 -2
  104. data/config/initializers/geocoder.rb +0 -9
  105. data/project/app/assets/javascripts/pack-compiled.js +0 -37394
  106. data/project/app/assets/javascripts/pack-compiled.js.map +0 -1
  107. data/project/app/assets/javascripts/templates.js.erb +0 -14
  108. data/project/app/assets/stylesheets/pack-compiled.css +0 -33946
  109. data/project/app/assets/stylesheets/pack-compiled.css.map +0 -1
  110. data/project/app/controllers/examples_controller.rb +0 -2
  111. data/project/app/views/examples/index.html.erb +0 -1
  112. data/project/app/views/examples/mustache.html.erb +0 -40
  113. data/project/app/views/examples/mustache/template.mustache +0 -1
  114. data/project/app/views/home/conversion.html.erb +0 -12
  115. data/project/app/webpack/javascripts/behaviors/example.js +0 -21
  116. data/project/app/webpack/javascripts/controllers/home.js +0 -15
  117. data/project/app/webpack/javascripts/lib/analytics.js +0 -22
  118. data/project/app/webpack/javascripts/lib/clientsidevalidations.js +0 -3
  119. data/project/app/webpack/javascripts/lib/controllers.js +0 -28
  120. data/project/app/webpack/javascripts/lib/forms.js +0 -28
  121. data/project/app/webpack/javascripts/lib/selectize.js +0 -1
  122. data/project/app/webpack/javascripts/pack.js +0 -50
  123. data/project/app/webpack/stylesheets/config/variables.scss +0 -41
  124. data/project/app/webpack/stylesheets/init/reset.scss +0 -48
  125. data/project/app/webpack/stylesheets/layout/main.scss +0 -7
  126. data/project/app/webpack/stylesheets/pack.scss +0 -20
  127. data/project/app/webpack/stylesheets/skin/alerts.scss +0 -3
  128. data/project/app/webpack/stylesheets/skin/buttons.scss +0 -38
  129. data/project/app/webpack/stylesheets/skin/hero.scss +0 -45
  130. data/project/app/webpack/stylesheets/skin/images.scss +0 -13
  131. data/project/app/webpack/stylesheets/skin/progress.scss +0 -3
  132. data/project/app/webpack/stylesheets/skin/selectize.scss +0 -30
  133. data/project/app/webpack/stylesheets/skin/tables.scss +0 -24
  134. data/project/app/webpack/stylesheets/skin/treatments.scss +0 -3
  135. data/project/app/webpack/stylesheets/skin/turbolinks.scss +0 -4
  136. data/project/app/webpack/stylesheets/skin/typography.scss +0 -116
  137. data/project/webpack.config.js +0 -76
@@ -1 +0,0 @@
1
- console.log("MVP Loaded")
@@ -1,23 +0,0 @@
1
- module MinimumViableProduct
2
- class StyleguideController < ActionController::Base
3
- def index
4
- render layout: 'minimum_viable_product/basic'
5
- end
6
-
7
- def bootstrap
8
- render layout: 'minimum_viable_product/basic'
9
- end
10
-
11
- def layout_basic
12
- render template: 'minimum_viable_product/styleguide/layouts/basic', layout: 'minimum_viable_product/basic'
13
- end
14
-
15
- def layout_cover
16
- render template: 'minimum_viable_product/styleguide/layouts/cover', layout: 'minimum_viable_product/cover'
17
- end
18
-
19
- def layout_carousel
20
- render template: 'minimum_viable_product/styleguide/layouts/carousel', layout: 'minimum_viable_product/carousel'
21
- end
22
- end
23
- end
@@ -1,14 +0,0 @@
1
- module MinimumViableProduct
2
- module BodyHelper
3
- def body_id
4
- "#{controller_name}-#{action_name}-page"
5
- end
6
-
7
- def body_classes
8
- klass = []
9
- klass << "#{controller_name}-pages"
10
- klass << page.classes if page.classes.present?
11
- klass.join(' ')
12
- end
13
- end
14
- end
@@ -1,38 +0,0 @@
1
- module MinimumViableProduct
2
- module BootstrapHelper
3
- def col_groups_of(count, collection, opts={})
4
- return if collection.blank?
5
-
6
- html = []
7
- collection.in_groups_of(count).each do |groups|
8
- groups.compact.each do |obj|
9
- html << capture do
10
- content_tag :div, class: ["col-md-#{12/count.to_f.floor}", opts[:col_class]].compact.join(' ') do
11
- yield obj
12
- end
13
- end.html_safe
14
- end
15
- end
16
- concat html.join.html_safe
17
- end
18
-
19
- def row_groups_of(count, collection, opts={}, &block)
20
- return if collection.blank?
21
-
22
- html = []
23
- subsetsize = (collection.count/count.to_f)
24
- subsetsize.ceil.times do |i|
25
- subset = collection[count*i...((count*i)+count)]
26
- html << capture do
27
- content_tag :div, class: ["row",opts[:row_class]].compact.join(' ') do
28
- capture do
29
- col_groups_of(count, subset, opts, &block)
30
- end
31
- end
32
- end.html_safe
33
- end
34
-
35
- concat html.join.html_safe
36
- end
37
- end
38
- end
@@ -1,4 +0,0 @@
1
- module MinimumViableProduct
2
- module StyleguideHelper
3
- end
4
- end
@@ -1,24 +0,0 @@
1
- module MVP
2
- module Slugification
3
- extend ActiveSupport::Concern
4
-
5
- module ClassMethods
6
- def slugify(name, opts={})
7
- before_validation -> {
8
- return true if self.slug.present?
9
- self.slug = slugify(self.send(name.to_sym))
10
- self.slug += "-#{SecureRandom.uuid}" if self.class.find_by(slug: self.slug).present?
11
- }, opts
12
- validates :slug, uniqueness: true
13
- end
14
- end
15
-
16
- private
17
-
18
- def slugify(str)
19
- str.gsub(/[^a-zA-Z0-9]+/,'-')
20
- .gsub(/^[-]+|[-]+$/,'')
21
- .downcase
22
- end
23
- end
24
- end
@@ -1,19 +0,0 @@
1
- <!DOCTYPE HTML>
2
- <html lang='en'>
3
- <head>
4
- <%= render('layouts/mvp/meta').gsub(/\n/,'').html_safe %>
5
- <%= yield :meta %>
6
- <%= yield :stylesheets %>
7
- <!--[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]-->
8
- <%= yield :javascripts %>
9
- <%= csrf_meta_tags %>
10
- <%= render 'layouts/mvp/instrumentation' %>
11
- </head>
12
- <body id="<%= body_id %>" class="<%= body_classes %>" data-controller="<%= controller.controller_path %>" data-action="<%= controller.action_name %>" data-iteration="<%= MVP::Iteration.version %>">
13
- <% if content_for? :body %>
14
- <%= yield :body %>
15
- <% else %>
16
- <%= yield %>
17
- <% end %>
18
- </body>
19
- </html>
@@ -1,6 +0,0 @@
1
-
2
- <%= render "minimum_viable_product/styleguide/elements/partials/#{source}" %>
3
-
4
- <pre>
5
- <%= File.open(File.join(MinimumViableProduct::Engine.root,'app/views/minimum_viable_product/styleguide/elements/partials/',"_#{source}.html.erb")).read.strip %>
6
- </pre>
@@ -1,43 +0,0 @@
1
- <div class="container">
2
- <%= render 'minimum_viable_product/styleguide/bootstrap/header' %>
3
-
4
- <section>
5
- <h1>Typography</h1>
6
- <%= render 'minimum_viable_product/styleguide/bootstrap/typography' %>
7
- </section>
8
-
9
- <section>
10
- <h1>Buttons</h1>
11
- <%= render 'minimum_viable_product/styleguide/bootstrap/buttons' %>
12
- </section>
13
-
14
- <section>
15
- <h1>Panels</h1>
16
- <%= render 'minimum_viable_product/styleguide/bootstrap/panels' %>
17
- </section>
18
-
19
- <section>
20
- <h1>Forms</h1>
21
- <%= render 'minimum_viable_product/styleguide/bootstrap/forms' %>
22
- </section>
23
-
24
- <section>
25
- <h1>Tables</h1>
26
- <%= render 'minimum_viable_product/styleguide/bootstrap/tables' %>
27
- </section>
28
- </div>
29
-
30
- <footer class='text-center'>
31
- <small>Copyright &copy; <%= Date.today.year %></p></small>
32
- </footer>
33
-
34
- <style media="screen">
35
- section {
36
- margin-bottom: 100px;
37
- }
38
-
39
- section h1 {
40
- border-bottom: 1px solid #CCC;
41
- padding-bottom: 10px;
42
- }
43
- </style>
@@ -1,191 +0,0 @@
1
- <div class="mb20">
2
- <p class="mb10">
3
- <button class="btn btn-default" type="button">Default</button>
4
- <button class="btn btn-primary" type="button">Primary</button>
5
- <button class="btn btn-success" type="button">Success</button>
6
- <button class="btn btn-info" type="button">Info</button>
7
- <button class="btn btn-warning" type="button">Warning</button>
8
- <button class="btn btn-danger" type="button">Danger</button>
9
- <button class="btn btn-link" type="button">Link</button>
10
- </p>
11
-
12
- <p class="mb10">
13
- <button class="btn btn-primary btn-lg" type="button">Large button</button>
14
- <button class="btn btn-default btn-lg" type="button">Large button</button>
15
- </p>
16
- <p class="mb10">
17
- <button class="btn btn-primary" type="button">Default button</button>
18
- <button class="btn btn-default" type="button">Default button</button>
19
- </p>
20
- <p class="mb10">
21
- <button class="btn btn-primary btn-sm" type="button">Small button</button>
22
- <button class="btn btn-default btn-sm" type="button">Small button</button>
23
- </p>
24
- <p class="mb10">
25
- <button class="btn btn-primary btn-xs" type="button">Extra small button</button>
26
- <button class="btn btn-default btn-xs" type="button">Extra small button</button>
27
- </p>
28
- </div>
29
-
30
- <div class="mb20">
31
- <div aria-label="Toolbar with button groups" class="btn-toolbar" role="toolbar">
32
- <div aria-label="First group" class="btn-group" role="group">
33
- <button class="btn btn-default" type="button">1</button>
34
- <button class="btn btn-default" type="button">2</button>
35
- <button class="btn btn-default" type="button">3</button>
36
- <button class="btn btn-default" type="button">4</button>
37
- </div>
38
- <div aria-label="Second group" class="btn-group" role="group">
39
- <button class="btn btn-default" type="button">5</button>
40
- <button class="btn btn-default" type="button">6</button>
41
- <button class="btn btn-default" type="button">7</button>
42
- </div>
43
- <div aria-label="Third group" class="btn-group" role="group">
44
- <button class="btn btn-default" type="button">8</button>
45
- </div>
46
- </div>
47
- </div>
48
-
49
- <div class="mb20">
50
- <div aria-label="Button group with nested dropdown" class="btn-group" role="group">
51
- <button class="btn btn-default" type="button">1</button>
52
- <button class="btn btn-default" type="button">2</button>
53
- <div class="btn-group" role="group">
54
- <button aria-expanded="false" aria-haspopup="true" class="btn btn-default dropdown-toggle" data-toggle="dropdown" id="btnGroupDrop1" type="button">
55
- Dropdown
56
- <span class="caret"></span>
57
- </button>
58
- <ul aria-labelledby="btnGroupDrop1" class="dropdown-menu">
59
- <li>
60
- <a href="#">Dropdown link</a>
61
- </li>
62
- <li>
63
- <a href="#">Dropdown link</a>
64
- </li>
65
- </ul>
66
- </div>
67
- </div>
68
- </div>
69
-
70
- <div class="mb20">
71
- <div class="btn-group">
72
- <button aria-expanded="false" aria-haspopup="true" class="btn btn-default dropdown-toggle" data-toggle="dropdown" type="button">Default
73
- <span class="caret"></span>
74
- </button>
75
- <ul class="dropdown-menu">
76
- <li>
77
- <a href="#">Action</a>
78
- </li>
79
- <li>
80
- <a href="#">Another action</a>
81
- </li>
82
- <li>
83
- <a href="#">Something else here</a>
84
- </li>
85
- <li class="divider" role="separator"></li>
86
- <li>
87
- <a href="#">Separated link</a>
88
- </li>
89
- </ul>
90
- </div>
91
- <div class="btn-group">
92
- <button aria-expanded="false" aria-haspopup="true" class="btn btn-primary dropdown-toggle" data-toggle="dropdown" type="button">Primary
93
- <span class="caret"></span>
94
- </button>
95
- <ul class="dropdown-menu">
96
- <li>
97
- <a href="#">Action</a>
98
- </li>
99
- <li>
100
- <a href="#">Another action</a>
101
- </li>
102
- <li>
103
- <a href="#">Something else here</a>
104
- </li>
105
- <li class="divider" role="separator"></li>
106
- <li>
107
- <a href="#">Separated link</a>
108
- </li>
109
- </ul>
110
- </div>
111
- <div class="btn-group">
112
- <button aria-expanded="false" aria-haspopup="true" class="btn btn-success dropdown-toggle" data-toggle="dropdown" type="button">Success
113
- <span class="caret"></span>
114
- </button>
115
- <ul class="dropdown-menu">
116
- <li>
117
- <a href="#">Action</a>
118
- </li>
119
- <li>
120
- <a href="#">Another action</a>
121
- </li>
122
- <li>
123
- <a href="#">Something else here</a>
124
- </li>
125
- <li class="divider" role="separator"></li>
126
- <li>
127
- <a href="#">Separated link</a>
128
- </li>
129
- </ul>
130
- </div>
131
- <div class="btn-group">
132
- <button aria-expanded="false" aria-haspopup="true" class="btn btn-info dropdown-toggle" data-toggle="dropdown" type="button">Info
133
- <span class="caret"></span>
134
- </button>
135
- <ul class="dropdown-menu">
136
- <li>
137
- <a href="#">Action</a>
138
- </li>
139
- <li>
140
- <a href="#">Another action</a>
141
- </li>
142
- <li>
143
- <a href="#">Something else here</a>
144
- </li>
145
- <li class="divider" role="separator"></li>
146
- <li>
147
- <a href="#">Separated link</a>
148
- </li>
149
- </ul>
150
- </div>
151
- <div class="btn-group">
152
- <button aria-expanded="false" aria-haspopup="true" class="btn btn-warning dropdown-toggle" data-toggle="dropdown" type="button">Warning
153
- <span class="caret"></span>
154
- </button>
155
- <ul class="dropdown-menu">
156
- <li>
157
- <a href="#">Action</a>
158
- </li>
159
- <li>
160
- <a href="#">Another action</a>
161
- </li>
162
- <li>
163
- <a href="#">Something else here</a>
164
- </li>
165
- <li class="divider" role="separator"></li>
166
- <li>
167
- <a href="#">Separated link</a>
168
- </li>
169
- </ul>
170
- </div>
171
- <div class="btn-group">
172
- <button aria-expanded="false" aria-haspopup="true" class="btn btn-danger dropdown-toggle" data-toggle="dropdown" type="button">Danger
173
- <span class="caret"></span>
174
- </button>
175
- <ul class="dropdown-menu">
176
- <li>
177
- <a href="#">Action</a>
178
- </li>
179
- <li>
180
- <a href="#">Another action</a>
181
- </li>
182
- <li>
183
- <a href="#">Something else here</a>
184
- </li>
185
- <li class="divider" role="separator"></li>
186
- <li>
187
- <a href="#">Separated link</a>
188
- </li>
189
- </ul>
190
- </div>
191
- </div>
@@ -1,192 +0,0 @@
1
-
2
-
3
- <div class="mb20">
4
- <form>
5
- <div class="form-group">
6
- <label for="exampleInputEmail1">Email address</label>
7
- <input class="form-control" id="exampleInputEmail1" placeholder="Email" type="email">
8
- </div>
9
- <div class="form-group">
10
- <label for="exampleInputPassword1">Password</label>
11
- <input class="form-control" id="exampleInputPassword1" placeholder="Password" type="password">
12
- </div>
13
- <div class="form-group">
14
- <label for="exampleInputFile">File input</label>
15
- <input id="exampleInputFile" type="file">
16
- <p class="help-block">Example block-level help text here.</p>
17
- </div>
18
- <div class="checkbox">
19
- <label>
20
- <input type="checkbox">
21
- Check me out
22
- </label>
23
- </div>
24
- <button class="btn btn-default" type="submit">Submit</button>
25
- </form>
26
- </div>
27
-
28
- <form class="form-inline">
29
- <div class="form-group">
30
- <label for="exampleInputName2">Name</label>
31
- <input class="form-control" id="exampleInputName2" placeholder="Jane Doe" type="text">
32
- </div>
33
- <div class="form-group">
34
- <label for="exampleInputEmail2">Email</label>
35
- <input class="form-control" id="exampleInputEmail2" placeholder="jane.doe@example.com" type="email">
36
- </div>
37
- <button class="btn btn-default" type="submit">Send invitation</button>
38
- </form>
39
-
40
- <form class="form-horizontal">
41
- <div class="form-group">
42
- <label class="col-sm-2 control-label" for="inputEmail3">Email</label>
43
- <div class="col-sm-10">
44
- <input class="form-control" id="inputEmail3" placeholder="Email" type="email">
45
- </div>
46
- </div>
47
- <div class="form-group">
48
- <label class="col-sm-2 control-label" for="inputPassword3">Password</label>
49
- <div class="col-sm-10">
50
- <input class="form-control" id="inputPassword3" placeholder="Password" type="password">
51
- </div>
52
- </div>
53
- <div class="form-group">
54
- <div class="col-sm-offset-2 col-sm-10">
55
- <div class="checkbox">
56
- <label>
57
- <input type="checkbox">
58
- Remember me
59
- </label>
60
- </div>
61
- </div>
62
- </div>
63
- <div class="form-group">
64
- <div class="col-sm-offset-2 col-sm-10">
65
- <button class="btn btn-default" type="submit">Sign in</button>
66
- </div>
67
- </div>
68
- </form>
69
-
70
- <div class="checkbox">
71
- <label>
72
- <input type="checkbox" value="">
73
- Option one is this and that&mdash;be sure to include why it's great
74
- </label>
75
- </div>
76
- <div class="checkbox disabled">
77
- <label>
78
- <input disabled type="checkbox" value="">
79
- Option two is disabled
80
- </label>
81
- </div>
82
-
83
- <div class="radio">
84
- <label>
85
- <input checked id="optionsRadios1" name="optionsRadios" type="radio" value="option1">
86
- Option one is this and that&mdash;be sure to include why it's great
87
- </label>
88
- </div>
89
- <div class="radio">
90
- <label>
91
- <input id="optionsRadios2" name="optionsRadios" type="radio" value="option2">
92
- Option two can be something else and selecting it will deselect option one
93
- </label>
94
- </div>
95
- <div class="radio disabled">
96
- <label>
97
- <input disabled id="optionsRadios3" name="optionsRadios" type="radio" value="option3">
98
- Option three is disabled
99
- </label>
100
- </div>
101
-
102
- <select class="form-control">
103
- <option>1</option>
104
- <option>2</option>
105
- <option>3</option>
106
- <option>4</option>
107
- <option>5</option>
108
- </select>
109
-
110
- <textarea class="form-control" rows="3"></textarea>
111
-
112
- <form class="form-horizontal">
113
- <div class="form-group">
114
- <label class="col-sm-2 control-label">Email</label>
115
- <div class="col-sm-10">
116
- <p class="form-control-static">email@example.com</p>
117
- </div>
118
- </div>
119
- <div class="form-group">
120
- <label class="col-sm-2 control-label" for="inputPassword">Password</label>
121
- <div class="col-sm-10">
122
- <input class="form-control" id="inputPassword" placeholder="Password" type="password">
123
- </div>
124
- </div>
125
- </form>
126
-
127
- <input class="form-control" disabled id="disabledInput" placeholder="Disabled input here..." type="text">
128
-
129
- <form>
130
- <fieldset disabled>
131
- <div class="form-group">
132
- <label for="disabledTextInput">Disabled input</label>
133
- <input class="form-control" id="disabledTextInput" placeholder="Disabled input" type="text">
134
- </div>
135
- <div class="form-group">
136
- <label for="disabledSelect">Disabled select menu</label>
137
- <select class="form-control" id="disabledSelect">
138
- <option>Disabled select</option>
139
- </select>
140
- </div>
141
- <div class="checkbox">
142
- <label>
143
- <input type="checkbox">
144
- Can't check this
145
- </label>
146
- </div>
147
- <button class="btn btn-primary" type="submit">Submit</button>
148
- </fieldset>
149
- </form>
150
-
151
- <label class="sr-only" for="inputHelpBlock">Input with help text</label>
152
- <input aria-describedby="helpBlock" class="form-control" id="inputHelpBlock" type="text">
153
- ...
154
- <span class="help-block" id="helpBlock">A block of help text that breaks onto a new line and may extend beyond one line.</span>
155
-
156
- <div class="form-group has-success">
157
- <label class="control-label" for="inputSuccess1">Input with success</label>
158
- <input aria-describedby="helpBlock2" class="form-control" id="inputSuccess1" type="text">
159
- <span class="help-block" id="helpBlock2">A block of help text that breaks onto a new line and may extend beyond one line.</span>
160
- </div>
161
- <div class="form-group has-warning">
162
- <label class="control-label" for="inputWarning1">Input with warning</label>
163
- <input class="form-control" id="inputWarning1" type="text">
164
- </div>
165
- <div class="form-group has-error">
166
- <label class="control-label" for="inputError1">Input with error</label>
167
- <input class="form-control" id="inputError1" type="text">
168
- </div>
169
- <div class="has-success">
170
- <div class="checkbox">
171
- <label>
172
- <input id="checkboxSuccess" type="checkbox" value="option1">
173
- Checkbox with success
174
- </label>
175
- </div>
176
- </div>
177
- <div class="has-warning">
178
- <div class="checkbox">
179
- <label>
180
- <input id="checkboxWarning" type="checkbox" value="option1">
181
- Checkbox with warning
182
- </label>
183
- </div>
184
- </div>
185
- <div class="has-error">
186
- <div class="checkbox">
187
- <label>
188
- <input id="checkboxError" type="checkbox" value="option1">
189
- Checkbox with error
190
- </label>
191
- </div>
192
- </div>