kms 0.9.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (409) hide show
  1. checksums.yaml +4 -4
  2. data/{vendor/assets/bower_components/Responsive-Dashboard/src/img → app/assets/images}/avatar.jpg +0 -0
  3. data/app/assets/javascripts/kms/application.js +3 -0
  4. data/app/assets/javascripts/kms/application/controllers/assets_controller.coffee.erb +14 -7
  5. data/app/assets/javascripts/kms/application/controllers/pages_controller.coffee.erb +11 -3
  6. data/app/assets/javascripts/kms/application/controllers/snippets_controller.coffee.erb +3 -0
  7. data/app/assets/javascripts/kms/application/controllers/templates_controller.coffee.erb +3 -0
  8. data/app/assets/javascripts/kms/application/controllers/users_controller.coffee +4 -4
  9. data/app/assets/javascripts/kms/application/routes.coffee.erb +1 -1
  10. data/app/assets/javascripts/kms/application/services/transliteration_service.js +160 -0
  11. data/app/assets/javascripts/templates/assets/edit.html.slim +24 -2
  12. data/app/assets/javascripts/templates/assets/form.html.slim +23 -0
  13. data/app/assets/javascripts/templates/assets/index.html.slim +13 -12
  14. data/app/assets/javascripts/templates/assets/new.html.slim +1 -15
  15. data/app/assets/javascripts/templates/help.html.slim +1 -1
  16. data/app/assets/javascripts/templates/pages/index.html.slim +16 -5
  17. data/app/assets/javascripts/templates/snippets/index.html.slim +16 -5
  18. data/app/assets/javascripts/templates/templates/index.html.slim +16 -6
  19. data/app/assets/stylesheets/kms/application.css +2 -2
  20. data/app/assets/stylesheets/kms/custom.css.scss +38 -0
  21. data/app/controllers/kms/assets_controller.rb +8 -9
  22. data/app/controllers/kms/pages_controller.rb +10 -11
  23. data/app/controllers/kms/public/pages_controller.rb +5 -4
  24. data/app/controllers/kms/public/search_controller.rb +2 -0
  25. data/app/controllers/kms/settings_controller.rb +1 -1
  26. data/app/controllers/kms/snippets_controller.rb +2 -1
  27. data/app/controllers/kms/templates_controller.rb +6 -5
  28. data/app/controllers/kms/users_controller.rb +11 -8
  29. data/app/models/ability.rb +1 -0
  30. data/app/models/concerns/kms/permalinkable.rb +1 -1
  31. data/app/models/kms/page.rb +13 -4
  32. data/app/serializers/kms/asset_serializer.rb +6 -0
  33. data/app/serializers/kms/page_serializer.rb +5 -0
  34. data/app/serializers/kms/template_serializer.rb +5 -0
  35. data/app/serializers/kms/user_serializer.rb +5 -0
  36. data/app/services/kms/page_fetcher.rb +30 -0
  37. data/app/services/kms/search_service.rb +28 -3
  38. data/app/services/kms/template_processor.rb +19 -0
  39. data/app/views/devise/passwords/edit.html.erb +1 -1
  40. data/app/views/devise/passwords/new.html.erb +1 -1
  41. data/app/views/devise/registrations/new.html.erb +1 -1
  42. data/app/views/devise/sessions/new.html.erb +1 -1
  43. data/app/views/layouts/kms/devise.html.erb +1 -1
  44. data/app/views/layouts/kms/kms.html.erb +47 -18
  45. data/config/initializers/externals.rb +6 -32
  46. data/config/initializers/search.rb +1 -0
  47. data/config/locales/en.yml +17 -1
  48. data/config/locales/ru.yml +17 -1
  49. data/config/routes.rb +7 -6
  50. data/lib/kms/dependencies.rb +1 -4
  51. data/lib/kms/engine.rb +1 -2
  52. data/lib/kms/search_item.rb +18 -0
  53. data/lib/kms/version.rb +1 -1
  54. data/spec/controllers/kms/assets_controller_spec.rb +51 -0
  55. data/spec/controllers/kms/pages_controller_spec.rb +82 -0
  56. data/spec/controllers/kms/public/pages_controller_spec.rb +30 -0
  57. data/spec/controllers/kms/snippets_controller_spec.rb +61 -47
  58. data/spec/controllers/kms/templates_controller_spec.rb +51 -0
  59. data/spec/controllers/kms/users_controller_spec.rb +56 -0
  60. data/spec/factories/assets.rb +8 -0
  61. data/spec/factories/pages.rb +33 -0
  62. data/spec/factories/templates.rb +20 -0
  63. data/spec/factories/users.rb +9 -4
  64. data/spec/internal/config/routes.rb +12 -1
  65. data/spec/internal/log/test.log +81239 -0
  66. data/spec/internal/public/404.html +67 -0
  67. data/spec/internal/public/avatar.jpg +0 -0
  68. data/spec/internal/public/style.css +1 -0
  69. data/spec/internal/public/uploads/kms/asset/file/1/avatar.jpg +0 -0
  70. data/spec/internal/public/uploads/kms/asset/file/2/avatar.jpg +0 -0
  71. data/spec/internal/public/uploads/kms/asset/file/2/style.css +1 -0
  72. data/spec/internal/public/uploads/kms/asset/file/3/style.css +1 -0
  73. data/spec/internal/public/uploads/kms/asset/file/4/style.css +1 -0
  74. data/spec/internal/public/uploads/tmp/1500976987-41025-0002-0883/style.css +1 -0
  75. data/spec/internal/public/uploads/tmp/1500977082-41195-0002-6495/style.css +1 -0
  76. data/spec/internal/public/uploads/tmp/1500977109-41364-0002-4518/style.css +1 -0
  77. data/spec/internal/public/uploads/tmp/1500977152-41405-0002-2345/style.css +1 -0
  78. data/spec/internal/public/uploads/tmp/1500977327-41694-0002-5448/style.css +1 -0
  79. data/spec/internal/public/uploads/tmp/1500977376-41732-0002-7916/style.css +1 -0
  80. data/spec/internal/public/uploads/tmp/1500977392-41759-0002-7593/style.css +1 -0
  81. data/spec/internal/public/uploads/tmp/1500977410-42259-0002-7527/style.css +1 -0
  82. data/spec/internal/public/uploads/tmp/1500977429-42306-0002-5937/style.css +1 -0
  83. data/spec/internal/public/uploads/tmp/1500977437-42324-0002-5880/style.css +1 -0
  84. data/spec/internal/public/uploads/tmp/1500983228-53594-0002-4559/style.css +1 -0
  85. data/spec/internal/public/uploads/tmp/1500983284-53632-0002-6590/style.css +1 -0
  86. data/spec/internal/public/uploads/tmp/1500983360-53784-0002-7289/style.css +1 -0
  87. data/spec/internal/public/uploads/tmp/1500983469-54321-0002-0386/avatar.jpg +0 -0
  88. data/spec/internal/public/uploads/tmp/1500983469-54321-0004-5691/style.css +1 -0
  89. data/spec/internal/public/uploads/tmp/1500983511-54352-0002-5720/avatar.jpg +0 -0
  90. data/spec/internal/public/uploads/tmp/1500983511-54352-0004-1399/style.css +1 -0
  91. data/spec/internal/public/uploads/tmp/1500983610-54507-0002-4280/avatar.jpg +0 -0
  92. data/spec/internal/public/uploads/tmp/1500983610-54507-0004-9758/style.css +1 -0
  93. data/spec/internal/public/uploads/tmp/1500984466-57012-0002-4146/avatar.jpg +0 -0
  94. data/spec/internal/public/uploads/tmp/1500984466-57012-0004-5895/style.css +1 -0
  95. data/spec/internal/public/uploads/tmp/1500984509-57158-0002-9657/avatar.jpg +0 -0
  96. data/spec/internal/public/uploads/tmp/1500984509-57158-0004-5003/style.css +1 -0
  97. data/spec/internal/public/uploads/tmp/1500984616-57697-0002-7201/avatar.jpg +0 -0
  98. data/spec/internal/public/uploads/tmp/1500984616-57697-0004-6255/style.css +1 -0
  99. data/spec/internal/public/uploads/tmp/1500985257-58947-0002-3629/avatar.jpg +0 -0
  100. data/spec/internal/public/uploads/tmp/1500985257-58947-0004-5338/style.css +1 -0
  101. data/spec/internal/public/uploads/tmp/1500985407-58947-0006-5929/style.css +1 -0
  102. data/spec/internal/public/uploads/tmp/1500985473-59264-0002-0397/avatar.jpg +0 -0
  103. data/spec/internal/public/uploads/tmp/1500985473-59264-0004-6493/style.css +1 -0
  104. data/spec/internal/public/uploads/tmp/1500985475-59264-0007-8674/style.css +1 -0
  105. data/spec/internal/public/uploads/tmp/1500985538-59468-0002-9206/avatar.jpg +0 -0
  106. data/spec/internal/public/uploads/tmp/1500985538-59468-0004-2586/style.css +1 -0
  107. data/spec/internal/public/uploads/tmp/1500985538-59468-0007-6200/style.css +1 -0
  108. data/spec/internal/public/uploads/tmp/1500988358-65877-0002-4528/avatar.jpg +0 -0
  109. data/spec/internal/public/uploads/tmp/1500988358-65877-0004-5904/style.css +1 -0
  110. data/spec/internal/public/uploads/tmp/1500988358-65877-0007-7320/style.css +1 -0
  111. data/spec/internal/public/uploads/tmp/1500988407-65916-0002-3138/avatar.jpg +0 -0
  112. data/spec/internal/public/uploads/tmp/1500988407-65916-0004-5400/style.css +1 -0
  113. data/spec/internal/public/uploads/tmp/1500988407-65916-0007-1655/style.css +1 -0
  114. data/spec/internal/public/uploads/tmp/1500988421-65950-0002-9415/avatar.jpg +0 -0
  115. data/spec/internal/public/uploads/tmp/1500988421-65950-0004-7130/style.css +1 -0
  116. data/spec/internal/public/uploads/tmp/1500988421-65950-0007-9886/style.css +1 -0
  117. data/spec/internal/public/uploads/tmp/1500988435-65981-0002-3228/avatar.jpg +0 -0
  118. data/spec/internal/public/uploads/tmp/1500988435-65981-0004-3682/style.css +1 -0
  119. data/spec/internal/public/uploads/tmp/1500988435-65981-0007-1582/style.css +1 -0
  120. data/spec/internal/public/uploads/tmp/1500988475-66122-0002-9516/avatar.jpg +0 -0
  121. data/spec/internal/public/uploads/tmp/1500988475-66122-0004-5634/style.css +1 -0
  122. data/spec/internal/public/uploads/tmp/1500988530-66122-0007-2272/style.css +1 -0
  123. data/spec/internal/public/uploads/tmp/1500988554-66315-0002-6262/avatar.jpg +0 -0
  124. data/spec/internal/public/uploads/tmp/1500988554-66315-0004-6099/style.css +1 -0
  125. data/spec/internal/public/uploads/tmp/1500988554-66315-0007-1632/style.css +1 -0
  126. data/spec/internal/public/uploads/tmp/1500991751-73722-0002-9937/avatar.jpg +0 -0
  127. data/spec/internal/public/uploads/tmp/1500991751-73722-0004-8034/style.css +1 -0
  128. data/spec/internal/public/uploads/tmp/1500991751-73722-0007-7763/style.css +1 -0
  129. data/spec/internal/public/uploads/tmp/1501233238-34385-0002-3210/avatar.jpg +0 -0
  130. data/spec/internal/public/uploads/tmp/1501233238-34385-0004-5881/style.css +1 -0
  131. data/spec/internal/public/uploads/tmp/1501233238-34385-0007-6280/style.css +1 -0
  132. data/spec/models/kms/page_spec.rb +31 -0
  133. data/spec/models/kms/template_spec.rb +15 -0
  134. data/spec/services/kms/page_fetcher_spec.rb +36 -0
  135. data/spec/services/kms/search_service_spec.rb +53 -0
  136. data/spec/services/kms/template_processor_spec.rb +20 -0
  137. data/spec/support/controller_macros.rb +9 -1
  138. data/vendor/assets/bower.json +3 -2
  139. data/vendor/assets/bower_components/angular-ui-select/CHANGELOG.md +169 -0
  140. data/vendor/assets/bower_components/angular-ui-select/CONTRIBUTING.md +161 -0
  141. data/vendor/assets/bower_components/angular-ui-select/README.md +27 -13
  142. data/vendor/assets/bower_components/angular-ui-select/bower.json +6 -3
  143. data/vendor/assets/bower_components/angular-ui-select/composer.json +29 -0
  144. data/vendor/assets/bower_components/angular-ui-select/deploy-docs.sh +31 -0
  145. data/vendor/assets/bower_components/angular-ui-select/dist/select.css +48 -2
  146. data/vendor/assets/bower_components/angular-ui-select/dist/select.js +454 -111
  147. data/vendor/assets/bower_components/angular-ui-select/dist/select.min.css +2 -2
  148. data/vendor/assets/bower_components/angular-ui-select/dist/select.min.js +2 -2
  149. data/vendor/assets/bower_components/angular-ui-select/docs/assets/app.js +1 -0
  150. data/vendor/assets/bower_components/angular-ui-select/docs/assets/demo.js +461 -0
  151. data/vendor/assets/bower_components/angular-ui-select/docs/assets/docs.css +339 -0
  152. data/vendor/assets/bower_components/angular-ui-select/docs/assets/plunkr.js +110 -0
  153. data/vendor/assets/bower_components/angular-ui-select/docs/index.html +191 -0
  154. data/vendor/assets/bower_components/angular-ui-select/docs/partials/_footer.html +2 -0
  155. data/vendor/assets/bower_components/angular-ui-select/docs/partials/_header.html +64 -0
  156. data/vendor/assets/bower_components/angular-ui-select/index.js +2 -0
  157. data/vendor/assets/bower_components/angular-ui-select/package.json +36 -15
  158. data/vendor/assets/bower_components/bootstrap/CHANGELOG.md +5 -0
  159. data/vendor/assets/bower_components/bootstrap/Gemfile +6 -0
  160. data/vendor/assets/bower_components/bootstrap/Gemfile.lock +43 -0
  161. data/vendor/assets/bower_components/bootstrap/Gruntfile.js +176 -145
  162. data/vendor/assets/bower_components/bootstrap/ISSUE_TEMPLATE.md +22 -0
  163. data/vendor/assets/bower_components/bootstrap/LICENSE +1 -1
  164. data/vendor/assets/bower_components/bootstrap/README.md +55 -40
  165. data/vendor/assets/bower_components/bootstrap/bower.json +5 -9
  166. data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap-theme.css +204 -59
  167. data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap-theme.css.map +1 -1
  168. data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap-theme.min.css +4 -3
  169. data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap-theme.min.css.map +1 -0
  170. data/vendor/assets/bower_components/bootstrap/dist/css/{bootstrap.less → bootstrap.css} +881 -327
  171. data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap.css.map +1 -1
  172. data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap.min.css +6 -0
  173. data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap.min.css.map +1 -0
  174. data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  175. data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.svg +272 -213
  176. data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  177. data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  178. data/vendor/assets/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
  179. data/vendor/assets/bower_components/bootstrap/dist/js/bootstrap.js +549 -286
  180. data/vendor/assets/bower_components/bootstrap/dist/js/bootstrap.min.js +5 -4
  181. data/vendor/assets/bower_components/bootstrap/dist/js/npm.js +13 -0
  182. data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.eot +0 -0
  183. data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.svg +272 -213
  184. data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.ttf +0 -0
  185. data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff +0 -0
  186. data/vendor/assets/bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff2 +0 -0
  187. data/vendor/assets/bower_components/bootstrap/grunt/bs-commonjs-generator.js +30 -0
  188. data/vendor/assets/bower_components/bootstrap/grunt/bs-glyphicons-data-generator.js +5 -4
  189. data/vendor/assets/bower_components/bootstrap/grunt/bs-lessdoc-parser.js +13 -12
  190. data/vendor/assets/bower_components/bootstrap/grunt/bs-raw-files-generator.js +6 -8
  191. data/vendor/assets/bower_components/bootstrap/grunt/change-version.js +109 -0
  192. data/vendor/assets/bower_components/bootstrap/grunt/configBridge.json +46 -0
  193. data/vendor/assets/bower_components/bootstrap/grunt/npm-shrinkwrap.json +2679 -0
  194. data/vendor/assets/bower_components/bootstrap/grunt/sauce_browsers.yml +5 -5
  195. data/vendor/assets/bower_components/bootstrap/js/affix.js +46 -26
  196. data/vendor/assets/bower_components/bootstrap/js/alert.js +8 -6
  197. data/vendor/assets/bower_components/bootstrap/js/button.js +34 -19
  198. data/vendor/assets/bower_components/bootstrap/js/carousel.js +35 -21
  199. data/vendor/assets/bower_components/bootstrap/js/collapse.js +69 -27
  200. data/vendor/assets/bower_components/bootstrap/js/dropdown.js +55 -41
  201. data/vendor/assets/bower_components/bootstrap/js/modal.js +91 -32
  202. data/vendor/assets/bower_components/bootstrap/js/popover.js +5 -10
  203. data/vendor/assets/bower_components/bootstrap/js/scrollspy.js +28 -26
  204. data/vendor/assets/bower_components/bootstrap/js/tab.js +45 -18
  205. data/vendor/assets/bower_components/bootstrap/js/tooltip.js +117 -54
  206. data/vendor/assets/bower_components/bootstrap/js/transition.js +2 -2
  207. data/vendor/assets/bower_components/bootstrap/less/alerts.less +5 -0
  208. data/vendor/assets/bower_components/bootstrap/less/badges.less +14 -3
  209. data/vendor/assets/bower_components/bootstrap/less/bootstrap.less +6 -0
  210. data/vendor/assets/bower_components/bootstrap/less/button-groups.less +22 -18
  211. data/vendor/assets/bower_components/bootstrap/less/buttons.less +19 -10
  212. data/vendor/assets/bower_components/bootstrap/less/carousel.less +34 -7
  213. data/vendor/assets/bower_components/bootstrap/less/close.less +1 -0
  214. data/vendor/assets/bower_components/bootstrap/less/code.less +1 -0
  215. data/vendor/assets/bower_components/bootstrap/less/component-animations.less +3 -1
  216. data/vendor/assets/bower_components/bootstrap/less/dropdowns.less +9 -8
  217. data/vendor/assets/bower_components/bootstrap/less/forms.less +123 -50
  218. data/vendor/assets/bower_components/bootstrap/less/glyphicons.less +75 -3
  219. data/vendor/assets/bower_components/bootstrap/less/input-groups.less +8 -3
  220. data/vendor/assets/bower_components/bootstrap/less/jumbotron.less +10 -4
  221. data/vendor/assets/bower_components/bootstrap/less/list-group.less +10 -11
  222. data/vendor/assets/bower_components/bootstrap/less/media.less +40 -30
  223. data/vendor/assets/bower_components/bootstrap/less/mixins.less +1 -0
  224. data/vendor/assets/bower_components/bootstrap/less/mixins/background-variant.less +2 -1
  225. data/vendor/assets/bower_components/bootstrap/less/mixins/buttons.less +19 -4
  226. data/vendor/assets/bower_components/bootstrap/less/mixins/forms.less +5 -1
  227. data/vendor/assets/bower_components/bootstrap/less/mixins/grid-framework.less +4 -4
  228. data/vendor/assets/bower_components/bootstrap/less/mixins/grid.less +4 -4
  229. data/vendor/assets/bower_components/bootstrap/less/mixins/hide-text.less +2 -2
  230. data/vendor/assets/bower_components/bootstrap/less/mixins/image.less +0 -1
  231. data/vendor/assets/bower_components/bootstrap/less/mixins/labels.less +1 -1
  232. data/vendor/assets/bower_components/bootstrap/less/mixins/list-group.less +2 -1
  233. data/vendor/assets/bower_components/bootstrap/less/mixins/pagination.less +2 -1
  234. data/vendor/assets/bower_components/bootstrap/less/mixins/reset-text.less +18 -0
  235. data/vendor/assets/bower_components/bootstrap/less/mixins/responsive-visibility.less +1 -1
  236. data/vendor/assets/bower_components/bootstrap/less/mixins/tab-focus.less +3 -3
  237. data/vendor/assets/bower_components/bootstrap/less/mixins/text-emphasis.less +2 -1
  238. data/vendor/assets/bower_components/bootstrap/less/mixins/vendor-prefixes.less +8 -5
  239. data/vendor/assets/bower_components/bootstrap/less/modals.less +3 -3
  240. data/vendor/assets/bower_components/bootstrap/less/navbar.less +30 -25
  241. data/vendor/assets/bower_components/bootstrap/less/navs.less +1 -1
  242. data/vendor/assets/bower_components/bootstrap/less/normalize.less +12 -13
  243. data/vendor/assets/bower_components/bootstrap/less/pager.less +1 -2
  244. data/vendor/assets/bower_components/bootstrap/less/pagination.less +5 -4
  245. data/vendor/assets/bower_components/bootstrap/less/panels.less +33 -5
  246. data/vendor/assets/bower_components/bootstrap/less/popovers.less +5 -7
  247. data/vendor/assets/bower_components/bootstrap/less/print.less +96 -96
  248. data/vendor/assets/bower_components/bootstrap/less/progress-bars.less +1 -19
  249. data/vendor/assets/bower_components/bootstrap/less/responsive-embed.less +10 -9
  250. data/vendor/assets/bower_components/bootstrap/less/scaffolding.less +13 -2
  251. data/vendor/assets/bower_components/bootstrap/less/tables.less +14 -13
  252. data/vendor/assets/bower_components/bootstrap/less/theme.less +49 -16
  253. data/vendor/assets/bower_components/bootstrap/less/thumbnails.less +1 -1
  254. data/vendor/assets/bower_components/bootstrap/less/tooltip.less +13 -7
  255. data/vendor/assets/bower_components/bootstrap/less/type.less +2 -13
  256. data/vendor/assets/bower_components/bootstrap/less/utilities.less +0 -2
  257. data/vendor/assets/bower_components/bootstrap/less/variables.less +45 -22
  258. data/vendor/assets/bower_components/bootstrap/nuget/MyGet.ps1 +8 -0
  259. data/vendor/assets/bower_components/bootstrap/nuget/bootstrap.less.nuspec +28 -0
  260. data/vendor/assets/bower_components/bootstrap/nuget/bootstrap.nuspec +28 -0
  261. data/vendor/assets/bower_components/bootstrap/package.js +32 -0
  262. data/vendor/assets/bower_components/bootstrap/package.json +49 -41
  263. data/vendor/assets/bower_components/flow.js/README.md +79 -64
  264. data/vendor/assets/bower_components/flow.js/bower.json +6 -2
  265. data/vendor/assets/bower_components/flow.js/dist/flow.js +1635 -1532
  266. data/vendor/assets/bower_components/flow.js/dist/flow.min.js +2 -2
  267. data/vendor/assets/bower_components/flow.js/package.js +24 -0
  268. data/vendor/assets/bower_components/flow.js/travis.sh +19 -0
  269. data/vendor/assets/bower_components/font-awesome/scss/_path.scss +5 -5
  270. data/vendor/assets/bower_components/font-awesome/scss/_variables.scss +1 -2
  271. data/vendor/assets/bower_components/ng-flow/bower.json +1 -1
  272. data/vendor/assets/bower_components/ng-flow/dist/ng-flow-standalone.js +1655 -1542
  273. data/vendor/assets/bower_components/ng-flow/dist/ng-flow-standalone.min.js +2 -2
  274. data/vendor/assets/bower_components/ng-flow/dist/ng-flow.js +19 -9
  275. data/vendor/assets/bower_components/ng-flow/dist/ng-flow.min.js +2 -2
  276. data/vendor/assets/bower_components/ng-flow/index.js +3 -0
  277. data/vendor/assets/bower_components/ng-flow/package.js +25 -0
  278. data/vendor/assets/bower_components/ng-flow/src/directives/drag-events.js +2 -1
  279. data/vendor/assets/bower_components/ng-flow/src/directives/events.js +2 -1
  280. data/vendor/assets/bower_components/ng-flow/src/directives/init.js +7 -1
  281. data/vendor/assets/bower_components/ng-flow/travis.sh +19 -0
  282. data/vendor/assets/bower_components/{Responsive-Dashboard → rdash-ui}/LICENSE +21 -21
  283. data/vendor/assets/bower_components/rdash-ui/README.md +55 -0
  284. data/vendor/assets/bower_components/rdash-ui/bower.json +33 -0
  285. data/vendor/assets/bower_components/rdash-ui/dist/css/rdash.min.css +1 -0
  286. data/vendor/assets/bower_components/rdash-ui/dist/css/rdash.scss +489 -0
  287. data/vendor/assets/bower_components/{Responsive-Dashboard/src → rdash-ui/dist}/fonts/montserrat-regular-webfont.eot +0 -0
  288. data/vendor/assets/bower_components/{Responsive-Dashboard/src → rdash-ui/dist}/fonts/montserrat-regular-webfont.svg +1316 -1316
  289. data/vendor/assets/bower_components/{Responsive-Dashboard/src → rdash-ui/dist}/fonts/montserrat-regular-webfont.ttf +0 -0
  290. data/vendor/assets/bower_components/{Responsive-Dashboard/src → rdash-ui/dist}/fonts/montserrat-regular-webfont.woff +0 -0
  291. metadata +227 -180
  292. data/config/initializers/bower_rails.rb +0 -16
  293. data/vendor/assets/bower_components/Responsive-Dashboard/CONTRIBUTING.md +0 -21
  294. data/vendor/assets/bower_components/Responsive-Dashboard/README.md +0 -119
  295. data/vendor/assets/bower_components/Responsive-Dashboard/bower.json +0 -32
  296. data/vendor/assets/bower_components/Responsive-Dashboard/gulpfile.js +0 -81
  297. data/vendor/assets/bower_components/Responsive-Dashboard/package.json +0 -21
  298. data/vendor/assets/bower_components/Responsive-Dashboard/src/index.html +0 -413
  299. data/vendor/assets/bower_components/Responsive-Dashboard/src/js/dashboard/controllers/alerts-ctrl.js +0 -19
  300. data/vendor/assets/bower_components/Responsive-Dashboard/src/js/dashboard/controllers/master-ctrl.js +0 -51
  301. data/vendor/assets/bower_components/Responsive-Dashboard/src/js/dashboard/directives/loading.js +0 -13
  302. data/vendor/assets/bower_components/Responsive-Dashboard/src/js/dashboard/directives/widget-body.js +0 -16
  303. data/vendor/assets/bower_components/Responsive-Dashboard/src/js/dashboard/directives/widget-header.js +0 -17
  304. data/vendor/assets/bower_components/Responsive-Dashboard/src/js/dashboard/directives/widget.js +0 -16
  305. data/vendor/assets/bower_components/Responsive-Dashboard/src/js/dashboard/module.js +0 -1
  306. data/vendor/assets/bower_components/Responsive-Dashboard/src/js/dashboard/routes.js +0 -22
  307. data/vendor/assets/bower_components/Responsive-Dashboard/src/less/dashboard/content.less +0 -19
  308. data/vendor/assets/bower_components/Responsive-Dashboard/src/less/dashboard/hamburg.less +0 -29
  309. data/vendor/assets/bower_components/Responsive-Dashboard/src/less/dashboard/header.less +0 -92
  310. data/vendor/assets/bower_components/Responsive-Dashboard/src/less/dashboard/loading.less +0 -40
  311. data/vendor/assets/bower_components/Responsive-Dashboard/src/less/dashboard/main.less +0 -73
  312. data/vendor/assets/bower_components/Responsive-Dashboard/src/less/dashboard/mixins.less +0 -5
  313. data/vendor/assets/bower_components/Responsive-Dashboard/src/less/dashboard/sidebar.less +0 -122
  314. data/vendor/assets/bower_components/Responsive-Dashboard/src/less/dashboard/variables.less +0 -10
  315. data/vendor/assets/bower_components/Responsive-Dashboard/src/less/dashboard/widgets.less +0 -95
  316. data/vendor/assets/bower_components/bootstrap/dist/css/bootstrap.min.css.erb +0 -5
  317. data/vendor/assets/bower_components/flow.js/CHANGELOG.md +0 -37
  318. data/vendor/assets/bower_components/flow.js/Gruntfile.js +0 -132
  319. data/vendor/assets/bower_components/flow.js/karma.conf.js +0 -114
  320. data/vendor/assets/bower_components/flow.js/package.json +0 -50
  321. data/vendor/assets/bower_components/flow.js/src/flow.js +0 -1532
  322. data/vendor/assets/bower_components/jquery/MIT-LICENSE.txt +0 -21
  323. data/vendor/assets/bower_components/jquery/bower.json +0 -27
  324. data/vendor/assets/bower_components/jquery/dist/jquery.js +0 -9190
  325. data/vendor/assets/bower_components/jquery/dist/jquery.min.js +0 -5
  326. data/vendor/assets/bower_components/jquery/dist/jquery.min.map +0 -1
  327. data/vendor/assets/bower_components/jquery/src/ajax.js +0 -806
  328. data/vendor/assets/bower_components/jquery/src/ajax/jsonp.js +0 -89
  329. data/vendor/assets/bower_components/jquery/src/ajax/load.js +0 -75
  330. data/vendor/assets/bower_components/jquery/src/ajax/parseJSON.js +0 -13
  331. data/vendor/assets/bower_components/jquery/src/ajax/parseXML.js +0 -28
  332. data/vendor/assets/bower_components/jquery/src/ajax/script.js +0 -64
  333. data/vendor/assets/bower_components/jquery/src/ajax/var/nonce.js +0 -5
  334. data/vendor/assets/bower_components/jquery/src/ajax/var/rquery.js +0 -3
  335. data/vendor/assets/bower_components/jquery/src/ajax/xhr.js +0 -135
  336. data/vendor/assets/bower_components/jquery/src/attributes.js +0 -11
  337. data/vendor/assets/bower_components/jquery/src/attributes/attr.js +0 -143
  338. data/vendor/assets/bower_components/jquery/src/attributes/classes.js +0 -158
  339. data/vendor/assets/bower_components/jquery/src/attributes/prop.js +0 -96
  340. data/vendor/assets/bower_components/jquery/src/attributes/support.js +0 -35
  341. data/vendor/assets/bower_components/jquery/src/attributes/val.js +0 -163
  342. data/vendor/assets/bower_components/jquery/src/callbacks.js +0 -205
  343. data/vendor/assets/bower_components/jquery/src/core.js +0 -498
  344. data/vendor/assets/bower_components/jquery/src/core/access.js +0 -60
  345. data/vendor/assets/bower_components/jquery/src/core/init.js +0 -123
  346. data/vendor/assets/bower_components/jquery/src/core/parseHTML.js +0 -39
  347. data/vendor/assets/bower_components/jquery/src/core/ready.js +0 -97
  348. data/vendor/assets/bower_components/jquery/src/core/var/rsingleTag.js +0 -4
  349. data/vendor/assets/bower_components/jquery/src/css.js +0 -451
  350. data/vendor/assets/bower_components/jquery/src/css/addGetHookIf.js +0 -24
  351. data/vendor/assets/bower_components/jquery/src/css/curCSS.js +0 -57
  352. data/vendor/assets/bower_components/jquery/src/css/defaultDisplay.js +0 -70
  353. data/vendor/assets/bower_components/jquery/src/css/hiddenVisibleSelectors.js +0 -15
  354. data/vendor/assets/bower_components/jquery/src/css/support.js +0 -91
  355. data/vendor/assets/bower_components/jquery/src/css/swap.js +0 -28
  356. data/vendor/assets/bower_components/jquery/src/css/var/cssExpand.js +0 -3
  357. data/vendor/assets/bower_components/jquery/src/css/var/getStyles.js +0 -5
  358. data/vendor/assets/bower_components/jquery/src/css/var/isHidden.js +0 -13
  359. data/vendor/assets/bower_components/jquery/src/css/var/rmargin.js +0 -3
  360. data/vendor/assets/bower_components/jquery/src/css/var/rnumnonpx.js +0 -5
  361. data/vendor/assets/bower_components/jquery/src/data.js +0 -179
  362. data/vendor/assets/bower_components/jquery/src/data/Data.js +0 -181
  363. data/vendor/assets/bower_components/jquery/src/data/accepts.js +0 -20
  364. data/vendor/assets/bower_components/jquery/src/data/var/data_priv.js +0 -5
  365. data/vendor/assets/bower_components/jquery/src/data/var/data_user.js +0 -5
  366. data/vendor/assets/bower_components/jquery/src/deferred.js +0 -149
  367. data/vendor/assets/bower_components/jquery/src/deprecated.js +0 -13
  368. data/vendor/assets/bower_components/jquery/src/dimensions.js +0 -50
  369. data/vendor/assets/bower_components/jquery/src/effects.js +0 -649
  370. data/vendor/assets/bower_components/jquery/src/effects/Tween.js +0 -114
  371. data/vendor/assets/bower_components/jquery/src/effects/animatedSelector.js +0 -13
  372. data/vendor/assets/bower_components/jquery/src/event.js +0 -868
  373. data/vendor/assets/bower_components/jquery/src/event/alias.js +0 -39
  374. data/vendor/assets/bower_components/jquery/src/event/support.js +0 -9
  375. data/vendor/assets/bower_components/jquery/src/exports/amd.js +0 -24
  376. data/vendor/assets/bower_components/jquery/src/exports/global.js +0 -32
  377. data/vendor/assets/bower_components/jquery/src/intro.js +0 -44
  378. data/vendor/assets/bower_components/jquery/src/jquery.js +0 -36
  379. data/vendor/assets/bower_components/jquery/src/manipulation.js +0 -582
  380. data/vendor/assets/bower_components/jquery/src/manipulation/_evalUrl.js +0 -18
  381. data/vendor/assets/bower_components/jquery/src/manipulation/support.js +0 -31
  382. data/vendor/assets/bower_components/jquery/src/manipulation/var/rcheckableType.js +0 -3
  383. data/vendor/assets/bower_components/jquery/src/offset.js +0 -204
  384. data/vendor/assets/bower_components/jquery/src/outro.js +0 -1
  385. data/vendor/assets/bower_components/jquery/src/queue.js +0 -142
  386. data/vendor/assets/bower_components/jquery/src/queue/delay.js +0 -22
  387. data/vendor/assets/bower_components/jquery/src/selector-native.js +0 -172
  388. data/vendor/assets/bower_components/jquery/src/selector-sizzle.js +0 -14
  389. data/vendor/assets/bower_components/jquery/src/selector.js +0 -1
  390. data/vendor/assets/bower_components/jquery/src/serialize.js +0 -111
  391. data/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.js +0 -2044
  392. data/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.js +0 -3
  393. data/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.map +0 -1
  394. data/vendor/assets/bower_components/jquery/src/traversing.js +0 -200
  395. data/vendor/assets/bower_components/jquery/src/traversing/findFilter.js +0 -100
  396. data/vendor/assets/bower_components/jquery/src/traversing/var/rneedsContext.js +0 -6
  397. data/vendor/assets/bower_components/jquery/src/var/arr.js +0 -3
  398. data/vendor/assets/bower_components/jquery/src/var/class2type.js +0 -4
  399. data/vendor/assets/bower_components/jquery/src/var/concat.js +0 -5
  400. data/vendor/assets/bower_components/jquery/src/var/hasOwn.js +0 -5
  401. data/vendor/assets/bower_components/jquery/src/var/indexOf.js +0 -5
  402. data/vendor/assets/bower_components/jquery/src/var/pnum.js +0 -3
  403. data/vendor/assets/bower_components/jquery/src/var/push.js +0 -5
  404. data/vendor/assets/bower_components/jquery/src/var/rnotwhite.js +0 -3
  405. data/vendor/assets/bower_components/jquery/src/var/slice.js +0 -5
  406. data/vendor/assets/bower_components/jquery/src/var/strundefined.js +0 -3
  407. data/vendor/assets/bower_components/jquery/src/var/support.js +0 -4
  408. data/vendor/assets/bower_components/jquery/src/var/toString.js +0 -5
  409. data/vendor/assets/bower_components/jquery/src/wrap.js +0 -78
@@ -56,7 +56,6 @@ input[type="checkbox"] {
56
56
  line-height: normal;
57
57
  }
58
58
 
59
- // Set the height of file controls to match text inputs
60
59
  input[type="file"] {
61
60
  display: block;
62
61
  }
@@ -123,7 +122,7 @@ output {
123
122
  background-color: @input-bg;
124
123
  background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
125
124
  border: 1px solid @input-border;
126
- border-radius: @input-border-radius;
125
+ border-radius: @input-border-radius; // Note: This has no effect on <select>s in some browsers, due to the limited stylability of <select>s in CSS.
127
126
  .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));
128
127
  .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s");
129
128
 
@@ -133,6 +132,12 @@ output {
133
132
  // Placeholder
134
133
  .placeholder();
135
134
 
135
+ // Unstyle the caret on `<select>`s in IE10+.
136
+ &::-ms-expand {
137
+ border: 0;
138
+ background-color: transparent;
139
+ }
140
+
136
141
  // Disabled and read-only inputs
137
142
  //
138
143
  // HTML5 says that controls under a fieldset > legend:first-child won't be
@@ -141,9 +146,13 @@ output {
141
146
  &[disabled],
142
147
  &[readonly],
143
148
  fieldset[disabled] & {
144
- cursor: not-allowed;
145
149
  background-color: @input-bg-disabled;
146
- opacity: 1; // iOS fix for unreadable disabled content
150
+ opacity: 1; // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655
151
+ }
152
+
153
+ &[disabled],
154
+ fieldset[disabled] & {
155
+ cursor: @cursor-disabled;
147
156
  }
148
157
 
149
158
  // Reset height for `textarea`s
@@ -168,24 +177,30 @@ input[type="search"] {
168
177
  // Special styles for iOS temporal inputs
169
178
  //
170
179
  // In Mobile Safari, setting `display: block` on temporal inputs causes the
171
- // text within the input to become vertically misaligned.
172
- // As a workaround, we set a pixel line-height that matches the
173
- // given height of the input. Since this fucks up everything else, we have to
174
- // appropriately reset it for Internet Explorer and the size variations.
175
-
176
- input[type="date"],
177
- input[type="time"],
178
- input[type="datetime-local"],
179
- input[type="month"] {
180
- line-height: @input-height-base;
181
- // IE8+ misaligns the text within date inputs, so we reset
182
- line-height: @line-height-base ~"\0";
180
+ // text within the input to become vertically misaligned. As a workaround, we
181
+ // set a pixel line-height that matches the given height of the input, but only
182
+ // for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848
183
+ //
184
+ // Note that as of 9.3, iOS doesn't support `week`.
185
+
186
+ @media screen and (-webkit-min-device-pixel-ratio: 0) {
187
+ input[type="date"],
188
+ input[type="time"],
189
+ input[type="datetime-local"],
190
+ input[type="month"] {
191
+ &.form-control {
192
+ line-height: @input-height-base;
193
+ }
183
194
 
184
- &.input-sm {
185
- line-height: @input-height-small;
186
- }
187
- &.input-lg {
188
- line-height: @input-height-large;
195
+ &.input-sm,
196
+ .input-group-sm & {
197
+ line-height: @input-height-small;
198
+ }
199
+
200
+ &.input-lg,
201
+ .input-group-lg & {
202
+ line-height: @input-height-large;
203
+ }
189
204
  }
190
205
  }
191
206
 
@@ -196,7 +211,7 @@ input[type="month"] {
196
211
  // horizontal forms, use the predefined grid classes.
197
212
 
198
213
  .form-group {
199
- margin-bottom: 15px;
214
+ margin-bottom: @form-group-margin-bottom;
200
215
  }
201
216
 
202
217
 
@@ -208,11 +223,11 @@ input[type="month"] {
208
223
  .checkbox {
209
224
  position: relative;
210
225
  display: block;
211
- min-height: @line-height-computed; // clear the floating input if there is no label text
212
226
  margin-top: 10px;
213
227
  margin-bottom: 10px;
214
228
 
215
229
  label {
230
+ min-height: @line-height-computed; // Ensure the input doesn't jump when there is no text
216
231
  padding-left: 20px;
217
232
  margin-bottom: 0;
218
233
  font-weight: normal;
@@ -236,6 +251,7 @@ input[type="month"] {
236
251
  // Radios and checkboxes on same line
237
252
  .radio-inline,
238
253
  .checkbox-inline {
254
+ position: relative;
239
255
  display: inline-block;
240
256
  padding-left: 20px;
241
257
  margin-bottom: 0;
@@ -258,7 +274,7 @@ input[type="checkbox"] {
258
274
  &[disabled],
259
275
  &.disabled,
260
276
  fieldset[disabled] & {
261
- cursor: not-allowed;
277
+ cursor: @cursor-disabled;
262
278
  }
263
279
  }
264
280
  // These classes are used directly on <label>s
@@ -266,7 +282,7 @@ input[type="checkbox"] {
266
282
  .checkbox-inline {
267
283
  &.disabled,
268
284
  fieldset[disabled] & {
269
- cursor: not-allowed;
285
+ cursor: @cursor-disabled;
270
286
  }
271
287
  }
272
288
  // These classes are used on elements with <label> descendants
@@ -275,7 +291,7 @@ input[type="checkbox"] {
275
291
  &.disabled,
276
292
  fieldset[disabled] & {
277
293
  label {
278
- cursor: not-allowed;
294
+ cursor: @cursor-disabled;
279
295
  }
280
296
  }
281
297
  }
@@ -292,6 +308,7 @@ input[type="checkbox"] {
292
308
  padding-bottom: (@padding-base-vertical + 1);
293
309
  // Remove default margin from `p`
294
310
  margin-bottom: 0;
311
+ min-height: (@line-height-computed + @font-size-base);
295
312
 
296
313
  &.input-lg,
297
314
  &.input-sm {
@@ -305,13 +322,64 @@ input[type="checkbox"] {
305
322
  //
306
323
  // Build on `.form-control` with modifier classes to decrease or increase the
307
324
  // height and font-size of form controls.
325
+ //
326
+ // The `.form-group-* form-control` variations are sadly duplicated to avoid the
327
+ // issue documented in https://github.com/twbs/bootstrap/issues/15074.
308
328
 
309
329
  .input-sm {
310
- .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);
330
+ .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @input-border-radius-small);
331
+ }
332
+ .form-group-sm {
333
+ .form-control {
334
+ height: @input-height-small;
335
+ padding: @padding-small-vertical @padding-small-horizontal;
336
+ font-size: @font-size-small;
337
+ line-height: @line-height-small;
338
+ border-radius: @input-border-radius-small;
339
+ }
340
+ select.form-control {
341
+ height: @input-height-small;
342
+ line-height: @input-height-small;
343
+ }
344
+ textarea.form-control,
345
+ select[multiple].form-control {
346
+ height: auto;
347
+ }
348
+ .form-control-static {
349
+ height: @input-height-small;
350
+ min-height: (@line-height-computed + @font-size-small);
351
+ padding: (@padding-small-vertical + 1) @padding-small-horizontal;
352
+ font-size: @font-size-small;
353
+ line-height: @line-height-small;
354
+ }
311
355
  }
312
356
 
313
357
  .input-lg {
314
- .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);
358
+ .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @input-border-radius-large);
359
+ }
360
+ .form-group-lg {
361
+ .form-control {
362
+ height: @input-height-large;
363
+ padding: @padding-large-vertical @padding-large-horizontal;
364
+ font-size: @font-size-large;
365
+ line-height: @line-height-large;
366
+ border-radius: @input-border-radius-large;
367
+ }
368
+ select.form-control {
369
+ height: @input-height-large;
370
+ line-height: @input-height-large;
371
+ }
372
+ textarea.form-control,
373
+ select[multiple].form-control {
374
+ height: auto;
375
+ }
376
+ .form-control-static {
377
+ height: @input-height-large;
378
+ min-height: (@line-height-computed + @font-size-large);
379
+ padding: (@padding-large-vertical + 1) @padding-large-horizontal;
380
+ font-size: @font-size-large;
381
+ line-height: @line-height-large;
382
+ }
315
383
  }
316
384
 
317
385
 
@@ -331,7 +399,7 @@ input[type="checkbox"] {
331
399
  // Feedback icon (requires .glyphicon classes)
332
400
  .form-control-feedback {
333
401
  position: absolute;
334
- top: (@line-height-computed + 5); // Height of the `label` and its margin
402
+ top: 0;
335
403
  right: 0;
336
404
  z-index: 2; // Ensure icon is above input groups
337
405
  display: block;
@@ -339,13 +407,18 @@ input[type="checkbox"] {
339
407
  height: @input-height-base;
340
408
  line-height: @input-height-base;
341
409
  text-align: center;
410
+ pointer-events: none;
342
411
  }
343
- .input-lg + .form-control-feedback {
412
+ .input-lg + .form-control-feedback,
413
+ .input-group-lg + .form-control-feedback,
414
+ .form-group-lg .form-control + .form-control-feedback {
344
415
  width: @input-height-large;
345
416
  height: @input-height-large;
346
417
  line-height: @input-height-large;
347
418
  }
348
- .input-sm + .form-control-feedback {
419
+ .input-sm + .form-control-feedback,
420
+ .input-group-sm + .form-control-feedback,
421
+ .form-group-sm .form-control + .form-control-feedback {
349
422
  width: @input-height-small;
350
423
  height: @input-height-small;
351
424
  line-height: @input-height-small;
@@ -362,10 +435,15 @@ input[type="checkbox"] {
362
435
  .form-control-validation(@state-danger-text; @state-danger-text; @state-danger-bg);
363
436
  }
364
437
 
438
+ // Reposition feedback icon if input has visible label above
439
+ .has-feedback label {
365
440
 
366
- // Reposition feedback icon if label is hidden with "screenreader only" state
367
- .has-feedback label.sr-only ~ .form-control-feedback {
368
- top: 0;
441
+ & ~ .form-control-feedback {
442
+ top: (@line-height-computed + 5); // Height of the `label` and its margin
443
+ }
444
+ &.sr-only ~ .form-control-feedback {
445
+ top: 0;
446
+ }
369
447
  }
370
448
 
371
449
 
@@ -382,7 +460,6 @@ input[type="checkbox"] {
382
460
  }
383
461
 
384
462
 
385
-
386
463
  // Inline forms
387
464
  //
388
465
  // Make forms appear inline(-block) by adding the `.form-inline` class. Inline
@@ -412,6 +489,11 @@ input[type="checkbox"] {
412
489
  vertical-align: middle;
413
490
  }
414
491
 
492
+ // Make static controls behave like regular ones
493
+ .form-control-static {
494
+ display: inline-block;
495
+ }
496
+
415
497
  .input-group {
416
498
  display: inline-table;
417
499
  vertical-align: middle;
@@ -434,8 +516,7 @@ input[type="checkbox"] {
434
516
  }
435
517
 
436
518
  // Remove default margin on radios/checkboxes that were used for stacking, and
437
- // then undo the floating of radios and checkboxes to match (which also avoids
438
- // a bug in WebKit: https://github.com/twbs/bootstrap/issues/1969).
519
+ // then undo the floating of radios and checkboxes to match.
439
520
  .radio,
440
521
  .checkbox {
441
522
  display: inline-block;
@@ -453,10 +534,7 @@ input[type="checkbox"] {
453
534
  margin-left: 0;
454
535
  }
455
536
 
456
- // Validation states
457
- //
458
- // Reposition the icon because it's now within a grid column and columns have
459
- // `position: relative;` on them. Also accounts for the grid gutter padding.
537
+ // Re-override the feedback icon.
460
538
  .has-feedback .form-control-feedback {
461
539
  top: 0;
462
540
  }
@@ -509,8 +587,7 @@ input[type="checkbox"] {
509
587
  // Reposition the icon because it's now within a grid column and columns have
510
588
  // `position: relative;` on them. Also accounts for the grid gutter padding.
511
589
  .has-feedback .form-control-feedback {
512
- top: 0;
513
- right: (@grid-gutter-width / 2);
590
+ right: floor((@grid-gutter-width / 2));
514
591
  }
515
592
 
516
593
  // Form group sizes
@@ -520,21 +597,17 @@ input[type="checkbox"] {
520
597
  .form-group-lg {
521
598
  @media (min-width: @screen-sm-min) {
522
599
  .control-label {
523
- padding-top: ((@padding-large-vertical * @line-height-large) + 1);
600
+ padding-top: (@padding-large-vertical + 1);
601
+ font-size: @font-size-large;
524
602
  }
525
603
  }
526
- .form-control {
527
- &:extend(.input-lg);
528
- }
529
604
  }
530
605
  .form-group-sm {
531
606
  @media (min-width: @screen-sm-min) {
532
607
  .control-label {
533
608
  padding-top: (@padding-small-vertical + 1);
609
+ font-size: @font-size-small;
534
610
  }
535
611
  }
536
- .form-control {
537
- &:extend(.input-sm);
538
- }
539
612
  }
540
613
  }
@@ -12,6 +12,7 @@
12
12
  font-family: 'Glyphicons Halflings';
13
13
  src: url('@{icon-font-path}@{icon-font-name}.eot');
14
14
  src: url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype'),
15
+ url('@{icon-font-path}@{icon-font-name}.woff2') format('woff2'),
15
16
  url('@{icon-font-path}@{icon-font-name}.woff') format('woff'),
16
17
  url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype'),
17
18
  url('@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}') format('svg');
@@ -31,9 +32,10 @@
31
32
  }
32
33
 
33
34
  // Individual icons
34
- .glyphicon-asterisk { &:before { content: "\2a"; } }
35
- .glyphicon-plus { &:before { content: "\2b"; } }
36
- .glyphicon-euro { &:before { content: "\20ac"; } }
35
+ .glyphicon-asterisk { &:before { content: "\002a"; } }
36
+ .glyphicon-plus { &:before { content: "\002b"; } }
37
+ .glyphicon-euro,
38
+ .glyphicon-eur { &:before { content: "\20ac"; } }
37
39
  .glyphicon-minus { &:before { content: "\2212"; } }
38
40
  .glyphicon-cloud { &:before { content: "\2601"; } }
39
41
  .glyphicon-envelope { &:before { content: "\2709"; } }
@@ -231,3 +233,73 @@
231
233
  .glyphicon-cloud-upload { &:before { content: "\e198"; } }
232
234
  .glyphicon-tree-conifer { &:before { content: "\e199"; } }
233
235
  .glyphicon-tree-deciduous { &:before { content: "\e200"; } }
236
+ .glyphicon-cd { &:before { content: "\e201"; } }
237
+ .glyphicon-save-file { &:before { content: "\e202"; } }
238
+ .glyphicon-open-file { &:before { content: "\e203"; } }
239
+ .glyphicon-level-up { &:before { content: "\e204"; } }
240
+ .glyphicon-copy { &:before { content: "\e205"; } }
241
+ .glyphicon-paste { &:before { content: "\e206"; } }
242
+ // The following 2 Glyphicons are omitted for the time being because
243
+ // they currently use Unicode codepoints that are outside the
244
+ // Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle
245
+ // non-BMP codepoints in CSS string escapes, and thus can't display these two icons.
246
+ // Notably, the bug affects some older versions of the Android Browser.
247
+ // More info: https://github.com/twbs/bootstrap/issues/10106
248
+ // .glyphicon-door { &:before { content: "\1f6aa"; } }
249
+ // .glyphicon-key { &:before { content: "\1f511"; } }
250
+ .glyphicon-alert { &:before { content: "\e209"; } }
251
+ .glyphicon-equalizer { &:before { content: "\e210"; } }
252
+ .glyphicon-king { &:before { content: "\e211"; } }
253
+ .glyphicon-queen { &:before { content: "\e212"; } }
254
+ .glyphicon-pawn { &:before { content: "\e213"; } }
255
+ .glyphicon-bishop { &:before { content: "\e214"; } }
256
+ .glyphicon-knight { &:before { content: "\e215"; } }
257
+ .glyphicon-baby-formula { &:before { content: "\e216"; } }
258
+ .glyphicon-tent { &:before { content: "\26fa"; } }
259
+ .glyphicon-blackboard { &:before { content: "\e218"; } }
260
+ .glyphicon-bed { &:before { content: "\e219"; } }
261
+ .glyphicon-apple { &:before { content: "\f8ff"; } }
262
+ .glyphicon-erase { &:before { content: "\e221"; } }
263
+ .glyphicon-hourglass { &:before { content: "\231b"; } }
264
+ .glyphicon-lamp { &:before { content: "\e223"; } }
265
+ .glyphicon-duplicate { &:before { content: "\e224"; } }
266
+ .glyphicon-piggy-bank { &:before { content: "\e225"; } }
267
+ .glyphicon-scissors { &:before { content: "\e226"; } }
268
+ .glyphicon-bitcoin { &:before { content: "\e227"; } }
269
+ .glyphicon-btc { &:before { content: "\e227"; } }
270
+ .glyphicon-xbt { &:before { content: "\e227"; } }
271
+ .glyphicon-yen { &:before { content: "\00a5"; } }
272
+ .glyphicon-jpy { &:before { content: "\00a5"; } }
273
+ .glyphicon-ruble { &:before { content: "\20bd"; } }
274
+ .glyphicon-rub { &:before { content: "\20bd"; } }
275
+ .glyphicon-scale { &:before { content: "\e230"; } }
276
+ .glyphicon-ice-lolly { &:before { content: "\e231"; } }
277
+ .glyphicon-ice-lolly-tasted { &:before { content: "\e232"; } }
278
+ .glyphicon-education { &:before { content: "\e233"; } }
279
+ .glyphicon-option-horizontal { &:before { content: "\e234"; } }
280
+ .glyphicon-option-vertical { &:before { content: "\e235"; } }
281
+ .glyphicon-menu-hamburger { &:before { content: "\e236"; } }
282
+ .glyphicon-modal-window { &:before { content: "\e237"; } }
283
+ .glyphicon-oil { &:before { content: "\e238"; } }
284
+ .glyphicon-grain { &:before { content: "\e239"; } }
285
+ .glyphicon-sunglasses { &:before { content: "\e240"; } }
286
+ .glyphicon-text-size { &:before { content: "\e241"; } }
287
+ .glyphicon-text-color { &:before { content: "\e242"; } }
288
+ .glyphicon-text-background { &:before { content: "\e243"; } }
289
+ .glyphicon-object-align-top { &:before { content: "\e244"; } }
290
+ .glyphicon-object-align-bottom { &:before { content: "\e245"; } }
291
+ .glyphicon-object-align-horizontal{ &:before { content: "\e246"; } }
292
+ .glyphicon-object-align-left { &:before { content: "\e247"; } }
293
+ .glyphicon-object-align-vertical { &:before { content: "\e248"; } }
294
+ .glyphicon-object-align-right { &:before { content: "\e249"; } }
295
+ .glyphicon-triangle-right { &:before { content: "\e250"; } }
296
+ .glyphicon-triangle-left { &:before { content: "\e251"; } }
297
+ .glyphicon-triangle-bottom { &:before { content: "\e252"; } }
298
+ .glyphicon-triangle-top { &:before { content: "\e253"; } }
299
+ .glyphicon-console { &:before { content: "\e254"; } }
300
+ .glyphicon-superscript { &:before { content: "\e255"; } }
301
+ .glyphicon-subscript { &:before { content: "\e256"; } }
302
+ .glyphicon-menu-left { &:before { content: "\e257"; } }
303
+ .glyphicon-menu-right { &:before { content: "\e258"; } }
304
+ .glyphicon-menu-down { &:before { content: "\e259"; } }
305
+ .glyphicon-menu-up { &:before { content: "\e260"; } }
@@ -29,6 +29,10 @@
29
29
 
30
30
  width: 100%;
31
31
  margin-bottom: 0;
32
+
33
+ &:focus {
34
+ z-index: 3;
35
+ }
32
36
  }
33
37
  }
34
38
 
@@ -79,18 +83,18 @@
79
83
  text-align: center;
80
84
  background-color: @input-group-addon-bg;
81
85
  border: 1px solid @input-group-addon-border-color;
82
- border-radius: @border-radius-base;
86
+ border-radius: @input-border-radius;
83
87
 
84
88
  // Sizing
85
89
  &.input-sm {
86
90
  padding: @padding-small-vertical @padding-small-horizontal;
87
91
  font-size: @font-size-small;
88
- border-radius: @border-radius-small;
92
+ border-radius: @input-border-radius-small;
89
93
  }
90
94
  &.input-lg {
91
95
  padding: @padding-large-vertical @padding-large-horizontal;
92
96
  font-size: @font-size-large;
93
- border-radius: @border-radius-large;
97
+ border-radius: @input-border-radius-large;
94
98
  }
95
99
 
96
100
  // Nuke default margins from checkboxes and radios to vertically center within.
@@ -160,6 +164,7 @@
160
164
  &:last-child {
161
165
  > .btn,
162
166
  > .btn-group {
167
+ z-index: 2;
163
168
  margin-left: -1px;
164
169
  }
165
170
  }