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,115 @@
1
+ (function (document, window, $, Overlay, ClassToggler, Tabs, RadioToggle) {
2
+ 'use strict'
3
+
4
+ function cleanWhiteSpace (codeBlocks) {
5
+ if (!codeBlocks) return
6
+
7
+ for (var i = codeBlocks.length - 1; i >= 0; i--) {
8
+ var codeBlock = codeBlocks[i]
9
+ var offset
10
+ var text = codeBlock.textContent || codeBlock.innerText
11
+ var lines = text.split('\n')
12
+
13
+ if (lines.length > 1 && lines[ lines.length - 1 ].trim() === '') {
14
+ lines.pop()
15
+ }
16
+
17
+ var canClean = lines[1] !== undefined
18
+
19
+ if (canClean) {
20
+ // how much white-space do we need to remove form each line?
21
+ offset = lines[ 1 ].match(/^\s*/)[ 0 ].length
22
+
23
+ // remove the excess white-space from the beginning of each line
24
+ lines = lines.map(function (line) {
25
+ return line.slice(offset)
26
+ })
27
+
28
+ lines.shift()
29
+
30
+ codeBlock.textContent = lines.join('\n')
31
+ }
32
+
33
+ hljs.highlightBlock(codeBlock)
34
+ };
35
+ }
36
+
37
+ function App () {
38
+ var toggleLinks = document.querySelectorAll('.js-toggle__link')
39
+
40
+ for (var i = toggleLinks.length - 1; i >= 0; i--) {
41
+ var toggleLink = toggleLinks[i]
42
+ toggleLink.addEventListener('click', clickToggle, false)
43
+ };
44
+
45
+ var sidebarNavLinks = document.querySelectorAll('.js-sidebar-nav-link')
46
+
47
+ for (var j = sidebarNavLinks.length - 1; j >= 0; j--) {
48
+ var sidebarNavLink = sidebarNavLinks[j]
49
+ sidebarNavLink.addEventListener('click', sideBarToggle, false)
50
+ };
51
+
52
+ if (!$('html').hasClass('ie8')) {
53
+ cleanWhiteSpace(document.querySelectorAll('pre code'))
54
+ }
55
+
56
+ var stickySidebar = function () {
57
+ var $sidebar = $('.js-sticky')
58
+ if (!$sidebar.length) return
59
+ var offset = $sidebar.offset()
60
+
61
+ $(window).on('scroll', function () {
62
+ var winTop = $(window).scrollTop()
63
+ set(winTop)
64
+ })
65
+
66
+ function set (winTop) {
67
+ if (offset.top < winTop) {
68
+ $sidebar.addClass('stuck')
69
+ } else {
70
+ $sidebar.removeClass('stuck')
71
+ }
72
+ }
73
+ }
74
+
75
+ stickySidebar()
76
+ svg4everybody()
77
+
78
+ /* eslint-disable no-new */
79
+ $('.js-open-overlay').each(function (e) {
80
+ new Overlay({
81
+ openButton: $(".js-open-overlay[modifier='" + $(this).attr('modifier') + "']"),
82
+ overlay: $(".us-overlay-parent[modifier='" + $(this).attr('modifier') + "']")
83
+ })
84
+ })
85
+
86
+ new ClassToggler({
87
+ containerClass: '.us-tooltip',
88
+ $target: $('.us-tooltip__icon'),
89
+ activeClass: 'us-tooltip--active'
90
+ })
91
+
92
+ new Tabs({collapsible: true, autoScroll: false})
93
+ }
94
+
95
+ function clickToggle (event) {
96
+ var toggleLink = event.currentTarget
97
+ var target = document.querySelector('.' + toggleLink.getAttribute('data-target'))
98
+ var targetActiveClass = getActiveClass(target)
99
+ var activeClass = getActiveClass(toggleLink)
100
+ toggleLink.classList.toggle(activeClass)
101
+ target.classList.toggle(targetActiveClass)
102
+ }
103
+
104
+ function sideBarToggle (event) {
105
+ event.preventDefault()
106
+ var sidebarSubNav = event.currentTarget.parentElement
107
+ sidebarSubNav.classList.toggle('active')
108
+ }
109
+
110
+ function getActiveClass (selector) {
111
+ return selector.classList[0] + '--active'
112
+ }
113
+
114
+ return new App()
115
+ })(document, window, $, Overlay, ClassToggler, Tabs)
@@ -0,0 +1,50 @@
1
+ google.charts.load('43', {packages: ['line']})
2
+
3
+ if (typeof reportData !== 'undefined' && reportData) {
4
+ google.charts.setOnLoadCallback(drawChart)
5
+ }
6
+
7
+ function drawChart () {
8
+ var simplicityData
9
+ var simplicityTable
10
+ var simplicityOptions
11
+ var simplicityChart
12
+ var sizeData
13
+ var sizeTable
14
+ var sizeOptions
15
+ var sizeChart
16
+
17
+ simplicityData = reportData.reverse().map(function (e) { return [e.version, e.rules, e.selectors] })
18
+ simplicityData.unshift(['Version', 'Rules', 'Selectors'])
19
+ simplicityTable = google.visualization.arrayToDataTable(simplicityData)
20
+
21
+ simplicityOptions = {
22
+ chart: {
23
+ title: 'Simplicity chart',
24
+ subtitle: 'Evolution of rules and selectors over uStyle releases',
25
+ vAxis: {
26
+ format: ''
27
+ }
28
+ }
29
+ }
30
+
31
+ sizeData = reportData.map(function (e) { return [e.version, e.size] })
32
+ sizeData.unshift(['Version', 'Size (bytes)'])
33
+ sizeTable = google.visualization.arrayToDataTable(sizeData)
34
+
35
+ sizeOptions = {
36
+ chart: {
37
+ title: 'Size chart',
38
+ subtitle: 'Evolution of uStyle size over releases',
39
+ vAxis: {
40
+ format: ''
41
+ }
42
+ }
43
+ }
44
+
45
+ simplicityChart = new google.charts.Line(document.getElementById('simplicity_chart'))
46
+ simplicityChart.draw(simplicityTable, simplicityOptions)
47
+
48
+ sizeChart = new google.charts.Line(document.getElementById('size_chart'))
49
+ sizeChart.draw(sizeTable, sizeOptions)
50
+ };
@@ -0,0 +1 @@
1
+ !(function (e) { typeof exports !== 'undefined' ? e(exports) : (window.hljs = e({}), typeof define === 'function' && define.amd && define([], function () { return window.hljs })) }(function (e) { function n (e) { return e.replace(/&/gm, '&amp;').replace(/</gm, '&lt;').replace(/>/gm, '&gt;') } function t (e) { return e.nodeName.toLowerCase() } function r (e, n) { var t = e && e.exec(n); return t && t.index == 0 } function a (e) { var n = (e.className + ' ' + (e.parentNode ? e.parentNode.className : '')).split(/\s+/); return n = n.map(function (e) { return e.replace(/^lang(uage)?-/, '') }), n.filter(function (e) { return N(e) || /no(-?)highlight|plain|text/.test(e) })[0] } function i (e, n) { var t, r = {}; for (t in e)r[t] = e[t]; if (n) for (t in n)r[t] = n[t]; return r } function o (e) { var n = []; return (function r (e, a) { for (var i = e.firstChild; i; i = i.nextSibling)i.nodeType == 3 ? a += i.nodeValue.length : i.nodeType == 1 && (n.push({event: 'start', offset: a, node: i}), a = r(i, a), t(i).match(/br|hr|img|input/) || n.push({event: 'stop', offset: a, node: i})); return a }(e, 0)), n } function u (e, r, a) { function i () { return e.length && r.length ? e[0].offset != r[0].offset ? e[0].offset < r[0].offset ? e : r : r[0].event == 'start' ? e : r : e.length ? e : r } function o (e) { function r (e) { return ' ' + e.nodeName + '="' + n(e.value) + '"' }l += '<' + t(e) + Array.prototype.map.call(e.attributes, r).join('') + '>' } function u (e) { l += '</' + t(e) + '>' } function c (e) { (e.event == 'start' ? o : u)(e.node) } for (var s = 0, l = '', f = []; e.length || r.length;) { var g = i(); if (l += n(a.substr(s, g[0].offset - s)), s = g[0].offset, g == e) { f.reverse().forEach(u); do c(g.splice(0, 1)[0]), g = i(); while (g == e && g.length && g[0].offset == s);f.reverse().forEach(o) } else g[0].event == 'start' ? f.push(g[0].node) : f.pop(), c(g.splice(0, 1)[0]) } return l + n(a.substr(s)) } function c (e) { function n (e) { return e && e.source || e } function t (t, r) { return new RegExp(n(t), 'm' + (e.cI ? 'i' : '') + (r ? 'g' : '')) } function r (a, o) { if (!a.compiled) { if (a.compiled = !0, a.k = a.k || a.bK, a.k) { var u = {}, c = function (n, t) { e.cI && (t = t.toLowerCase()), t.split(' ').forEach(function (e) { var t = e.split('|'); u[t[0]] = [n, t[1] ? Number(t[1]) : 1] }) }; typeof a.k === 'string' ? c('keyword', a.k) : Object.keys(a.k).forEach(function (e) { c(e, a.k[e]) }), a.k = u }a.lR = t(a.l || /\b\w+\b/, !0), o && (a.bK && (a.b = '\\b(' + a.bK.split(' ').join('|') + ')\\b'), a.b || (a.b = /\B|\b/), a.bR = t(a.b), a.e || a.eW || (a.e = /\B|\b/), a.e && (a.eR = t(a.e)), a.tE = n(a.e) || '', a.eW && o.tE && (a.tE += (a.e ? '|' : '') + o.tE)), a.i && (a.iR = t(a.i)), void 0 === a.r && (a.r = 1), a.c || (a.c = []); var s = []; a.c.forEach(function (e) { e.v ? e.v.forEach(function (n) { s.push(i(e, n)) }) : s.push(e == 'self' ? a : e) }), a.c = s, a.c.forEach(function (e) { r(e, a) }), a.starts && r(a.starts, o); var l = a.c.map(function (e) { return e.bK ? '\\.?(' + e.b + ')\\.?' : e.b }).concat([a.tE, a.i]).map(n).filter(Boolean); a.t = l.length ? t(l.join('|'), !0) : {exec: function () { return null }} } }r(e) } function s (e, t, a, i) { function o (e, n) { for (var t = 0; t < n.c.length; t++) if (r(n.c[t].bR, e)) return n.c[t] } function u (e, n) { if (r(e.eR, n)) { for (;e.endsParent && e.parent;)e = e.parent; return e } return e.eW ? u(e.parent, n) : void 0 } function f (e, n) { return !a && r(n.iR, e) } function g (e, n) { var t = E.cI ? n[0].toLowerCase() : n[0]; return e.k.hasOwnProperty(t) && e.k[t] } function p (e, n, t, r) { var a = r ? '' : x.classPrefix, i = '<span class="' + a, o = t ? '' : '</span>'; return i += e + '">', i + n + o } function d () { if (!L.k) return n(y); var e = '', t = 0; L.lR.lastIndex = 0; for (var r = L.lR.exec(y); r;) { e += n(y.substr(t, r.index - t)); var a = g(L, r); a ? (B += a[1], e += p(a[0], n(r[0]))) : e += n(r[0]), t = L.lR.lastIndex, r = L.lR.exec(y) } return e + n(y.substr(t)) } function h () { if (L.sL && !w[L.sL]) return n(y); var e = L.sL ? s(L.sL, y, !0, M[L.sL]) : l(y); return L.r > 0 && (B += e.r), L.subLanguageMode == 'continuous' && (M[L.sL] = e.top), p(e.language, e.value, !1, !0) } function b () { return void 0 !== L.sL ? h() : d() } function v (e, t) { var r = e.cN ? p(e.cN, '', !0) : ''; e.rB ? (k += r, y = '') : e.eB ? (k += n(t) + r, y = '') : (k += r, y = t), L = Object.create(e, {parent: {value: L}}) } function m (e, t) { if (y += e, void 0 === t) return k += b(), 0; var r = o(t, L); if (r) return k += b(), v(r, t), r.rB ? 0 : t.length; var a = u(L, t); if (a) { var i = L; i.rE || i.eE || (y += t), k += b(); do L.cN && (k += '</span>'), B += L.r, L = L.parent; while (L != a.parent);return i.eE && (k += n(t)), y = '', a.starts && v(a.starts, ''), i.rE ? 0 : t.length } if (f(t, L)) throw new Error('Illegal lexeme "' + t + '" for mode "' + (L.cN || '<unnamed>') + '"'); return y += t, t.length || 1 } var E = N(e); if (!E) throw new Error('Unknown language: "' + e + '"'); c(E); var R, L = i || E, M = {}, k = ''; for (R = L; R != E; R = R.parent)R.cN && (k = p(R.cN, '', !0) + k); var y = '', B = 0; try { for (var C, j, I = 0; ;) { if (L.t.lastIndex = I, C = L.t.exec(t), !C) break; j = m(t.substr(I, C.index - I), C[0]), I = C.index + j } for (m(t.substr(I)), R = L; R.parent; R = R.parent)R.cN && (k += '</span>'); return {r: B, value: k, language: e, top: L} } catch (S) { if (S.message.indexOf('Illegal') != -1) return {r: 0, value: n(t)}; throw S } } function l (e, t) { t = t || x.languages || Object.keys(w); var r = {r: 0, value: n(e)}, a = r; return t.forEach(function (n) { if (N(n)) { var t = s(n, e, !1); t.language = n, t.r > a.r && (a = t), t.r > r.r && (a = r, r = t) } }), a.language && (r.second_best = a), r } function f (e) { return x.tabReplace && (e = e.replace(/^((<[^>]+>|\t)+)/gm, function (e, n) { return n.replace(/\t/g, x.tabReplace) })), x.useBR && (e = e.replace(/\n/g, '<br>')), e } function g (e, n, t) { var r = n ? E[n] : t, a = [e.trim()]; return e.match(/\bhljs\b/) || a.push('hljs'), e.indexOf(r) === -1 && a.push(r), a.join(' ').trim() } function p (e) { var n = a(e); if (!/no(-?)highlight|plain|text/.test(n)) { var t; x.useBR ? (t = document.createElementNS('http://www.w3.org/1999/xhtml', 'div'), t.innerHTML = e.innerHTML.replace(/\n/g, '').replace(/<br[ \/]*>/g, '\n')) : t = e; var r = t.textContent, i = n ? s(n, r, !0) : l(r), c = o(t); if (c.length) { var p = document.createElementNS('http://www.w3.org/1999/xhtml', 'div'); p.innerHTML = i.value, i.value = u(c, o(p), r) }i.value = f(i.value), e.innerHTML = i.value, e.className = g(e.className, n, i.language), e.result = {language: i.language, re: i.r}, i.second_best && (e.second_best = {language: i.second_best.language, re: i.second_best.r}) } } function d (e) { x = i(x, e) } function h () { if (!h.called) { h.called = !0; var e = document.querySelectorAll('pre code'); Array.prototype.forEach.call(e, p) } } function b () { addEventListener('DOMContentLoaded', h, !1), addEventListener('load', h, !1) } function v (n, t) { var r = w[n] = t(e); r.aliases && r.aliases.forEach(function (e) { E[e] = n }) } function m () { return Object.keys(w) } function N (e) { return w[e] || w[E[e]] } var x = {classPrefix: 'hljs-', tabReplace: null, useBR: !1, languages: void 0}, w = {}, E = {}; return e.highlight = s, e.highlightAuto = l, e.fixMarkup = f, e.highlightBlock = p, e.configure = d, e.initHighlighting = h, e.initHighlightingOnLoad = b, e.registerLanguage = v, e.listLanguages = m, e.getLanguage = N, e.inherit = i, e.IR = '[a-zA-Z]\\w*', e.UIR = '[a-zA-Z_]\\w*', e.NR = '\\b\\d+(\\.\\d+)?', e.CNR = '\\b(0[xX][a-fA-F0-9]+|(\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)', e.BNR = '\\b(0b[01]+)', e.RSR = '!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~', e.BE = {b: '\\\\[\\s\\S]', r: 0}, e.ASM = {cN: 'string', b: "'", e: "'", i: '\\n', c: [e.BE]}, e.QSM = {cN: 'string', b: '"', e: '"', i: '\\n', c: [e.BE]}, e.PWM = {b: /\b(a|an|the|are|I|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such)\b/}, e.C = function (n, t, r) { var a = e.inherit({cN: 'comment', b: n, e: t, c: []}, r || {}); return a.c.push(e.PWM), a }, e.CLCM = e.C('//', '$'), e.CBCM = e.C('/\\*', '\\*/'), e.HCM = e.C('#', '$'), e.NM = {cN: 'number', b: e.NR, r: 0}, e.CNM = {cN: 'number', b: e.CNR, r: 0}, e.BNM = {cN: 'number', b: e.BNR, r: 0}, e.CSSNM = {cN: 'number', b: e.NR + '(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?', r: 0}, e.RM = {cN: 'regexp', b: /\//, e: /\/[gimuy]*/, i: /\n/, c: [e.BE, {b: /\[/, e: /\]/, r: 0, c: [e.BE]}]}, e.TM = {cN: 'title', b: e.IR, r: 0}, e.UTM = {cN: 'title', b: e.UIR, r: 0}, e })); hljs.registerLanguage('xml', function (t) { var e = '[A-Za-z0-9\\._:-]+', s = {b: /<\?(php)?(?!\w)/, e: /\?>/, sL: 'php', subLanguageMode: 'continuous'}, c = {eW: !0, i: /</, r: 0, c: [s, {cN: 'attribute', b: e, r: 0}, {b: '=', r: 0, c: [{cN: 'value', c: [s], v: [{b: /"/, e: /"/}, {b: /'/, e: /'/}, {b: /[^\s\/>]+/}]}]}]}; return {aliases: ['html', 'xhtml', 'rss', 'atom', 'xsl', 'plist'], cI: !0, c: [{cN: 'doctype', b: '<!DOCTYPE', e: '>', r: 10, c: [{b: '\\[', e: '\\]'}]}, t.C('<!--', '-->', {r: 10}), {cN: 'cdata', b: '<\\!\\[CDATA\\[', e: '\\]\\]>', r: 10}, {cN: 'tag', b: '<style(?=\\s|>|$)', e: '>', k: {title: 'style'}, c: [c], starts: {e: '</style>', rE: !0, sL: 'css'}}, {cN: 'tag', b: '<script(?=\\s|>|$)', e: '>', k: {title: 'script'}, c: [c], starts: {e: '</script>', rE: !0, sL: ''}}, s, {cN: 'pi', b: /<\?\w+/, e: /\?>/, r: 10}, {cN: 'tag', b: '</?', e: '/?>', c: [{cN: 'title', b: /[^ \/><\n\t]+/, r: 0}, c]}]} }); hljs.registerLanguage('coffeescript', function (e) { var c = {keyword: 'in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super then unless until loop of by when and or is isnt not', literal: 'true false null undefined yes no on off', reserved: 'case default function var void with const let enum export import native __hasProp __extends __slice __bind __indexOf', built_in: 'npm require console print module global window document'}, n = '[A-Za-z$_][0-9A-Za-z$_]*', t = {cN: 'subst', b: /#\{/, e: /}/, k: c}, r = [e.BNM, e.inherit(e.CNM, {starts: {e: '(\\s*/)?', r: 0}}), {cN: 'string', v: [{b: /'''/, e: /'''/, c: [e.BE]}, {b: /'/, e: /'/, c: [e.BE]}, {b: /"""/, e: /"""/, c: [e.BE, t]}, {b: /"/, e: /"/, c: [e.BE, t]}]}, {cN: 'regexp', v: [{b: '///', e: '///', c: [t, e.HCM]}, {b: '//[gim]*', r: 0}, {b: /\/(?![ *])(\\\/|.)*?\/[gim]*(?=\W|$)/}]}, {cN: 'property', b: '@' + n}, {b: '`', e: '`', eB: !0, eE: !0, sL: 'javascript'}]; t.c = r; var i = e.inherit(e.TM, {b: n}), s = '(\\(.*\\))?\\s*\\B[-=]>', o = {cN: 'params', b: '\\([^\\(]', rB: !0, c: [{b: /\(/, e: /\)/, k: c, c: ['self'].concat(r)}]}; return {aliases: ['coffee', 'cson', 'iced'], k: c, i: /\/\*/, c: r.concat([e.C('###', '###'), e.HCM, {cN: 'function', b: '^\\s*' + n + '\\s*=\\s*' + s, e: '[-=]>', rB: !0, c: [i, o]}, {b: /[:\(,=]\s*/, r: 0, c: [{cN: 'function', b: s, e: '[-=]>', rB: !0, c: [o]}]}, {cN: 'class', bK: 'class', e: '$', i: /[:="\[\]]/, c: [{bK: 'extends', eW: !0, i: /[:="\[\]]/, c: [i]}, i]}, {cN: 'attribute', b: n + ':', e: ':', rB: !0, rE: !0, r: 0}])} }); hljs.registerLanguage('bash', function (e) { var t = {cN: 'variable', v: [{b: /\$[\w\d#@][\w\d_]*/}, {b: /\$\{(.*?)}/}]}, s = {cN: 'string', b: /"/, e: /"/, c: [e.BE, t, {cN: 'variable', b: /\$\(/, e: /\)/, c: [e.BE]}]}, a = {cN: 'string', b: /'/, e: /'/}; return {aliases: ['sh', 'zsh'], l: /-?[a-z\.]+/, k: {keyword: 'if then else elif fi for while in do done case esac function', literal: 'true false', built_in: 'break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp', operator: '-ne -eq -lt -gt -f -d -e -s -l -a'}, c: [{cN: 'shebang', b: /^#![^\n]+sh\s*$/, r: 10}, {cN: 'function', b: /\w[\w\d_]*\s*\(\s*\)\s*\{/, rB: !0, c: [e.inherit(e.TM, {b: /\w[\w\d_]*/})], r: 0}, e.HCM, e.NM, s, a, t]} }); hljs.registerLanguage('javascript', function (e) { return {aliases: ['js'], k: {keyword: 'in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as await', literal: 'true false null undefined NaN Infinity', built_in: 'eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise'}, c: [{cN: 'pi', r: 10, v: [{b: /^\s*('|")use strict('|")/}, {b: /^\s*('|")use asm('|")/}]}, e.ASM, e.QSM, {cN: 'string', b: '`', e: '`', c: [e.BE, {cN: 'subst', b: '\\$\\{', e: '\\}'}]}, e.CLCM, e.CBCM, {cN: 'number', b: '\\b(0[xXbBoO][a-fA-F0-9]+|(\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)', r: 0}, {b: '(' + e.RSR + '|\\b(case|return|throw)\\b)\\s*', k: 'return throw case', c: [e.CLCM, e.CBCM, e.RM, {b: /</, e: />\s*[);\]]/, r: 0, sL: 'xml'}], r: 0}, {cN: 'function', bK: 'function', e: /\{/, eE: !0, c: [e.inherit(e.TM, {b: /[A-Za-z$_][0-9A-Za-z$_]*/}), {cN: 'params', b: /\(/, e: /\)/, c: [e.CLCM, e.CBCM], i: /["'\(]/}], i: /\[|%/}, {b: /\$[(.]/}, {b: '\\.' + e.IR, r: 0}, {bK: 'import', e: '[;$]', k: 'import from as', c: [e.ASM, e.QSM]}, {cN: 'class', bK: 'class', e: /[{;=]/, eE: !0, i: /[:"\[\]]/, c: [{bK: 'extends'}, e.UTM]}]} }); hljs.registerLanguage('markdown', function (e) { return {aliases: ['md', 'mkdown', 'mkd'], c: [{cN: 'header', v: [{b: '^#{1,6}', e: '$'}, {b: '^.+?\\n[=-]{2,}$'}]}, {b: '<', e: '>', sL: 'xml', r: 0}, {cN: 'bullet', b: '^([*+-]|(\\d+\\.))\\s+'}, {cN: 'strong', b: '[*_]{2}.+?[*_]{2}'}, {cN: 'emphasis', v: [{b: '\\*.+?\\*'}, {b: '_.+?_', r: 0}]}, {cN: 'blockquote', b: '^>\\s+', e: '$'}, {cN: 'code', v: [{b: '`.+?`'}, {b: '^( {4}| )', e: '$', r: 0}]}, {cN: 'horizontal_rule', b: '^[-\\*]{3,}', e: '$'}, {b: '\\[.+?\\][\\(\\[].*?[\\)\\]]', rB: !0, c: [{cN: 'link_label', b: '\\[', e: '\\]', eB: !0, rE: !0, r: 0}, {cN: 'link_url', b: '\\]\\(', e: '\\)', eB: !0, eE: !0}, {cN: 'link_reference', b: '\\]\\[', e: '\\]', eB: !0, eE: !0}], r: 10}, {b: '^\\[.+\\]:', rB: !0, c: [{cN: 'link_reference', b: '\\[', e: '\\]:', eB: !0, eE: !0, starts: {cN: 'link_url', e: '$'}}]}]} }); hljs.registerLanguage('scss', function (e) { { var t = '[a-zA-Z-][a-zA-Z0-9_-]*', i = {cN: 'variable', b: '(\\$' + t + ')\\b'}, r = {cN: 'function', b: t + '\\(', rB: !0, eE: !0, e: '\\('}, o = {cN: 'hexcolor', b: '#[0-9A-Fa-f]+'}; ({cN: 'attribute', b: '[A-Z\\_\\.\\-]+', e: ':', eE: !0, i: '[^\\s]', starts: {cN: 'value', eW: !0, eE: !0, c: [r, o, e.CSSNM, e.QSM, e.ASM, e.CBCM, {cN: 'important', b: '!important'}]}}) } return {cI: !0, i: "[=/|']", c: [e.CLCM, e.CBCM, r, {cN: 'id', b: '\\#[A-Za-z0-9_-]+', r: 0}, {cN: 'class', b: '\\.[A-Za-z0-9_-]+', r: 0}, {cN: 'attr_selector', b: '\\[', e: '\\]', i: '$'}, {cN: 'tag', b: '\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\b', r: 0}, {cN: 'pseudo', b: ':(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)'}, {cN: 'pseudo', b: '::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)'}, i, {cN: 'attribute', b: '\\b(z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\b', i: '[^\\s]'}, {cN: 'value', b: '\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b'}, {cN: 'value', b: ':', e: ';', c: [r, i, o, e.CSSNM, e.QSM, e.ASM, {cN: 'important', b: '!important'}]}, {cN: 'at_rule', b: '@', e: '[{;]', k: 'mixin include extend for if else each while charset import debug media page content font-face namespace warn', c: [r, i, e.QSM, e.ASM, o, e.CSSNM, {cN: 'preprocessor', b: '\\s[A-Za-z0-9_.-]+', r: 0}]}]} }); hljs.registerLanguage('ruby', function (e) { var c = '[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?', r = 'and false then defined module in return redo if BEGIN retry end for true self when next until do begin unless END rescue nil else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor', b = {cN: 'yardoctag', b: '@[A-Za-z]+'}, a = {cN: 'value', b: '#<', e: '>'}, n = [e.C('#', '$', {c: [b]}), e.C('^\\=begin', '^\\=end', {c: [b], r: 10}), e.C('^__END__', '\\n$')], s = {cN: 'subst', b: '#\\{', e: '}', k: r}, t = {cN: 'string', c: [e.BE, s], v: [{b: /'/, e: /'/}, {b: /"/, e: /"/}, {b: /`/, e: /`/}, {b: '%[qQwWx]?\\(', e: '\\)'}, {b: '%[qQwWx]?\\[', e: '\\]'}, {b: '%[qQwWx]?{', e: '}'}, {b: '%[qQwWx]?<', e: '>'}, {b: '%[qQwWx]?/', e: '/'}, {b: '%[qQwWx]?%', e: '%'}, {b: '%[qQwWx]?-', e: '-'}, {b: '%[qQwWx]?\\|', e: '\\|'}, {b: /\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/}]}, i = {cN: 'params', b: '\\(', e: '\\)', k: r}, d = [t, a, {cN: 'class', bK: 'class module', e: '$|;', i: /=/, c: [e.inherit(e.TM, {b: '[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?'}), {cN: 'inheritance', b: '<\\s*', c: [{cN: 'parent', b: '(' + e.IR + '::)?' + e.IR}]}].concat(n)}, {cN: 'function', bK: 'def', e: ' |$|;', r: 0, c: [e.inherit(e.TM, {b: c}), i].concat(n)}, {cN: 'constant', b: '(::)?(\\b[A-Z]\\w*(::)?)+', r: 0}, {cN: 'symbol', b: e.UIR + '(\\!|\\?)?:', r: 0}, {cN: 'symbol', b: ':', c: [t, {b: c}], r: 0}, {cN: 'number', b: '(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b', r: 0}, {cN: 'variable', b: '(\\$\\W)|((\\$|\\@\\@?)(\\w+))'}, {b: '(' + e.RSR + ')\\s*', c: [a, {cN: 'regexp', c: [e.BE, s], i: /\n/, v: [{b: '/', e: '/[a-z]*'}, {b: '%r{', e: '}[a-z]*'}, {b: '%r\\(', e: '\\)[a-z]*'}, {b: '%r!', e: '![a-z]*'}, {b: '%r\\[', e: '\\][a-z]*'}]}].concat(n), r: 0}].concat(n); s.c = d, i.c = d; var o = '[>?]>', l = '[\\w#]+\\(\\w+\\):\\d+:\\d+>', u = '(\\w+-)?\\d+\\.\\d+\\.\\d(p\\d+)?[^>]+>', N = [{b: /^\s*=>/, cN: 'status', starts: {e: '$', c: d}}, {cN: 'prompt', b: '^(' + o + '|' + l + '|' + u + ')', starts: {e: '$', c: d}}]; return {aliases: ['rb', 'gemspec', 'podspec', 'thor', 'irb'], k: r, c: n.concat(N).concat(d)} }); hljs.registerLanguage('css', function (e) { var c = '[a-zA-Z-][a-zA-Z0-9_-]*', a = {cN: 'function', b: c + '\\(', rB: !0, eE: !0, e: '\\('}, r = {cN: 'rule', b: /[A-Z\_\.\-]+\s*:/, rB: !0, e: ';', eW: !0, c: [{cN: 'attribute', b: /\S/, e: ':', eE: !0, starts: {cN: 'value', eW: !0, eE: !0, c: [a, e.CSSNM, e.QSM, e.ASM, e.CBCM, {cN: 'hexcolor', b: '#[0-9A-Fa-f]+'}, {cN: 'important', b: '!important'}]}}]}; return {cI: !0, i: /[=\/|']/, c: [e.CBCM, r, {cN: 'id', b: /\#[A-Za-z0-9_-]+/}, {cN: 'class', b: /\.[A-Za-z0-9_-]+/, r: 0}, {cN: 'attr_selector', b: /\[/, e: /\]/, i: '$'}, {cN: 'pseudo', b: /:(:)?[a-zA-Z0-9\_\-\+\(\)"']+/}, {cN: 'at_rule', b: '@(font-face|page)', l: '[a-z-]+', k: 'font-face page'}, {cN: 'at_rule', b: '@', e: '[{;]', c: [{cN: 'keyword', b: /\S+/}, {b: /\s/, eW: !0, eE: !0, r: 0, c: [a, e.ASM, e.QSM, e.CSSNM]}]}, {cN: 'tag', b: c, r: 0}, {cN: 'rules', b: '{', e: '}', i: /\S/, r: 0, c: [e.CBCM, r]}]} })
@@ -0,0 +1 @@
1
+ !(function (a, b) { typeof define === 'function' && define.amd ? define([], function () { return a.svg4everybody = b() }) : typeof module === 'object' && module.exports ? module.exports = b() : a.svg4everybody = b() }(this, function () { function a (a, b, c) { if (c) { var d = document.createDocumentFragment(), e = !b.hasAttribute('viewBox') && c.getAttribute('viewBox'); e && b.setAttribute('viewBox', e); for (var f = c.cloneNode(!0); f.childNodes.length;)d.appendChild(f.firstChild); a.appendChild(d) } } function b (b) { b.onreadystatechange = function () { if (b.readyState === 4) { var c = b._cachedDocument; c || (c = b._cachedDocument = document.implementation.createHTMLDocument(''), c.body.innerHTML = b.responseText, b._cachedTarget = {}), b._embeds.splice(0).map(function (d) { var e = b._cachedTarget[d.id]; e || (e = b._cachedTarget[d.id] = c.getElementById(d.id)), a(d.parent, d.svg, e) }) } }, b.onreadystatechange() } function c (c) { function e () { for (var c = 0; c < m.length;) { var h = m[c], i = h.parentNode, j = d(i); if (j) { var n = h.getAttribute('xlink:href') || h.getAttribute('href'); if (f && (!g.validate || g.validate(n, j, h))) { i.removeChild(h); var o = n.split('#'), p = o.shift(), q = o.join('#'); if (p.length) { var r = k[p]; r || (r = k[p] = new XMLHttpRequest(), r.open('GET', p), r.send(), r._embeds = []), r._embeds.push({parent: i, svg: j, id: q}), b(r) } else a(i, document.getElementById(q)) } } else ++c }l(e, 67) } var f, g = Object(c), h = /\bTrident\/[567]\b|\bMSIE (?:9|10)\.0\b/, i = /\bAppleWebKit\/(\d+)\b/, j = /\bEdge\/12\.(\d+)\b/; f = 'polyfill' in g ? g.polyfill : h.test(navigator.userAgent) || (navigator.userAgent.match(j) || [])[1] < 10547 || (navigator.userAgent.match(i) || [])[1] < 537; var k = {}, l = window.requestAnimationFrame || setTimeout, m = document.getElementsByTagName('use'); f && e() } function d (a) { for (var b = a; b.nodeName.toLowerCase() !== 'svg' && (b = b.parentNode););return b } return c }))
@@ -0,0 +1,42 @@
1
+ // $hero-padding-top: 1em;
2
+ $needs-font: true;
3
+
4
+ $header-height: 110px;
5
+
6
+ // Ustyle imports
7
+ @import "ustyle/content";
8
+
9
+ $sidebar-width : 250px;
10
+ $sidebar-bg-color : $c-bggrey;
11
+ $sidebar-breakpoint : tablet;
12
+ $sidebar-side-visibility: desktop;
13
+ $sidebar-top-push : $gutter-width/2;
14
+ $sidebar-padding : 0;
15
+
16
+ @import "structure/base";
17
+ @import "structure/header";
18
+
19
+ @import "modules/links";
20
+ @import "modules/made-at";
21
+ @import "modules/sidebar";
22
+ @import "modules/styleguide";
23
+ @import "modules/colours";
24
+ @import "modules/nav-mobile";
25
+ @import "modules/version";
26
+ @import "modules/logo";
27
+ @import "modules/nav";
28
+ @import "modules/grid";
29
+ @import "modules/code";
30
+ @import "modules/states";
31
+ @import "modules/copyright";
32
+ @import "modules/home";
33
+ @import "modules/tooltip";
34
+ @import "modules/table";
35
+ @import "modules/markdown";
36
+ @import "modules/images";
37
+ @import "modules/typography";
38
+
39
+ @import "vendor/highlight";
40
+ @import "vendor/pure-table";
41
+
42
+ @import "ustyle/icons/base";
@@ -0,0 +1,8 @@
1
+ code {
2
+ padding: 2px 4px;
3
+ font-family: Consolas, monospace;
4
+ font-size: 90%;
5
+ color: $c-typecyan;
6
+ background-color: $c-cyan-light;
7
+ border-radius: 3px;
8
+ }
@@ -0,0 +1,26 @@
1
+ .colour {
2
+ margin-bottom: $gutter-width/2;
3
+
4
+ &__block {
5
+ text-align: center;
6
+ border: 1px solid $c-bordergrey;
7
+ border-radius: 3px;
8
+ }
9
+
10
+ &__hex {
11
+ height: 75px;
12
+ color: #fff;
13
+ border-top-right-radius: 3px;
14
+ border-top-left-radius: 3px;
15
+ }
16
+
17
+ &__description {
18
+ min-height: 70px;
19
+ padding-top: 8px;
20
+ padding-bottom: 8px;
21
+ }
22
+
23
+ &__title {
24
+ font-size: 1em;
25
+ }
26
+ }
@@ -0,0 +1,4 @@
1
+ .copyright {
2
+ padding-left: $gutter-width;
3
+ margin-top: 1.5em;
4
+ }
@@ -0,0 +1,12 @@
1
+ .col-example {
2
+ padding-top: 1em;
3
+ padding-bottom: 1em;
4
+ background-color: $c-cyan-light;
5
+ border: 1px solid $c-typecyan;
6
+ }
7
+
8
+ .grid-example {
9
+ .us-grid-row {
10
+ margin-bottom: $gutter-width/2;
11
+ }
12
+ }
@@ -0,0 +1,5 @@
1
+ .distro-image {
2
+ width: auto;
3
+ max-height: 50px;
4
+ margin: 0 auto;
5
+ }
@@ -0,0 +1,24 @@
1
+ .image {
2
+ &-tip,
3
+ &-examples {
4
+ border: 1px solid $c-bordergrey;
5
+
6
+ img {
7
+ margin-bottom: $gutter-width/2;
8
+ }
9
+
10
+ &:nth-child(2n+1) {
11
+ clear: left;
12
+ }
13
+ }
14
+
15
+ &-tip {
16
+ &__reason {
17
+ margin-bottom: $gutter-width;
18
+ }
19
+ }
20
+ }
21
+
22
+ .image-examples {
23
+ margin-bottom: $gutter-width;
24
+ }
@@ -0,0 +1,3 @@
1
+ p a {
2
+ text-decoration: underline;
3
+ }
@@ -0,0 +1,182 @@
1
+ .logo {
2
+ @include link-colors($c-navy, $c-typecyan, $c-navy, $c-navy);
3
+ @include bold-font;
4
+ display: inline-block;
5
+ vertical-align: middle;
6
+
7
+ @include respond-to(tablet, true) {
8
+ font-size: 1.5em;
9
+ letter-spacing: 1px;
10
+ }
11
+
12
+ &__icon {
13
+ vertical-align: middle;
14
+ }
15
+ }
16
+
17
+ // Logo states
18
+
19
+ .logo__state {
20
+ position: relative;
21
+ display: inline-block;
22
+ padding: 18px;
23
+ margin-bottom: 10px;
24
+
25
+ + p {
26
+ color: $c-typegrey-2;
27
+ }
28
+ }
29
+
30
+ .logo__sizing {
31
+ position: absolute;
32
+ top: 50%;
33
+ right: -60px;
34
+ margin-top: -16px;
35
+
36
+ &:before {
37
+ position: absolute;
38
+ top: 50%;
39
+ left: -10px;
40
+ width: 2px;
41
+ background-color: $c-red;
42
+ content: "";
43
+ }
44
+
45
+ &.h98:before {
46
+ height: 98px;
47
+ margin-top: -47px;
48
+ }
49
+
50
+ &.h64:before {
51
+ height: 64px;
52
+ margin-top: -32px;
53
+ }
54
+
55
+ &.h50:before {
56
+ height: 50px;
57
+ margin-top: -25px;
58
+ }
59
+
60
+ &.h25:before {
61
+ height: 25px;
62
+ margin-top: -12.5px;
63
+ }
64
+ }
65
+
66
+ .logo__vertical {
67
+ svg {
68
+ width: 100%;
69
+ height: 100%;
70
+ max-width: 150px;
71
+ max-height: 150px;
72
+ }
73
+
74
+ &--alternate {
75
+ svg {
76
+ max-width: 100px;
77
+ max-height: 98px;
78
+ }
79
+ }
80
+
81
+ &--alternate-min {
82
+ svg {
83
+ max-width: 100px;
84
+ max-height: 50px;
85
+ }
86
+ }
87
+ }
88
+
89
+ .logo__horizontal {
90
+ padding: 18px 40px;
91
+
92
+ svg {
93
+ width: 100%;
94
+ height: 100%;
95
+ max-width: 250px;
96
+ max-height: 100px;
97
+ }
98
+
99
+ &--alternate {
100
+ svg {
101
+ max-height: 64px;
102
+ }
103
+ }
104
+
105
+ &--alternate-min {
106
+ svg {
107
+ max-height: 25px;
108
+ }
109
+ }
110
+ }
111
+
112
+ .logo--blue,
113
+ .logo--cyan {
114
+ fill: $c-blue;
115
+ }
116
+
117
+ .logo-white,
118
+ .logo--bwblack {
119
+ fill: #fff;
120
+ }
121
+
122
+ .logo--blue,
123
+ .logo--bwwhite {
124
+ border: 1px solid $c-typegrey-2;
125
+ }
126
+
127
+ .logo--white {
128
+ background-color: $c-blue;
129
+ fill: #fff;
130
+ }
131
+
132
+ .logo--cyan {
133
+ background-color: $c-cyan;
134
+ }
135
+
136
+ .logo--bwwhite {
137
+ fill: #000;
138
+ }
139
+
140
+ .logo--bwblack {
141
+ background-color: #000;
142
+ }
143
+
144
+ .logo__spacer--vertical,
145
+ .logo__spacer--horizontal {
146
+ position: relative;
147
+ padding: 40px;
148
+
149
+ &:before {
150
+ position: absolute;
151
+ top: 0;
152
+ left: 0;
153
+ width: 40px;
154
+ height: 100%;
155
+ text-align: center;
156
+ background-color: $c-cyan-light;
157
+ content: "s";
158
+ }
159
+ }
160
+
161
+ .logo__spacer--horizontal {
162
+ &:before {
163
+ width: 40px;
164
+ }
165
+ }
166
+
167
+ .logo__svg--hidden {
168
+ display: none;
169
+ }
170
+
171
+ .logo__icon-standalone {
172
+ display: inline-block;
173
+ padding: $gutter-width/2.5;
174
+ line-height: 1;
175
+ background-color: $c-blue;
176
+ border-radius: 22px;
177
+
178
+ .us-icon--uswitch {
179
+ position: relative;
180
+ right: -2px;
181
+ }
182
+ }
@@ -0,0 +1,6 @@
1
+ .made-at {
2
+ padding-top: $gutter-width;
3
+ padding-bottom: $gutter-width/2;
4
+ padding-left: $gutter-width/2;
5
+ font-size: .875em;
6
+ }
@@ -0,0 +1,7 @@
1
+ .markdown {
2
+ h2 {
3
+ padding-bottom: .5em;
4
+ margin-bottom: 1em;
5
+ border-bottom: 1px solid $c-bordergrey;
6
+ }
7
+ }
@@ -0,0 +1,72 @@
1
+ $nav-mobile-color : $c-navy !default;
2
+ $button-menu-slice-height: 3px !default;
3
+
4
+ .nav-mobile {
5
+ position: absolute;
6
+ top: 3px;
7
+ right: $gutter-width/4;
8
+ z-index: 15;
9
+ width: 42px;
10
+ height: 42px;
11
+
12
+ @include respond-to($sidebar-breakpoint, true) {
13
+ top: $header-height;
14
+ right: $gutter-width;
15
+ }
16
+
17
+ &__hamburger {
18
+ position: absolute;
19
+ top: 19px;
20
+ left: 50%;
21
+ display: block;
22
+ width: 20px;
23
+ height: $button-menu-slice-height;
24
+ padding: 0;
25
+ margin-left: -10px;
26
+ color: transparent;
27
+ text-indent: -999em;
28
+ background-color: $nav-mobile-color;
29
+ border: 0;
30
+ border-radius: 2px;
31
+ transition: all .2s;
32
+
33
+ &:before,
34
+ &:after {
35
+ position: absolute;
36
+ left: 0;
37
+ width: 100%;
38
+ height: $button-menu-slice-height;
39
+ background-color: $nav-mobile-color;
40
+ border-radius: 2px;
41
+ content: "";
42
+ transition: all .2s;
43
+ }
44
+
45
+ &:before {
46
+ top: -6px;
47
+ transform-origin: 33% 100%;
48
+ }
49
+
50
+ &:after {
51
+ top: 6px;
52
+ transform-origin: 33% 0;
53
+ }
54
+ }
55
+ }
56
+
57
+ .nav-mobile--active .nav-mobile__hamburger {
58
+ background: transparent;
59
+
60
+ &:before,
61
+ &:after {
62
+ top: 0;
63
+ }
64
+
65
+ &:before {
66
+ transform: translateY(-3px) translateX(1px) rotate(45deg);
67
+ }
68
+
69
+ &:after {
70
+ transform: translateY(3px) translateX(1px) rotate(-45deg);
71
+ }
72
+ }
@@ -0,0 +1,32 @@
1
+ .nav {
2
+ .sidebar--active & {
3
+ display: block;
4
+ }
5
+
6
+ &--sub {
7
+ padding-top: $gutter-width;
8
+ border-bottom: 1px solid $c-bordergrey;
9
+
10
+ @include respond-to(desktop, true) {
11
+ position: relative;
12
+ z-index: 100;
13
+ float: right;
14
+ border-bottom: 0;
15
+
16
+ .stuck {
17
+ position: fixed;
18
+ top: 30px;
19
+ }
20
+ }
21
+ }
22
+
23
+ &__link {
24
+ display: block;
25
+ padding-top: 5px;
26
+ padding-bottom: 5px;
27
+
28
+ @include respond-to(desktop, true) {
29
+ font-size: .875em;
30
+ }
31
+ }
32
+ }