table_beet2 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (324) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +24 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +28 -0
  5. data/.travis.yml +20 -0
  6. data/Gemfile +6 -0
  7. data/Guardfile +7 -0
  8. data/LICENSE.txt +22 -0
  9. data/README.md +111 -0
  10. data/Rakefile +8 -0
  11. data/bin/table_beet +6 -0
  12. data/gemfiles/rspec-3.5.x.gemfile +8 -0
  13. data/gemfiles/rspec-3.6.x.gemfile +8 -0
  14. data/gemfiles/rspec-3.7.x.gemfile +8 -0
  15. data/lib/table_beet.rb +17 -0
  16. data/lib/table_beet/cli.rb +48 -0
  17. data/lib/table_beet/formatters.rb +6 -0
  18. data/lib/table_beet/formatters/base_formatter.rb +14 -0
  19. data/lib/table_beet/formatters/html_formatter.rb +52 -0
  20. data/lib/table_beet/formatters/html_template/data/css/font-awesome-ie7.min.css +22 -0
  21. data/lib/table_beet/formatters/html_template/data/css/groundwork-ie.css +52 -0
  22. data/lib/table_beet/formatters/html_template/data/css/groundwork.css +5802 -0
  23. data/lib/table_beet/formatters/html_template/data/css/no-svg.css +1 -0
  24. data/lib/table_beet/formatters/html_template/data/css/placeholder_polyfill.css +32 -0
  25. data/lib/table_beet/formatters/html_template/data/favicon.ico +0 -0
  26. data/lib/table_beet/formatters/html_template/data/font/FontAwesome.otf +0 -0
  27. data/lib/table_beet/formatters/html_template/data/font/fontawesome-webfont.eot +0 -0
  28. data/lib/table_beet/formatters/html_template/data/font/fontawesome-webfont.svg +284 -0
  29. data/lib/table_beet/formatters/html_template/data/font/fontawesome-webfont.ttf +0 -0
  30. data/lib/table_beet/formatters/html_template/data/font/fontawesome-webfont.woff +0 -0
  31. data/lib/table_beet/formatters/html_template/data/images/black_linen_v2.png +0 -0
  32. data/lib/table_beet/formatters/html_template/data/images/groundwork-logo.png +0 -0
  33. data/lib/table_beet/formatters/html_template/data/images/groundwork-logo.svg +1 -0
  34. data/lib/table_beet/formatters/html_template/data/images/kitchen-sink.gif +0 -0
  35. data/lib/table_beet/formatters/html_template/data/images/layout-1.gif +0 -0
  36. data/lib/table_beet/formatters/html_template/data/images/layout-2.gif +0 -0
  37. data/lib/table_beet/formatters/html_template/data/images/layout-3.gif +0 -0
  38. data/lib/table_beet/formatters/html_template/data/images/layout-4.gif +0 -0
  39. data/lib/table_beet/formatters/html_template/data/images/layout-5.gif +0 -0
  40. data/lib/table_beet/formatters/html_template/data/images/orbit/bullets.jpg +0 -0
  41. data/lib/table_beet/formatters/html_template/data/images/orbit/left-arrow.png +0 -0
  42. data/lib/table_beet/formatters/html_template/data/images/orbit/loading.gif +0 -0
  43. data/lib/table_beet/formatters/html_template/data/images/orbit/mask-black.png +0 -0
  44. data/lib/table_beet/formatters/html_template/data/images/orbit/pause-black.png +0 -0
  45. data/lib/table_beet/formatters/html_template/data/images/orbit/right-arrow.png +0 -0
  46. data/lib/table_beet/formatters/html_template/data/images/orbit/rotator-black.png +0 -0
  47. data/lib/table_beet/formatters/html_template/data/images/orbit/timer-black.png +0 -0
  48. data/lib/table_beet/formatters/html_template/data/images/social-icons/500px-m.png +0 -0
  49. data/lib/table_beet/formatters/html_template/data/images/social-icons/500px-s.png +0 -0
  50. data/lib/table_beet/formatters/html_template/data/images/social-icons/500px.png +0 -0
  51. data/lib/table_beet/formatters/html_template/data/images/social-icons/500px.svg +62 -0
  52. data/lib/table_beet/formatters/html_template/data/images/social-icons/aboutme-m.png +0 -0
  53. data/lib/table_beet/formatters/html_template/data/images/social-icons/aboutme-s.png +0 -0
  54. data/lib/table_beet/formatters/html_template/data/images/social-icons/aboutme.png +0 -0
  55. data/lib/table_beet/formatters/html_template/data/images/social-icons/aboutme.svg +42 -0
  56. data/lib/table_beet/formatters/html_template/data/images/social-icons/adn-m.png +0 -0
  57. data/lib/table_beet/formatters/html_template/data/images/social-icons/adn-s.png +0 -0
  58. data/lib/table_beet/formatters/html_template/data/images/social-icons/adn.png +0 -0
  59. data/lib/table_beet/formatters/html_template/data/images/social-icons/adn.svg +14 -0
  60. data/lib/table_beet/formatters/html_template/data/images/social-icons/android-m.png +0 -0
  61. data/lib/table_beet/formatters/html_template/data/images/social-icons/android-s.png +0 -0
  62. data/lib/table_beet/formatters/html_template/data/images/social-icons/android.png +0 -0
  63. data/lib/table_beet/formatters/html_template/data/images/social-icons/android.svg +30 -0
  64. data/lib/table_beet/formatters/html_template/data/images/social-icons/apple-m.png +0 -0
  65. data/lib/table_beet/formatters/html_template/data/images/social-icons/apple-s.png +0 -0
  66. data/lib/table_beet/formatters/html_template/data/images/social-icons/apple.png +0 -0
  67. data/lib/table_beet/formatters/html_template/data/images/social-icons/apple.svg +19 -0
  68. data/lib/table_beet/formatters/html_template/data/images/social-icons/behance-m.png +0 -0
  69. data/lib/table_beet/formatters/html_template/data/images/social-icons/behance-s.png +0 -0
  70. data/lib/table_beet/formatters/html_template/data/images/social-icons/behance.png +0 -0
  71. data/lib/table_beet/formatters/html_template/data/images/social-icons/behance.svg +48 -0
  72. data/lib/table_beet/formatters/html_template/data/images/social-icons/bitbucket-m.png +0 -0
  73. data/lib/table_beet/formatters/html_template/data/images/social-icons/bitbucket-s.png +0 -0
  74. data/lib/table_beet/formatters/html_template/data/images/social-icons/bitbucket.png +0 -0
  75. data/lib/table_beet/formatters/html_template/data/images/social-icons/bitbucket.svg +36 -0
  76. data/lib/table_beet/formatters/html_template/data/images/social-icons/blogger-m.png +0 -0
  77. data/lib/table_beet/formatters/html_template/data/images/social-icons/blogger-s.png +0 -0
  78. data/lib/table_beet/formatters/html_template/data/images/social-icons/blogger.png +0 -0
  79. data/lib/table_beet/formatters/html_template/data/images/social-icons/blogger.svg +22 -0
  80. data/lib/table_beet/formatters/html_template/data/images/social-icons/coderwall-m.png +0 -0
  81. data/lib/table_beet/formatters/html_template/data/images/social-icons/coderwall-s.png +0 -0
  82. data/lib/table_beet/formatters/html_template/data/images/social-icons/coderwall.png +0 -0
  83. data/lib/table_beet/formatters/html_template/data/images/social-icons/coderwall.svg +21 -0
  84. data/lib/table_beet/formatters/html_template/data/images/social-icons/creativecloud-m.png +0 -0
  85. data/lib/table_beet/formatters/html_template/data/images/social-icons/creativecloud-s.png +0 -0
  86. data/lib/table_beet/formatters/html_template/data/images/social-icons/creativecloud.png +0 -0
  87. data/lib/table_beet/formatters/html_template/data/images/social-icons/creativecloud.svg +48 -0
  88. data/lib/table_beet/formatters/html_template/data/images/social-icons/dribbble-m.png +0 -0
  89. data/lib/table_beet/formatters/html_template/data/images/social-icons/dribbble-s.png +0 -0
  90. data/lib/table_beet/formatters/html_template/data/images/social-icons/dribbble.png +0 -0
  91. data/lib/table_beet/formatters/html_template/data/images/social-icons/dribbble.svg +28 -0
  92. data/lib/table_beet/formatters/html_template/data/images/social-icons/dropbox-m.png +0 -0
  93. data/lib/table_beet/formatters/html_template/data/images/social-icons/dropbox-s.png +0 -0
  94. data/lib/table_beet/formatters/html_template/data/images/social-icons/dropbox.png +0 -0
  95. data/lib/table_beet/formatters/html_template/data/images/social-icons/dropbox.svg +73 -0
  96. data/lib/table_beet/formatters/html_template/data/images/social-icons/evernote-m.png +0 -0
  97. data/lib/table_beet/formatters/html_template/data/images/social-icons/evernote-s.png +0 -0
  98. data/lib/table_beet/formatters/html_template/data/images/social-icons/evernote.png +0 -0
  99. data/lib/table_beet/formatters/html_template/data/images/social-icons/evernote.svg +62 -0
  100. data/lib/table_beet/formatters/html_template/data/images/social-icons/facebook-m.png +0 -0
  101. data/lib/table_beet/formatters/html_template/data/images/social-icons/facebook-s.png +0 -0
  102. data/lib/table_beet/formatters/html_template/data/images/social-icons/facebook.png +0 -0
  103. data/lib/table_beet/formatters/html_template/data/images/social-icons/facebook.svg +15 -0
  104. data/lib/table_beet/formatters/html_template/data/images/social-icons/fairheadcreative-m.png +0 -0
  105. data/lib/table_beet/formatters/html_template/data/images/social-icons/fairheadcreative-s.png +0 -0
  106. data/lib/table_beet/formatters/html_template/data/images/social-icons/fairheadcreative.png +0 -0
  107. data/lib/table_beet/formatters/html_template/data/images/social-icons/fairheadcreative.svg +24 -0
  108. data/lib/table_beet/formatters/html_template/data/images/social-icons/flickr-m.png +0 -0
  109. data/lib/table_beet/formatters/html_template/data/images/social-icons/flickr-s.png +0 -0
  110. data/lib/table_beet/formatters/html_template/data/images/social-icons/flickr.png +0 -0
  111. data/lib/table_beet/formatters/html_template/data/images/social-icons/flickr.svg +14 -0
  112. data/lib/table_beet/formatters/html_template/data/images/social-icons/foursquare-m.png +0 -0
  113. data/lib/table_beet/formatters/html_template/data/images/social-icons/foursquare-s.png +0 -0
  114. data/lib/table_beet/formatters/html_template/data/images/social-icons/foursquare.png +0 -0
  115. data/lib/table_beet/formatters/html_template/data/images/social-icons/foursquare.svg +43 -0
  116. data/lib/table_beet/formatters/html_template/data/images/social-icons/git-m.png +0 -0
  117. data/lib/table_beet/formatters/html_template/data/images/social-icons/git-s.png +0 -0
  118. data/lib/table_beet/formatters/html_template/data/images/social-icons/git.png +0 -0
  119. data/lib/table_beet/formatters/html_template/data/images/social-icons/git.svg +22 -0
  120. data/lib/table_beet/formatters/html_template/data/images/social-icons/github-m.png +0 -0
  121. data/lib/table_beet/formatters/html_template/data/images/social-icons/github-s.png +0 -0
  122. data/lib/table_beet/formatters/html_template/data/images/social-icons/github.png +0 -0
  123. data/lib/table_beet/formatters/html_template/data/images/social-icons/github.svg +38 -0
  124. data/lib/table_beet/formatters/html_template/data/images/social-icons/goodreads-m.png +0 -0
  125. data/lib/table_beet/formatters/html_template/data/images/social-icons/goodreads-s.png +0 -0
  126. data/lib/table_beet/formatters/html_template/data/images/social-icons/goodreads.png +0 -0
  127. data/lib/table_beet/formatters/html_template/data/images/social-icons/goodreads.svg +38 -0
  128. data/lib/table_beet/formatters/html_template/data/images/social-icons/googleplay-m.png +0 -0
  129. data/lib/table_beet/formatters/html_template/data/images/social-icons/googleplay-s.png +0 -0
  130. data/lib/table_beet/formatters/html_template/data/images/social-icons/googleplay.png +0 -0
  131. data/lib/table_beet/formatters/html_template/data/images/social-icons/googleplay.svg +24 -0
  132. data/lib/table_beet/formatters/html_template/data/images/social-icons/googleplus-m.png +0 -0
  133. data/lib/table_beet/formatters/html_template/data/images/social-icons/googleplus-s.png +0 -0
  134. data/lib/table_beet/formatters/html_template/data/images/social-icons/googleplus.png +0 -0
  135. data/lib/table_beet/formatters/html_template/data/images/social-icons/googleplus.svg +52 -0
  136. data/lib/table_beet/formatters/html_template/data/images/social-icons/html5-m.png +0 -0
  137. data/lib/table_beet/formatters/html_template/data/images/social-icons/html5-s.png +0 -0
  138. data/lib/table_beet/formatters/html_template/data/images/social-icons/html5.png +0 -0
  139. data/lib/table_beet/formatters/html_template/data/images/social-icons/html5.svg +29 -0
  140. data/lib/table_beet/formatters/html_template/data/images/social-icons/icloud-m.png +0 -0
  141. data/lib/table_beet/formatters/html_template/data/images/social-icons/icloud-s.png +0 -0
  142. data/lib/table_beet/formatters/html_template/data/images/social-icons/icloud.png +0 -0
  143. data/lib/table_beet/formatters/html_template/data/images/social-icons/icloud.svg +26 -0
  144. data/lib/table_beet/formatters/html_template/data/images/social-icons/instagram-m.png +0 -0
  145. data/lib/table_beet/formatters/html_template/data/images/social-icons/instagram-s.png +0 -0
  146. data/lib/table_beet/formatters/html_template/data/images/social-icons/instagram.png +0 -0
  147. data/lib/table_beet/formatters/html_template/data/images/social-icons/instagram.svg +166 -0
  148. data/lib/table_beet/formatters/html_template/data/images/social-icons/lastfm-m.png +0 -0
  149. data/lib/table_beet/formatters/html_template/data/images/social-icons/lastfm-s.png +0 -0
  150. data/lib/table_beet/formatters/html_template/data/images/social-icons/lastfm.png +0 -0
  151. data/lib/table_beet/formatters/html_template/data/images/social-icons/lastfm.svg +44 -0
  152. data/lib/table_beet/formatters/html_template/data/images/social-icons/linkedin-m.png +0 -0
  153. data/lib/table_beet/formatters/html_template/data/images/social-icons/linkedin-s.png +0 -0
  154. data/lib/table_beet/formatters/html_template/data/images/social-icons/linkedin.png +0 -0
  155. data/lib/table_beet/formatters/html_template/data/images/social-icons/linkedin.svg +28 -0
  156. data/lib/table_beet/formatters/html_template/data/images/social-icons/mail-m.png +0 -0
  157. data/lib/table_beet/formatters/html_template/data/images/social-icons/mail-s.png +0 -0
  158. data/lib/table_beet/formatters/html_template/data/images/social-icons/mail.png +0 -0
  159. data/lib/table_beet/formatters/html_template/data/images/social-icons/mail.svg +27 -0
  160. data/lib/table_beet/formatters/html_template/data/images/social-icons/mercurial-m.png +0 -0
  161. data/lib/table_beet/formatters/html_template/data/images/social-icons/mercurial-s.png +0 -0
  162. data/lib/table_beet/formatters/html_template/data/images/social-icons/mercurial.png +0 -0
  163. data/lib/table_beet/formatters/html_template/data/images/social-icons/mercurial.svg +22 -0
  164. data/lib/table_beet/formatters/html_template/data/images/social-icons/mixi-m.png +0 -0
  165. data/lib/table_beet/formatters/html_template/data/images/social-icons/mixi-s.png +0 -0
  166. data/lib/table_beet/formatters/html_template/data/images/social-icons/mixi.png +0 -0
  167. data/lib/table_beet/formatters/html_template/data/images/social-icons/mixi.svg +32 -0
  168. data/lib/table_beet/formatters/html_template/data/images/social-icons/msn-m.png +0 -0
  169. data/lib/table_beet/formatters/html_template/data/images/social-icons/msn-s.png +0 -0
  170. data/lib/table_beet/formatters/html_template/data/images/social-icons/msn.png +0 -0
  171. data/lib/table_beet/formatters/html_template/data/images/social-icons/msn.svg +44 -0
  172. data/lib/table_beet/formatters/html_template/data/images/social-icons/orkut-m.png +0 -0
  173. data/lib/table_beet/formatters/html_template/data/images/social-icons/orkut-s.png +0 -0
  174. data/lib/table_beet/formatters/html_template/data/images/social-icons/orkut.png +0 -0
  175. data/lib/table_beet/formatters/html_template/data/images/social-icons/orkut.svg +23 -0
  176. data/lib/table_beet/formatters/html_template/data/images/social-icons/picasa-m.png +0 -0
  177. data/lib/table_beet/formatters/html_template/data/images/social-icons/picasa-s.png +0 -0
  178. data/lib/table_beet/formatters/html_template/data/images/social-icons/picasa.png +0 -0
  179. data/lib/table_beet/formatters/html_template/data/images/social-icons/picasa.svg +48 -0
  180. data/lib/table_beet/formatters/html_template/data/images/social-icons/pinterest-m.png +0 -0
  181. data/lib/table_beet/formatters/html_template/data/images/social-icons/pinterest-s.png +0 -0
  182. data/lib/table_beet/formatters/html_template/data/images/social-icons/pinterest.png +0 -0
  183. data/lib/table_beet/formatters/html_template/data/images/social-icons/pinterest.svg +42 -0
  184. data/lib/table_beet/formatters/html_template/data/images/social-icons/pocketapp-m.png +0 -0
  185. data/lib/table_beet/formatters/html_template/data/images/social-icons/pocketapp-s.png +0 -0
  186. data/lib/table_beet/formatters/html_template/data/images/social-icons/pocketapp.png +0 -0
  187. data/lib/table_beet/formatters/html_template/data/images/social-icons/pocketapp.svg +38 -0
  188. data/lib/table_beet/formatters/html_template/data/images/social-icons/quora-m.png +0 -0
  189. data/lib/table_beet/formatters/html_template/data/images/social-icons/quora-s.png +0 -0
  190. data/lib/table_beet/formatters/html_template/data/images/social-icons/quora.png +0 -0
  191. data/lib/table_beet/formatters/html_template/data/images/social-icons/quora.svg +20 -0
  192. data/lib/table_beet/formatters/html_template/data/images/social-icons/rdio-m.png +0 -0
  193. data/lib/table_beet/formatters/html_template/data/images/social-icons/rdio-s.png +0 -0
  194. data/lib/table_beet/formatters/html_template/data/images/social-icons/rdio.png +0 -0
  195. data/lib/table_beet/formatters/html_template/data/images/social-icons/rdio.svg +18 -0
  196. data/lib/table_beet/formatters/html_template/data/images/social-icons/renren-m.png +0 -0
  197. data/lib/table_beet/formatters/html_template/data/images/social-icons/renren-s.png +0 -0
  198. data/lib/table_beet/formatters/html_template/data/images/social-icons/renren.png +0 -0
  199. data/lib/table_beet/formatters/html_template/data/images/social-icons/renren.svg +79 -0
  200. data/lib/table_beet/formatters/html_template/data/images/social-icons/rss-m.png +0 -0
  201. data/lib/table_beet/formatters/html_template/data/images/social-icons/rss-s.png +0 -0
  202. data/lib/table_beet/formatters/html_template/data/images/social-icons/rss.png +0 -0
  203. data/lib/table_beet/formatters/html_template/data/images/social-icons/rss.svg +18 -0
  204. data/lib/table_beet/formatters/html_template/data/images/social-icons/skitch-m.png +0 -0
  205. data/lib/table_beet/formatters/html_template/data/images/social-icons/skitch-s.png +0 -0
  206. data/lib/table_beet/formatters/html_template/data/images/social-icons/skitch.png +0 -0
  207. data/lib/table_beet/formatters/html_template/data/images/social-icons/skitch.svg +24 -0
  208. data/lib/table_beet/formatters/html_template/data/images/social-icons/skype-m.png +0 -0
  209. data/lib/table_beet/formatters/html_template/data/images/social-icons/skype-s.png +0 -0
  210. data/lib/table_beet/formatters/html_template/data/images/social-icons/skype.png +0 -0
  211. data/lib/table_beet/formatters/html_template/data/images/social-icons/skype.svg +25 -0
  212. data/lib/table_beet/formatters/html_template/data/images/social-icons/soundcloud-m.png +0 -0
  213. data/lib/table_beet/formatters/html_template/data/images/social-icons/soundcloud-s.png +0 -0
  214. data/lib/table_beet/formatters/html_template/data/images/social-icons/soundcloud.png +0 -0
  215. data/lib/table_beet/formatters/html_template/data/images/social-icons/soundcloud.svg +60 -0
  216. data/lib/table_beet/formatters/html_template/data/images/social-icons/spotify-m.png +0 -0
  217. data/lib/table_beet/formatters/html_template/data/images/social-icons/spotify-s.png +0 -0
  218. data/lib/table_beet/formatters/html_template/data/images/social-icons/spotify.png +0 -0
  219. data/lib/table_beet/formatters/html_template/data/images/social-icons/spotify.svg +38 -0
  220. data/lib/table_beet/formatters/html_template/data/images/social-icons/stackoverflow-m.png +0 -0
  221. data/lib/table_beet/formatters/html_template/data/images/social-icons/stackoverflow-s.png +0 -0
  222. data/lib/table_beet/formatters/html_template/data/images/social-icons/stackoverflow.png +0 -0
  223. data/lib/table_beet/formatters/html_template/data/images/social-icons/stackoverflow.svg +32 -0
  224. data/lib/table_beet/formatters/html_template/data/images/social-icons/stumbleupon-m.png +0 -0
  225. data/lib/table_beet/formatters/html_template/data/images/social-icons/stumbleupon-s.png +0 -0
  226. data/lib/table_beet/formatters/html_template/data/images/social-icons/stumbleupon.png +0 -0
  227. data/lib/table_beet/formatters/html_template/data/images/social-icons/stumbleupon.svg +22 -0
  228. data/lib/table_beet/formatters/html_template/data/images/social-icons/svn-m.png +0 -0
  229. data/lib/table_beet/formatters/html_template/data/images/social-icons/svn-s.png +0 -0
  230. data/lib/table_beet/formatters/html_template/data/images/social-icons/svn.png +0 -0
  231. data/lib/table_beet/formatters/html_template/data/images/social-icons/svn.svg +25 -0
  232. data/lib/table_beet/formatters/html_template/data/images/social-icons/tent-m.png +0 -0
  233. data/lib/table_beet/formatters/html_template/data/images/social-icons/tent-s.png +0 -0
  234. data/lib/table_beet/formatters/html_template/data/images/social-icons/tent.png +0 -0
  235. data/lib/table_beet/formatters/html_template/data/images/social-icons/tent.svg +16 -0
  236. data/lib/table_beet/formatters/html_template/data/images/social-icons/tripadvisor-m.png +0 -0
  237. data/lib/table_beet/formatters/html_template/data/images/social-icons/tripadvisor-s.png +0 -0
  238. data/lib/table_beet/formatters/html_template/data/images/social-icons/tripadvisor.png +0 -0
  239. data/lib/table_beet/formatters/html_template/data/images/social-icons/tripadvisor.svg +30 -0
  240. data/lib/table_beet/formatters/html_template/data/images/social-icons/tumblr-m.png +0 -0
  241. data/lib/table_beet/formatters/html_template/data/images/social-icons/tumblr-s.png +0 -0
  242. data/lib/table_beet/formatters/html_template/data/images/social-icons/tumblr.png +0 -0
  243. data/lib/table_beet/formatters/html_template/data/images/social-icons/tumblr.svg +16 -0
  244. data/lib/table_beet/formatters/html_template/data/images/social-icons/twitter-m.png +0 -0
  245. data/lib/table_beet/formatters/html_template/data/images/social-icons/twitter-s.png +0 -0
  246. data/lib/table_beet/formatters/html_template/data/images/social-icons/twitter.png +0 -0
  247. data/lib/table_beet/formatters/html_template/data/images/social-icons/twitter.svg +24 -0
  248. data/lib/table_beet/formatters/html_template/data/images/social-icons/vimeo-m.png +0 -0
  249. data/lib/table_beet/formatters/html_template/data/images/social-icons/vimeo-s.png +0 -0
  250. data/lib/table_beet/formatters/html_template/data/images/social-icons/vimeo.png +0 -0
  251. data/lib/table_beet/formatters/html_template/data/images/social-icons/vimeo.svg +20 -0
  252. data/lib/table_beet/formatters/html_template/data/images/social-icons/weibo-m.png +0 -0
  253. data/lib/table_beet/formatters/html_template/data/images/social-icons/weibo-s.png +0 -0
  254. data/lib/table_beet/formatters/html_template/data/images/social-icons/weibo.png +0 -0
  255. data/lib/table_beet/formatters/html_template/data/images/social-icons/weibo.svg +54 -0
  256. data/lib/table_beet/formatters/html_template/data/images/social-icons/windows-m.png +0 -0
  257. data/lib/table_beet/formatters/html_template/data/images/social-icons/windows-s.png +0 -0
  258. data/lib/table_beet/formatters/html_template/data/images/social-icons/windows.png +0 -0
  259. data/lib/table_beet/formatters/html_template/data/images/social-icons/windows.svg +26 -0
  260. data/lib/table_beet/formatters/html_template/data/images/social-icons/wordpress-m.png +0 -0
  261. data/lib/table_beet/formatters/html_template/data/images/social-icons/wordpress-s.png +0 -0
  262. data/lib/table_beet/formatters/html_template/data/images/social-icons/wordpress.png +0 -0
  263. data/lib/table_beet/formatters/html_template/data/images/social-icons/wordpress.svg +50 -0
  264. data/lib/table_beet/formatters/html_template/data/images/social-icons/xing-m.png +0 -0
  265. data/lib/table_beet/formatters/html_template/data/images/social-icons/xing-s.png +0 -0
  266. data/lib/table_beet/formatters/html_template/data/images/social-icons/xing.png +0 -0
  267. data/lib/table_beet/formatters/html_template/data/images/social-icons/xing.svg +16 -0
  268. data/lib/table_beet/formatters/html_template/data/images/social-icons/yelp-m.png +0 -0
  269. data/lib/table_beet/formatters/html_template/data/images/social-icons/yelp-s.png +0 -0
  270. data/lib/table_beet/formatters/html_template/data/images/social-icons/yelp.png +0 -0
  271. data/lib/table_beet/formatters/html_template/data/images/social-icons/yelp.svg +54 -0
  272. data/lib/table_beet/formatters/html_template/data/images/social-icons/youtube-m.png +0 -0
  273. data/lib/table_beet/formatters/html_template/data/images/social-icons/youtube-s.png +0 -0
  274. data/lib/table_beet/formatters/html_template/data/images/social-icons/youtube.png +0 -0
  275. data/lib/table_beet/formatters/html_template/data/images/social-icons/youtube.svg +106 -0
  276. data/lib/table_beet/formatters/html_template/data/images/social-icons/youversion-m.png +0 -0
  277. data/lib/table_beet/formatters/html_template/data/images/social-icons/youversion-s.png +0 -0
  278. data/lib/table_beet/formatters/html_template/data/images/social-icons/youversion.png +0 -0
  279. data/lib/table_beet/formatters/html_template/data/images/social-icons/youversion.svg +54 -0
  280. data/lib/table_beet/formatters/html_template/data/images/social-icons/zerply-m.png +0 -0
  281. data/lib/table_beet/formatters/html_template/data/images/social-icons/zerply-s.png +0 -0
  282. data/lib/table_beet/formatters/html_template/data/images/social-icons/zerply.png +0 -0
  283. data/lib/table_beet/formatters/html_template/data/images/social-icons/zerply.svg +20 -0
  284. data/lib/table_beet/formatters/html_template/data/js/groundwork.js +847 -0
  285. data/lib/table_beet/formatters/html_template/data/js/jquery.quicksearch.js +181 -0
  286. data/lib/table_beet/formatters/html_template/data/js/libs/boxsizing.htc +501 -0
  287. data/lib/table_beet/formatters/html_template/data/js/libs/html5shiv.js +299 -0
  288. data/lib/table_beet/formatters/html_template/data/js/libs/html5shiv.min.js +8 -0
  289. data/lib/table_beet/formatters/html_template/data/js/libs/jquery-1.8.2.min.js +2 -0
  290. data/lib/table_beet/formatters/html_template/data/js/libs/modernizr-2.6.2.min.js +4 -0
  291. data/lib/table_beet/formatters/html_template/data/js/libs/placeholder_polyfill.jquery.js +212 -0
  292. data/lib/table_beet/formatters/html_template/data/js/plugins/coffee/jquery.modals.coffee +162 -0
  293. data/lib/table_beet/formatters/html_template/data/js/plugins/coffee/jquery.popover.coffee +198 -0
  294. data/lib/table_beet/formatters/html_template/data/js/plugins/coffee/jquery.popover.js +10 -0
  295. data/lib/table_beet/formatters/html_template/data/js/plugins/coffee/jquery.responsiveTables.coffee +56 -0
  296. data/lib/table_beet/formatters/html_template/data/js/plugins/coffee/jquery.responsiveTables.js +10 -0
  297. data/lib/table_beet/formatters/html_template/data/js/plugins/coffee/jquery.responsiveText.coffee +32 -0
  298. data/lib/table_beet/formatters/html_template/data/js/plugins/coffee/jquery.responsiveText.js +10 -0
  299. data/lib/table_beet/formatters/html_template/data/js/plugins/coffee/jquery.tooltip.coffee +121 -0
  300. data/lib/table_beet/formatters/html_template/data/js/plugins/coffee/jquery.tooltip.js +10 -0
  301. data/lib/table_beet/formatters/html_template/data/js/plugins/jquery.modals.js +185 -0
  302. data/lib/table_beet/formatters/html_template/data/js/plugins/jquery.orbit-1.4.0.js +919 -0
  303. data/lib/table_beet/formatters/html_template/data/js/plugins/jquery.popover.js +206 -0
  304. data/lib/table_beet/formatters/html_template/data/js/plugins/jquery.responsiveTables.js +63 -0
  305. data/lib/table_beet/formatters/html_template/data/js/plugins/jquery.responsiveText.js +45 -0
  306. data/lib/table_beet/formatters/html_template/data/js/plugins/jquery.tooltip.js +118 -0
  307. data/lib/table_beet/formatters/html_template/index.erb +147 -0
  308. data/lib/table_beet/formatters/oneline_formatter.rb +17 -0
  309. data/lib/table_beet/formatters/text_formatter.rb +19 -0
  310. data/lib/table_beet/loader.rb +39 -0
  311. data/lib/table_beet/reporter.rb +35 -0
  312. data/lib/table_beet/runner.rb +25 -0
  313. data/lib/table_beet/step.rb +27 -0
  314. data/lib/table_beet/version.rb +5 -0
  315. data/lib/table_beet/world.rb +42 -0
  316. data/spec/fixtures/steps/global_steps.rb +9 -0
  317. data/spec/fixtures/steps/test_steps.rb +24 -0
  318. data/spec/formatters/html_formatter_spec.rb +48 -0
  319. data/spec/loader_spec.rb +62 -0
  320. data/spec/spec_helper.rb +33 -0
  321. data/spec/step_spec.rb +29 -0
  322. data/spec/world_spec.rb +31 -0
  323. data/table_beet.gemspec +29 -0
  324. metadata +485 -0
@@ -0,0 +1,162 @@
1
+ ###
2
+ *
3
+ * jQuery Modals by Gary Hepting
4
+ * https://github.com/ghepting/modal
5
+ *
6
+ * Based on Avgrund by Hakim El Hattab <3
7
+ *
8
+ ###
9
+
10
+ (($) ->
11
+
12
+ # setup iframe modal
13
+ if $('div#iframeModal').length < 1
14
+ $('body').append('<div class="iframe modal" id="iframeModal"><iframe marginheight="0" marginwidth="0" frameborder="0"></iframe></div>')
15
+ $('div#iframeModal').prepend('<i class="close icon-remove"></i>').prepend('<i class="fullscreen icon-resize-full"></i>')
16
+ $('a.modal').each ->
17
+ $(this).attr('data-url',$(this).attr('href'))
18
+ $(this).attr('href','#iframeModal')
19
+ # bind external modal links to iframe modal
20
+ $('a.modal').on "click", (e) ->
21
+ $('div#iframeModal iframe').replaceWith('<iframe marginheight="0" marginwidth="0" frameborder="0" width="100%" height="100%" src="'+$(this).attr('data-url')+'"></iframe>')
22
+ e.preventDefault()
23
+ false
24
+
25
+ elems = []
26
+ $.fn.modal = ->
27
+
28
+ @each ->
29
+ $(this).not('#iframeModal').wrapInner('<div class="modal-content"></div>')
30
+ $(this).prepend('<i class="close icon-remove"></i>').prepend('<i class="fullscreen icon-resize-full"></i>').appendTo('body')
31
+ # bind each modal link to a modal
32
+ $('[href=#'+$(this).attr('id')+']').on "click", (e) ->
33
+ modals.open($(this).attr('href'))
34
+ e.preventDefault()
35
+ return false
36
+
37
+ # close button
38
+ $('div.modal .close').on "click", ->
39
+ modals.close()
40
+ # fullscreen button
41
+ $('div.modal .fullscreen').on "click", ->
42
+ modals.fullscreen($(this).parent('div.modal'))
43
+
44
+ modals = (->
45
+
46
+ # ready state
47
+ $('html').addClass('modal-ready')
48
+
49
+ # create overlay
50
+ if $("#overlay").length < 1
51
+ $('body').append('<div id="overlay"></div>')
52
+
53
+ # bind overlay to close
54
+ $('#overlay, div.modal .close').bind "click", (e) ->
55
+ close()
56
+
57
+ open = (elem) ->
58
+ # bind esc key
59
+ $(window).bind "keydown", (e) ->
60
+ keyCode = (if (e.which) then e.which else e.keyCode)
61
+ if keyCode is 27
62
+ close()
63
+ $(elem).addClass("active")
64
+ unless $(elem).hasClass('iframe')
65
+ $(elem).css
66
+ width: 'auto',
67
+ height: 'auto'
68
+ $(elem).css
69
+ height: $(elem).outerHeight(),
70
+ $(elem).css
71
+ top: '50%',
72
+ left: '50%',
73
+ 'margin-top': ($(elem).outerHeight() / -2) + 'px',
74
+ 'margin-left': ($(elem).outerWidth() / -2) + 'px'
75
+ setTimeout ->
76
+ $('html').addClass("modal-active")
77
+ , 0
78
+ setTimeout ->
79
+ $('html').removeClass('modal-ready')
80
+ , 400
81
+ return
82
+
83
+ close = ->
84
+ modal = $('div.modal.active')
85
+ $(window).unbind "keydown"
86
+ $('html').removeClass("modal-active").addClass('modal-ready')
87
+ if modal.hasClass('iframe')
88
+ $('div#iframeModal iframe').replaceWith('<iframe marginheight="0" marginwidth="0" frameborder="0"></iframe>')
89
+ modal.css
90
+ width: '80%',
91
+ height: '80%'
92
+ else
93
+ modal.css
94
+ width: 'auto',
95
+ height: 'auto'
96
+ modal.css
97
+ top: '10%',
98
+ left: '10%',
99
+ 'max-width': '80%',
100
+ 'max-height': '80%',
101
+ 'margin-top': 0,
102
+ 'margin-left': 0
103
+ modal.removeClass("active").removeClass("fullscreen")
104
+ $('i.fullscreen', modal).removeClass('icon-resize-small').addClass('icon-resize-full')
105
+ return
106
+
107
+ fullscreen = (elem) ->
108
+ if $('div.modal.active').hasClass('fullscreen')
109
+ $('div.modal i.fullscreen').removeClass('icon-resize-small').addClass('icon-resize-full')
110
+ if $('div.modal.active').hasClass('iframe')
111
+ $('div.modal.active').css
112
+ width: '80%',
113
+ height: '80%'
114
+ else
115
+ $('div.modal.active').css
116
+ width: 'auto',
117
+ height: 'auto'
118
+ $('div.modal.active').css
119
+ height: $('div.modal.active').outerHeight()
120
+ $('div.modal.active').removeClass('fullscreen').css
121
+ 'max-width': '80%',
122
+ 'max-height': '80%'
123
+ $('div.modal.active').delay(100).css
124
+ top: '50%',
125
+ left: '50%',
126
+ 'margin-top': ($('div.modal.active').outerHeight() / -2) + 'px',
127
+ 'margin-left': ($('div.modal.active').outerWidth() / -2) + 'px'
128
+ else
129
+ $('div.modal i.fullscreen').addClass('icon-resize-small').removeClass('icon-resize-full')
130
+ $('div.modal.active').addClass('fullscreen').css
131
+ top: 0,
132
+ left: 0,
133
+ 'margin-top': 0,
134
+ 'margin-left': 0,
135
+ width: '100%',
136
+ height: '100%',
137
+ 'max-width': '100%',
138
+ 'max-height': '100%'
139
+ return
140
+
141
+ open: open
142
+ close: close
143
+ fullscreen: fullscreen
144
+ )()
145
+
146
+ $(window).resize ->
147
+ $('div.modal.active').each ->
148
+ unless $(this).hasClass('fullscreen')
149
+ $(this).removeClass('active').css(
150
+ top: '50%',
151
+ left: '50%',
152
+ 'margin-top': ($(this).outerHeight() / -2) + 'px',
153
+ 'margin-left': ($(this).outerWidth() / -2) + 'px'
154
+ ).addClass('active')
155
+ unless $(this).hasClass('iframe')
156
+ $(this).css
157
+ height: 'auto'
158
+ $(this).css
159
+ height: $(this).outerHeight()
160
+
161
+
162
+ ) jQuery
@@ -0,0 +1,198 @@
1
+ ###
2
+ *
3
+ * jQuery Popovers by Gary Hepting - https://github.com/ghepting/jquery-popovers
4
+ *
5
+ * Open source under the BSD License.
6
+ *
7
+ * Copyright © 2013 Gary Hepting. All rights reserved.
8
+ *
9
+ ###
10
+
11
+ (($) ->
12
+ $.fn.popover = (options) ->
13
+ defaults =
14
+ hover: false # show popovers on hover
15
+ click: true # show popovers on click
16
+ resize: true # resize popovers on window resize/orientation change
17
+ scroll: true # reposition popovers on scroll
18
+ topOffset: 0 # top offset (accomodate for fixed navigation, etc.)
19
+ delay: 500 # delay before hiding (ms)
20
+ speed: 100 # animation speed (ms)
21
+
22
+ options = $.extend(defaults, options)
23
+
24
+ popover = $('#popover') # popover element
25
+ delayHide = '' # delay
26
+ delayAdjust = '' # delay
27
+ trigger = '' # trigger element
28
+
29
+ # get element position relative to the viewport
30
+ getElementPosition = (el) ->
31
+ offset = el.offset()
32
+ win = $(window)
33
+ top: top = offset.top - win.scrollTop()
34
+ left: left = offset.left - win.scrollLeft()
35
+ bottom: bottom = win.height() - top - el.outerHeight()
36
+ right: right = win.width() - left - el.outerWidth()
37
+
38
+ resetPopover = (resize) ->
39
+ popover.css
40
+ top: 'auto'
41
+ right: 'auto'
42
+ bottom: 'auto'
43
+ left: 'auto'
44
+ if resize
45
+ popover.css
46
+ width: 'auto'
47
+ popover.removeClass('top')
48
+ popover.removeClass('right')
49
+ popover.removeClass('bottom')
50
+ popover.removeClass('left')
51
+
52
+ setPosition = (trigger, skipAnimation, resize) ->
53
+ if trigger
54
+ if resize
55
+ resetPopover(true)
56
+ else
57
+ resetPopover()
58
+ # get trigger element coordinates
59
+ coords = getElementPosition(trigger)
60
+ # popover dimensions
61
+ if popover.outerWidth() > ($(window).width() - 20)
62
+ popover.css('width',$(window).width() - 20)
63
+ # adjust max width of popover
64
+ popover.css('max-width',
65
+ Math.min(
66
+ ($(window).width()-parseInt($('body').css('padding-left'))-parseInt($('body').css('padding-right'))),
67
+ parseInt(popover.css('max-width'))
68
+ )
69
+ )
70
+ width = popover.outerWidth()
71
+ height = popover.outerHeight()
72
+ # horizontal positioning
73
+ attrs = {}
74
+ if coords.left <= coords.right # default position
75
+ popover.addClass('left')
76
+ attrs.left = coords.left
77
+ else # pin from right side
78
+ popover.addClass('right')
79
+ attrs.right = coords.right
80
+ # veritcal positioning
81
+ if (coords.top-options.topOffset) > (height+20) # top positioned popover
82
+ popover.addClass('top')
83
+ attrs.top = trigger.offset().top - height - 20
84
+ else # bottom positioned popover
85
+ popover.addClass('bottom')
86
+ attrs.top = trigger.offset().top + 15
87
+ popover.css attrs
88
+ # compensate for adjustment normally made by animation in init_popover()
89
+ if skipAnimation
90
+ popover.css
91
+ top: '+=10'
92
+
93
+ closePopover = ->
94
+ $('.popover-trigger').removeClass('popover-trigger')
95
+ popover.removeClass('sticky').remove()
96
+
97
+ showPopover = (e) ->
98
+ trigger = $(e.target) # trigger element
99
+ if !trigger.hasClass('popover-trigger')
100
+ closePopover() # close popover
101
+ trigger.addClass('popover-trigger')
102
+ # set popover content
103
+ tip = $('#'+trigger.attr('data-content')).html()
104
+ popover = $("<div id=\"popover\"></div>") # create popover DOM element
105
+ return false if not tip or tip is ""
106
+ # remove title to avoid overlapping default tooltips
107
+ trigger.removeAttr "title"
108
+ # add popover element to DOM
109
+ popover.css("opacity", 0).html(tip).appendTo "body"
110
+ # initialize popover
111
+ setPosition(trigger)
112
+ popover.animate
113
+ top: "+=10"
114
+ opacity: 1
115
+ , options.speed
116
+
117
+ # popover click
118
+ popover.bind "click", (e) ->
119
+ if(e.target.tagName != 'a')
120
+ popover.addClass('sticky')
121
+ e.stopPropagation()
122
+ e.preventDefault()
123
+ false
124
+
125
+ # close button click
126
+ popover.find('.close').bind "click", (e) ->
127
+ $('.popover-trigger').removeClass('popover-trigger')
128
+ popover.removeClass('sticky').remove()
129
+ e.stopPropagation()
130
+ e.preventDefault()
131
+ false
132
+
133
+ # hover into the popover
134
+ popover.bind
135
+ mouseenter: ->
136
+ # cancel closing popover
137
+ clearTimeout(delayHide)
138
+ mouseleave: ->
139
+ if(!popover.hasClass('sticky'))
140
+ # close popover on a delay if it's not sticky
141
+ delayHide = setTimeout (->
142
+ $('.popover-trigger').removeClass('popover-trigger')
143
+ popover.removeClass('sticky').remove()
144
+ ), 500
145
+
146
+
147
+ @each ->
148
+ $this = $(this)
149
+
150
+ if options.hover
151
+ # hover on trigger element
152
+ $this.bind
153
+ mouseenter: (e) ->
154
+ trigger = $(e.target)
155
+ clearTimeout(delayHide) # cancel delayed close
156
+ if(!$this.hasClass('popover-trigger') && !popover.hasClass('sticky'))
157
+ showPopover(e) # show popover
158
+ mouseleave: ->
159
+ if(!popover.hasClass('sticky'))
160
+ # delay closing popover
161
+ delayHide = setTimeout ->
162
+ closePopover() #close popover
163
+ , options.delay
164
+
165
+ if options.click
166
+ # click trigger element
167
+ $this.bind "click", (e) ->
168
+ trigger = $(e.target)
169
+ if(!trigger.hasClass('popover-trigger'))
170
+ closePopover() #close popover
171
+ showPopover(e) # show popover
172
+ popover.addClass('sticky') # make popover sticky
173
+ e.preventDefault()
174
+ e.stopPropagation()
175
+ false
176
+
177
+ if options.resize
178
+ # handle viewport resize
179
+ $(window).resize ->
180
+ clearTimeout(delayAdjust) # cancel delayed adjustment
181
+ # attempt to wait until user finishes resizing the window
182
+ delayAdjust = setTimeout ->
183
+ setPosition(trigger, true, true)
184
+ , 100
185
+
186
+ if options.scroll
187
+ # handle window scroll
188
+ $(window).scroll ->
189
+ setPosition(trigger, true)
190
+
191
+ # close popover on body click
192
+ $('html, body').bind "click", (e) ->
193
+ $('.popover-trigger').removeClass('popover-trigger')
194
+ popover.removeClass('sticky').remove()
195
+
196
+
197
+
198
+ ) jQuery
@@ -0,0 +1,10 @@
1
+ // Generated by CoffeeScript 1.4.0
2
+ /*
3
+ *
4
+ * jQuery Popovers by Gary Hepting - https://github.com/ghepting/jquery-popovers
5
+ *
6
+ * Open source under the BSD License.
7
+ *
8
+ * Copyright © 2013 Gary Hepting. All rights reserved.
9
+ *
10
+ */(function(){(function(e){return e.fn.popover=function(t){var n,r,i,s,o,u,a,f,l,c;r={hover:!1,click:!0,resize:!0,scroll:!0,topOffset:0,delay:500,speed:100};t=e.extend(r,t);u=e("#popover");s="";i="";c="";o=function(t){var n,r,i,s,o,u;i=t.offset();u=e(window);return{top:o=i.top-u.scrollTop(),left:r=i.left-u.scrollLeft(),bottom:n=u.height()-o-t.outerHeight(),right:s=u.width()-r-t.outerWidth()}};a=function(e){u.css({top:"auto",right:"auto",bottom:"auto",left:"auto"});e&&u.css({width:"auto"});u.removeClass("top");u.removeClass("right");u.removeClass("bottom");return u.removeClass("left")};f=function(n,r,i){var s,f,l,c;if(n){i?a(!0):a();f=o(n);u.outerWidth()>e(window).width()-20&&u.css("width",e(window).width()-20);u.css("max-width",Math.min(e(window).width()-parseInt(e("body").css("padding-left"))-parseInt(e("body").css("padding-right")),parseInt(u.css("max-width"))));c=u.outerWidth();l=u.outerHeight();s={};if(f.left<=f.right){u.addClass("left");s.left=f.left}else{u.addClass("right");s.right=f.right}if(f.top-t.topOffset>l+20){u.addClass("top");s.top=n.offset().top-l-20}else{u.addClass("bottom");s.top=n.offset().top+15}u.css(s);if(r)return u.css({top:"+=10"})}};n=function(){e(".popover-trigger").removeClass("popover-trigger");return u.removeClass("sticky").remove()};l=function(r){var i;c=e(r.target);if(!c.hasClass("popover-trigger")){n();c.addClass("popover-trigger")}i=e("#"+c.attr("data-content")).html();u=e('<div id="popover"></div>');if(!i||i==="")return!1;c.removeAttr("title");u.css("opacity",0).html(i).appendTo("body");f(c);u.animate({top:"+=10",opacity:1},t.speed);u.bind("click",function(e){if(e.target.tagName!=="a"){u.addClass("sticky");e.stopPropagation();e.preventDefault();return!1}});u.find(".close").bind("click",function(t){e(".popover-trigger").removeClass("popover-trigger");u.removeClass("sticky").remove();t.stopPropagation();t.preventDefault();return!1});return u.bind({mouseenter:function(){return clearTimeout(s)},mouseleave:function(){if(!u.hasClass("sticky"))return s=setTimeout(function(){e(".popover-trigger").removeClass("popover-trigger");return u.removeClass("sticky").remove()},500)}})};return this.each(function(){var r;r=e(this);t.hover&&r.bind({mouseenter:function(t){c=e(t.target);clearTimeout(s);if(!r.hasClass("popover-trigger")&&!u.hasClass("sticky"))return l(t)},mouseleave:function(){if(!u.hasClass("sticky"))return s=setTimeout(function(){return n()},t.delay)}});t.click&&r.bind("click",function(t){c=e(t.target);if(!c.hasClass("popover-trigger")){n();l(t)}u.addClass("sticky");t.preventDefault();t.stopPropagation();return!1});t.resize&&e(window).resize(function(){clearTimeout(i);return i=setTimeout(function(){return f(c,!0,!0)},100)});t.scroll&&e(window).scroll(function(){return f(c,!0)});return e("html, body").bind("click",function(t){e(".popover-trigger").removeClass("popover-trigger");return u.removeClass("sticky").remove()})})}})(jQuery)}).call(this);
@@ -0,0 +1,56 @@
1
+ ###
2
+ *
3
+ * jQuery ResponsiveTables by Gary Hepting - https://github.com/ghepting/responsiveTables
4
+ *
5
+ * Open source under the BSD License.
6
+ *
7
+ * Copyright © 2013 Gary Hepting. All rights reserved.
8
+ *
9
+ ###
10
+
11
+ (($) ->
12
+ elems = []
13
+ $.fn.responsiveTable = (options) ->
14
+ settings =
15
+ compressor: options.compressor or 10
16
+ minSize: options.minSize or Number.NEGATIVE_INFINITY
17
+ maxSize: options.maxSize or Number.POSITIVE_INFINITY
18
+ padding: 2
19
+ height: "auto" # '100%' will fit tables (and containers) to viewport height as well
20
+ adjust_parents: true # if height specified, force parent elements to be height 100%
21
+
22
+ @each ->
23
+ elem = $(this)
24
+ elem.attr('data-compression',settings.compressor)
25
+ elem.attr('data-min',settings.minSize)
26
+ elem.attr('data-max',settings.maxSize)
27
+ elem.attr('data-padding',settings.padding)
28
+ # count columns
29
+ columns = $("tr", elem).first().children("th, td").length
30
+ # count rows
31
+ rows = $("tr", elem).length
32
+ unless settings.height is "auto"
33
+ # set height of table
34
+ $this.css "height", settings.height
35
+ # set height of each parent of table
36
+ if settings.adjust_parents
37
+ $this.parents().each ->
38
+ $(this).css "height", "100%"
39
+ # set column widths
40
+ $("tr th, tr td", elem).css "width", Math.floor(100 / columns) + "%"
41
+ # set row heights
42
+ $("tr th, tr td", elem).css "height", Math.floor(100 / rows) + "%"
43
+ # set cell font sizes
44
+ fontSize = Math.floor(Math.max(Math.min((elem.width() / (settings.compressor)), parseFloat(settings.maxSize)), parseFloat(settings.minSize)))
45
+ $("tr th, tr td", elem).css "font-size", fontSize + "px"
46
+ #
47
+ elems.push elem
48
+
49
+ $(window).on "resize", ->
50
+ $(elems).each ->
51
+ elem = $(this)
52
+ # set cell font sizes
53
+ fontSize = Math.floor(Math.max(Math.min((elem.width() / (elem.attr('data-compression'))), parseFloat(elem.attr('data-max'))), parseFloat(elem.attr('data-min'))))
54
+ $("tr th, tr td", elem).css "font-size", fontSize + "px"
55
+
56
+ ) jQuery
@@ -0,0 +1,10 @@
1
+ // Generated by CoffeeScript 1.4.0
2
+ /*
3
+ *
4
+ * jQuery ResponsiveTables by Gary Hepting - https://github.com/ghepting/responsiveTables
5
+ *
6
+ * Open source under the BSD License.
7
+ *
8
+ * Copyright © 2013 Gary Hepting. All rights reserved.
9
+ *
10
+ */(function(){(function(e){var t;t=[];e.fn.responsiveTable=function(n){var r;r={compressor:n.compressor||10,minSize:n.minSize||Number.NEGATIVE_INFINITY,maxSize:n.maxSize||Number.POSITIVE_INFINITY,padding:2,height:"auto",adjust_parents:!0};return this.each(function(){var n,i,s,o;i=e(this);i.attr("data-compression",r.compressor);i.attr("data-min",r.minSize);i.attr("data-max",r.maxSize);i.attr("data-padding",r.padding);n=e("tr",i).first().children("th, td").length;o=e("tr",i).length;if(r.height!=="auto"){$this.css("height",r.height);r.adjust_parents&&$this.parents().each(function(){return e(this).css("height","100%")})}e("tr th, tr td",i).css("width",Math.floor(100/n)+"%");e("tr th, tr td",i).css("height",Math.floor(100/o)+"%");s=Math.floor(Math.max(Math.min(i.width()/r.compressor,parseFloat(r.maxSize)),parseFloat(r.minSize)));e("tr th, tr td",i).css("font-size",s+"px");return t.push(i)})};return e(window).on("resize",function(){return e(t).each(function(){var t,n;t=e(this);n=Math.floor(Math.max(Math.min(t.width()/t.attr("data-compression"),parseFloat(t.attr("data-max"))),parseFloat(t.attr("data-min"))));return e("tr th, tr td",t).css("font-size",n+"px")})})})(jQuery)}).call(this);
@@ -0,0 +1,32 @@
1
+ ###
2
+ *
3
+ * jQuery ResponsiveText by Gary Hepting - https://github.com/ghepting/responsiveText
4
+ *
5
+ * Open source under the BSD License.
6
+ *
7
+ * Copyright © 2013 Gary Hepting. All rights reserved.
8
+ *
9
+ ###
10
+
11
+ (($) ->
12
+ elems = []
13
+ $.fn.responsiveText = (options) ->
14
+ settings =
15
+ compressor: options.compressor or 10
16
+ minSize: options.minSize or Number.NEGATIVE_INFINITY
17
+ maxSize: options.maxSize or Number.POSITIVE_INFINITY
18
+
19
+ @each ->
20
+ elem = $(this)
21
+ elem.attr('data-compression',settings.compressor)
22
+ elem.attr('data-min',settings.minSize)
23
+ elem.attr('data-max',settings.maxSize)
24
+ elem.css "font-size", Math.floor(Math.max(Math.min(elem.width() / (settings.compressor), parseFloat(settings.maxSize)), parseFloat(settings.minSize)))
25
+ elems.push elem
26
+
27
+ $(window).on "resize", ->
28
+ $(elems).each ->
29
+ elem = $(this)
30
+ elem.css "font-size", Math.floor(Math.max(Math.min(elem.width() / (elem.attr('data-compression')), parseFloat(elem.attr('data-max'))), parseFloat(elem.attr('data-min'))))
31
+
32
+ ) jQuery