solidus_backend 2.1.1 → 2.2.0.beta1

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 (544) hide show
  1. checksums.yaml +4 -4
  2. data/.eslintrc +21 -0
  3. data/Gemfile +3 -0
  4. data/Rakefile +30 -1
  5. data/app/assets/config/solidus_backend_manifest.js +6 -0
  6. data/app/assets/javascripts/spree/backend.js +11 -7
  7. data/app/assets/javascripts/spree/backend/address_states.js +1 -1
  8. data/app/assets/javascripts/spree/backend/admin.js +11 -11
  9. data/app/assets/javascripts/spree/backend/calculator.js +24 -14
  10. data/app/assets/javascripts/spree/backend/checkouts/edit.js +9 -96
  11. data/app/assets/javascripts/spree/backend/collections/index.js +2 -0
  12. data/app/assets/javascripts/spree/backend/collections/line_items.js +9 -0
  13. data/app/assets/javascripts/spree/backend/collections/states.js +13 -0
  14. data/app/assets/javascripts/spree/backend/components/number_with_currency.js +12 -0
  15. data/app/assets/javascripts/spree/backend/components/tooltips.js +2 -1
  16. data/app/assets/javascripts/spree/backend/format_money.js +11 -0
  17. data/app/assets/javascripts/spree/backend/handlebars_extensions.js +18 -0
  18. data/app/assets/javascripts/spree/backend/images/upload.js +1 -1
  19. data/app/assets/javascripts/spree/backend/models/address.js +2 -0
  20. data/app/assets/javascripts/spree/backend/models/index.js +2 -0
  21. data/app/assets/javascripts/spree/backend/models/line_item.js +7 -0
  22. data/app/assets/javascripts/spree/backend/models/order.js +37 -0
  23. data/app/assets/javascripts/spree/backend/namespaces.js +9 -0
  24. data/app/assets/javascripts/spree/backend/orders/cart.js +55 -0
  25. data/app/assets/javascripts/spree/backend/orders/index.js +2 -0
  26. data/app/assets/javascripts/spree/backend/payments/edit.js.coffee +0 -1
  27. data/app/assets/javascripts/spree/backend/payments/new.js +0 -11
  28. data/app/assets/javascripts/spree/backend/promotions.js.coffee +48 -50
  29. data/app/assets/javascripts/spree/backend/promotions/activation.js +26 -0
  30. data/app/assets/javascripts/spree/backend/returns/return_item_selection.js +16 -16
  31. data/app/assets/javascripts/spree/backend/shipments.js +1 -1
  32. data/app/assets/javascripts/spree/backend/spree-select2.js +1 -6
  33. data/app/assets/javascripts/spree/backend/stock_transfers/variant_form.coffee +1 -1
  34. data/app/assets/javascripts/spree/backend/taxon_autocomplete.js +0 -5
  35. data/app/assets/javascripts/spree/backend/taxonomy.js.coffee +9 -9
  36. data/app/assets/javascripts/spree/backend/taxons.js.coffee +7 -7
  37. data/app/assets/javascripts/spree/backend/templates/_image.hbs +5 -0
  38. data/app/assets/javascripts/spree/backend/templates/index.js +3 -0
  39. data/app/assets/javascripts/spree/backend/templates/orders/details_adjustment_row.hbs +4 -0
  40. data/app/assets/javascripts/spree/backend/templates/orders/line_item.hbs +42 -0
  41. data/app/assets/javascripts/spree/backend/templates/promotions/calculators/fields/tiered_flat_rate.hbs +2 -2
  42. data/app/assets/javascripts/spree/backend/templates/promotions/calculators/fields/tiered_percent.hbs +2 -2
  43. data/app/assets/javascripts/spree/backend/templates/promotions/rules/option_values.hbs +2 -2
  44. data/app/assets/javascripts/spree/backend/templates/stock_transfers/{transfer_item.hbs.erb → transfer_item.hbs} +1 -5
  45. data/app/assets/javascripts/spree/backend/templates/variants/{autocomplete.hbs.erb → autocomplete.hbs} +1 -5
  46. data/app/assets/javascripts/spree/backend/templates/variants/line_items_autocomplete_stock.hbs +18 -59
  47. data/app/assets/javascripts/spree/backend/translation.js +29 -0
  48. data/app/assets/javascripts/spree/backend/variant_autocomplete.js.coffee +5 -4
  49. data/app/assets/javascripts/spree/backend/views/cart/add_line_item_button.js +19 -0
  50. data/app/assets/javascripts/spree/backend/views/cart/line_item_row.js +88 -0
  51. data/app/assets/javascripts/spree/backend/views/cart/line_item_table.js +11 -0
  52. data/app/assets/javascripts/spree/backend/views/index.js +12 -0
  53. data/app/assets/javascripts/spree/backend/views/number_with_currency.js +31 -0
  54. data/app/assets/javascripts/spree/backend/views/order/address.js +52 -0
  55. data/app/assets/javascripts/spree/backend/views/order/customer_details.js +68 -0
  56. data/app/assets/javascripts/spree/backend/views/order/customer_select.js +55 -0
  57. data/app/assets/javascripts/spree/backend/views/order/details_adjustments.js +39 -0
  58. data/app/assets/javascripts/spree/backend/views/order/details_total.js +12 -0
  59. data/app/assets/javascripts/spree/backend/views/order/summary.js +36 -0
  60. data/app/assets/javascripts/spree/backend/views/state_select.js +71 -0
  61. data/app/assets/javascripts/spree/backend/views/zones/form.js +16 -0
  62. data/app/assets/javascripts/spree/backend/zone.js +8 -0
  63. data/app/assets/stylesheets/spree/backend.css +1 -1
  64. data/app/assets/stylesheets/spree/backend/_bootstrap_custom.scss +542 -246
  65. data/app/assets/stylesheets/spree/backend/components/_date-picker.scss +5 -7
  66. data/app/assets/stylesheets/spree/backend/components/_image_placeholder.scss +24 -0
  67. data/app/assets/stylesheets/spree/backend/components/_messages.scss +8 -8
  68. data/app/assets/stylesheets/spree/backend/components/_navigation.scss +6 -15
  69. data/app/assets/stylesheets/spree/backend/components/_number_with_currency.scss +39 -0
  70. data/app/assets/stylesheets/spree/backend/components/_progress.scss +5 -5
  71. data/app/assets/stylesheets/spree/backend/components/_states.scss +6 -6
  72. data/app/assets/stylesheets/spree/backend/components/_stock_table.scss +1 -2
  73. data/app/assets/stylesheets/spree/backend/components/_tabs.scss +9 -9
  74. data/app/assets/stylesheets/spree/backend/globals/_deprecation.scss +17 -0
  75. data/app/assets/stylesheets/spree/backend/globals/_variables.scss +25 -4
  76. data/app/assets/stylesheets/spree/backend/globals/mixins/_line_through.scss +1 -1
  77. data/app/assets/stylesheets/spree/backend/plugins/_bootstrap_tooltip.scss +4 -4
  78. data/app/assets/stylesheets/spree/backend/plugins/_select2.scss +64 -187
  79. data/app/assets/stylesheets/spree/backend/sections/_log_entries.scss +3 -3
  80. data/app/assets/stylesheets/spree/backend/sections/_orders.scss +16 -20
  81. data/app/assets/stylesheets/spree/backend/sections/_products.scss +2 -2
  82. data/app/assets/stylesheets/spree/backend/sections/_promotions.scss +7 -2
  83. data/app/assets/stylesheets/spree/backend/sections/_return_authorizations.scss +0 -14
  84. data/app/assets/stylesheets/spree/backend/sections/_stock_management.scss +2 -2
  85. data/app/assets/stylesheets/spree/backend/sections/_store_credits.scss +0 -6
  86. data/app/assets/stylesheets/spree/backend/sections/_style_guide.scss +6 -6
  87. data/app/assets/stylesheets/spree/backend/sections/_taxonomies.scss +1 -1
  88. data/app/assets/stylesheets/spree/backend/shared/_forms.scss +31 -123
  89. data/app/assets/stylesheets/spree/backend/shared/_header.scss +5 -4
  90. data/app/assets/stylesheets/spree/backend/shared/_icons.scss +1 -1
  91. data/app/assets/stylesheets/spree/backend/shared/_images.scss +7 -0
  92. data/app/assets/stylesheets/spree/backend/shared/_layout.scss +4 -14
  93. data/app/assets/stylesheets/spree/backend/shared/_tables.scss +21 -32
  94. data/app/assets/stylesheets/spree/backend/shared/_typography.scss +14 -47
  95. data/app/assets/stylesheets/spree/backend/spree_admin.scss +4 -0
  96. data/app/controllers/spree/admin/adjustments_controller.rb +1 -1
  97. data/app/controllers/spree/admin/base_controller.rb +1 -1
  98. data/app/controllers/spree/admin/cancellations_controller.rb +1 -1
  99. data/app/controllers/spree/admin/customer_returns_controller.rb +2 -0
  100. data/app/controllers/spree/admin/general_settings_controller.rb +1 -27
  101. data/app/controllers/spree/admin/images_controller.rb +1 -1
  102. data/app/controllers/spree/admin/option_types_controller.rb +4 -4
  103. data/app/controllers/spree/admin/orders/customer_details_controller.rb +2 -2
  104. data/app/controllers/spree/admin/orders_controller.rb +2 -2
  105. data/app/controllers/spree/admin/payment_methods_controller.rb +1 -1
  106. data/app/controllers/spree/admin/payments_controller.rb +4 -4
  107. data/app/controllers/spree/admin/products_controller.rb +6 -6
  108. data/app/controllers/spree/admin/promotion_code_batches_controller.rb +28 -0
  109. data/app/controllers/spree/admin/promotion_codes_controller.rb +7 -3
  110. data/app/controllers/spree/admin/promotions_controller.rb +13 -23
  111. data/app/controllers/spree/admin/refunds_controller.rb +1 -1
  112. data/app/controllers/spree/admin/reimbursements_controller.rb +4 -2
  113. data/app/controllers/spree/admin/search_controller.rb +2 -2
  114. data/app/controllers/spree/admin/shipping_methods_controller.rb +2 -2
  115. data/app/controllers/spree/admin/states_controller.rb +1 -1
  116. data/app/controllers/spree/admin/stock_items_controller.rb +3 -3
  117. data/app/controllers/spree/admin/stock_transfers_controller.rb +2 -2
  118. data/app/controllers/spree/admin/store_credits_controller.rb +8 -2
  119. data/app/controllers/spree/admin/stores_controller.rb +23 -0
  120. data/app/controllers/spree/admin/tax_rates_controller.rb +3 -3
  121. data/app/controllers/spree/admin/taxons_controller.rb +5 -5
  122. data/app/controllers/spree/admin/users_controller.rb +1 -8
  123. data/app/controllers/spree/admin/variants_controller.rb +9 -2
  124. data/app/controllers/spree/admin/zones_controller.rb +3 -3
  125. data/app/helpers/spree/admin/base_helper.rb +2 -1
  126. data/app/helpers/spree/admin/navigation_helper.rb +2 -2
  127. data/app/models/spree/backend_configuration.rb +3 -3
  128. data/app/views/spree/admin/adjustment_reasons/edit.html.erb +3 -3
  129. data/app/views/spree/admin/adjustment_reasons/index.html.erb +1 -1
  130. data/app/views/spree/admin/adjustment_reasons/new.html.erb +3 -3
  131. data/app/views/spree/admin/adjustment_reasons/shared/_form.html.erb +3 -3
  132. data/app/views/spree/admin/adjustments/_adjustment.html.erb +2 -2
  133. data/app/views/spree/admin/adjustments/_adjustments_table.html.erb +1 -1
  134. data/app/views/spree/admin/adjustments/_form.html.erb +3 -3
  135. data/app/views/spree/admin/adjustments/edit.html.erb +5 -5
  136. data/app/views/spree/admin/adjustments/index.html.erb +4 -4
  137. data/app/views/spree/admin/adjustments/new.html.erb +4 -4
  138. data/app/views/spree/admin/cancellations/index.html.erb +1 -1
  139. data/app/views/spree/admin/countries/_form.html.erb +5 -5
  140. data/app/views/spree/admin/countries/edit.html.erb +3 -3
  141. data/app/views/spree/admin/countries/index.html.erb +3 -3
  142. data/app/views/spree/admin/countries/new.html.erb +3 -3
  143. data/app/views/spree/admin/customer_returns/_return_item_decision.html.erb +6 -6
  144. data/app/views/spree/admin/customer_returns/_return_item_selection.html.erb +5 -5
  145. data/app/views/spree/admin/customer_returns/edit.html.erb +1 -1
  146. data/app/views/spree/admin/customer_returns/index.html.erb +2 -2
  147. data/app/views/spree/admin/customer_returns/new.html.erb +5 -5
  148. data/app/views/spree/admin/images/_form.html.erb +2 -2
  149. data/app/views/spree/admin/images/_image_row.html.erb +5 -3
  150. data/app/views/spree/admin/images/edit.html.erb +7 -7
  151. data/app/views/spree/admin/images/index.html.erb +3 -3
  152. data/app/views/spree/admin/images/new.html.erb +3 -3
  153. data/app/views/spree/admin/log_entries/index.html.erb +1 -1
  154. data/app/views/spree/admin/option_types/_form.html.erb +4 -4
  155. data/app/views/spree/admin/option_types/_option_value_fields.html.erb +1 -1
  156. data/app/views/spree/admin/option_types/edit.html.erb +5 -5
  157. data/app/views/spree/admin/option_types/index.html.erb +4 -4
  158. data/app/views/spree/admin/option_types/new.html.erb +3 -3
  159. data/app/views/spree/admin/option_types/new.js.erb +1 -1
  160. data/app/views/spree/admin/orders/_add_line_item.html.erb +2 -2
  161. data/app/views/spree/admin/orders/_add_product.html.erb +3 -6
  162. data/app/views/spree/admin/orders/_adjustments.html.erb +18 -20
  163. data/app/views/spree/admin/orders/_carton_manifest.html.erb +1 -1
  164. data/app/views/spree/admin/orders/_form.html.erb +5 -29
  165. data/app/views/spree/admin/orders/_line_items.html.erb +22 -48
  166. data/app/views/spree/admin/orders/_line_items_edit_form.html.erb +6 -31
  167. data/app/views/spree/admin/orders/_order_details.html.erb +32 -0
  168. data/app/views/spree/admin/orders/_shipment.html.erb +10 -13
  169. data/app/views/spree/admin/orders/_shipment_manifest.html.erb +3 -3
  170. data/app/views/spree/admin/orders/cart.html.erb +4 -14
  171. data/app/views/spree/admin/orders/confirm.html.erb +3 -3
  172. data/app/views/spree/admin/orders/confirm/_customer_details.html.erb +2 -2
  173. data/app/views/spree/admin/orders/confirm/_payments.html.erb +1 -1
  174. data/app/views/spree/admin/orders/confirm/_shipment_manifest.html.erb +1 -1
  175. data/app/views/spree/admin/orders/customer_details/_form.html.erb +24 -20
  176. data/app/views/spree/admin/orders/customer_details/edit.html.erb +13 -11
  177. data/app/views/spree/admin/orders/customer_details/show.html.erb +2 -2
  178. data/app/views/spree/admin/orders/edit.html.erb +2 -1
  179. data/app/views/spree/admin/orders/index.html.erb +22 -20
  180. data/app/views/spree/admin/payment_methods/_form.html.erb +6 -6
  181. data/app/views/spree/admin/payment_methods/edit.html.erb +3 -3
  182. data/app/views/spree/admin/payment_methods/index.html.erb +4 -4
  183. data/app/views/spree/admin/payment_methods/new.html.erb +3 -3
  184. data/app/views/spree/admin/payments/_form.html.erb +10 -8
  185. data/app/views/spree/admin/payments/_list.html.erb +2 -2
  186. data/app/views/spree/admin/payments/credit.html.erb +1 -1
  187. data/app/views/spree/admin/payments/index.html.erb +3 -3
  188. data/app/views/spree/admin/payments/new.html.erb +4 -4
  189. data/app/views/spree/admin/payments/show.html.erb +3 -3
  190. data/app/views/spree/admin/payments/source_forms/_gateway.html.erb +6 -9
  191. data/app/views/spree/admin/payments/source_views/_gateway.html.erb +1 -1
  192. data/app/views/spree/admin/payments/source_views/_storecredit.html.erb +1 -1
  193. data/app/views/spree/admin/prices/_form.html.erb +4 -15
  194. data/app/views/spree/admin/prices/_master_variant_table.html.erb +3 -3
  195. data/app/views/spree/admin/prices/_table.html.erb +2 -2
  196. data/app/views/spree/admin/prices/edit.html.erb +1 -1
  197. data/app/views/spree/admin/prices/index.html.erb +6 -6
  198. data/app/views/spree/admin/prices/new.html.erb +2 -2
  199. data/app/views/spree/admin/prices/new.js.erb +1 -1
  200. data/app/views/spree/admin/product_properties/index.html.erb +5 -5
  201. data/app/views/spree/admin/products/_form.html.erb +21 -27
  202. data/app/views/spree/admin/products/edit.html.erb +6 -6
  203. data/app/views/spree/admin/products/index.html.erb +15 -15
  204. data/app/views/spree/admin/products/new.html.erb +14 -14
  205. data/app/views/spree/admin/products/new.js.erb +1 -1
  206. data/app/views/spree/admin/promotion_actions/create.js.erb +3 -2
  207. data/app/views/spree/admin/promotion_categories/_form.html.erb +4 -4
  208. data/app/views/spree/admin/promotion_categories/edit.html.erb +3 -3
  209. data/app/views/spree/admin/promotion_categories/index.html.erb +2 -2
  210. data/app/views/spree/admin/promotion_categories/new.html.erb +3 -3
  211. data/app/views/spree/admin/promotion_code_batches/download.csv.ruby +6 -0
  212. data/app/views/spree/admin/promotion_code_batches/index.html.erb +65 -0
  213. data/app/views/spree/admin/promotion_code_batches/new.html.erb +23 -0
  214. data/app/views/spree/admin/promotion_codes/index.csv.ruby +1 -1
  215. data/app/views/spree/admin/promotion_codes/index.html.erb +28 -0
  216. data/app/views/spree/admin/promotion_rules/create.js.erb +1 -1
  217. data/app/views/spree/admin/promotions/_actions.html.erb +4 -4
  218. data/app/views/spree/admin/promotions/_activations_edit.html.erb +22 -0
  219. data/app/views/spree/admin/promotions/_activations_new.html.erb +66 -0
  220. data/app/views/spree/admin/promotions/_form.html.erb +51 -64
  221. data/app/views/spree/admin/promotions/_promotion_action.html.erb +4 -4
  222. data/app/views/spree/admin/promotions/_promotion_rule.html.erb +4 -4
  223. data/app/views/spree/admin/promotions/_rules.html.erb +6 -8
  224. data/app/views/spree/admin/promotions/actions/_create_quantity_adjustments.html.erb +2 -2
  225. data/app/views/spree/admin/promotions/actions/_promotion_calculators_with_custom_fields.html.erb +21 -22
  226. data/app/views/spree/admin/promotions/calculators/flat_rate/_fields.html.erb +4 -0
  227. data/app/views/spree/admin/promotions/calculators/tiered_flat_rate/_fields.html.erb +8 -6
  228. data/app/views/spree/admin/promotions/calculators/tiered_percent/_fields.html.erb +8 -6
  229. data/app/views/spree/admin/promotions/edit.html.erb +15 -12
  230. data/app/views/spree/admin/promotions/index.html.erb +9 -9
  231. data/app/views/spree/admin/promotions/new.html.erb +5 -6
  232. data/app/views/spree/admin/promotions/rules/_first_repeat_purchase_since.html.erb +3 -3
  233. data/app/views/spree/admin/promotions/rules/_item_total.html.erb +7 -10
  234. data/app/views/spree/admin/promotions/rules/_landing_page.html.erb +2 -2
  235. data/app/views/spree/admin/promotions/rules/_nth_order.html.erb +4 -4
  236. data/app/views/spree/admin/promotions/rules/_option_value.html.erb +3 -3
  237. data/app/views/spree/admin/promotions/rules/_product.html.erb +4 -4
  238. data/app/views/spree/admin/promotions/rules/_taxon.html.erb +4 -4
  239. data/app/views/spree/admin/promotions/rules/_user.html.erb +1 -1
  240. data/app/views/spree/admin/properties/_form.html.erb +4 -4
  241. data/app/views/spree/admin/properties/edit.html.erb +3 -3
  242. data/app/views/spree/admin/properties/index.html.erb +7 -7
  243. data/app/views/spree/admin/properties/new.html.erb +3 -3
  244. data/app/views/spree/admin/properties/new.js.erb +1 -1
  245. data/app/views/spree/admin/refund_reasons/edit.html.erb +3 -3
  246. data/app/views/spree/admin/refund_reasons/index.html.erb +1 -1
  247. data/app/views/spree/admin/refund_reasons/new.html.erb +3 -3
  248. data/app/views/spree/admin/refund_reasons/shared/_form.html.erb +3 -3
  249. data/app/views/spree/admin/refunds/edit.html.erb +2 -2
  250. data/app/views/spree/admin/refunds/new.html.erb +4 -4
  251. data/app/views/spree/admin/reimbursements/edit.html.erb +6 -6
  252. data/app/views/spree/admin/reimbursements/index.html.erb +2 -2
  253. data/app/views/spree/admin/reimbursements/show.html.erb +6 -6
  254. data/app/views/spree/admin/reports/sales_total.html.erb +1 -1
  255. data/app/views/spree/admin/return_authorizations/_form.html.erb +3 -7
  256. data/app/views/spree/admin/return_authorizations/edit.html.erb +3 -3
  257. data/app/views/spree/admin/return_authorizations/index.html.erb +3 -3
  258. data/app/views/spree/admin/return_authorizations/new.html.erb +3 -3
  259. data/app/views/spree/admin/shared/_address_form.html.erb +12 -20
  260. data/app/views/spree/admin/shared/_calculator_fields.html.erb +10 -13
  261. data/app/views/spree/admin/shared/_configuration_menu.html.erb +2 -2
  262. data/app/views/spree/admin/shared/_head.html.erb +1 -1
  263. data/app/views/spree/admin/shared/_image.html.erb +7 -0
  264. data/app/views/spree/admin/shared/_js_locale_data.html.erb +47 -0
  265. data/app/views/spree/admin/shared/_new_resource_links.html.erb +1 -1
  266. data/app/views/spree/admin/shared/_number_with_currency.html.erb +16 -0
  267. data/app/views/spree/admin/shared/_order_submenu.html.erb +1 -1
  268. data/app/views/spree/admin/shared/_order_summary.html.erb +16 -17
  269. data/app/views/spree/admin/shared/_product_tabs.html.erb +6 -6
  270. data/app/views/spree/admin/shared/_report_criteria.html.erb +7 -7
  271. data/app/views/spree/admin/shared/_report_order_criteria.html.erb +9 -9
  272. data/app/views/spree/admin/shared/_settings_sub_menu.html.erb +2 -2
  273. data/app/views/spree/admin/shared/_sidebar.html.erb +1 -1
  274. data/app/views/spree/admin/shared/_variant_search.html.erb +4 -4
  275. data/app/views/spree/admin/shared/named_types/_edit.html.erb +3 -3
  276. data/app/views/spree/admin/shared/named_types/_form.html.erb +8 -10
  277. data/app/views/spree/admin/shared/named_types/_index.html.erb +1 -1
  278. data/app/views/spree/admin/shared/named_types/_new.html.erb +3 -3
  279. data/app/views/spree/admin/shipping_categories/edit.html.erb +3 -3
  280. data/app/views/spree/admin/shipping_categories/index.html.erb +3 -3
  281. data/app/views/spree/admin/shipping_categories/new.html.erb +3 -3
  282. data/app/views/spree/admin/shipping_methods/_form.html.erb +15 -15
  283. data/app/views/spree/admin/shipping_methods/edit.html.erb +3 -3
  284. data/app/views/spree/admin/shipping_methods/index.html.erb +4 -4
  285. data/app/views/spree/admin/shipping_methods/new.html.erb +3 -3
  286. data/app/views/spree/admin/states/_form.html.erb +4 -4
  287. data/app/views/spree/admin/states/_new.html.erb +2 -2
  288. data/app/views/spree/admin/states/_state_list.html.erb +2 -2
  289. data/app/views/spree/admin/states/edit.html.erb +3 -3
  290. data/app/views/spree/admin/states/index.html.erb +6 -6
  291. data/app/views/spree/admin/states/new.html.erb +3 -3
  292. data/app/views/spree/admin/stock_items/_stock_management.html.erb +3 -3
  293. data/app/views/spree/admin/stock_items/index.html.erb +4 -4
  294. data/app/views/spree/admin/stock_locations/_form.html.erb +10 -10
  295. data/app/views/spree/admin/stock_locations/_transfer_stock_form.html.erb +5 -5
  296. data/app/views/spree/admin/stock_locations/edit.html.erb +3 -3
  297. data/app/views/spree/admin/stock_locations/index.html.erb +4 -4
  298. data/app/views/spree/admin/stock_locations/new.html.erb +3 -3
  299. data/app/views/spree/admin/stock_movements/index.html.erb +2 -8
  300. data/app/views/spree/admin/stock_transfers/_stock_movements.html.erb +1 -1
  301. data/app/views/spree/admin/stock_transfers/_transfer_item_table.html.erb +1 -1
  302. data/app/views/spree/admin/stock_transfers/edit.html.erb +1 -1
  303. data/app/views/spree/admin/stock_transfers/index.html.erb +9 -9
  304. data/app/views/spree/admin/stock_transfers/receive.html.erb +1 -1
  305. data/app/views/spree/admin/stock_transfers/show.html.erb +5 -5
  306. data/app/views/spree/admin/store_credits/_form.html.erb +7 -6
  307. data/app/views/spree/admin/store_credits/_update_reason_field.html.erb +1 -1
  308. data/app/views/spree/admin/store_credits/edit_amount.html.erb +1 -1
  309. data/app/views/spree/admin/store_credits/index.html.erb +14 -11
  310. data/app/views/spree/admin/store_credits/new.html.erb +2 -2
  311. data/app/views/spree/admin/stores/_form.html.erb +51 -0
  312. data/app/views/spree/admin/stores/edit.html.erb +19 -0
  313. data/app/views/spree/admin/stores/index.html.erb +41 -0
  314. data/app/views/spree/admin/stores/new.html.erb +15 -0
  315. data/app/views/spree/admin/style_guide/topics/forms/_building_forms.html.erb +10 -8
  316. data/app/views/spree/admin/style_guide/topics/tables/_building_tables.html.erb +23 -4
  317. data/app/views/spree/admin/tax_categories/_form.html.erb +8 -8
  318. data/app/views/spree/admin/tax_categories/edit.html.erb +3 -3
  319. data/app/views/spree/admin/tax_categories/index.html.erb +4 -4
  320. data/app/views/spree/admin/tax_categories/new.html.erb +3 -3
  321. data/app/views/spree/admin/tax_rates/_form.html.erb +7 -7
  322. data/app/views/spree/admin/tax_rates/edit.html.erb +3 -3
  323. data/app/views/spree/admin/tax_rates/index.html.erb +3 -3
  324. data/app/views/spree/admin/tax_rates/new.html.erb +3 -3
  325. data/app/views/spree/admin/taxonomies/_form.html.erb +1 -1
  326. data/app/views/spree/admin/taxonomies/_list.html.erb +2 -2
  327. data/app/views/spree/admin/taxonomies/_taxon.html.erb +1 -1
  328. data/app/views/spree/admin/taxonomies/edit.erb +1 -1
  329. data/app/views/spree/admin/taxonomies/index.html.erb +2 -2
  330. data/app/views/spree/admin/taxonomies/new.html.erb +1 -1
  331. data/app/views/spree/admin/taxons/_form.html.erb +10 -10
  332. data/app/views/spree/admin/taxons/_taxon_table.html.erb +1 -1
  333. data/app/views/spree/admin/taxons/edit.html.erb +2 -2
  334. data/app/views/spree/admin/taxons/index.html.erb +2 -2
  335. data/app/views/spree/admin/users/_addresses_form.html.erb +4 -4
  336. data/app/views/spree/admin/users/_form.html.erb +8 -7
  337. data/app/views/spree/admin/users/addresses.html.erb +5 -5
  338. data/app/views/spree/admin/users/edit.html.erb +15 -15
  339. data/app/views/spree/admin/users/index.html.erb +5 -5
  340. data/app/views/spree/admin/users/items.html.erb +7 -7
  341. data/app/views/spree/admin/users/new.html.erb +3 -3
  342. data/app/views/spree/admin/users/orders.html.erb +7 -7
  343. data/app/views/spree/admin/variants/_form.html.erb +14 -14
  344. data/app/views/spree/admin/variants/_table.html.erb +2 -2
  345. data/app/views/spree/admin/variants/_table_filter.html.erb +3 -3
  346. data/app/views/spree/admin/variants/edit.html.erb +4 -4
  347. data/app/views/spree/admin/variants/index.html.erb +2 -2
  348. data/app/views/spree/admin/variants/new.html.erb +4 -4
  349. data/app/views/spree/admin/variants/new.js.erb +1 -1
  350. data/app/views/spree/admin/zones/_country_members.html.erb +1 -1
  351. data/app/views/spree/admin/zones/_form.html.erb +9 -9
  352. data/app/views/spree/admin/zones/_state_members.html.erb +1 -1
  353. data/app/views/spree/admin/zones/edit.html.erb +3 -3
  354. data/app/views/spree/admin/zones/index.html.erb +6 -6
  355. data/app/views/spree/admin/zones/new.html.erb +3 -3
  356. data/app/views/spree/layouts/admin.html.erb +3 -3
  357. data/app/views/spree/layouts/admin_style_guide.html.erb +1 -1
  358. data/config/initializers/assets.rb +1 -7
  359. data/config/routes.rb +6 -2
  360. data/lib/spree/backend.rb +0 -1
  361. data/lib/spree/backend/engine.rb +0 -5
  362. data/solidus_backend.gemspec +0 -1
  363. data/spec/controllers/spree/admin/payments_controller_spec.rb +21 -7
  364. data/spec/controllers/spree/admin/promotions_controller_spec.rb +30 -36
  365. data/spec/controllers/spree/admin/store_credits_controller_spec.rb +1 -0
  366. data/spec/controllers/spree/admin/users_controller_spec.rb +9 -1
  367. data/spec/features/admin/configuration/payment_methods_spec.rb +1 -1
  368. data/spec/features/admin/configuration/shipping_methods_spec.rb +21 -13
  369. data/spec/features/admin/configuration/stock_locations_spec.rb +3 -2
  370. data/spec/features/admin/configuration/{general_settings_spec.rb → store_spec.rb} +8 -9
  371. data/spec/features/admin/javascript_format_money_spec.rb +20 -0
  372. data/spec/features/admin/orders/customer_details_spec.rb +16 -12
  373. data/spec/features/admin/orders/line_items_spec.rb +2 -2
  374. data/spec/features/admin/orders/listing_spec.rb +25 -10
  375. data/spec/features/admin/orders/new_order_spec.rb +18 -31
  376. data/spec/features/admin/orders/order_details_spec.rb +22 -27
  377. data/spec/features/admin/orders/payments_spec.rb +5 -12
  378. data/spec/features/admin/orders/shipments_spec.rb +36 -2
  379. data/spec/features/admin/products/edit/images_spec.rb +1 -1
  380. data/spec/features/admin/products/edit/products_spec.rb +3 -3
  381. data/spec/features/admin/products/pricing_spec.rb +1 -1
  382. data/spec/features/admin/promotion_adjustments_spec.rb +42 -20
  383. data/spec/features/admin/stock_transfer_spec.rb +4 -4
  384. data/spec/features/admin/users_spec.rb +14 -0
  385. data/spec/javascripts/fixtures/_boot.html.erb +8 -0
  386. data/spec/javascripts/fixtures/number_with_currency/with_currency_select.html.erb +3 -0
  387. data/spec/javascripts/fixtures/number_with_currency/without_select.html.erb +3 -0
  388. data/spec/javascripts/format_money_spec.js +48 -0
  389. data/spec/javascripts/spec_helper.js +11 -0
  390. data/spec/javascripts/support/show_errors.js +8 -0
  391. data/spec/javascripts/support/with_translations.js +11 -0
  392. data/spec/javascripts/translation_spec.js +50 -0
  393. data/spec/javascripts/views/number_with_currency_spec.js +72 -0
  394. data/spec/spec_helper.rb +1 -0
  395. data/spec/support/feature/order_feature_helper.rb +8 -0
  396. data/spec/teaspoon_env.rb +17 -0
  397. data/vendor/assets/images/solidus_admin/select2-spinner.gif +0 -0
  398. data/vendor/assets/images/solidus_admin/select2.png +0 -0
  399. data/vendor/assets/images/solidus_admin/select2x2.png +0 -0
  400. data/vendor/assets/javascripts/solidus_admin/accounting.js +4 -0
  401. data/vendor/assets/javascripts/solidus_admin/backbone-nested-models.js +193 -0
  402. data/vendor/assets/javascripts/solidus_admin/bootstrap.js +1775 -1800
  403. data/vendor/assets/javascripts/solidus_admin/select2.js +3729 -0
  404. data/vendor/assets/javascripts/solidus_admin/select2_locales/index.js +1 -0
  405. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_ar.js +19 -0
  406. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_az.js +20 -0
  407. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_bg.js +20 -0
  408. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_ca.js +19 -0
  409. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_cs.js +51 -0
  410. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_da.js +19 -0
  411. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_de.js +18 -0
  412. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_el.js +19 -0
  413. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_es.js +19 -0
  414. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_et.js +19 -0
  415. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_eu.js +45 -0
  416. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_fa.js +21 -0
  417. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_fi.js +30 -0
  418. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_fr.js +18 -0
  419. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_gl.js +45 -0
  420. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_he.js +19 -0
  421. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_hr.js +24 -0
  422. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_hu.js +17 -0
  423. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_id.js +21 -0
  424. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_is.js +17 -0
  425. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_it.js +17 -0
  426. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_ja.js +17 -0
  427. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_ka.js +19 -0
  428. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_ko.js +19 -0
  429. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_lt.js +26 -0
  430. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_lv.js +19 -0
  431. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_mk.js +19 -0
  432. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_ms.js +21 -0
  433. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_nb.js +22 -0
  434. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_nl.js +17 -0
  435. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_pl.js +54 -0
  436. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_pt-BR.js +18 -0
  437. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_pt-PT.js +17 -0
  438. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_ro.js +17 -0
  439. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_rs.js +19 -0
  440. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_ru.js +23 -0
  441. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_sk.js +50 -0
  442. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_sv.js +19 -0
  443. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_th.js +19 -0
  444. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_tr.js +20 -0
  445. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_ug-CN.js +16 -0
  446. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_uk.js +25 -0
  447. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_vi.js +20 -0
  448. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_zh-CN.js +16 -0
  449. data/vendor/assets/javascripts/solidus_admin/select2_locales/select2_locale_zh-TW.js +16 -0
  450. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_alert.scss +5 -15
  451. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_badge.scss +77 -0
  452. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_breadcrumb.scss +25 -10
  453. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_button-group.scss +38 -60
  454. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_buttons.scss +27 -30
  455. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_card.scss +66 -82
  456. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_carousel.scss +99 -173
  457. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_close.scss +6 -3
  458. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_code.scss +13 -7
  459. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_custom-forms.scss +151 -114
  460. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_custom.scss +4 -0
  461. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_dropdown.scss +28 -60
  462. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_forms.scss +154 -218
  463. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_grid.scss +22 -46
  464. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_images.scss +7 -17
  465. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_input-group.scss +43 -54
  466. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_list-group.scss +80 -79
  467. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_media.scss +6 -84
  468. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_mixins.scss +9 -7
  469. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_modal.scss +38 -42
  470. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_nav.scss +41 -84
  471. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_navbar.scss +171 -133
  472. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_normalize.scss +230 -197
  473. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_pagination.scss +16 -22
  474. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_popover.scss +87 -56
  475. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_print.scss +96 -65
  476. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_progress.scss +17 -141
  477. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_reboot.scss +76 -34
  478. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_responsive-embed.scss +18 -5
  479. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_tables.scss +26 -66
  480. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_tooltip.scss +23 -18
  481. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_transitions.scss +34 -0
  482. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_type.scss +16 -30
  483. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_utilities.scss +13 -95
  484. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_variables.scss +542 -247
  485. data/vendor/assets/stylesheets/solidus_admin/bootstrap/bootstrap-grid.scss +20 -39
  486. data/vendor/assets/stylesheets/solidus_admin/bootstrap/bootstrap-reboot.scss +2 -2
  487. data/vendor/assets/stylesheets/solidus_admin/bootstrap/bootstrap.scss +6 -8
  488. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_background-variant.scss +1 -2
  489. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/{_label.scss → _badge.scss} +2 -2
  490. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_breakpoints.scss +25 -16
  491. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_buttons.scss +39 -53
  492. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_cards.scss +11 -2
  493. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_clearfix.scss +1 -1
  494. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_float.scss +9 -0
  495. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_forms.scss +11 -21
  496. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_gradients.scss +5 -11
  497. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_grid-framework.scss +39 -18
  498. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_grid.scss +52 -27
  499. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_hover.scss +10 -9
  500. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_image.scss +6 -4
  501. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_list-group.scss +3 -5
  502. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_pagination.scss +2 -3
  503. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_reset-text.scss +3 -4
  504. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_screen-reader.scss +2 -2
  505. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_text-emphasis.scss +1 -1
  506. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_text-hide.scss +1 -1
  507. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_transforms.scss +14 -0
  508. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_visibility.scss +5 -0
  509. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_align.scss +6 -0
  510. data/vendor/assets/stylesheets/solidus_admin/bootstrap/{_utilities-background.scss → utilities/_background.scss} +3 -8
  511. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_borders.scss +37 -0
  512. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_clearfix.scss +3 -0
  513. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_display.scss +18 -0
  514. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_flex.scss +48 -0
  515. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_float.scss +9 -0
  516. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_position.scss +23 -0
  517. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_screenreaders.scss +11 -0
  518. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_sizing.scss +10 -0
  519. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_spacing.scss +43 -0
  520. data/vendor/assets/stylesheets/solidus_admin/bootstrap/utilities/_text.scss +61 -0
  521. data/vendor/assets/stylesheets/solidus_admin/bootstrap/{_utilities-responsive.scss → utilities/_visibility.scss} +7 -1
  522. data/vendor/assets/stylesheets/solidus_admin/select2.scss +692 -0
  523. metadata +149 -48
  524. data/app/assets/javascripts/spree/backend/handlebars_extensions.coffee +0 -19
  525. data/app/assets/javascripts/spree/backend/line_items.js.coffee +0 -55
  526. data/app/assets/javascripts/spree/backend/line_items_on_order_edit.js +0 -62
  527. data/app/assets/javascripts/spree/backend/returns/expedited_exchanges_warning.coffee +0 -4
  528. data/app/assets/javascripts/spree/backend/stock_movement.js.coffee +0 -21
  529. data/app/assets/javascripts/spree/backend/variant_management.js.coffee +0 -10
  530. data/app/assets/javascripts/spree/backend/zone.js.coffee +0 -43
  531. data/app/views/spree/admin/general_settings/edit.html.erb +0 -80
  532. data/app/views/spree/admin/shared/_translations.html.erb +0 -29
  533. data/app/views/spree/admin/stock_movements/_form.html.erb +0 -12
  534. data/app/views/spree/admin/stock_movements/new.html.erb +0 -15
  535. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_animation.scss +0 -27
  536. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_labels.scss +0 -77
  537. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_pager.scss +0 -57
  538. data/vendor/assets/stylesheets/solidus_admin/bootstrap/_utilities-spacing.scss +0 -39
  539. data/vendor/assets/stylesheets/solidus_admin/bootstrap/bootstrap-flex.scss +0 -8
  540. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_center-block.scss +0 -7
  541. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_progress.scss +0 -18
  542. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_pulls.scss +0 -6
  543. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_reset-filter.scss +0 -8
  544. data/vendor/assets/stylesheets/solidus_admin/bootstrap/mixins/_tab-focus.scss +0 -9
@@ -1,169 +1,186 @@
1
- // Wrapper and base class
1
+ // Contents
2
+ //
3
+ // Navbar
4
+ // Navbar brand
5
+ // Navbar nav
6
+ // Navbar text
7
+ // Navbar divider
8
+ // Responsive navbar
9
+ // Navbar position
10
+ // Navbar themes
11
+
12
+
13
+ // Navbar
2
14
  //
3
15
  // Provide a static navbar from which we expand to create full-width, fixed, and
4
16
  // other navbar variations.
5
17
 
6
18
  .navbar {
7
19
  position: relative;
8
- padding: $navbar-padding-vertical $navbar-padding-horizontal;
9
- @include clearfix;
10
-
11
- @include media-breakpoint-up(sm) {
12
- @include border-radius($navbar-border-radius);
13
- }
20
+ display: flex;
21
+ flex-direction: column;
22
+ padding: $navbar-padding-y $navbar-padding-x;
14
23
  }
15
24
 
16
25
 
17
- // Navbar alignment options
26
+ // Navbar brand
18
27
  //
19
- // Display the navbar across the entirety of the page or fixed it to the top or
20
- // bottom of the page.
28
+ // Used for brand, project, or site names.
21
29
 
22
- // A static, full width modifier with no rounded corners.
23
- .navbar-full {
24
- z-index: $zindex-navbar;
25
-
26
- @include media-breakpoint-up(sm) {
27
- @include border-radius(0);
28
- }
29
- }
30
+ .navbar-brand {
31
+ display: inline-block;
32
+ padding-top: .25rem;
33
+ padding-bottom: .25rem;
34
+ margin-right: $navbar-padding-x;
35
+ font-size: $font-size-lg;
36
+ line-height: inherit;
37
+ white-space: nowrap;
30
38
 
31
- // Fix the top/bottom navbars when screen real estate supports it
32
- .navbar-fixed-top,
33
- .navbar-fixed-bottom {
34
- position: fixed;
35
- right: 0;
36
- left: 0;
37
- z-index: $zindex-navbar-fixed;
38
-
39
- // Undo the rounded corners
40
- @include media-breakpoint-up(sm) {
41
- @include border-radius(0);
39
+ @include hover-focus {
40
+ text-decoration: none;
42
41
  }
43
42
  }
44
43
 
45
- .navbar-fixed-top {
46
- top: 0;
47
- }
48
44
 
49
- .navbar-fixed-bottom {
50
- bottom: 0;
51
- }
45
+ // Navbar nav
46
+ //
47
+ // Custom navbar navigation (doesn't require `.nav`, but does make use of `.nav-link`).
52
48
 
53
- .navbar-sticky-top {
54
- position: sticky;
55
- top: 0;
56
- z-index: $zindex-navbar-sticky;
57
- width: 100%;
49
+ .navbar-nav {
50
+ display: flex;
51
+ flex-direction: column; // cannot use `inherit` to get the `.navbar`s value
52
+ padding-left: 0;
53
+ margin-bottom: 0;
54
+ list-style: none;
58
55
 
59
- // Undo the rounded corners
60
- @include media-breakpoint-up(sm) {
61
- @include border-radius(0);
56
+ .nav-link {
57
+ padding-right: 0;
58
+ padding-left: 0;
62
59
  }
63
60
  }
64
61
 
65
62
 
63
+ // Navbar text
66
64
  //
67
- // Brand/project name
68
65
  //
69
66
 
70
- .navbar-brand {
71
- float: left;
72
- padding-top: .25rem;
73
- padding-bottom: .25rem;
74
- margin-right: 1rem;
75
- font-size: $font-size-lg;
76
-
77
- @include hover-focus {
78
- text-decoration: none;
79
- }
80
-
81
- > img {
82
- display: block;
83
- }
84
- }
85
-
86
-
87
- .navbar-divider {
88
- float: left;
89
- width: 1px;
90
- padding-top: .425rem;
67
+ .navbar-text {
68
+ display: inline-block;
69
+ padding-top: .425rem;
91
70
  padding-bottom: .425rem;
92
- margin-right: $navbar-padding-horizontal;
93
- margin-left: $navbar-padding-horizontal;
94
- overflow: hidden;
95
-
96
- &::before {
97
- content: "\00a0";
98
- }
99
71
  }
100
72
 
101
73
 
102
- // Navbar toggle
74
+ // Responsive navbar
103
75
  //
104
- // Custom button for toggling the `.navbar-collapse`, powered by the collapse
105
- // Bootstrap JavaScript plugin.
76
+ // Custom styles for responsive collapsing and toggling of navbar contents.
77
+ // Powered by the collapse Bootstrap JavaScript plugin.
106
78
 
79
+ // Button for toggling the navbar when in its collapsed state
107
80
  .navbar-toggler {
108
- padding: .5rem .75rem;
109
- font-size: $font-size-lg;
81
+ align-self: flex-start; // Prevent toggler from growing to full width when it's the only visible navbar child
82
+ padding: $navbar-toggler-padding-y $navbar-toggler-padding-x;
83
+ font-size: $navbar-toggler-font-size;
110
84
  line-height: 1;
111
- background: none;
112
- border: $border-width solid transparent;
113
- @include border-radius($btn-border-radius);
85
+ background: transparent; // remove default button style
86
+ border: $border-width solid transparent; // remove default button style
87
+ @include border-radius($navbar-toggler-border-radius);
114
88
 
115
89
  @include hover-focus {
116
90
  text-decoration: none;
117
91
  }
118
92
  }
119
93
 
120
- // Custom override for
121
- .navbar-toggleable {
122
- &-xs {
123
- @include media-breakpoint-up(sm) {
124
- display: block !important;
125
- }
126
- }
127
- &-sm {
128
- @include media-breakpoint-up(md) {
129
- display: block !important;
130
- }
131
- }
132
- &-md {
133
- @include media-breakpoint-up(lg) {
134
- display: block !important;
135
- }
136
- }
94
+ // Keep as a separate element so folks can easily override it with another icon
95
+ // or image file as needed.
96
+ .navbar-toggler-icon {
97
+ display: inline-block;
98
+ width: 1.5em;
99
+ height: 1.5em;
100
+ vertical-align: middle;
101
+ content: "";
102
+ background: no-repeat center center;
103
+ background-size: 100% 100%;
137
104
  }
138
105
 
106
+ // Use `position` on the toggler to prevent it from being auto placed as a flex
107
+ // item and allow easy placement.
108
+ .navbar-toggler-left {
109
+ position: absolute;
110
+ left: $navbar-padding-x;
111
+ }
112
+ .navbar-toggler-right {
113
+ position: absolute;
114
+ right: $navbar-padding-x;
115
+ }
139
116
 
140
- // Navigation
141
- //
142
- // Custom navbar navigation built on the base `.nav` styles.
143
-
144
- .navbar-nav {
145
- .nav-item {
146
- float: left;
147
- }
148
-
149
- .nav-link {
150
- display: block;
151
- padding-top: .425rem;
152
- padding-bottom: .425rem;
117
+ // Generate series of `.navbar-toggleable-*` responsive classes for configuring
118
+ // where your navbar collapses.
119
+ .navbar-toggleable {
120
+ @each $breakpoint in map-keys($grid-breakpoints) {
121
+ $next: breakpoint-next($breakpoint, $grid-breakpoints);
122
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
123
+
124
+ &#{$infix} {
125
+ @include media-breakpoint-down($breakpoint) {
126
+ .navbar-nav {
127
+ .dropdown-menu {
128
+ position: static;
129
+ float: none;
130
+ }
131
+ }
132
+
133
+ > .container {
134
+ padding-right: 0;
135
+ padding-left: 0;
136
+ }
137
+ }
153
138
 
154
- + .nav-link {
155
- margin-left: 1rem;
139
+ @include media-breakpoint-up($next) {
140
+ flex-direction: row;
141
+ flex-wrap: nowrap;
142
+ align-items: center;
143
+
144
+ .navbar-nav {
145
+ flex-direction: row;
146
+
147
+ .nav-link {
148
+ padding-right: .5rem;
149
+ padding-left: .5rem;
150
+ }
151
+ }
152
+
153
+ // For nesting containers, have to redeclare for alignment purposes
154
+ > .container {
155
+ display: flex;
156
+ flex-wrap: nowrap;
157
+ align-items: center;
158
+ }
159
+
160
+ // scss-lint:disable ImportantRule
161
+ .navbar-collapse {
162
+ display: flex !important;
163
+ width: 100%;
164
+ }
165
+ // scss-lint:enable ImportantRule
166
+
167
+ .navbar-toggler {
168
+ display: none;
169
+ }
170
+ }
156
171
  }
157
172
  }
158
-
159
- .nav-item + .nav-item {
160
- margin-left: 1rem;
161
- }
162
173
  }
163
174
 
175
+
176
+ // Navbar themes
177
+ //
178
+ // Styles for switching between navbars with light or dark background.
179
+
164
180
  // Dark links against a light background
165
181
  .navbar-light {
166
- .navbar-brand {
182
+ .navbar-brand,
183
+ .navbar-toggler {
167
184
  color: $navbar-light-active-color;
168
185
 
169
186
  @include hover-focus {
@@ -178,39 +195,54 @@
178
195
  @include hover-focus {
179
196
  color: $navbar-light-hover-color;
180
197
  }
198
+
199
+ &.disabled {
200
+ color: $navbar-light-disabled-color;
201
+ }
181
202
  }
182
203
 
183
204
  .open > .nav-link,
184
205
  .active > .nav-link,
185
206
  .nav-link.open,
186
207
  .nav-link.active {
187
- @include plain-hover-focus {
188
- color: $navbar-light-active-color;
189
- }
208
+ color: $navbar-light-active-color;
190
209
  }
191
210
  }
192
211
 
193
- .navbar-divider {
194
- background-color: rgba(0,0,0,.075);
212
+ .navbar-toggler {
213
+ border-color: $navbar-light-toggler-border;
214
+ }
215
+
216
+ .navbar-toggler-icon {
217
+ background-image: $navbar-light-toggler-bg;
218
+ }
219
+
220
+ .navbar-text {
221
+ color: $navbar-light-color;
195
222
  }
196
223
  }
197
224
 
198
225
  // White links against a dark background
199
- .navbar-dark {
200
- .navbar-brand {
201
- color: $navbar-dark-active-color;
226
+ .navbar-inverse {
227
+ .navbar-brand,
228
+ .navbar-toggler {
229
+ color: $navbar-inverse-active-color;
202
230
 
203
231
  @include hover-focus {
204
- color: $navbar-dark-active-color;
232
+ color: $navbar-inverse-active-color;
205
233
  }
206
234
  }
207
235
 
208
236
  .navbar-nav {
209
237
  .nav-link {
210
- color: $navbar-dark-color;
238
+ color: $navbar-inverse-color;
211
239
 
212
240
  @include hover-focus {
213
- color: $navbar-dark-hover-color;
241
+ color: $navbar-inverse-hover-color;
242
+ }
243
+
244
+ &.disabled {
245
+ color: $navbar-inverse-disabled-color;
214
246
  }
215
247
  }
216
248
 
@@ -218,13 +250,19 @@
218
250
  .active > .nav-link,
219
251
  .nav-link.open,
220
252
  .nav-link.active {
221
- @include plain-hover-focus {
222
- color: $navbar-dark-active-color;
223
- }
253
+ color: $navbar-inverse-active-color;
224
254
  }
225
255
  }
226
256
 
227
- .navbar-divider {
228
- background-color: rgba(255,255,255,.075);
257
+ .navbar-toggler {
258
+ border-color: $navbar-inverse-toggler-border;
259
+ }
260
+
261
+ .navbar-toggler-icon {
262
+ background-image: $navbar-inverse-toggler-bg;
263
+ }
264
+
265
+ .navbar-text {
266
+ color: $navbar-inverse-color;
229
267
  }
230
268
  }
@@ -1,158 +1,182 @@
1
- /*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
1
+ /*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
2
2
 
3
3
  //
4
- // 1. Set default font family to sans-serif.
5
- // 2. Prevent iOS and IE text size adjust after device orientation change,
6
- // without disabling user zoom.
4
+ // 1. Change the default font family in all browsers (opinionated).
5
+ // 2. Correct the line height in all browsers.
6
+ // 3. Prevent adjustments of font size after orientation changes in
7
+ // IE on Windows Phone and in iOS.
7
8
  //
8
9
 
10
+ // Document
11
+ // ==========================================================================
12
+
9
13
  html {
10
14
  font-family: sans-serif; // 1
11
- -ms-text-size-adjust: 100%; // 2
12
- -webkit-text-size-adjust: 100%; // 2
15
+ line-height: 1.15; // 2
16
+ -ms-text-size-adjust: 100%; // 3
17
+ -webkit-text-size-adjust: 100%; // 3
13
18
  }
14
19
 
20
+ // Sections
21
+ // ==========================================================================
22
+
15
23
  //
16
- // Remove default margin.
24
+ // Remove the margin in all browsers (opinionated).
17
25
  //
18
26
 
19
27
  body {
20
28
  margin: 0;
21
29
  }
22
30
 
23
- // HTML5 display definitions
24
- // ==========================================================================
25
-
26
31
  //
27
- // Correct `block` display not defined for any HTML5 element in IE 8/9.
28
- // Correct `block` display not defined for `details` or `summary` in IE 10/11
29
- // and Firefox.
30
- // Correct `block` display not defined for `main` in IE 11.
32
+ // Add the correct display in IE 9-.
31
33
  //
32
34
 
33
35
  article,
34
36
  aside,
35
- details,
36
- figcaption,
37
- figure,
38
37
  footer,
39
38
  header,
40
- hgroup,
41
- main,
42
- menu,
43
39
  nav,
44
- section,
45
- summary {
40
+ section {
46
41
  display: block;
47
42
  }
48
43
 
49
44
  //
50
- // 1. Correct `inline-block` display not defined in IE 8/9.
51
- // 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
45
+ // Correct the font size and margin on `h1` elements within `section` and
46
+ // `article` contexts in Chrome, Firefox, and Safari.
52
47
  //
53
48
 
54
- audio,
55
- canvas,
56
- progress,
57
- video {
58
- display: inline-block; // 1
59
- vertical-align: baseline; // 2
49
+ h1 {
50
+ font-size: 2em;
51
+ margin: 0.67em 0;
60
52
  }
61
53
 
54
+ // Grouping content
55
+ // ==========================================================================
56
+
62
57
  //
63
- // Prevent modern browsers from displaying `audio` without controls.
64
- // Remove excess height in iOS 5 devices.
58
+ // Add the correct display in IE 9-.
59
+ // 1. Add the correct display in IE.
65
60
  //
66
61
 
67
- audio:not([controls]) {
68
- display: none;
69
- height: 0;
62
+ figcaption,
63
+ figure,
64
+ main { // 1
65
+ display: block;
70
66
  }
71
67
 
72
68
  //
73
- // Address `[hidden]` styling not present in IE 8/9/10.
74
- // Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
69
+ // Add the correct margin in IE 8.
75
70
  //
76
71
 
77
- [hidden],
78
- template {
79
- display: none;
72
+ figure {
73
+ margin: 1em 40px;
80
74
  }
81
75
 
82
- // Links
83
- // ==========================================================================
84
-
85
76
  //
86
- // Remove the gray background color from active links in IE 10.
77
+ // 1. Add the correct box sizing in Firefox.
78
+ // 2. Show the overflow in Edge and IE.
87
79
  //
88
80
 
89
- a {
90
- background-color: transparent;
81
+ hr {
82
+ box-sizing: content-box; // 1
83
+ height: 0; // 1
84
+ overflow: visible; // 2
91
85
  }
92
86
 
93
87
  //
94
- // Improve readability of focused elements when they are also in an
95
- // active/hover state.
88
+ // 1. Correct the inheritance and scaling of font size in all browsers.
89
+ // 2. Correct the odd `em` font sizing in all browsers.
96
90
  //
97
91
 
98
- a {
99
- &:active {
100
- outline: 0;
101
- }
102
- &:hover {
103
- outline: 0;
104
- }
92
+ pre {
93
+ font-family: monospace, monospace; // 1
94
+ font-size: 1em; // 2
105
95
  }
106
96
 
107
97
  // Text-level semantics
108
98
  // ==========================================================================
109
99
 
110
100
  //
111
- // Address styling not present in IE 8/9/10/11, Safari, and Chrome.
101
+ // 1. Remove the gray background on active links in IE 10.
102
+ // 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
103
+ //
104
+
105
+ a {
106
+ background-color: transparent; // 1
107
+ -webkit-text-decoration-skip: objects; // 2
108
+ }
109
+
110
+ //
111
+ // Remove the outline on focused links when they are also active or hovered
112
+ // in all browsers (opinionated).
113
+ //
114
+
115
+ a:active,
116
+ a:hover {
117
+ outline-width: 0;
118
+ }
119
+
120
+ //
121
+ // 1. Remove the bottom border in Firefox 39-.
122
+ // 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
112
123
  //
113
124
 
114
125
  abbr[title] {
115
- border-bottom: 1px dotted;
126
+ border-bottom: none; // 1
127
+ text-decoration: underline; // 2
128
+ text-decoration: underline dotted; // 2
116
129
  }
117
130
 
118
131
  //
119
- // Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
132
+ // Prevent the duplicate application of `bolder` by the next rule in Safari 6.
120
133
  //
121
134
 
122
135
  b,
123
136
  strong {
124
- font-weight: bold;
137
+ font-weight: inherit;
125
138
  }
126
139
 
127
140
  //
128
- // Address styling not present in Safari and Chrome.
141
+ // Add the correct font weight in Chrome, Edge, and Safari.
129
142
  //
130
143
 
131
- dfn {
132
- font-style: italic;
144
+ b,
145
+ strong {
146
+ font-weight: bolder;
133
147
  }
134
148
 
135
149
  //
136
- // Address variable `h1` font-size and margin within `section` and `article`
137
- // contexts in Firefox 4+, Safari, and Chrome.
150
+ // 1. Correct the inheritance and scaling of font size in all browsers.
151
+ // 2. Correct the odd `em` font sizing in all browsers.
138
152
  //
139
153
 
140
- h1 {
141
- font-size: 2em;
142
- margin: 0.67em 0;
154
+ code,
155
+ kbd,
156
+ samp {
157
+ font-family: monospace, monospace; // 1
158
+ font-size: 1em; // 2
159
+ }
160
+
161
+ //
162
+ // Add the correct font style in Android 4.3-.
163
+ //
164
+
165
+ dfn {
166
+ font-style: italic;
143
167
  }
144
168
 
145
169
  //
146
- // Address styling not present in IE 8/9.
170
+ // Add the correct background and color in IE 9-.
147
171
  //
148
172
 
149
173
  mark {
150
- background: #ff0;
174
+ background-color: #ff0;
151
175
  color: #000;
152
176
  }
153
177
 
154
178
  //
155
- // Address inconsistent and variable font size in all browsers.
179
+ // Add the correct font size in all browsers.
156
180
  //
157
181
 
158
182
  small {
@@ -160,7 +184,8 @@ small {
160
184
  }
161
185
 
162
186
  //
163
- // Prevent `sub` and `sup` affecting `line-height` in all browsers.
187
+ // Prevent `sub` and `sup` elements from affecting the line height in
188
+ // all browsers.
164
189
  //
165
190
 
166
191
  sub,
@@ -171,86 +196,57 @@ sup {
171
196
  vertical-align: baseline;
172
197
  }
173
198
 
174
- sup {
175
- top: -0.5em;
176
- }
177
-
178
199
  sub {
179
200
  bottom: -0.25em;
180
201
  }
181
202
 
182
- // Embedded content
183
- // ==========================================================================
184
-
185
- //
186
- // Remove border when inside `a` element in IE 8/9/10.
187
- //
188
-
189
- img {
190
- border: 0;
191
- }
192
-
193
- //
194
- // Correct overflow not hidden in IE 9/10/11.
195
- //
196
-
197
- svg:not(:root) {
198
- overflow: hidden;
203
+ sup {
204
+ top: -0.5em;
199
205
  }
200
206
 
201
- // Grouping content
207
+ // Embedded content
202
208
  // ==========================================================================
203
209
 
204
210
  //
205
- // Address margin not present in IE 8/9 and Safari.
211
+ // Add the correct display in IE 9-.
206
212
  //
207
213
 
208
- figure {
209
- margin: 1em 40px;
214
+ audio,
215
+ video {
216
+ display: inline-block;
210
217
  }
211
218
 
212
219
  //
213
- // Address differences between Firefox and other browsers.
220
+ // Add the correct display in iOS 4-7.
214
221
  //
215
222
 
216
- hr {
217
- box-sizing: content-box;
223
+ audio:not([controls]) {
224
+ display: none;
218
225
  height: 0;
219
226
  }
220
227
 
221
228
  //
222
- // Contain overflow in all browsers.
229
+ // Remove the border on images inside links in IE 10-.
223
230
  //
224
231
 
225
- pre {
226
- overflow: auto;
232
+ img {
233
+ border-style: none;
227
234
  }
228
235
 
229
236
  //
230
- // Address odd `em`-unit font size rendering in all browsers.
237
+ // Hide the overflow in IE.
231
238
  //
232
239
 
233
- code,
234
- kbd,
235
- pre,
236
- samp {
237
- font-family: monospace, monospace;
238
- font-size: 1em;
240
+ svg:not(:root) {
241
+ overflow: hidden;
239
242
  }
240
243
 
241
244
  // Forms
242
245
  // ==========================================================================
243
246
 
244
247
  //
245
- // Known limitation: by default, Chrome and Safari on OS X allow very limited
246
- // styling of `select`, unless a `border` property is set.
247
- //
248
-
249
- //
250
- // 1. Correct color not being inherited.
251
- // Known issue: affects color of disabled elements.
252
- // 2. Correct font properties not being inherited.
253
- // 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
248
+ // 1. Change the font styles in all browsers (opinionated).
249
+ // 2. Remove the margin in Firefox and Safari.
254
250
  //
255
251
 
256
252
  button,
@@ -258,171 +254,208 @@ input,
258
254
  optgroup,
259
255
  select,
260
256
  textarea {
261
- color: inherit; // 1
262
- font: inherit; // 2
263
- margin: 0; // 3
257
+ font-family: sans-serif; // 1
258
+ font-size: 100%; // 1
259
+ line-height: 1.15; // 1
260
+ margin: 0; // 2
264
261
  }
265
262
 
266
263
  //
267
- // Address `overflow` set to `hidden` in IE 8/9/10/11.
264
+ // Show the overflow in IE.
265
+ // 1. Show the overflow in Edge.
268
266
  //
269
267
 
270
- button {
268
+ button,
269
+ input { // 1
271
270
  overflow: visible;
272
271
  }
273
272
 
274
273
  //
275
- // Address inconsistent `text-transform` inheritance for `button` and `select`.
276
- // All other form control elements do not inherit `text-transform` values.
277
- // Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
278
- // Correct `select` style inheritance in Firefox.
274
+ // Remove the inheritance of text transform in Edge, Firefox, and IE.
275
+ // 1. Remove the inheritance of text transform in Firefox.
279
276
  //
280
277
 
281
278
  button,
282
- select {
279
+ select { // 1
283
280
  text-transform: none;
284
281
  }
285
282
 
286
283
  //
287
- // 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
288
- // and `video` controls.
289
- // 2. Correct inability to style clickable `input` types in iOS.
290
- // 3. Improve usability and consistency of cursor style between image-type
291
- // `input` and others.
284
+ // 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
285
+ // controls in Android 4.
286
+ // 2. Correct the inability to style clickable types in iOS and Safari.
292
287
  //
293
288
 
294
289
  button,
295
- html input[type="button"], // 1
296
- input[type="reset"],
297
- input[type="submit"] {
290
+ html [type="button"], // 1
291
+ [type="reset"],
292
+ [type="submit"] {
298
293
  -webkit-appearance: button; // 2
299
- cursor: pointer; // 3
300
294
  }
301
295
 
302
296
  //
303
- // Re-set default cursor for disabled elements.
297
+ // Remove the inner border and padding in Firefox.
304
298
  //
305
299
 
306
- button[disabled],
307
- html input[disabled] {
308
- cursor: default;
300
+ button::-moz-focus-inner,
301
+ [type="button"]::-moz-focus-inner,
302
+ [type="reset"]::-moz-focus-inner,
303
+ [type="submit"]::-moz-focus-inner {
304
+ border-style: none;
305
+ padding: 0;
309
306
  }
310
307
 
311
308
  //
312
- // Remove inner padding and border in Firefox 4+.
309
+ // Restore the focus styles unset by the previous rule.
313
310
  //
314
311
 
315
- button::-moz-focus-inner,
316
- input::-moz-focus-inner {
317
- border: 0;
318
- padding: 0;
312
+ button:-moz-focusring,
313
+ [type="button"]:-moz-focusring,
314
+ [type="reset"]:-moz-focusring,
315
+ [type="submit"]:-moz-focusring {
316
+ outline: 1px dotted ButtonText;
317
+ }
318
+
319
+ //
320
+ // Change the border, margin, and padding in all browsers (opinionated).
321
+ //
322
+
323
+ fieldset {
324
+ border: 1px solid #c0c0c0;
325
+ margin: 0 2px;
326
+ padding: 0.35em 0.625em 0.75em;
327
+ }
328
+
329
+ //
330
+ // 1. Correct the text wrapping in Edge and IE.
331
+ // 2. Correct the color inheritance from `fieldset` elements in IE.
332
+ // 3. Remove the padding so developers are not caught out when they zero out
333
+ // `fieldset` elements in all browsers.
334
+ //
335
+
336
+ legend {
337
+ box-sizing: border-box; // 1
338
+ color: inherit; // 2
339
+ display: table; // 1
340
+ max-width: 100%; // 1
341
+ padding: 0; // 3
342
+ white-space: normal; // 1
319
343
  }
320
344
 
321
345
  //
322
- // Address Firefox 4+ setting `line-height` on `input` using `!important` in
323
- // the UA stylesheet.
346
+ // 1. Add the correct display in IE 9-.
347
+ // 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
324
348
  //
325
349
 
326
- input {
327
- line-height: normal;
350
+ progress {
351
+ display: inline-block; // 1
352
+ vertical-align: baseline; // 2
328
353
  }
329
354
 
330
355
  //
331
- // It's recommended that you don't attempt to style these elements.
332
- // Firefox's implementation doesn't respect box-sizing, padding, or width.
356
+ // Remove the default vertical scrollbar in IE.
357
+ //
358
+
359
+ textarea {
360
+ overflow: auto;
361
+ }
362
+
333
363
  //
334
- // 1. Address box sizing set to `content-box` in IE 8/9/10.
335
- // 2. Remove excess padding in IE 8/9/10.
364
+ // 1. Add the correct box sizing in IE 10-.
365
+ // 2. Remove the padding in IE 10-.
336
366
  //
337
367
 
338
- input[type="checkbox"],
339
- input[type="radio"] {
368
+ [type="checkbox"],
369
+ [type="radio"] {
340
370
  box-sizing: border-box; // 1
341
371
  padding: 0; // 2
342
372
  }
343
373
 
344
374
  //
345
- // Fix the cursor style for Chrome's increment/decrement buttons. For certain
346
- // `font-size` values of the `input`, it causes the cursor style of the
347
- // decrement button to change from `default` to `text`.
375
+ // Correct the cursor style of increment and decrement buttons in Chrome.
348
376
  //
349
377
 
350
- input[type="number"]::-webkit-inner-spin-button,
351
- input[type="number"]::-webkit-outer-spin-button {
378
+ [type="number"]::-webkit-inner-spin-button,
379
+ [type="number"]::-webkit-outer-spin-button {
352
380
  height: auto;
353
381
  }
354
382
 
355
383
  //
356
- // 1. Address `appearance` set to `searchfield` in Safari and Chrome.
357
- // 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
384
+ // 1. Correct the odd appearance in Chrome and Safari.
385
+ // 2. Correct the outline style in Safari.
358
386
  //
359
387
 
360
- input[type="search"] {
388
+ [type="search"] {
361
389
  -webkit-appearance: textfield; // 1
362
- box-sizing: content-box; //2
390
+ outline-offset: -2px; // 2
363
391
  }
364
392
 
365
393
  //
366
- // Remove inner padding and search cancel button in Safari and Chrome on OS X.
367
- // Safari (but not Chrome) clips the cancel button when the search input has
368
- // padding (and `textfield` appearance).
394
+ // Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
369
395
  //
370
396
 
371
- input[type="search"]::-webkit-search-cancel-button,
372
- input[type="search"]::-webkit-search-decoration {
397
+ [type="search"]::-webkit-search-cancel-button,
398
+ [type="search"]::-webkit-search-decoration {
373
399
  -webkit-appearance: none;
374
400
  }
375
401
 
376
402
  //
377
- // Define consistent border, margin, and padding.
403
+ // 1. Correct the inability to style clickable types in iOS and Safari.
404
+ // 2. Change font properties to `inherit` in Safari.
378
405
  //
379
406
 
380
- fieldset {
381
- border: 1px solid #c0c0c0;
382
- margin: 0 2px;
383
- padding: 0.35em 0.625em 0.75em;
407
+ ::-webkit-file-upload-button {
408
+ -webkit-appearance: button; // 1
409
+ font: inherit; // 2
410
+ }
411
+
412
+ // Interactive
413
+ // ==========================================================================
414
+
415
+ //
416
+ // Add the correct display in IE 9-.
417
+ // 1. Add the correct display in Edge, IE, and Firefox.
418
+ //
419
+
420
+ details, // 1
421
+ menu {
422
+ display: block;
384
423
  }
385
424
 
386
425
  //
387
- // 1. Correct `color` not being inherited in IE 8/9/10/11.
388
- // 2. Remove padding so people aren't caught out if they zero out fieldsets.
426
+ // Add the correct display in all browsers.
389
427
  //
390
428
 
391
- legend {
392
- border: 0; // 1
393
- padding: 0; // 2
429
+ summary {
430
+ display: list-item;
394
431
  }
395
432
 
433
+ // Scripting
434
+ // ==========================================================================
435
+
396
436
  //
397
- // Remove default vertical scrollbar in IE 8/9/10/11.
437
+ // Add the correct display in IE 9-.
398
438
  //
399
439
 
400
- textarea {
401
- overflow: auto;
440
+ canvas {
441
+ display: inline-block;
402
442
  }
403
443
 
404
444
  //
405
- // Don't inherit the `font-weight` (applied by a rule above).
406
- // NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
445
+ // Add the correct display in IE.
407
446
  //
408
447
 
409
- optgroup {
410
- font-weight: bold;
448
+ template {
449
+ display: none;
411
450
  }
412
451
 
413
- // Tables
452
+ // Hidden
414
453
  // ==========================================================================
415
454
 
416
455
  //
417
- // Remove most spacing between table cells.
456
+ // Add the correct display in IE 10-.
418
457
  //
419
458
 
420
- table {
421
- border-collapse: collapse;
422
- border-spacing: 0;
423
- }
424
-
425
- td,
426
- th {
427
- padding: 0;
459
+ [hidden] {
460
+ display: none;
428
461
  }