reustyle 2.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (358) hide show
  1. checksums.yaml +7 -0
  2. data/.drone.yml +17 -0
  3. data/.gitignore +25 -0
  4. data/.nvmrc +1 -0
  5. data/.rbenv-gemsets +1 -0
  6. data/.ruby-version +1 -0
  7. data/CONTRIBUTING.md +68 -0
  8. data/Gemfile +4 -0
  9. data/Gruntfile.js +234 -0
  10. data/LICENSE.txt +13 -0
  11. data/README.md +196 -0
  12. data/Rakefile +6 -0
  13. data/bower.json +54 -0
  14. data/config/autoprefixer.yml +6 -0
  15. data/config/scss-lint.yml +55 -0
  16. data/dist/icons.svg +1 -0
  17. data/dist/ustyle-content.css +1 -0
  18. data/dist/ustyle-latest.css +1 -0
  19. data/dist/ustyle.js +567 -0
  20. data/dist/ustyle.json +1 -0
  21. data/dist/ustyle.min.js +1 -0
  22. data/grunt/modules/dss-helper.js +115 -0
  23. data/grunt/modules/file.js +24 -0
  24. data/grunt/modules/html-parser.js +22 -0
  25. data/grunt/modules/templates.js +57 -0
  26. data/grunt/tasks/browser-sync.js +23 -0
  27. data/grunt/tasks/builder.js +67 -0
  28. data/grunt/tasks/styleguide.js +299 -0
  29. data/index.js +37 -0
  30. data/lib/ustyle/deploy.rb +41 -0
  31. data/lib/ustyle/engine.rb +32 -0
  32. data/lib/ustyle/hash.rb +44 -0
  33. data/lib/ustyle/helpers/icon_helper.rb +15 -0
  34. data/lib/ustyle/icons.rb +13 -0
  35. data/lib/ustyle/middleware/icon_middleware.rb +27 -0
  36. data/lib/ustyle/sass_functions.rb +65 -0
  37. data/lib/ustyle/sinatra.rb +34 -0
  38. data/lib/ustyle/sprockets.rb +6 -0
  39. data/lib/ustyle/utils.rb +42 -0
  40. data/lib/ustyle/version.rb +4 -0
  41. data/lib/ustyle.rb +58 -0
  42. data/package-lock.json +9303 -0
  43. data/package.json +89 -0
  44. data/styleguide/CNAME +1 -0
  45. data/styleguide/assets/images/CTAs.png +0 -0
  46. data/styleguide/assets/images/badge-label-usp.png +0 -0
  47. data/styleguide/assets/images/bower-logo.png +0 -0
  48. data/styleguide/assets/images/caveat.png +0 -0
  49. data/styleguide/assets/images/cloudfront-logo.png +0 -0
  50. data/styleguide/assets/images/design-conventions.png +0 -0
  51. data/styleguide/assets/images/error-texts.png +0 -0
  52. data/styleguide/assets/images/external-requirements.png +0 -0
  53. data/styleguide/assets/images/favicon/android-chrome-192x192.png +0 -0
  54. data/styleguide/assets/images/favicon/android-chrome-512x512.png +0 -0
  55. data/styleguide/assets/images/favicon/apple-touch-icon-114x114.png +0 -0
  56. data/styleguide/assets/images/favicon/apple-touch-icon-120x120.png +0 -0
  57. data/styleguide/assets/images/favicon/apple-touch-icon-144x144.png +0 -0
  58. data/styleguide/assets/images/favicon/apple-touch-icon-152x152.png +0 -0
  59. data/styleguide/assets/images/favicon/apple-touch-icon-180x180.png +0 -0
  60. data/styleguide/assets/images/favicon/apple-touch-icon-57x57.png +0 -0
  61. data/styleguide/assets/images/favicon/apple-touch-icon-60x60.png +0 -0
  62. data/styleguide/assets/images/favicon/apple-touch-icon-72x72.png +0 -0
  63. data/styleguide/assets/images/favicon/apple-touch-icon-76x76.png +0 -0
  64. data/styleguide/assets/images/favicon/apple-touch-icon.png +0 -0
  65. data/styleguide/assets/images/favicon/browserconfig.xml +9 -0
  66. data/styleguide/assets/images/favicon/favicon-16x16.png +0 -0
  67. data/styleguide/assets/images/favicon/favicon-32x32.png +0 -0
  68. data/styleguide/assets/images/favicon/favicon.ico +0 -0
  69. data/styleguide/assets/images/favicon/manifest.json +18 -0
  70. data/styleguide/assets/images/favicon/mstile-144x144.png +0 -0
  71. data/styleguide/assets/images/favicon/mstile-150x150.png +0 -0
  72. data/styleguide/assets/images/favicon/mstile-310x150.png +0 -0
  73. data/styleguide/assets/images/favicon/mstile-310x310.png +0 -0
  74. data/styleguide/assets/images/favicon/mstile-70x70.png +0 -0
  75. data/styleguide/assets/images/favicon/safari-pinned-tab.svg +46 -0
  76. data/styleguide/assets/images/icons.svg +1 -0
  77. data/styleguide/assets/images/infographic-01.png +0 -0
  78. data/styleguide/assets/images/infographic-02.png +0 -0
  79. data/styleguide/assets/images/npm-logo.png +0 -0
  80. data/styleguide/assets/images/placeholder-text.png +0 -0
  81. data/styleguide/assets/images/ruby-logo.png +0 -0
  82. data/styleguide/assets/images/site-consistency01.png +0 -0
  83. data/styleguide/assets/images/site-consistency02.png +0 -0
  84. data/styleguide/assets/images/site-consistency03.png +0 -0
  85. data/styleguide/assets/images/styleguide-examples/accurate-housing.jpg +0 -0
  86. data/styleguide/assets/images/styleguide-examples/altered.jpg +0 -0
  87. data/styleguide/assets/images/styleguide-examples/bad-subject.jpg +0 -0
  88. data/styleguide/assets/images/styleguide-examples/centered.jpg +0 -0
  89. data/styleguide/assets/images/styleguide-examples/cliche.jpg +0 -0
  90. data/styleguide/assets/images/styleguide-examples/cold.jpg +0 -0
  91. data/styleguide/assets/images/styleguide-examples/good-subject.jpg +0 -0
  92. data/styleguide/assets/images/styleguide-examples/illustrations_1.png +0 -0
  93. data/styleguide/assets/images/styleguide-examples/illustrations_2.png +0 -0
  94. data/styleguide/assets/images/styleguide-examples/illustrations_3.png +0 -0
  95. data/styleguide/assets/images/styleguide-examples/illustrations_4.png +0 -0
  96. data/styleguide/assets/images/styleguide-examples/illustrations_5.png +0 -0
  97. data/styleguide/assets/images/styleguide-examples/illustrations_6.png +0 -0
  98. data/styleguide/assets/images/styleguide-examples/innaccurate-housing.jpg +0 -0
  99. data/styleguide/assets/images/styleguide-examples/natural-1.jpg +0 -0
  100. data/styleguide/assets/images/styleguide-examples/natural-2.jpg +0 -0
  101. data/styleguide/assets/images/styleguide-examples/natural-3.jpg +0 -0
  102. data/styleguide/assets/images/styleguide-examples/not-centered.jpg +0 -0
  103. data/styleguide/assets/images/styleguide-examples/realistic.jpg +0 -0
  104. data/styleguide/assets/images/styleguide-examples/unaltered.jpg +0 -0
  105. data/styleguide/assets/images/styleguide-examples/unnatural-1.jpg +0 -0
  106. data/styleguide/assets/images/styleguide-examples/unnatural-2.jpg +0 -0
  107. data/styleguide/assets/images/styleguide-examples/unnatural-3.jpg +0 -0
  108. data/styleguide/assets/images/styleguide-examples/warm.jpg +0 -0
  109. data/styleguide/assets/images/tone-framework.png +0 -0
  110. data/styleguide/assets/images/tone.png +0 -0
  111. data/styleguide/assets/images/tooltip.png +0 -0
  112. data/styleguide/assets/images/tsandcs.png +0 -0
  113. data/styleguide/assets/images/ustyle.svg +73 -0
  114. data/styleguide/assets/images/ux-conventions-consistency.png +0 -0
  115. data/styleguide/assets/images/ux-conventions-error.png +0 -0
  116. data/styleguide/assets/images/ux-conventions-errors.png +0 -0
  117. data/styleguide/assets/images/ux-conventions-flexibility.png +0 -0
  118. data/styleguide/assets/images/ux-conventions-freedom.png +0 -0
  119. data/styleguide/assets/images/ux-conventions-minimalist.png +0 -0
  120. data/styleguide/assets/images/ux-conventions-real-world.png +0 -0
  121. data/styleguide/assets/images/ux-conventions-recognition.png +0 -0
  122. data/styleguide/assets/images/ux-conventions-visibility.png +0 -0
  123. data/styleguide/assets/javascripts/app.js +115 -0
  124. data/styleguide/assets/javascripts/modules/stats.js +50 -0
  125. data/styleguide/assets/javascripts/vendor/highlight.js +1 -0
  126. data/styleguide/assets/javascripts/vendor/svg4everybody.js +1 -0
  127. data/styleguide/assets/sass/main.scss +42 -0
  128. data/styleguide/assets/sass/modules/_code.scss +8 -0
  129. data/styleguide/assets/sass/modules/_colours.scss +26 -0
  130. data/styleguide/assets/sass/modules/_copyright.scss +4 -0
  131. data/styleguide/assets/sass/modules/_grid.scss +12 -0
  132. data/styleguide/assets/sass/modules/_home.scss +5 -0
  133. data/styleguide/assets/sass/modules/_images.scss +24 -0
  134. data/styleguide/assets/sass/modules/_links.scss +3 -0
  135. data/styleguide/assets/sass/modules/_logo.scss +182 -0
  136. data/styleguide/assets/sass/modules/_made-at.scss +6 -0
  137. data/styleguide/assets/sass/modules/_markdown.scss +7 -0
  138. data/styleguide/assets/sass/modules/_nav-mobile.scss +72 -0
  139. data/styleguide/assets/sass/modules/_nav.scss +32 -0
  140. data/styleguide/assets/sass/modules/_sidebar.scss +94 -0
  141. data/styleguide/assets/sass/modules/_states.scss +4 -0
  142. data/styleguide/assets/sass/modules/_styleguide.scss +138 -0
  143. data/styleguide/assets/sass/modules/_table.scss +3 -0
  144. data/styleguide/assets/sass/modules/_tooltip.scss +9 -0
  145. data/styleguide/assets/sass/modules/_typography.scss +14 -0
  146. data/styleguide/assets/sass/modules/_version.scss +11 -0
  147. data/styleguide/assets/sass/structure/_base.scss +18 -0
  148. data/styleguide/assets/sass/structure/_header.scss +12 -0
  149. data/styleguide/assets/sass/vendor/_highlight.scss +139 -0
  150. data/styleguide/assets/sass/vendor/_pure-table.scss +75 -0
  151. data/styleguide/content/brand/index.md +47 -0
  152. data/styleguide/content/brand/logo.tpl +279 -0
  153. data/styleguide/content/design/accessibility-testing.md +82 -0
  154. data/styleguide/content/design/index.tpl +367 -0
  155. data/styleguide/content/design/typography.md +68 -0
  156. data/styleguide/content/design/validating-designs.tpl +304 -0
  157. data/styleguide/content/index.tpl +51 -0
  158. data/styleguide/content/language/grammar.md +220 -0
  159. data/styleguide/content/language/microcopy.md +170 -0
  160. data/styleguide/content/language/tone.md +135 -0
  161. data/styleguide/content/pattern-library/grid.tpl +64 -0
  162. data/styleguide/content/pattern-library/index.tpl +88 -0
  163. data/styleguide/partials/_footer.tpl +8 -0
  164. data/styleguide/partials/_head.tpl +26 -0
  165. data/styleguide/partials/_header.tpl +37 -0
  166. data/styleguide/partials/_sidebar.tpl +27 -0
  167. data/styleguide/partials/colour.tpl +24 -0
  168. data/styleguide/partials/icons.tpl +28 -0
  169. data/styleguide/partials/style_block.tpl +44 -0
  170. data/styleguide/templates/simple.tpl +25 -0
  171. data/styleguide/templates/stats.tpl +50 -0
  172. data/styleguide/templates/styleguide.tpl +36 -0
  173. data/tasks/publish.rake +67 -0
  174. data/ustyle.gemspec +32 -0
  175. data/vendor/assets/images/forms/checkbox-rebrand.svg +1 -0
  176. data/vendor/assets/images/forms/checkbox.svg +1 -0
  177. data/vendor/assets/images/icons/alarm.svg +1 -0
  178. data/vendor/assets/images/icons/android.svg +1 -0
  179. data/vendor/assets/images/icons/arrow-circle.svg +1 -0
  180. data/vendor/assets/images/icons/arrow-down.svg +1 -0
  181. data/vendor/assets/images/icons/arrow-up.svg +1 -0
  182. data/vendor/assets/images/icons/book.svg +1 -0
  183. data/vendor/assets/images/icons/bookmark.svg +1 -0
  184. data/vendor/assets/images/icons/breadcrumb.svg +1 -0
  185. data/vendor/assets/images/icons/calculator.svg +1 -0
  186. data/vendor/assets/images/icons/calendar.svg +1 -0
  187. data/vendor/assets/images/icons/car.svg +1 -0
  188. data/vendor/assets/images/icons/checkbox-tick.svg +1 -0
  189. data/vendor/assets/images/icons/chevron-left.svg +1 -0
  190. data/vendor/assets/images/icons/chevron-right.svg +1 -0
  191. data/vendor/assets/images/icons/clock.svg +1 -0
  192. data/vendor/assets/images/icons/close.svg +1 -0
  193. data/vendor/assets/images/icons/cog.svg +1 -0
  194. data/vendor/assets/images/icons/controller.svg +1 -0
  195. data/vendor/assets/images/icons/credit-card.svg +1 -0
  196. data/vendor/assets/images/icons/cross.svg +1 -0
  197. data/vendor/assets/images/icons/dashcam.svg +1 -0
  198. data/vendor/assets/images/icons/dual-fuel.svg +1 -0
  199. data/vendor/assets/images/icons/electric-light.svg +1 -0
  200. data/vendor/assets/images/icons/envelope.svg +1 -0
  201. data/vendor/assets/images/icons/exit-noexit.svg +1 -0
  202. data/vendor/assets/images/icons/facebook-brand.svg +1 -0
  203. data/vendor/assets/images/icons/facebook.svg +1 -0
  204. data/vendor/assets/images/icons/filter.svg +1 -0
  205. data/vendor/assets/images/icons/fixed-variable.svg +1 -0
  206. data/vendor/assets/images/icons/gas.svg +1 -0
  207. data/vendor/assets/images/icons/gauge.svg +1 -0
  208. data/vendor/assets/images/icons/github.svg +1 -0
  209. data/vendor/assets/images/icons/google-brand.svg +1 -0
  210. data/vendor/assets/images/icons/google.svg +1 -0
  211. data/vendor/assets/images/icons/graph-up.svg +1 -0
  212. data/vendor/assets/images/icons/home.svg +1 -0
  213. data/vendor/assets/images/icons/hot.svg +1 -0
  214. data/vendor/assets/images/icons/info.svg +1 -0
  215. data/vendor/assets/images/icons/kettle.svg +1 -0
  216. data/vendor/assets/images/icons/key.svg +1 -0
  217. data/vendor/assets/images/icons/lock.svg +1 -0
  218. data/vendor/assets/images/icons/magnify-in.svg +1 -0
  219. data/vendor/assets/images/icons/magnify.svg +1 -0
  220. data/vendor/assets/images/icons/menu.svg +1 -0
  221. data/vendor/assets/images/icons/message.svg +1 -0
  222. data/vendor/assets/images/icons/mobile.svg +1 -0
  223. data/vendor/assets/images/icons/monthly-dd.svg +1 -0
  224. data/vendor/assets/images/icons/network.svg +1 -0
  225. data/vendor/assets/images/icons/no-exit.svg +1 -0
  226. data/vendor/assets/images/icons/pdf.svg +1 -0
  227. data/vendor/assets/images/icons/pencil.svg +1 -0
  228. data/vendor/assets/images/icons/person-add.svg +1 -0
  229. data/vendor/assets/images/icons/person.svg +1 -0
  230. data/vendor/assets/images/icons/phone.svg +1 -0
  231. data/vendor/assets/images/icons/piggy-bank.svg +1 -0
  232. data/vendor/assets/images/icons/pin.svg +1 -0
  233. data/vendor/assets/images/icons/play.svg +1 -0
  234. data/vendor/assets/images/icons/pound-circle.svg +1 -0
  235. data/vendor/assets/images/icons/pound-note.svg +1 -0
  236. data/vendor/assets/images/icons/present.svg +1 -0
  237. data/vendor/assets/images/icons/print.svg +1 -0
  238. data/vendor/assets/images/icons/quarterly-dd.svg +1 -0
  239. data/vendor/assets/images/icons/question-circle.svg +1 -0
  240. data/vendor/assets/images/icons/quote.svg +1 -0
  241. data/vendor/assets/images/icons/recycle.svg +1 -0
  242. data/vendor/assets/images/icons/remove.svg +1 -0
  243. data/vendor/assets/images/icons/renewable.svg +1 -0
  244. data/vendor/assets/images/icons/results.svg +1 -0
  245. data/vendor/assets/images/icons/save.svg +1 -0
  246. data/vendor/assets/images/icons/share.svg +1 -0
  247. data/vendor/assets/images/icons/shield.svg +1 -0
  248. data/vendor/assets/images/icons/sim.svg +1 -0
  249. data/vendor/assets/images/icons/smiley.svg +1 -0
  250. data/vendor/assets/images/icons/sort.svg +1 -0
  251. data/vendor/assets/images/icons/speech-circle.svg +1 -0
  252. data/vendor/assets/images/icons/speech.svg +1 -0
  253. data/vendor/assets/images/icons/spinner-rebrand.svg +1 -0
  254. data/vendor/assets/images/icons/spinner.svg +1 -0
  255. data/vendor/assets/images/icons/star-half.svg +1 -0
  256. data/vendor/assets/images/icons/star.svg +1 -0
  257. data/vendor/assets/images/icons/starline-half.svg +1 -0
  258. data/vendor/assets/images/icons/starline.svg +1 -0
  259. data/vendor/assets/images/icons/talk.svg +1 -0
  260. data/vendor/assets/images/icons/tick-circle.svg +1 -0
  261. data/vendor/assets/images/icons/tick.svg +1 -0
  262. data/vendor/assets/images/icons/tv.svg +1 -0
  263. data/vendor/assets/images/icons/twitter-brand.svg +1 -0
  264. data/vendor/assets/images/icons/twitter.svg +1 -0
  265. data/vendor/assets/images/icons/ustyle.svg +1 -0
  266. data/vendor/assets/images/icons/uswitch.svg +1 -0
  267. data/vendor/assets/images/icons/variable.svg +1 -0
  268. data/vendor/assets/images/icons/warning-circle.svg +1 -0
  269. data/vendor/assets/images/icons/warning.svg +1 -0
  270. data/vendor/assets/images/icons/wifi.svg +1 -0
  271. data/vendor/assets/images/icons/wiki.svg +1 -0
  272. data/vendor/assets/images/icons/xml.svg +1 -0
  273. data/vendor/assets/images/icons.svg +1 -0
  274. data/vendor/assets/javascripts/ustyle/backdrop.js +56 -0
  275. data/vendor/assets/javascripts/ustyle/classtoggler.js +76 -0
  276. data/vendor/assets/javascripts/ustyle/overlay.js +152 -0
  277. data/vendor/assets/javascripts/ustyle/tabs.js +166 -0
  278. data/vendor/assets/javascripts/ustyle/utils.js +113 -0
  279. data/vendor/assets/javascripts/ustyle.js +4 -0
  280. data/vendor/assets/stylesheets/rebrand-content.scss +1 -0
  281. data/vendor/assets/stylesheets/rebrand.scss +1 -0
  282. data/vendor/assets/stylesheets/ustyle/_all.scss +55 -0
  283. data/vendor/assets/stylesheets/ustyle/_content.scss +5 -0
  284. data/vendor/assets/stylesheets/ustyle/_global.scss +20 -0
  285. data/vendor/assets/stylesheets/ustyle/articles/_base.scss +100 -0
  286. data/vendor/assets/stylesheets/ustyle/articles/_guide.scss +57 -0
  287. data/vendor/assets/stylesheets/ustyle/articles/_more.scss +31 -0
  288. data/vendor/assets/stylesheets/ustyle/articles/_news.scss +213 -0
  289. data/vendor/assets/stylesheets/ustyle/articles/_related.scss +76 -0
  290. data/vendor/assets/stylesheets/ustyle/basics/_extends.scss +73 -0
  291. data/vendor/assets/stylesheets/ustyle/basics/_fonts.scss +27 -0
  292. data/vendor/assets/stylesheets/ustyle/basics/_functions.scss +78 -0
  293. data/vendor/assets/stylesheets/ustyle/basics/_grid.scss +86 -0
  294. data/vendor/assets/stylesheets/ustyle/basics/_typography.scss +123 -0
  295. data/vendor/assets/stylesheets/ustyle/basics/_variables.scss +166 -0
  296. data/vendor/assets/stylesheets/ustyle/basics/variables/_colors.scss +94 -0
  297. data/vendor/assets/stylesheets/ustyle/basics/variables/_forms.scss +98 -0
  298. data/vendor/assets/stylesheets/ustyle/basics/variables/_icons.scss +43 -0
  299. data/vendor/assets/stylesheets/ustyle/components/_backdrop.scss +23 -0
  300. data/vendor/assets/stylesheets/ustyle/components/_breadcrumbs.scss +66 -0
  301. data/vendor/assets/stylesheets/ustyle/components/_button.scss +187 -0
  302. data/vendor/assets/stylesheets/ustyle/components/_calculator.scss +41 -0
  303. data/vendor/assets/stylesheets/ustyle/components/_comp-table-row.scss +341 -0
  304. data/vendor/assets/stylesheets/ustyle/components/_compliance-banner.scss +38 -0
  305. data/vendor/assets/stylesheets/ustyle/components/_content-group.scss +33 -0
  306. data/vendor/assets/stylesheets/ustyle/components/_cta.scss +66 -0
  307. data/vendor/assets/stylesheets/ustyle/components/_grid-classes.scss +52 -0
  308. data/vendor/assets/stylesheets/ustyle/components/_hero.scss +115 -0
  309. data/vendor/assets/stylesheets/ustyle/components/_links.scss +26 -0
  310. data/vendor/assets/stylesheets/ustyle/components/_lists-li.scss +92 -0
  311. data/vendor/assets/stylesheets/ustyle/components/_lists.scss +39 -0
  312. data/vendor/assets/stylesheets/ustyle/components/_loader.scss +139 -0
  313. data/vendor/assets/stylesheets/ustyle/components/_overlay.scss +183 -0
  314. data/vendor/assets/stylesheets/ustyle/components/_progress.scss +138 -0
  315. data/vendor/assets/stylesheets/ustyle/components/_promo-banner.scss +131 -0
  316. data/vendor/assets/stylesheets/ustyle/components/_reminder.scss +87 -0
  317. data/vendor/assets/stylesheets/ustyle/components/_tab-navigation.scss +114 -0
  318. data/vendor/assets/stylesheets/ustyle/components/_table-toolbar.scss +91 -0
  319. data/vendor/assets/stylesheets/ustyle/components/_tabs.scss +300 -0
  320. data/vendor/assets/stylesheets/ustyle/components/_tooltip.scss +243 -0
  321. data/vendor/assets/stylesheets/ustyle/components/_usp.scss +88 -0
  322. data/vendor/assets/stylesheets/ustyle/content/_base.scss +227 -0
  323. data/vendor/assets/stylesheets/ustyle/content/_c-header.scss +27 -0
  324. data/vendor/assets/stylesheets/ustyle/content/_c-social.scss +9 -0
  325. data/vendor/assets/stylesheets/ustyle/content/_c-tabs.scss +30 -0
  326. data/vendor/assets/stylesheets/ustyle/forms/_base.scss +9 -0
  327. data/vendor/assets/stylesheets/ustyle/forms/_fields.scss +78 -0
  328. data/vendor/assets/stylesheets/ustyle/forms/_input-group.scss +154 -0
  329. data/vendor/assets/stylesheets/ustyle/forms/_input.scss +61 -0
  330. data/vendor/assets/stylesheets/ustyle/forms/_radio-checkbox.scss +144 -0
  331. data/vendor/assets/stylesheets/ustyle/forms/_reset.scss +21 -0
  332. data/vendor/assets/stylesheets/ustyle/forms/_select.scss +154 -0
  333. data/vendor/assets/stylesheets/ustyle/forms/_textarea.scss +33 -0
  334. data/vendor/assets/stylesheets/ustyle/forms/_toggle.scss +114 -0
  335. data/vendor/assets/stylesheets/ustyle/forms/_validation.scss +104 -0
  336. data/vendor/assets/stylesheets/ustyle/icons/_base.scss +241 -0
  337. data/vendor/assets/stylesheets/ustyle/mixins/_arrow.scss +51 -0
  338. data/vendor/assets/stylesheets/ustyle/mixins/_base.scss +7 -0
  339. data/vendor/assets/stylesheets/ustyle/mixins/_baseline.scss +43 -0
  340. data/vendor/assets/stylesheets/ustyle/mixins/_forms.scss +84 -0
  341. data/vendor/assets/stylesheets/ustyle/mixins/_general.scss +24 -0
  342. data/vendor/assets/stylesheets/ustyle/mixins/_link-colors.scss +44 -0
  343. data/vendor/assets/stylesheets/ustyle/mixins/_media-query.scss +121 -0
  344. data/vendor/assets/stylesheets/ustyle/mixins/_typography.scss +98 -0
  345. data/vendor/assets/stylesheets/ustyle/tables/_base.scss +4 -0
  346. data/vendor/assets/stylesheets/ustyle/tables/_tables-basic.scss +72 -0
  347. data/vendor/assets/stylesheets/ustyle/tables/_tables-sortable.scss +72 -0
  348. data/vendor/assets/stylesheets/ustyle/tables/_tables-with-key-cells.scss +18 -0
  349. data/vendor/assets/stylesheets/ustyle/tables/_variables.scss +15 -0
  350. data/vendor/assets/stylesheets/ustyle/utilities/_general.scss +116 -0
  351. data/vendor/assets/stylesheets/ustyle/utilities/_grid.scss +13 -0
  352. data/vendor/assets/stylesheets/ustyle/utilities/_images.scss +34 -0
  353. data/vendor/assets/stylesheets/ustyle/utilities/_responsive.scss +101 -0
  354. data/vendor/assets/stylesheets/ustyle/utilities/_spacing.scss +73 -0
  355. data/vendor/assets/stylesheets/ustyle/vendor/normalize.scss +427 -0
  356. data/vendor/assets/stylesheets/ustyle-content.scss +2 -0
  357. data/vendor/assets/stylesheets/ustyle.scss +1 -0
  358. metadata +517 -0
@@ -0,0 +1,170 @@
1
+ ---
2
+ name: Microcopy
3
+ ---
4
+
5
+ ## Microcopy
6
+
7
+ *Anything shorter than a paragraph is classified as microcopy. Think anything from tooltips to button text.*
8
+
9
+ <ul class='table-of-contents'>
10
+ <li><a href="#Help text/tool tips">Help text/tool tips</a></li>
11
+ <li><a href="#Badge/label/USP">Badge/label/USP</a></li>
12
+ <li><a href="#Product info">Product info</a></li>
13
+ <li><a href="#Small print">Small print</a></li>
14
+ <li><a href="#Caveats">Caveats</a></li>
15
+ <li><a href="#Button text">Button text</a></li>
16
+ <li><a href="#CTAs">CTAs</a></li>
17
+ <li><a href="#Form text, form labels">Form text, form labels</a></li>
18
+ <li><a href="#Placeholder text for fields">Placeholder text for fields</a></li>
19
+ <li><a href="#Error text">Error text</a></li>
20
+ </ul>
21
+
22
+ <span id="Help text/tool tips"></span>
23
+ **Help text/tool tips**
24
+
25
+ <img alt="image" class="us-img--full trailered" src="/images/tooltip.png">
26
+
27
+ Tooltips are an interruption, use them sparingly (or not at all).
28
+
29
+ Keep the tooltip text concise. Tooltips are perfect for short sentences and sentence fragments; large blocks of text can be overwhelming and should be avoided.
30
+
31
+ Tooltip text must be informative. Don't make it obvious or just repeat what is already on the screen. Because tooltip text isn't always visible, it should be supplemental info that users don't have to read.
32
+
33
+ <span id="Badge/label/USP"></span>
34
+ **Badge/label/USP**
35
+
36
+ <img alt="image" class="us-img--full trailered" src="/images/badge-label-usp.png">
37
+
38
+ Very short text (1-4 words max) to distinguish products from one another and highlight features of a product that are otherwise not included on the results table. Annotated versions are paired with a descriptive line.
39
+
40
+ Should be written in sentence case, not upper case. The label should be 1-4 words, while descriptive lines should be as concise as possible without wrapping on any device.
41
+
42
+ Must be quantifiable facts about a product, deal or plan be honest and as descriptive as possible. No exclamation points.
43
+
44
+ <span id="Product info"></span>
45
+ **Product info**
46
+
47
+ Summary of product features relevant to users. Must be concise, relevant and quantifiable facts about a product, deal or plan – be honest and as descriptive as possible
48
+
49
+ Be consistent in the way and the order information is presented and the types of information shown. Second person is ok (e.g. “More people in your region switched to this plan than any other”)
50
+
51
+ <span id="Small print"></span>
52
+ **Small print**
53
+
54
+ <img alt="image" class="us-img--full trailered" src="/images/tsandcs.png">
55
+
56
+ Small print reassures users and is vital for transparency.
57
+
58
+ As long as any compliance rules are taken into account, you should treat this copy like any other, and have a responsibility to make this text as comprehensible as possible to a user
59
+
60
+ <span id="Caveats"></span>
61
+ **Caveats**
62
+
63
+ <img alt="image" class="us-img--full trailered" src="/images/caveat.png">
64
+
65
+ Small print text to back up any absolute claims (i.e. savings figures), denoted with an asterisk, followed by an anchor and double-anchor for further caveats. The caveat must appear on the same page as the symbol.
66
+
67
+ <ul>
68
+ <li>For the first caveat on a page use \*</li>
69
+ <li>For the second use &#8224;</li>
70
+ <li>And for the third, use &#8225;</li>
71
+ </ul>
72
+
73
+ Examples of when caveats are required...
74
+
75
+ <ul>
76
+ <li>Get the best iPhone deal with uSwitch*</li>
77
+ <li>Get the cheapest iPhone deal with uSwitch&#8224;</li>
78
+ </ul>
79
+
80
+ And when they're not required...
81
+ <ul>
82
+ <li>Find a better energy deal</li>
83
+ <li>How to find the best iphone deal</li>
84
+ </ul>
85
+
86
+ <span id="Button text"></span>
87
+ **Button text**
88
+
89
+ Very short (1-3 words) actionable description of what happens when the button clicked, namely, what's on the next page.
90
+
91
+ Button text should “keep its promise” and properly set up expectations of what comes next
92
+
93
+ It should be concise (1-3 words), should not contain exclamation points, should feel actionable (e.g. “buy” “switch” “get” “apply” “compare”), and can make use of urgency (e.g. “today” “now”)
94
+
95
+ First person can be used (e.g. “Tell me more”).
96
+
97
+ <span id="CTAs"></span>
98
+ **CTAs**
99
+
100
+ <div class="us-grid-row">
101
+ <div class="us-col-md-10">
102
+ <img alt="image" class="us-img--full trailered" src="/images/CTAs.png">
103
+ </div>
104
+ </div>
105
+
106
+ An introduction to button text, usually one to two lines, that provides a reason to click the accompanying button
107
+
108
+ This is only used on editorial pages. Sentence case should be used, no exclamation points, and the text must relate to the button and its action. A CTA should not end with punctuation (unlike a standard paragraph).
109
+
110
+ Should not be more than two lines, usually made up of a title and copy.
111
+
112
+ <span id="Form text, form labels"></span>
113
+ **Form text, form labels**
114
+
115
+ Description of what information is required from the user. Always aim for clarity and be consistent – if using questions ('Where do you live?') or statements ('Address')
116
+
117
+ Second person is acceptable, and use tool tips to explain any terms that may be unfamiliar
118
+
119
+ Form label naming conventions:
120
+ - First name
121
+ - Last name
122
+ - Date of birth
123
+ - Email
124
+ - Password
125
+ - Postcode
126
+ - Address
127
+ - Main account holder’s name
128
+ - Driver’s name
129
+ - Employment status
130
+ - Annual income (before tax)
131
+
132
+ <span id="Placeholder text for fields"></span>
133
+ **Placeholder text for fields**
134
+
135
+ Pre-populated text in a field that is supposed to serve as an example or a necessary instruction.
136
+
137
+ We only use placeholder text for instructions, as a last resort, when we have no space for labels, or for email/password.
138
+
139
+ Symbols can be used (e.g. £ ) and we use sentence case. Our standard placeholder text is:
140
+
141
+ - Please select
142
+ - Enter postcode
143
+ - DD/MM/YYYY
144
+ - Email address
145
+ - Password
146
+
147
+ <span id="Error text"></span>
148
+ **Error text**
149
+
150
+ <img alt="image" class="us-img--full trailered" src="/images/error-texts.png">
151
+
152
+ Text that is triggered by a user trying to move forward without providing requested info.
153
+
154
+ Error text should be as specific and as useful/helpful as possible, but should also be short; sentence fragments are acceptable.
155
+
156
+ Never be alarming, technical, or condescending (in life, but especially when it comes to error text)
157
+
158
+ <span id="H1"></span>
159
+ **H1**
160
+
161
+ Short description of the page, at a glance.
162
+
163
+ This text should be genuinely helpful, in sentence case, and should be kept as short as possible.
164
+
165
+ <span id="H1"></span>
166
+ **Introductory text**
167
+
168
+ A short (two lines at most) introduction that follows on from the H1. Describes the following content and encourages the user to read on, and provides as much relevant information as possible.
169
+
170
+ This text should be genuinely helpful, sentence case, and should tell the user whether they are in the right place.
@@ -0,0 +1,135 @@
1
+ ---
2
+ name: uSwitch tone of voice
3
+ ---
4
+
5
+ Here at uSwitch, we offer everyone ‘Supportive Switching’.
6
+
7
+ That means we’re not just passively comparing prices, we’re actively enabling and supporting the decision to switch.
8
+
9
+ What we write, the way we speak to customers and every conversation we have must give people clear, timely and relevant information. And we should communicate that information in a simple but attractive way.
10
+
11
+ With the right tone of voice, our words create a decisive moment: we take people from passively knowing they should switch to actively having the confidence to make the right switch
12
+
13
+
14
+
15
+ <ul class='table-of-contents'>
16
+ <li><a href="#Three core principles">Three core principles</a></li>
17
+ <li><a href="#Framework"> Tone framework</a></li>
18
+ <li><a href="#Empathetic">Principle 1: Empathetic</a></li>
19
+ <li><a href="#Expert">Principle 2: Expert</a></li>
20
+ <li><a href="#Empowering">Principle 3: Empowering</a></li>
21
+
22
+ </ul>
23
+
24
+ <span id="Three core principles"></span>
25
+ ## 3 core principles of the uSwitch tone of voice
26
+
27
+ **- Empathetic**
28
+ **- Expert**
29
+ **- Empowering**
30
+
31
+ To give people the support they need to switch, we need to be able to deliver the right kind of message at the right time. That means our voice needs to be able to flex from simply informative – for example when we’re describing features of a product – to inspirational, when people are at the decisive moment and need extra encouragement to switch.
32
+
33
+ The trick is to strike the right balance. Our three core principles will help us do this, guiding our communications and making sure that we deliver each message in the most appropriate way.
34
+
35
+ Everything we say should always carry some elements of our core principles in varying degrees. The following framework is designed to make sure we get the balance right.
36
+
37
+
38
+ <span id="Framework"></span>
39
+ ## Tone framework
40
+
41
+ Our three principles work together, and we adjust the emphasis and balance depending on who we’re talking to, why and when.
42
+
43
+ One voice principle doesn’t exclude another; it’s how we mix them that gives uSwitch a rounded and distinctive voice.
44
+
45
+ And, as with people, we’re not one thing all the time, or everything at once — but we have a consistent basis that’s us. For uSwitch, that means we’re always Empathetic. We dial up and down the Expert and Empowering qualities of our voice as needed.
46
+
47
+ The key thing is to think about the main reason(s) to communicate – and use the principles accordingly.
48
+
49
+ <img alt="image" class="us-img--full trailered" src="/images/tone-framework.png">
50
+
51
+ <span id="Empathetic"></span>
52
+ ## Principle 1: Empathetic
53
+
54
+ **Being empathetic means being:**
55
+ - Positive
56
+ - Encouraging
57
+ - Relevant
58
+
59
+ Our experience gives us insight and understanding, so being Empathetic means our writing is practical, good humoured and down to earth.
60
+
61
+ Being empathetic also means we don’t make assumptions about what people know and don’t know.
62
+ We shouldn’t assume confidence either. We show people that we understand what’s important to them and talk about topics and issues that are directly relevant to them.
63
+
64
+ When we write or speak, our language is outgoing and conversational, positive but never over the top.
65
+
66
+ We want people to know they can rely on us to find the switch that’s right for them - and support them through it.
67
+
68
+ **How we show empathy in our writing**
69
+
70
+ 1. Use active, direct and positive language.
71
+ 2. Companies don’t show empathy, people do. We should always sound like a person – if you wouldn’t say it like that, don’t write it like that.
72
+ 3. Whether verbal or written, we should build a dialogue with customers, using relevant questions and topics of interest to engage people.
73
+ 4. Focus on answers not problems (but don’t gloss over issues and concerns).
74
+ 5. Make it personal by using ‘you’ as much as ‘we’.
75
+ 6. Don’t use the passive voice unless it’s absolutely necessary to make your point.
76
+ Using slang that’s accepted and understood can help connect. But be careful; we don’t want to alienate audiences by using jargon or patronising language – nor by trying to ‘talk cool’ to younger audiences.
77
+ 7. Put yourself in your customer’s shoes (and be honest). Would that headline you’re writing entice you to click on it? Is that error text going to provide support or only create more questions?
78
+
79
+ <span id="Expert"></span>
80
+ ## Principle 2: Expert
81
+
82
+ **Being expert means being:**
83
+ - Trusted
84
+ - Clear
85
+ - Accessible
86
+
87
+ It’s our responsibility to direct people to the information or product that’s relevant for them. So we make information quick and easy to find, and ensure the pros and cons for switching are obvious and understandable.
88
+
89
+ We don’t blind with science and we don’t dumb down. We give information succinctly and simply — but never rush the conversation.
90
+
91
+ At all times we are scrupulously balanced, accurate and honest, and this reassures people by clearly showing that we know what we’re talking about.
92
+
93
+ **How we show expertise in our writing**
94
+
95
+ 1. Be relevant and accurate with facts and figures, and get the punctuation and spelling right. Even small mistakes undermine what you’re saying.
96
+ 2. Write succinctly and use simple sentence structures. Our prime objective is always that our audience understands us. In that way, we make complex topics simple, concise and accessible. Remember: simple isn’t simplistic; it’s just the easiest way to ensure we’re understood.
97
+ 3. Too many facts at once can be counterproductive. Don’t overload people with unnecessary detail. Get to the point, avoiding verbal padding and meaningless phrases.
98
+ 4. Don’t close down conversations – always have alternative options.
99
+ 5. Avoid marketing speak and sales patter.
100
+ 6. Don’t hide important facts. Start with what’s most relevant and individually important to your customer or audience.
101
+
102
+ <span id="Empowering"></span>
103
+ ## Principle 3: Empowering
104
+
105
+ **Being empowering means being:**
106
+ - Inspiring
107
+ - Energetic
108
+ - Credible
109
+
110
+ We write and speak to inform and change minds, giving people the straightforward facts and, in turn, the confidence they need to switch.
111
+
112
+ Our explanations and opinions should challenge, involve, entertain, pleasantly surprise and convince – we’re good company.
113
+
114
+ The facts and figures are important, and we know them inside and out. But we make them more compelling by putting them in context, helping people see what switching could mean for them — whether that’s finally feeling in control of their household bills or that much closer to their dream holiday savings goal.
115
+
116
+ We know who we are and what we’re about. So we believe wholeheartedly in what we do, knowing that it benefits everyone. So we’re never afraid to show our enthusiasm and commitment in our writing.
117
+
118
+ **How we empower with our writing:**
119
+
120
+ 1. Wherever possible, lead with emotional benefits that customers will be able to identify with – particularly at headline level. Look for familiar or universal situations related to our subject matter.
121
+ 2. Use real-life examples and stories wherever possible – they’re more convincing than anything you could invent.
122
+ 3. Don’t overpromise or over-exaggerate; there’s no need.
123
+ 4. Refresh your vocabulary and thinking; don’t keeping saying the same things in the same way
124
+ Have an opinion and be prepared to defend it.
125
+ 5. Don’t be afraid to (politely and tactfully) challenge or say no. The customer is not always right but our advice should be.
126
+ 6. Be direct and positive but not flippant. Never forget that switching is a big step for many
127
+ Bring a sense of humour where it’s appropriate – wit is a great connector.
128
+ 7. Focus on wants and needs, not just prices.
129
+
130
+
131
+
132
+
133
+
134
+
135
+
@@ -0,0 +1,64 @@
1
+ <div class="styleguide__block">
2
+ <p>
3
+ Our grid is a 12 column grid, with similar sizes to that of Bootstrap. We also adhere to the same naming standards for device breakpoints.
4
+ </p>
5
+ <ul>
6
+ <li>Default gutter width: <strong>15px either side</strong>.</li>
7
+ <li>Large container width: <strong>1170px</strong>.</li>
8
+ <li>Desktop container width: <strong>970px</strong>.</li>
9
+ <li>Tablet container width: <strong>770px</strong>.</li>
10
+ </ul>
11
+ <ul>
12
+ <li>The parent container is <code>.us-container</code>, you must have this to start building the uSwitch layouts.</li>
13
+ <li><code>.us-grid-row</code> is then used when you are building rows of columns (gives a negative margin to the container so they align correctly).</li>
14
+ <li>All grid class names are prefixed with <code>.us-col-</code>.</li>
15
+ </ul>
16
+ </div>
17
+ <div class="styleguide__block">
18
+ <h2 class="styleguide__block-title">Example</h2>
19
+ <p>Here is an example of a grid which will turn into 100% width columns on mobile.</p>
20
+ <div class="grid-example">
21
+ <div class="us-grid-row">
22
+ <div class="col-example us-col-md-2">.us-col-md-2</div>
23
+ <div class="col-example us-col-md-2">.us-col-md-2</div>
24
+ <div class="col-example us-col-md-4">.us-col-md-4</div>
25
+ <div class="col-example us-col-md-4">.us-col-md-4</div>
26
+ </div>
27
+ <div class="us-grid-row">
28
+ <div class="col-example us-col-md-8">.us-col-md-8</div>
29
+ <div class="col-example us-col-md-4">.us-col-md-4</div>
30
+ </div>
31
+ <div class="us-grid-row">
32
+ <div class="col-example us-col-md-6">.us-col-md-6</div>
33
+ <div class="col-example us-col-md-6">.us-col-md-6</div>
34
+ </div>
35
+ </div>
36
+ <pre><code class="html">
37
+ &lt;div class=&quot;us-grid-row&quot;&gt;
38
+ &lt;div class=&quot;us-col-md-2&quot;&gt;.us-col-md-2&lt;/div&gt;
39
+ &lt;div class=&quot;us-col-md-2&quot;&gt;.us-col-md-2&lt;/div&gt;
40
+ &lt;div class=&quot;us-col-md-4&quot;&gt;.us-col-md-4&lt;/div&gt;
41
+ &lt;div class=&quot;us-col-md-4&quot;&gt;.us-col-md-4&lt;/div&gt;
42
+ &lt;/div&gt;
43
+ &lt;div class=&quot;us-grid-row&quot;&gt;
44
+ &lt;div class=&quot;us-col-md-8&quot;&gt;.us-col-md-8&lt;/div&gt;
45
+ &lt;div class=&quot;us-col-md-4&quot;&gt;.us-col-md-4&lt;/div&gt;
46
+ &lt;/div&gt;
47
+ &lt;div class=&quot;us-grid-row&quot;&gt;
48
+ &lt;div class=&quot;us-col-md-6&quot;&gt;.us-col-md-6&lt;/div&gt;
49
+ &lt;div class=&quot;us-col-md-6&quot;&gt;.us-col-md-6&lt;/div&gt;
50
+ &lt;/div&gt;
51
+ </code></pre>
52
+ </div>
53
+ <div class="styleguide__block">
54
+ <h2 class="styleguide__block-title">Example with mobile columns</h2>
55
+ <div class="grid-example">
56
+ <div class="us-grid-row">
57
+ <div class="col-example us-col-xsm-6 us-col-md-2">.us-col-xsm-6.us-col-md-2</div>
58
+ <div class="col-example us-col-xsm-6 us-col-md-2">.us-col-xsm-6.us-col-md-2</div>
59
+ <div class="col-example us-col-sm-6 us-col-md-4">.us-col-sm-6.us-col-md-4</div>
60
+ <div class="col-example us-col-sm-6 us-col-md-4">.us-col-sm-6.us-col-md-4</div>
61
+ </div>
62
+ </div>
63
+ </div>
64
+ </div>
@@ -0,0 +1,88 @@
1
+ ---
2
+ template: simple.tpl
3
+ name: Introduction
4
+ ---
5
+ <p>
6
+ Our pattern library comes as an easily distributed package, ready to use in multiple programming environments. It contains our basic CSS components and correct usage, as well as JavaScript components that are widely used across the website.
7
+ </p>
8
+ <a class="us-btn us-btn--small" href="https://github.com/uswitch/ustyle">View on GitHub</a>
9
+ <div class="us-content-group mobile-bordered">
10
+ <h2 class="trailered">Distribution methods</h2>
11
+ <div class="us-grid-row">
12
+ <div class="us-col-md-6 trailered">
13
+ <img src="/images/ruby-logo.png" alt="Ruby logo" class="distro-image">
14
+ <h3>Ruby gem</h3>
15
+ <p>uStyle was initially created as a gem. Some of the Sass functions rely on Ruby to run. You can install it via any Gemfile and it will install the required dependencies.</p>
16
+ <pre><code class="ruby">gem 'ustyle', git: "git@github.com:uswitch/ustyle.git"</code></pre>
17
+ </div>
18
+ <div class="us-col-md-6 trailered">
19
+ <img src="/images/bower-logo.png" alt="Bower logo" class="distro-image">
20
+ <h3>Bower package</h3>
21
+ <p>Install it as a bower package. This will pull down the original <code>.scss</code> files and compiled static CSS + JS.</p>
22
+ <pre><code class="javascript">
23
+ "dependencies": {
24
+ "ustyle": "git@github.com:uswitch/ustyle.git#~0.19.1"
25
+ }
26
+ </code></pre>
27
+ </div>
28
+ </div>
29
+ </div>
30
+ <div class="us-content-group mobile-bordered">
31
+ <div class="us-grid-row">
32
+ <div class="us-col-md-6 trailered">
33
+ <img src="/images/cloudfront-logo.png" alt="Cloudfront logo" class="distro-image">
34
+ <h3>Cloudfront</h3>
35
+ <p>Every time uStyle gets a new version, the version gets updated across our Cloudfront distributions.
36
+ <pre><code class="html">
37
+ &lt;!-- get latest --&gt;
38
+ &lt;link href='//assets0.uswitch.com/s3/uswitch-assets-eu/ustyle/ustyle-latest.css' media='all' rel='stylesheet' type='text/css' /&gt;
39
+ &lt;!-- get versioned --&gt;
40
+ &lt;link href='//assets0.uswitch.com/s3/uswitch-assets-eu/ustyle/VERSION/ustyle-latest.css' media='all' rel='stylesheet' type='text/css' /&gt;
41
+ </code></pre>
42
+ </div>
43
+ <div class="us-col-md-6">
44
+ <img src="/images/npm-logo.png" alt="NPM logo" class="distro-image">
45
+ <h3>NPM Package</h3>
46
+ <pre><code class="javascript">
47
+ "devDependencies": {
48
+ "ustyle": "git@github.com:uswitch/ustyle.git#~0.19.1"
49
+ }
50
+ </code></pre>
51
+ </div>
52
+ </div>
53
+ </div>
54
+ <div class="us-content-group mobile-bordered">
55
+ <h2>Browser support</h2>
56
+ <p>We use <a href="https://github.com/postcss/autoprefixer">Autoprefixer + Browserlist</a> to decide what vendor prefixes to apply to our <code>Sass</code> files. We have a slightly wider browser support than the default (<a href="https://github.com/ai/browserslist#browserslist-">here</a>). Currently we support all the way to IE9.</p>
57
+ <p>Below is what we support. Each line is the minimum version or % use based on CanIUse metrics</p>
58
+ <table class="pure-table pure-table-bordered">
59
+ <thead>
60
+ <tr>
61
+ <th>Browser</th>
62
+ <th>Minimum version supported</th>
63
+ </tr>
64
+ </thead>
65
+ <tbody>
66
+ <tr>
67
+ <td>Safari, Chrome, Opera</td>
68
+ <td>Last 5 versions</td>
69
+ </tr>
70
+ <tr>
71
+ <td>Firefox</td>
72
+ <td>ESR</td>
73
+ </tr>
74
+ <tr>
75
+ <td>Internet Explorer</td>
76
+ <td>10</td>
77
+ </tr>
78
+ <tr>
79
+ <td>Global usage</td>
80
+ <td>> 1%</td>
81
+ </tr>
82
+ </tbody>
83
+ </table>
84
+ </div>
85
+ <div class="us-content-group mobile-bordered">
86
+ <h2>Installation</h2>
87
+ <p>See our <a href="https://github.com/uswitch/ustyle">GitHub</a> for documentation on installing this across applications.</p>
88
+ </div>
@@ -0,0 +1,8 @@
1
+ <div class="container sidebar--push">
2
+ <p class="copyright">Copyright uSwitch Limited 2016 - 2017. <a href="https://github.com/{{project.repository}}">Github</a></p>
3
+ </div>
4
+ <script type="text/javascript" src='https://www.gstatic.com/charts/loader.js'>
5
+ </script>
6
+ <script src="https://cdn.polyfill.io/v2/polyfill.min.js"></script>
7
+ <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
8
+ <script src="/js/app.min.js"></script>
@@ -0,0 +1,26 @@
1
+ <!DOCTYPE html>
2
+ <!--[if IE 8 ]> <html lang="en" class="no-js ie8"> <![endif]-->
3
+ <!--[if IE 9 ]> <html lang="en" class="no-js ie9"> <![endif]-->
4
+ <!--[if (gt IE 9)|!(IE)]> ><! <![endif]-->
5
+ <html class='no-js svg' lang='en'>
6
+ <!-- <![endif] -->
7
+ <head>
8
+ <meta http-equiv="content-type" content="text/html;charset=UTF-8" />
9
+ <meta content='width=device-width, initial-scale=1.0' name='viewport' />
10
+ <link rel="apple-touch-icon" sizes="180x180" href="/images/apple-touch-icon.png">
11
+ <link rel="icon" type="image/png" href="/images/favicon-32x32.png" sizes="32x32">
12
+ <link rel="icon" type="image/png" href="/images/favicon-16x16.png" sizes="16x16">
13
+ <link rel="manifest" href="/images//manifest.json">
14
+ <link rel="mask-icon" href="/images//safari-pinned-tab.svg" color="#5bbad5">
15
+ <meta name="theme-color" content="#ffffff">
16
+ <title>uStyle styleguide</title>
17
+ <link rel="stylesheet" href="/css/main.css" type="text/css" />
18
+ <!--[if lt IE 9]>
19
+ <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js"></script>
20
+ <![endif]-->
21
+ <script>
22
+ (function(html){
23
+ html.className=html.className.replace(/\bno-js\b/,'js');
24
+ })(document.documentElement);
25
+ </script>
26
+ </head>
@@ -0,0 +1,37 @@
1
+ <header class="ustyle__header">
2
+ <a class="logo" href="/">
3
+ <svg class="us-icon--large us-icon--ustyle us-icon--medium--mobile logo__icon" role="img">
4
+ <use xlink:href="/images/icons.svg#icon-ustyle"></use>
5
+ </svg>
6
+ uStyle
7
+ </a>
8
+ <a class="version" href="https://github.com/uswitch/ustyle/releases/tag/v{{project.version}}">v{{project.version}}</a>
9
+ <svg class="logo__svg--hidden" xmlns="http://www.w3.org/2000/svg">
10
+ <symbol viewBox="0 0 100 100" id="uicon-logo-icon">
11
+ <title>logo-icon</title><path d="M26.9 51.662V12.174H.9v38.771c0 24.61 20.095 46.167 44.695 46.896 13.28.393 25.36-4.881 34.012-13.584C55.435 96.47 26.9 78.67 26.9 51.662z"/><path d="M80.9 2.138L62.733 22.174H67.9v29.378c0 13.905-13.365 24.176-26.722 19.468C58.871 92.463 93.9 79.992
12
+ 93.9 52.023V22.174h5.2L80.9 2.138z"/></symbol>
13
+ <symbol viewBox="0 0 276 64" id="uicon-logo-small">
14
+ <title>logo-small</title>
15
+ <path d="M126.4 30.198c7.366 1.542 12.7 4.554 12.7 11.9 0 14.392-26.962 17.714-30.9-.5l6.5-3.3c2.337 13.174 17 10.584 17 4 0-9.031-21.8-3.134-21.8-18.1 0-7.129 6.539-10.6 13.7-10.6 7.4 0 12.3 3.3 14.8 10l-5.8 3.4c-3.022-8.689-11.392-7.304-13.8-5.9-2.502 1.668-4.384 6.921 7.6 9.1zM164.4 25.798l4.9 18.5 4.5-18.5h6.8l-7.7 27.6h-6.8l-5-18.9-5.1 18.9h-6.8l-7.7-27.6h6.8l4.5 18.5 4.9-18.5h6.7zM185.1 53.398v-27.6h7.1v27.6h-7.1zM197.1 31.498v-5.7h4.2v-7.4h7v7.4h6v5.7h-6v12.5c0 3.65 2.521 4.537 5.8 3.6l.7 5.8c-3.717 1.327-13.5 2.387-13.5-7.9v-14h-4.2zM239.2 42.498l5.7 3.7c-4.859 9.904-17.173 9.809-23.3 3.9-8.049-7.762-4.282-25 10.4-25 5.483 0 10.565 2.375 12.7 7.5l-5.8 3.8c-3.452-7.643-14.2-5.67-14.2 3.3 0 8.306 8.37 9.425 11.7 6.7 1-.9 2-2.2 2.8-3.9zM275.6 34.798v18.6h-7v-15.9c0-7.019-7.634-7.057-10.4-3.6-2.456 2.645-1.9 4.895-1.9 19.6h-7v-39h7v15.7c5.119-7.912 19.3-7.012 19.3 4.6z"/>
16
+ <circle cx="188.5" cy="17.798" r="4"/>
17
+ <path d="M77.8 42.898v-17.1h7v15.5c0 4.2 1.9 6.3 5.6 6.3 4.184 0 6.4-3.501 6.4-7.6v-14.2h7v27.6h-7v-3.8c-4.505 8.061-19 5.517-19-6.7z"/><path d="M17 34.2V8H0v25.6c0 26.622 32.502 39.889 51.402 21.1C35.893 62.409 17.546 51.556 17 34.2z"/>
18
+ <path d="M51.5.3L37.738 15H43v19.3c0 8.307-8.053 15.305-17.607 12.4C37.082 60.497 60 52.572 60 34.3V15h5.464L51.5.3z"/>
19
+ </symbol>
20
+ <symbol viewBox="0 0 115 100" id="uicon-logo-vertical-small">
21
+ <title>logo-vertical-small</title>
22
+ <path d="M44.57 35.053V9.456H27.674v25.597C27.674 51.566 41.108 65 57.621 65c8.274 0 15.775-3.374 21.201-8.819-15.699 7.913-34.252-3.612-34.252-21.128z"/><path d="M79.12 1L65.443 15.705h5.228v19.349c0 8.95-8.877 15.299-17.366 12.314C64.814 61.28 87.568 53.17 87.568 35.053V15.705h5.38L79.12 1z"/><path d="M24.57 83.925c3.086 1.957 11.376 1.2 11.376 8.237 0 6.858-9.901 8.793-14.639 4.895-1.575-1.295-2.58-3.02-3.015-5.175l3.699-1.865c1.362 7.518 9.76 6.072 9.76 2.3 0-5.13-12.464-1.831-12.464-10.381 0-4.116 3.707-6.092 7.833-6.092 4.247 0 7.066 1.906 8.454 5.719l-3.295 1.927c-1.68-4.961-6.411-4.182-7.91-3.357-1.49.82-1.462 2.738.201 3.792zM50.451 82.775l2.828 10.568 2.549-10.568h3.885l-4.382 15.789h-3.885l-2.891-10.847-2.922 10.847h-3.885l-4.382-15.789h3.885L43.8 93.343l2.828-10.568h3.823zM62.303 98.564V82.775h4.041v15.789h-4.041zM69.174 86.039v-3.264h2.424v-4.258h4.01v4.258h3.45v3.264h-3.45c0 6.922-.925 10.516 3.357 9.231l.373 3.295a8.04 8.04 0 0 1-2.673.435c-6.213 0-5.066-4.812-5.066-12.961h-2.425zM93.281 92.348l3.264 2.114c-2.864 5.728-9.885 5.596-13.334 2.238-4.788-4.662-2.209-14.36 5.937-14.36 3.198 0 6.032 1.333 7.242 4.289l-3.295 2.176c-2.033-4.421-8.174-3.236-8.174 1.865 0 4.748 4.658 5.405 6.683 3.87.641-.488 1.201-1.218 1.677-2.192zM114.125 98.564h-4.01v-9.107c0-3.961-4.211-4.121-5.968-2.114-1.404 1.605-1.088 2.75-1.088 11.22h-4.01V76.279h4.01v8.983c2.435-3.752 7.407-3.564 9.558-1.414 1.953 1.951 1.508 3.463 1.508 14.716zM66.513 78.167c0 3.004-4.547 3.007-4.547 0 0-3.004 4.547-3.007 4.547 0zM.875 92.566v-9.791h4.01c0 9.123-.832 12.495 3.201 12.495 2.348 0 3.668-1.947 3.668-4.351v-8.143h4.01v15.789h-4.01v-2.181C9.221 100.961.875 99.543.875 92.566z"/>
23
+ </symbol>
24
+ <symbol viewBox="0 0 155 130" id="uicon-logo-vertical">
25
+ <title>logo-vertical</title>
26
+ <path d="M60.365 44.556V10.675H38.001v33.881c0 35.254 42.846 52.904 67.7 27.966-20.78 10.471-45.336-4.783-45.336-27.966z"/><path d="M106.095 1.756l-15.627 17.19h4.445v25.61c0 11.846-11.749 20.249-22.986 16.299 15.233 18.415 45.35 7.681 45.35-16.299v-25.61h4.472l-15.654-17.19z"/><path d="M32.197 105.52c0 5.067 9.591 3.423 14.388 7.801 4.895 4.469 2.434 14.923-8.625 14.923-7.164 0-11.266-3.856-12.391-9.427l4.899-2.47c.85 4.693 3.335 7.04 7.451 7.04 6.033 0 6.793-5.169 3.746-7.019-3.928-2.385-14.779-1.714-14.779-10.724 0-5.452 4.91-8.069 10.374-8.069 5.626 0 9.359 2.525 11.198 7.575l-4.364 2.552c-2.225-6.57-8.492-5.539-10.477-4.446-.947.521-1.42 1.276-1.42 2.264zM68.163 106.755l3.746 13.997 3.376-13.997h5.146l-5.805 20.913H69.48L65.652 113.3l-3.87 14.367h-5.146l-5.805-20.913h5.146l3.376 13.997 3.746-13.997h5.064zM83.862 127.668v-20.913h5.352v20.913h-5.352zM92.963 111.077v-4.323h3.211v-5.64h5.311v5.64h4.57v4.323h-4.57c0 9.834-.763 12.474 2.676 12.474.631 0 1.221-.082 1.77-.247l.494 4.364c-2.828.99-10.251 1.739-10.251-6.052v-10.539h-3.211zM124.892 119.434l4.323 2.799c-4.942 9.884-20.79 7.291-20.79-5.022 0-12.705 16.876-14.415 20.584-5.352l-4.364 2.882c-2.67-5.807-10.827-4.333-10.827 2.47 0 6.289 6.169 7.158 8.851 5.125.851-.644 1.592-1.612 2.223-2.902zM152.5 113.547v14.12h-5.311v-12.062c0-5.212-5.553-5.486-7.904-2.799-1.864 2.13-1.441 3.663-1.441 14.861h-5.311V98.151h5.311v11.897c3.964-6.108 14.656-5.169 14.656 3.499zM89.438 100.652c0 3.979-6.022 3.983-6.022 0 0-3.979 6.022-3.983 6.022 0zM2.5 119.722v-12.968h5.311v11.774c0 6.014 5.792 5.531 7.76 3.17 1.727-2.074 1.338-3.52 1.338-14.944h5.311v20.913h-5.311v-2.889c-3.355 6.064-14.409 4.186-14.409-5.056z"/>
27
+ </symbol>
28
+ <symbol viewBox="0 0 395 90" id="uicon-logo">
29
+ <title>logo</title>
30
+ <path d="M165.9 32.9c0 12.477 31.8 3.962 31.8 26.1 0 21.377-39.296 25.32-44.5-.7l9.3-4.7c1.6 8.9 6.4 13.4 14.2 13.4 5.51 0 10.5-2.536 10.5-7.6 0-10.251-17.499-6.79-26.7-15.1-3.2-2.8-4.7-6.5-4.7-11.1 0-10.393 9.181-15.4 19.7-15.4 10.7 0 17.8 4.8 21.3 14.4l-8.3 4.9c-2.2-6.6-6.7-10-13.2-10-4.301 0-9.4 1.485-9.4 5.8zm68.5 2.4l7.1 26.7 6.4-26.7h9.8l-11.1 39.8h-9.8l-7.3-27.4-7.4 27.4h-9.8l-11.1-39.8h9.8l6.4 26.7 7.1-26.7h9.9zm29.9 39.8V35.3h10.2v39.8h-10.2zm17.3-31.6v-8.2h6.1V24.6h10.1v10.7h8.7v8.2h-8.7v18.1c0 5.28 3.474 6.471 8.5 5.1l.9 8.3c-6.694 2.231-19.5 2.53-19.5-11.5v-20h-6.1zm60.8 15.9l8.2 5.3c-3.8 7.6-10 11.4-18.7 11.4-28.132 0-27.906-42-.1-42 8.113 0 15.323 3.359 18.3 10.8l-8.3 5.5c-5.22-11.186-20.6-8.019-20.6 4.7 0 11.691 11.601 13.774 16.9 9.8 1.7-1.2 3.1-3 4.3-5.5zM395 48.2v26.9h-10.1c0-25.062.616-26.29-2.1-29.2-4.008-4.294-15.7-2.968-15.7 9v20.2H357V18.9h10.1v22.7c7.633-11.688 27.9-9.813 27.9 6.6z"/>
31
+ <circle cx="269.2" cy="23.7" r="5.7"/>
32
+ <path d="M109.3 60V35.3h10.1v22.4c0 6.1 2.7 9.1 8.1 9.1 5.917 0 9.2-4.869 9.2-11V35.3h10.1v39.8h-10.1v-5.5c-6.328 11.484-27.4 8.041-27.4-9.6z"/>
33
+ <path d="M24.4 47.7v-38H0v37c0 38.509 46.725 57.775 73.9 30.6-22.32 11.16-48.688-4.7-49.5-29.6z"/>
34
+ <path d="M74.3 0l-17 18.8h4.9v28c0 13.107-13.176 22.193-25.1 17.8 16.21 19.706 48.297 8.966 49.5-16.3V18.9h4.9L74.3 0z"/>
35
+ </symbol>
36
+ </svg>
37
+ </header>
@@ -0,0 +1,27 @@
1
+ <a href="javascript:void(0);" class="nav-mobile js-toggle__link us-tablet--hidden" data-target="sidebar"><span class="nav-mobile__hamburger">Sidebar</span></a>
2
+ <div class='sidebar'>
3
+ {{#navigation}}
4
+ <nav class="sidebar__nav {{activeClass this 'section'}}">
5
+ <a href="/{{this}}/" class="sidebar__nav-link js-sidebar-nav-link {{activeClass this 'section'}}">{{humanize this}}</a>
6
+ <nav class="sidebar__sub-nav">
7
+ {{#each ../pages}}
8
+ {{#isActive this.section ../this}}
9
+ <a class="sidebar__nav-link sidebar__nav-link--sub {{activeClass this.name 'name'}}" href="/{{../this}}/{{page}}">{{name}}</a>
10
+ {{/isActive}}
11
+ {{/each}}
12
+ {{#isActive "pattern-library" this}}
13
+ <a class="sidebar__nav-link sidebar__nav-link--sub" href="/sass/" target="_blank">Sass doc</a>
14
+ {{/isActive}}
15
+ </nav>
16
+ </nav>
17
+ {{/navigation}}
18
+
19
+ <div class="made-at">
20
+ <a href="https://www.uswitch.com/vacancies/" target="_blank">
21
+ <svg role="img" class="us-icon--before us-icon--uswitch us-icon--custom us-icon--small--mobile us-icon--medium">
22
+ <use xlink:href="/images/icons.svg#icon-uswitch"></use>
23
+ </svg>
24
+ <span class="us-color--blue">uSwitch is hiring.</span>
25
+ </a>
26
+ </div>
27
+ </div>
@@ -0,0 +1,24 @@
1
+ <div class="styleguide__block" id="{{link}}">
2
+ <div class="styleguide__block-info">
3
+ <h2 class="styleguide__block-title">
4
+ {{name}}
5
+ <a href="https://github.com/uswitch/ustyle/tree/master/{{path}}" class="styleguide__file-link"><svg class="us-icon--small us-icon--github"><use xlink:href="/images/icons.svg#icon-github">Github:</use></svg> {{file}}</a>
6
+ </h2>
7
+
8
+ {{{description}}}
9
+ <div class="us-grid-row">
10
+ {{#variable}}
11
+ <div class="colour us-col-md-4">
12
+ <div class="colour__block">
13
+ <div class="colour__hex" style='background-color: {{value}};'>
14
+ </div>
15
+ <div class="colour__description">
16
+ <h4 class="colour__title">{{name}} - {{value}}</h4>
17
+ <span>{{description}}</span>
18
+ </div>
19
+ </div>
20
+ </div>
21
+ {{/variable}}
22
+ </div>
23
+ </div>
24
+ </div>
@@ -0,0 +1,28 @@
1
+ <div class="styleguide__block styleguide__block--icons" id="{{link}}">
2
+ <h2 class="styleguide__block-title">
3
+ {{name}}
4
+ <a href="https://github.com/uswitch/ustyle/tree/master/{{path}}" class="styleguide__file-link"><svg class="us-icon--small us-icon--github"><use xlink:href="/images/icons.svg#icon-github">Github:</use></svg> <span class="us-tablet--inline">{{file}}</span></a>
5
+ </h2>
6
+
7
+ <div class="styleguide__description">
8
+ {{{description}}}
9
+ </div>
10
+
11
+ <h3 class="styleguide__block-small-title">Example</h3>
12
+ <div class="styleguide__block-examples">
13
+ <pre><code class="html">
14
+ {{#markup}}
15
+ {{~{escaped}}}
16
+ {{/markup}}
17
+ </code></pre>
18
+ <div class="us-clearfix">
19
+ {{#state}}
20
+ <div class="styleguide__block-example us-col-md-3 state">
21
+ {{{markup.example}}}
22
+ <div class="styleguide__block-example-class">{{name}}</div>
23
+ </div>
24
+ {{/state}}
25
+ </div>
26
+ </div>
27
+
28
+ </div>