easy_html_creator 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -2
  3. data/README.md +10 -0
  4. data/dev_root/demo-website/index.haml +52 -0
  5. data/dev_root/shared/helper/shared_helper.rb +8 -0
  6. data/lib/ehc_command_tasks.rb +2 -2
  7. data/lib/generator/base.rb +47 -0
  8. data/lib/generator/coffee_generator.rb +24 -17
  9. data/lib/generator/generator.rb +18 -12
  10. data/lib/generator/haml_generator.rb +36 -27
  11. data/lib/generator/helper/activesupport_override.rb +0 -4
  12. data/lib/generator/helper/asset_helper.rb +63 -0
  13. data/lib/generator/sass_generator.rb +29 -18
  14. data/lib/generator/structure_generator.rb +18 -17
  15. data/lib/server/dispatcher.rb +31 -17
  16. data/lib/server/response.rb +19 -17
  17. data/lib/server/server.rb +6 -6
  18. metadata +62 -245
  19. data/dev_root/demo-website-offline/coffee/test.coffee +0 -28
  20. data/dev_root/demo-website-offline/helper/test_helper.rb +0 -5
  21. data/dev_root/demo-website-offline/index.haml +0 -109
  22. data/dev_root/demo-website-offline/layout.haml +0 -13
  23. data/dev_root/demo-website-offline/partials/_assets.javascripts.haml +0 -7
  24. data/dev_root/demo-website-offline/partials/_assets.metadata.haml +0 -12
  25. data/dev_root/demo-website-offline/partials/_assets.stylesheets.haml +0 -4
  26. data/dev_root/demo-website-offline/partials/_footer.haml +0 -5
  27. data/dev_root/demo-website-offline/partials/_header.haml +0 -27
  28. data/dev_root/demo-website-offline/public/bower.json +0 -21
  29. data/dev_root/demo-website-offline/public/bower_components/bootstrap/Gruntfile.js +0 -509
  30. data/dev_root/demo-website-offline/public/bower_components/bootstrap/LICENSE +0 -21
  31. data/dev_root/demo-website-offline/public/bower_components/bootstrap/README.md +0 -132
  32. data/dev_root/demo-website-offline/public/bower_components/bootstrap/bower.json +0 -38
  33. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/css/bootstrap-theme.css +0 -476
  34. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/css/bootstrap-theme.css.map +0 -1
  35. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/css/bootstrap-theme.min.css +0 -5
  36. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/css/bootstrap.css +0 -6566
  37. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/css/bootstrap.css.map +0 -1
  38. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/css/bootstrap.min.css +0 -5
  39. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  40. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.svg +0 -288
  41. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  42. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  43. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 +0 -0
  44. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/js/bootstrap.js +0 -2306
  45. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/js/bootstrap.min.js +0 -7
  46. data/dev_root/demo-website-offline/public/bower_components/bootstrap/dist/js/npm.js +0 -13
  47. data/dev_root/demo-website-offline/public/bower_components/bootstrap/fonts/glyphicons-halflings-regular.eot +0 -0
  48. data/dev_root/demo-website-offline/public/bower_components/bootstrap/fonts/glyphicons-halflings-regular.svg +0 -288
  49. data/dev_root/demo-website-offline/public/bower_components/bootstrap/fonts/glyphicons-halflings-regular.ttf +0 -0
  50. data/dev_root/demo-website-offline/public/bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff +0 -0
  51. data/dev_root/demo-website-offline/public/bower_components/bootstrap/fonts/glyphicons-halflings-regular.woff2 +0 -0
  52. data/dev_root/demo-website-offline/public/bower_components/bootstrap/grunt/bs-commonjs-generator.js +0 -23
  53. data/dev_root/demo-website-offline/public/bower_components/bootstrap/grunt/bs-glyphicons-data-generator.js +0 -41
  54. data/dev_root/demo-website-offline/public/bower_components/bootstrap/grunt/bs-lessdoc-parser.js +0 -238
  55. data/dev_root/demo-website-offline/public/bower_components/bootstrap/grunt/bs-raw-files-generator.js +0 -46
  56. data/dev_root/demo-website-offline/public/bower_components/bootstrap/grunt/configBridge.json +0 -45
  57. data/dev_root/demo-website-offline/public/bower_components/bootstrap/grunt/sauce_browsers.yml +0 -82
  58. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/affix.js +0 -162
  59. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/alert.js +0 -94
  60. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/button.js +0 -116
  61. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/carousel.js +0 -237
  62. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/collapse.js +0 -211
  63. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/dropdown.js +0 -161
  64. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/modal.js +0 -324
  65. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/popover.js +0 -113
  66. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/scrollspy.js +0 -175
  67. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/tab.js +0 -153
  68. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/tooltip.js +0 -472
  69. data/dev_root/demo-website-offline/public/bower_components/bootstrap/js/transition.js +0 -59
  70. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/alerts.less +0 -73
  71. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/badges.less +0 -65
  72. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/bootstrap.less +0 -50
  73. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/breadcrumbs.less +0 -26
  74. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/button-groups.less +0 -243
  75. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/buttons.less +0 -160
  76. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/carousel.less +0 -269
  77. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/close.less +0 -34
  78. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/code.less +0 -69
  79. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/component-animations.less +0 -34
  80. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/dropdowns.less +0 -214
  81. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/forms.less +0 -566
  82. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/glyphicons.less +0 -301
  83. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/grid.less +0 -84
  84. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/input-groups.less +0 -166
  85. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/jumbotron.less +0 -50
  86. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/labels.less +0 -64
  87. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/list-group.less +0 -124
  88. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/media.less +0 -61
  89. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins.less +0 -39
  90. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/alerts.less +0 -14
  91. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/background-variant.less +0 -8
  92. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/border-radius.less +0 -18
  93. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/buttons.less +0 -52
  94. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/center-block.less +0 -7
  95. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/clearfix.less +0 -22
  96. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/forms.less +0 -85
  97. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/gradients.less +0 -59
  98. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/grid-framework.less +0 -91
  99. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/grid.less +0 -122
  100. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/hide-text.less +0 -21
  101. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/image.less +0 -33
  102. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/labels.less +0 -12
  103. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/list-group.less +0 -29
  104. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/nav-divider.less +0 -10
  105. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/nav-vertical-align.less +0 -9
  106. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/opacity.less +0 -8
  107. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/pagination.less +0 -23
  108. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/panels.less +0 -24
  109. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/progress-bar.less +0 -10
  110. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/reset-filter.less +0 -8
  111. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/resize.less +0 -6
  112. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/responsive-visibility.less +0 -15
  113. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/size.less +0 -10
  114. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/tab-focus.less +0 -9
  115. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/table-row.less +0 -28
  116. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/text-emphasis.less +0 -8
  117. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/text-overflow.less +0 -8
  118. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/mixins/vendor-prefixes.less +0 -227
  119. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/modals.less +0 -148
  120. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/navbar.less +0 -661
  121. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/navs.less +0 -244
  122. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/normalize.less +0 -427
  123. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/pager.less +0 -54
  124. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/pagination.less +0 -88
  125. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/panels.less +0 -265
  126. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/popovers.less +0 -135
  127. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/print.less +0 -107
  128. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/progress-bars.less +0 -87
  129. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/responsive-embed.less +0 -35
  130. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/responsive-utilities.less +0 -194
  131. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/scaffolding.less +0 -150
  132. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/tables.less +0 -234
  133. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/theme.less +0 -273
  134. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/thumbnails.less +0 -36
  135. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/tooltip.less +0 -103
  136. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/type.less +0 -302
  137. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/utilities.less +0 -56
  138. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/variables.less +0 -857
  139. data/dev_root/demo-website-offline/public/bower_components/bootstrap/less/wells.less +0 -29
  140. data/dev_root/demo-website-offline/public/bower_components/bootstrap/package.json +0 -83
  141. data/dev_root/demo-website-offline/public/bower_components/html5shiv/Gruntfile.js +0 -61
  142. data/dev_root/demo-website-offline/public/bower_components/html5shiv/bower.json +0 -15
  143. data/dev_root/demo-website-offline/public/bower_components/html5shiv/dist/html5shiv-printshiv.js +0 -520
  144. data/dev_root/demo-website-offline/public/bower_components/html5shiv/dist/html5shiv-printshiv.min.js +0 -4
  145. data/dev_root/demo-website-offline/public/bower_components/html5shiv/dist/html5shiv.js +0 -322
  146. data/dev_root/demo-website-offline/public/bower_components/html5shiv/dist/html5shiv.min.js +0 -4
  147. data/dev_root/demo-website-offline/public/bower_components/html5shiv/package.json +0 -16
  148. data/dev_root/demo-website-offline/public/bower_components/html5shiv/readme.md +0 -152
  149. data/dev_root/demo-website-offline/public/bower_components/jquery/MIT-LICENSE.txt +0 -21
  150. data/dev_root/demo-website-offline/public/bower_components/jquery/bower.json +0 -27
  151. data/dev_root/demo-website-offline/public/bower_components/jquery/dist/jquery.js +0 -9205
  152. data/dev_root/demo-website-offline/public/bower_components/jquery/dist/jquery.min.js +0 -5
  153. data/dev_root/demo-website-offline/public/bower_components/jquery/dist/jquery.min.map +0 -1
  154. data/dev_root/demo-website-offline/public/bower_components/jquery/src/ajax.js +0 -786
  155. data/dev_root/demo-website-offline/public/bower_components/jquery/src/ajax/jsonp.js +0 -89
  156. data/dev_root/demo-website-offline/public/bower_components/jquery/src/ajax/load.js +0 -75
  157. data/dev_root/demo-website-offline/public/bower_components/jquery/src/ajax/parseJSON.js +0 -13
  158. data/dev_root/demo-website-offline/public/bower_components/jquery/src/ajax/parseXML.js +0 -28
  159. data/dev_root/demo-website-offline/public/bower_components/jquery/src/ajax/script.js +0 -64
  160. data/dev_root/demo-website-offline/public/bower_components/jquery/src/ajax/var/nonce.js +0 -5
  161. data/dev_root/demo-website-offline/public/bower_components/jquery/src/ajax/var/rquery.js +0 -3
  162. data/dev_root/demo-website-offline/public/bower_components/jquery/src/ajax/xhr.js +0 -136
  163. data/dev_root/demo-website-offline/public/bower_components/jquery/src/attributes.js +0 -11
  164. data/dev_root/demo-website-offline/public/bower_components/jquery/src/attributes/attr.js +0 -141
  165. data/dev_root/demo-website-offline/public/bower_components/jquery/src/attributes/classes.js +0 -158
  166. data/dev_root/demo-website-offline/public/bower_components/jquery/src/attributes/prop.js +0 -94
  167. data/dev_root/demo-website-offline/public/bower_components/jquery/src/attributes/support.js +0 -35
  168. data/dev_root/demo-website-offline/public/bower_components/jquery/src/attributes/val.js +0 -161
  169. data/dev_root/demo-website-offline/public/bower_components/jquery/src/callbacks.js +0 -205
  170. data/dev_root/demo-website-offline/public/bower_components/jquery/src/core.js +0 -497
  171. data/dev_root/demo-website-offline/public/bower_components/jquery/src/core/access.js +0 -60
  172. data/dev_root/demo-website-offline/public/bower_components/jquery/src/core/init.js +0 -123
  173. data/dev_root/demo-website-offline/public/bower_components/jquery/src/core/parseHTML.js +0 -39
  174. data/dev_root/demo-website-offline/public/bower_components/jquery/src/core/ready.js +0 -97
  175. data/dev_root/demo-website-offline/public/bower_components/jquery/src/core/var/rsingleTag.js +0 -4
  176. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css.js +0 -450
  177. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/addGetHookIf.js +0 -22
  178. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/curCSS.js +0 -57
  179. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/defaultDisplay.js +0 -70
  180. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/hiddenVisibleSelectors.js +0 -15
  181. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/support.js +0 -96
  182. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/swap.js +0 -28
  183. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/var/cssExpand.js +0 -3
  184. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/var/getStyles.js +0 -12
  185. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/var/isHidden.js +0 -13
  186. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/var/rmargin.js +0 -3
  187. data/dev_root/demo-website-offline/public/bower_components/jquery/src/css/var/rnumnonpx.js +0 -5
  188. data/dev_root/demo-website-offline/public/bower_components/jquery/src/data.js +0 -178
  189. data/dev_root/demo-website-offline/public/bower_components/jquery/src/data/Data.js +0 -181
  190. data/dev_root/demo-website-offline/public/bower_components/jquery/src/data/accepts.js +0 -20
  191. data/dev_root/demo-website-offline/public/bower_components/jquery/src/data/var/data_priv.js +0 -5
  192. data/dev_root/demo-website-offline/public/bower_components/jquery/src/data/var/data_user.js +0 -5
  193. data/dev_root/demo-website-offline/public/bower_components/jquery/src/deferred.js +0 -149
  194. data/dev_root/demo-website-offline/public/bower_components/jquery/src/deprecated.js +0 -13
  195. data/dev_root/demo-website-offline/public/bower_components/jquery/src/dimensions.js +0 -50
  196. data/dev_root/demo-website-offline/public/bower_components/jquery/src/effects.js +0 -648
  197. data/dev_root/demo-website-offline/public/bower_components/jquery/src/effects/Tween.js +0 -114
  198. data/dev_root/demo-website-offline/public/bower_components/jquery/src/effects/animatedSelector.js +0 -13
  199. data/dev_root/demo-website-offline/public/bower_components/jquery/src/event.js +0 -868
  200. data/dev_root/demo-website-offline/public/bower_components/jquery/src/event/ajax.js +0 -13
  201. data/dev_root/demo-website-offline/public/bower_components/jquery/src/event/alias.js +0 -39
  202. data/dev_root/demo-website-offline/public/bower_components/jquery/src/event/support.js +0 -9
  203. data/dev_root/demo-website-offline/public/bower_components/jquery/src/exports/amd.js +0 -24
  204. data/dev_root/demo-website-offline/public/bower_components/jquery/src/exports/global.js +0 -32
  205. data/dev_root/demo-website-offline/public/bower_components/jquery/src/intro.js +0 -44
  206. data/dev_root/demo-website-offline/public/bower_components/jquery/src/jquery.js +0 -37
  207. data/dev_root/demo-website-offline/public/bower_components/jquery/src/manipulation.js +0 -580
  208. data/dev_root/demo-website-offline/public/bower_components/jquery/src/manipulation/_evalUrl.js +0 -18
  209. data/dev_root/demo-website-offline/public/bower_components/jquery/src/manipulation/support.js +0 -32
  210. data/dev_root/demo-website-offline/public/bower_components/jquery/src/manipulation/var/rcheckableType.js +0 -3
  211. data/dev_root/demo-website-offline/public/bower_components/jquery/src/offset.js +0 -207
  212. data/dev_root/demo-website-offline/public/bower_components/jquery/src/outro.js +0 -1
  213. data/dev_root/demo-website-offline/public/bower_components/jquery/src/queue.js +0 -142
  214. data/dev_root/demo-website-offline/public/bower_components/jquery/src/queue/delay.js +0 -22
  215. data/dev_root/demo-website-offline/public/bower_components/jquery/src/selector-native.js +0 -172
  216. data/dev_root/demo-website-offline/public/bower_components/jquery/src/selector-sizzle.js +0 -14
  217. data/dev_root/demo-website-offline/public/bower_components/jquery/src/selector.js +0 -1
  218. data/dev_root/demo-website-offline/public/bower_components/jquery/src/serialize.js +0 -111
  219. data/dev_root/demo-website-offline/public/bower_components/jquery/src/sizzle/dist/sizzle.js +0 -2067
  220. data/dev_root/demo-website-offline/public/bower_components/jquery/src/sizzle/dist/sizzle.min.js +0 -3
  221. data/dev_root/demo-website-offline/public/bower_components/jquery/src/sizzle/dist/sizzle.min.map +0 -1
  222. data/dev_root/demo-website-offline/public/bower_components/jquery/src/traversing.js +0 -199
  223. data/dev_root/demo-website-offline/public/bower_components/jquery/src/traversing/findFilter.js +0 -100
  224. data/dev_root/demo-website-offline/public/bower_components/jquery/src/traversing/var/rneedsContext.js +0 -6
  225. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/arr.js +0 -3
  226. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/class2type.js +0 -4
  227. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/concat.js +0 -5
  228. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/hasOwn.js +0 -5
  229. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/indexOf.js +0 -5
  230. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/pnum.js +0 -3
  231. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/push.js +0 -5
  232. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/rnotwhite.js +0 -3
  233. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/slice.js +0 -5
  234. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/strundefined.js +0 -3
  235. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/support.js +0 -4
  236. data/dev_root/demo-website-offline/public/bower_components/jquery/src/var/toString.js +0 -5
  237. data/dev_root/demo-website-offline/public/bower_components/jquery/src/wrap.js +0 -79
  238. data/dev_root/demo-website-offline/public/bower_components/respond/Gruntfile.js +0 -90
  239. data/dev_root/demo-website-offline/public/bower_components/respond/LICENSE-MIT +0 -22
  240. data/dev_root/demo-website-offline/public/bower_components/respond/README.md +0 -114
  241. data/dev_root/demo-website-offline/public/bower_components/respond/bower.json +0 -10
  242. data/dev_root/demo-website-offline/public/bower_components/respond/cross-domain/example.html +0 -24
  243. data/dev_root/demo-website-offline/public/bower_components/respond/cross-domain/respond-proxy.html +0 -96
  244. data/dev_root/demo-website-offline/public/bower_components/respond/cross-domain/respond.proxy.gif +0 -0
  245. data/dev_root/demo-website-offline/public/bower_components/respond/cross-domain/respond.proxy.js +0 -127
  246. data/dev_root/demo-website-offline/public/bower_components/respond/dest/respond.matchmedia.addListener.min.js +0 -5
  247. data/dev_root/demo-website-offline/public/bower_components/respond/dest/respond.matchmedia.addListener.src.js +0 -273
  248. data/dev_root/demo-website-offline/public/bower_components/respond/dest/respond.min.js +0 -5
  249. data/dev_root/demo-website-offline/public/bower_components/respond/dest/respond.src.js +0 -224
  250. data/dev_root/demo-website-offline/public/bower_components/respond/package.json +0 -32
  251. data/dev_root/demo-website-offline/public/bower_components/respond/src/matchmedia.addListener.js +0 -76
  252. data/dev_root/demo-website-offline/public/bower_components/respond/src/matchmedia.polyfill.js +0 -36
  253. data/dev_root/demo-website-offline/public/bower_components/respond/src/respond.js +0 -341
  254. data/dev_root/demo-website-offline/public/fonts/OpenSans400.css +0 -64
  255. data/dev_root/demo-website-offline/public/fonts/OpenSans400italic.css +0 -64
  256. data/dev_root/demo-website-offline/public/fonts/OpenSans600.css +0 -64
  257. data/dev_root/demo-website-offline/public/images/easy-way.jpg +0 -0
  258. data/dev_root/demo-website-offline/public/robots.txt +0 -0
  259. data/dev_root/demo-website-offline/sass/main.sass +0 -44
@@ -1,4 +0,0 @@
1
- /**
2
- * @preserve HTML5 Shiv 3.7.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
3
- */
4
- !function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=y.elements;return"string"==typeof a?a.split(" "):a}function e(a,b){var c=y.elements;"string"!=typeof c&&(c=c.join(" ")),"string"!=typeof a&&(a=a.join(" ")),y.elements=c+" "+a,j(b)}function f(a){var b=x[a[v]];return b||(b={},w++,a[v]=w,x[w]=b),b}function g(a,c,d){if(c||(c=b),q)return c.createElement(a);d||(d=f(c));var e;return e=d.cache[a]?d.cache[a].cloneNode():u.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!e.canHaveChildren||t.test(a)||e.tagUrn?e:d.frag.appendChild(e)}function h(a,c){if(a||(a=b),q)return a.createDocumentFragment();c=c||f(a);for(var e=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)e.createElement(h[g]);return e}function i(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return y.shivMethods?g(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(y,b.frag)}function j(a){a||(a=b);var d=f(a);return!y.shivCSS||p||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),q||i(a,d),a}function k(a){for(var b,c=a.getElementsByTagName("*"),e=c.length,f=RegExp("^(?:"+d().join("|")+")$","i"),g=[];e--;)b=c[e],f.test(b.nodeName)&&g.push(b.applyElement(l(b)));return g}function l(a){for(var b,c=a.attributes,d=c.length,e=a.ownerDocument.createElement(A+":"+a.nodeName);d--;)b=c[d],b.specified&&e.setAttribute(b.nodeName,b.nodeValue);return e.style.cssText=a.style.cssText,e}function m(a){for(var b,c=a.split("{"),e=c.length,f=RegExp("(^|[\\s,>+~])("+d().join("|")+")(?=[[\\s,>+~#.:]|$)","gi"),g="$1"+A+"\\:$2";e--;)b=c[e]=c[e].split("}"),b[b.length-1]=b[b.length-1].replace(f,g),c[e]=b.join("}");return c.join("{")}function n(a){for(var b=a.length;b--;)a[b].removeNode()}function o(a){function b(){clearTimeout(g._removeSheetTimer),d&&d.removeNode(!0),d=null}var d,e,g=f(a),h=a.namespaces,i=a.parentWindow;return!B||a.printShived?a:("undefined"==typeof h[A]&&h.add(A),i.attachEvent("onbeforeprint",function(){b();for(var f,g,h,i=a.styleSheets,j=[],l=i.length,n=Array(l);l--;)n[l]=i[l];for(;h=n.pop();)if(!h.disabled&&z.test(h.media)){try{f=h.imports,g=f.length}catch(o){g=0}for(l=0;g>l;l++)n.push(f[l]);try{j.push(h.cssText)}catch(o){}}j=m(j.reverse().join("")),e=k(a),d=c(a,j)}),i.attachEvent("onafterprint",function(){n(e),clearTimeout(g._removeSheetTimer),g._removeSheetTimer=setTimeout(b,500)}),a.printShived=!0,a)}var p,q,r="3.7.2",s=a.html5||{},t=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,u=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,v="_html5shiv",w=0,x={};!function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",p="hidden"in a,q=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){p=!0,q=!0}}();var y={elements:s.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:r,shivCSS:s.shivCSS!==!1,supportsUnknownElements:q,shivMethods:s.shivMethods!==!1,type:"default",shivDocument:j,createElement:g,createDocumentFragment:h,addElements:e};a.html5=y,j(b);var z=/^$|\b(?:all|print)\b/,A="html5shiv",B=!q&&function(){var c=b.documentElement;return!("undefined"==typeof b.namespaces||"undefined"==typeof b.parentWindow||"undefined"==typeof c.applyElement||"undefined"==typeof c.removeNode||"undefined"==typeof a.attachEvent)}();y.type+=" print",y.shivPrint=o,o(b)}(this,document);
@@ -1,322 +0,0 @@
1
- /**
2
- * @preserve HTML5 Shiv 3.7.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
3
- */
4
- ;(function(window, document) {
5
- /*jshint evil:true */
6
- /** version */
7
- var version = '3.7.2';
8
-
9
- /** Preset options */
10
- var options = window.html5 || {};
11
-
12
- /** Used to skip problem elements */
13
- var reSkip = /^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i;
14
-
15
- /** Not all elements can be cloned in IE **/
16
- var saveClones = /^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i;
17
-
18
- /** Detect whether the browser supports default html5 styles */
19
- var supportsHtml5Styles;
20
-
21
- /** Name of the expando, to work with multiple documents or to re-shiv one document */
22
- var expando = '_html5shiv';
23
-
24
- /** The id for the the documents expando */
25
- var expanID = 0;
26
-
27
- /** Cached data for each document */
28
- var expandoData = {};
29
-
30
- /** Detect whether the browser supports unknown elements */
31
- var supportsUnknownElements;
32
-
33
- (function() {
34
- try {
35
- var a = document.createElement('a');
36
- a.innerHTML = '<xyz></xyz>';
37
- //if the hidden property is implemented we can assume, that the browser supports basic HTML5 Styles
38
- supportsHtml5Styles = ('hidden' in a);
39
-
40
- supportsUnknownElements = a.childNodes.length == 1 || (function() {
41
- // assign a false positive if unable to shiv
42
- (document.createElement)('a');
43
- var frag = document.createDocumentFragment();
44
- return (
45
- typeof frag.cloneNode == 'undefined' ||
46
- typeof frag.createDocumentFragment == 'undefined' ||
47
- typeof frag.createElement == 'undefined'
48
- );
49
- }());
50
- } catch(e) {
51
- // assign a false positive if detection fails => unable to shiv
52
- supportsHtml5Styles = true;
53
- supportsUnknownElements = true;
54
- }
55
-
56
- }());
57
-
58
- /*--------------------------------------------------------------------------*/
59
-
60
- /**
61
- * Creates a style sheet with the given CSS text and adds it to the document.
62
- * @private
63
- * @param {Document} ownerDocument The document.
64
- * @param {String} cssText The CSS text.
65
- * @returns {StyleSheet} The style element.
66
- */
67
- function addStyleSheet(ownerDocument, cssText) {
68
- var p = ownerDocument.createElement('p'),
69
- parent = ownerDocument.getElementsByTagName('head')[0] || ownerDocument.documentElement;
70
-
71
- p.innerHTML = 'x<style>' + cssText + '</style>';
72
- return parent.insertBefore(p.lastChild, parent.firstChild);
73
- }
74
-
75
- /**
76
- * Returns the value of `html5.elements` as an array.
77
- * @private
78
- * @returns {Array} An array of shived element node names.
79
- */
80
- function getElements() {
81
- var elements = html5.elements;
82
- return typeof elements == 'string' ? elements.split(' ') : elements;
83
- }
84
-
85
- /**
86
- * Extends the built-in list of html5 elements
87
- * @memberOf html5
88
- * @param {String|Array} newElements whitespace separated list or array of new element names to shiv
89
- * @param {Document} ownerDocument The context document.
90
- */
91
- function addElements(newElements, ownerDocument) {
92
- var elements = html5.elements;
93
- if(typeof elements != 'string'){
94
- elements = elements.join(' ');
95
- }
96
- if(typeof newElements != 'string'){
97
- newElements = newElements.join(' ');
98
- }
99
- html5.elements = elements +' '+ newElements;
100
- shivDocument(ownerDocument);
101
- }
102
-
103
- /**
104
- * Returns the data associated to the given document
105
- * @private
106
- * @param {Document} ownerDocument The document.
107
- * @returns {Object} An object of data.
108
- */
109
- function getExpandoData(ownerDocument) {
110
- var data = expandoData[ownerDocument[expando]];
111
- if (!data) {
112
- data = {};
113
- expanID++;
114
- ownerDocument[expando] = expanID;
115
- expandoData[expanID] = data;
116
- }
117
- return data;
118
- }
119
-
120
- /**
121
- * returns a shived element for the given nodeName and document
122
- * @memberOf html5
123
- * @param {String} nodeName name of the element
124
- * @param {Document} ownerDocument The context document.
125
- * @returns {Object} The shived element.
126
- */
127
- function createElement(nodeName, ownerDocument, data){
128
- if (!ownerDocument) {
129
- ownerDocument = document;
130
- }
131
- if(supportsUnknownElements){
132
- return ownerDocument.createElement(nodeName);
133
- }
134
- if (!data) {
135
- data = getExpandoData(ownerDocument);
136
- }
137
- var node;
138
-
139
- if (data.cache[nodeName]) {
140
- node = data.cache[nodeName].cloneNode();
141
- } else if (saveClones.test(nodeName)) {
142
- node = (data.cache[nodeName] = data.createElem(nodeName)).cloneNode();
143
- } else {
144
- node = data.createElem(nodeName);
145
- }
146
-
147
- // Avoid adding some elements to fragments in IE < 9 because
148
- // * Attributes like `name` or `type` cannot be set/changed once an element
149
- // is inserted into a document/fragment
150
- // * Link elements with `src` attributes that are inaccessible, as with
151
- // a 403 response, will cause the tab/window to crash
152
- // * Script elements appended to fragments will execute when their `src`
153
- // or `text` property is set
154
- return node.canHaveChildren && !reSkip.test(nodeName) && !node.tagUrn ? data.frag.appendChild(node) : node;
155
- }
156
-
157
- /**
158
- * returns a shived DocumentFragment for the given document
159
- * @memberOf html5
160
- * @param {Document} ownerDocument The context document.
161
- * @returns {Object} The shived DocumentFragment.
162
- */
163
- function createDocumentFragment(ownerDocument, data){
164
- if (!ownerDocument) {
165
- ownerDocument = document;
166
- }
167
- if(supportsUnknownElements){
168
- return ownerDocument.createDocumentFragment();
169
- }
170
- data = data || getExpandoData(ownerDocument);
171
- var clone = data.frag.cloneNode(),
172
- i = 0,
173
- elems = getElements(),
174
- l = elems.length;
175
- for(;i<l;i++){
176
- clone.createElement(elems[i]);
177
- }
178
- return clone;
179
- }
180
-
181
- /**
182
- * Shivs the `createElement` and `createDocumentFragment` methods of the document.
183
- * @private
184
- * @param {Document|DocumentFragment} ownerDocument The document.
185
- * @param {Object} data of the document.
186
- */
187
- function shivMethods(ownerDocument, data) {
188
- if (!data.cache) {
189
- data.cache = {};
190
- data.createElem = ownerDocument.createElement;
191
- data.createFrag = ownerDocument.createDocumentFragment;
192
- data.frag = data.createFrag();
193
- }
194
-
195
-
196
- ownerDocument.createElement = function(nodeName) {
197
- //abort shiv
198
- if (!html5.shivMethods) {
199
- return data.createElem(nodeName);
200
- }
201
- return createElement(nodeName, ownerDocument, data);
202
- };
203
-
204
- ownerDocument.createDocumentFragment = Function('h,f', 'return function(){' +
205
- 'var n=f.cloneNode(),c=n.createElement;' +
206
- 'h.shivMethods&&(' +
207
- // unroll the `createElement` calls
208
- getElements().join().replace(/[\w\-:]+/g, function(nodeName) {
209
- data.createElem(nodeName);
210
- data.frag.createElement(nodeName);
211
- return 'c("' + nodeName + '")';
212
- }) +
213
- ');return n}'
214
- )(html5, data.frag);
215
- }
216
-
217
- /*--------------------------------------------------------------------------*/
218
-
219
- /**
220
- * Shivs the given document.
221
- * @memberOf html5
222
- * @param {Document} ownerDocument The document to shiv.
223
- * @returns {Document} The shived document.
224
- */
225
- function shivDocument(ownerDocument) {
226
- if (!ownerDocument) {
227
- ownerDocument = document;
228
- }
229
- var data = getExpandoData(ownerDocument);
230
-
231
- if (html5.shivCSS && !supportsHtml5Styles && !data.hasCSS) {
232
- data.hasCSS = !!addStyleSheet(ownerDocument,
233
- // corrects block display not defined in IE6/7/8/9
234
- 'article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}' +
235
- // adds styling not present in IE6/7/8/9
236
- 'mark{background:#FF0;color:#000}' +
237
- // hides non-rendered elements
238
- 'template{display:none}'
239
- );
240
- }
241
- if (!supportsUnknownElements) {
242
- shivMethods(ownerDocument, data);
243
- }
244
- return ownerDocument;
245
- }
246
-
247
- /*--------------------------------------------------------------------------*/
248
-
249
- /**
250
- * The `html5` object is exposed so that more elements can be shived and
251
- * existing shiving can be detected on iframes.
252
- * @type Object
253
- * @example
254
- *
255
- * // options can be changed before the script is included
256
- * html5 = { 'elements': 'mark section', 'shivCSS': false, 'shivMethods': false };
257
- */
258
- var html5 = {
259
-
260
- /**
261
- * An array or space separated string of node names of the elements to shiv.
262
- * @memberOf html5
263
- * @type Array|String
264
- */
265
- 'elements': options.elements || 'abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video',
266
-
267
- /**
268
- * current version of html5shiv
269
- */
270
- 'version': version,
271
-
272
- /**
273
- * A flag to indicate that the HTML5 style sheet should be inserted.
274
- * @memberOf html5
275
- * @type Boolean
276
- */
277
- 'shivCSS': (options.shivCSS !== false),
278
-
279
- /**
280
- * Is equal to true if a browser supports creating unknown/HTML5 elements
281
- * @memberOf html5
282
- * @type boolean
283
- */
284
- 'supportsUnknownElements': supportsUnknownElements,
285
-
286
- /**
287
- * A flag to indicate that the document's `createElement` and `createDocumentFragment`
288
- * methods should be overwritten.
289
- * @memberOf html5
290
- * @type Boolean
291
- */
292
- 'shivMethods': (options.shivMethods !== false),
293
-
294
- /**
295
- * A string to describe the type of `html5` object ("default" or "default print").
296
- * @memberOf html5
297
- * @type String
298
- */
299
- 'type': 'default',
300
-
301
- // shivs the document according to the specified `html5` object options
302
- 'shivDocument': shivDocument,
303
-
304
- //creates a shived element
305
- createElement: createElement,
306
-
307
- //creates a shived documentFragment
308
- createDocumentFragment: createDocumentFragment,
309
-
310
- //extends list of elements
311
- addElements: addElements
312
- };
313
-
314
- /*--------------------------------------------------------------------------*/
315
-
316
- // expose html5
317
- window.html5 = html5;
318
-
319
- // shiv the document
320
- shivDocument(document);
321
-
322
- }(this, document));
@@ -1,4 +0,0 @@
1
- /**
2
- * @preserve HTML5 Shiv 3.7.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
3
- */
4
- !function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=t.elements;return"string"==typeof a?a.split(" "):a}function e(a,b){var c=t.elements;"string"!=typeof c&&(c=c.join(" ")),"string"!=typeof a&&(a=a.join(" ")),t.elements=c+" "+a,j(b)}function f(a){var b=s[a[q]];return b||(b={},r++,a[q]=r,s[r]=b),b}function g(a,c,d){if(c||(c=b),l)return c.createElement(a);d||(d=f(c));var e;return e=d.cache[a]?d.cache[a].cloneNode():p.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!e.canHaveChildren||o.test(a)||e.tagUrn?e:d.frag.appendChild(e)}function h(a,c){if(a||(a=b),l)return a.createDocumentFragment();c=c||f(a);for(var e=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)e.createElement(h[g]);return e}function i(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return t.shivMethods?g(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(t,b.frag)}function j(a){a||(a=b);var d=f(a);return!t.shivCSS||k||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||i(a,d),a}var k,l,m="3.7.2",n=a.html5||{},o=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,q="_html5shiv",r=0,s={};!function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",k="hidden"in a,l=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){k=!0,l=!0}}();var t={elements:n.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:m,shivCSS:n.shivCSS!==!1,supportsUnknownElements:l,shivMethods:n.shivMethods!==!1,type:"default",shivDocument:j,createElement:g,createDocumentFragment:h,addElements:e};a.html5=t,j(b)}(this,document);
@@ -1,16 +0,0 @@
1
- {
2
- "name": "html5shiv",
3
- "version": "3.7.2",
4
- "repository": {
5
- "type": "git",
6
- "url": "https://github.com/aFarkas/html5shiv.git"
7
- },
8
- "main": "dist/",
9
- "devDependencies": {
10
- "grunt-bytesize": ">=0.1.0",
11
- "grunt-contrib-watch": ">=0.3.0",
12
- "grunt-contrib-copy": ">=0.4.0",
13
- "grunt-contrib-uglify": ">=0.2.7",
14
- "grunt": ">=0.4.1"
15
- }
16
- }
@@ -1,152 +0,0 @@
1
- # The HTML5 Shiv
2
-
3
- The HTML5 Shiv enables use of HTML5 sectioning elements in legacy Internet Explorer and provides basic HTML5 styling for Internet Explorer 6-9, Safari 4.x (and iPhone 3.x), and Firefox 3.x.
4
-
5
- ### What do these files do?
6
-
7
- #### `html5shiv.js`
8
- * This includes the basic `createElement()` shiv technique, along with monkeypatches for `document.createElement` and `document.createDocumentFragment` for IE6-8. It also applies [basic styling](https://github.com/aFarkas/html5shiv/blob/51da98dabd3c537891b7fe6114633fb10de52473/src/html5shiv.js#L216-220) for HTML5 elements for IE6-9, Safari 4.x and FF 3.x.
9
-
10
- ####`html5shiv-printshiv.js`
11
- * This includes all of the above, as well as a mechanism allowing HTML5 elements to be styled and contain children while being printed in IE 6-8.
12
-
13
- ### Who can I get mad at now?
14
-
15
- HTML5 Shiv is maintained by [Alexander Farkas](https://github.com/aFarkas/), [Jonathan Neal](https://twitter.com/jon_neal) and [Paul Irish](https://twitter.com/paul_irish), with many contributions from [John-David Dalton](https://twitter.com/jdalton). It is also distributed with [Modernizr](http://modernizr.com/), and the two google code projects, [html5shiv](https://code.google.com/p/html5shiv/) and [html5shim](https://code.google.com/p/html5shim/), maintained by [Remy Sharp](https://twitter.com/rem).
16
-
17
- If you have any issues in these implementations, you can report them here! :)
18
-
19
- For the full story of HTML5 Shiv and all of the people involved in making it, read [The Story of the HTML5 Shiv](http://paulirish.com/2011/the-history-of-the-html5-shiv/).
20
-
21
- ## Installation
22
-
23
- ###Using [Bower](http://bower.io/)
24
-
25
- `bower install html5shiv --save-dev`
26
-
27
- This will clone the latest version of the HTML5 shiv into the `bower_components` directory at the root of your project and also create or update the file `bower.json` which specifies your projects dependencies.
28
-
29
- Include the HTML5 shiv in the `<head>` of your page in a conditional comment and after any stylesheets.
30
-
31
- ```html
32
- <!--[if lt IE 9]>
33
- <script src="bower_components/html5shiv/html5shiv.js"></script>
34
- <![endif]-->
35
- ```
36
-
37
- ###Manual installation
38
-
39
- Download and extract the [latest zip package](https://github.com/aFarkas/html5shiv/archive/master.zip) from this repositiory and copy the two files `dist/html5shiv.js` and `dist/html5shiv-printshiv.js` into your project. Then include one of them into your `<head>` as above.
40
-
41
- ## HTML5 Shiv API
42
-
43
- HTML5 Shiv works as a simple drop-in solution. In most cases there is no need to configure HTML5 Shiv or use methods provided by HTML5 Shiv.
44
-
45
- ### `html5.elements` option
46
-
47
- The `elements` option is a space separated string or array, which describes the **full** list of the elements to shiv. see also `addElements`.
48
-
49
- **Configuring `elements` before `html5shiv.js` is included.**
50
-
51
- ```js
52
- //create a global html5 options object
53
- window.html5 = {
54
- 'elements': 'mark section customelement'
55
- };
56
- ```
57
- **Configuring `elements` after `html5shiv.js` is included.**
58
-
59
- ```js
60
- //change the html5shiv options object
61
- window.html5.elements = 'mark section customelement';
62
- //and re-invoke the `shivDocument` method
63
- html5.shivDocument(document);
64
- ```
65
-
66
- ### `html5.shivCSS`
67
-
68
- If `shivCSS` is set to `true` HTML5 Shiv will add basic styles (mostly display: block) to sectioning elements (like section, article). In most cases a webpage author should include those basic styles in his normal stylesheet to ensure older browser support (i.e. Firefox 3.6) without JavaScript.
69
-
70
- The `shivCSS` is true by default and can be set false, only before html5shiv.js is included:
71
-
72
- ```js
73
- //create a global html5 options object
74
- window.html5 = {
75
- 'shivCSS': false
76
- };
77
- ```
78
-
79
- ### `html5.shivMethods`
80
-
81
- If the `shivMethods` option is set to `true` (by default) HTML5 Shiv will override `document.createElement`/`document.createDocumentFragment` in Internet Explorer 6-8 to allow dynamic DOM creation of HTML5 elements.
82
-
83
- Known issue: If an element is created using the overridden `createElement` method this element returns a document fragment as its `parentNode`, but should be normally `null`. If a script relies on this behavior, `shivMethods`should be set to `false`.
84
- Note: jQuery 1.7+ has implemented his own HTML5 DOM creation fix for Internet Explorer 6-8. If all your scripts (including Third party scripts) are using jQuery's manipulation and DOM creation methods, you might want to set this option to `false`.
85
-
86
- **Configuring `shivMethods` before `html5shiv.js` is included.**
87
-
88
- ```js
89
- //create a global html5 options object
90
- window.html5 = {
91
- 'shivMethods': false
92
- };
93
- ```
94
- **Configuring `elements` after `html5shiv.js` is included.**
95
-
96
- ```js
97
- //change the html5shiv options object
98
- window.html5.shivMethods = false;
99
- ```
100
-
101
- ### `html5.addElements( newElements [, document] )`
102
-
103
- The `html5.addElements` method extends the list of elements to shiv. The newElements argument can be a whitespace separated list or an array.
104
-
105
- ```js
106
- //extend list of elements to shiv
107
- html5.addElements('element content');
108
- ```
109
-
110
- ### `html5.createElement( nodeName [, document] )`
111
-
112
- The `html5.createElement` method creates a shived element, even if `shivMethods` is set to false.
113
-
114
- ```js
115
- var container = html5.createElement('div');
116
- //container is shived so we can add HTML5 elements using `innerHTML`
117
- container.innerHTML = '<section>This is a section</section>';
118
- ```
119
-
120
- ### `html5.createDocumentFragment( [document] )`
121
-
122
- The `html5.createDocumentFragment` method creates a shived document fragment, even if `shivMethods` is set to false.
123
-
124
- ```js
125
- var fragment = html5.createDocumentFragment();
126
- var container = document.createElement('div');
127
- fragment.appendChild(container);
128
- //fragment is shived so we can add HTML5 elements using `innerHTML`
129
- container.innerHTML = '<section>This is a section</section>';
130
- ```
131
-
132
- ## HTML5 Shiv Known Issues and Limitations
133
-
134
- - The `shivMethods` option (overriding `document.createElement`) and the `html5.createElement` method create elements, which are not disconnected and have a parentNode (see also issue #64)
135
- - The cloneNode problem is currently not addressed by HTML5 Shiv. HTML5 elements can be dynamically created, but can't be cloned in all cases.
136
- - The printshiv version of HTML5 Shiv has to alter the print styles and the whole DOM for printing. In case of complex websites and or a lot of print styles this might cause performance and/or styling issues. A possible solution could be the [htc-branch](https://github.com/aFarkas/html5shiv/tree/iepp-htc) of HTML5 Shiv, which uses another technique to implement print styles for Internet Explorer 6-8.
137
-
138
- ### What about the other HTML5 element projects?
139
-
140
- - The original conception and community collaboration story of the project is described at [The History of the HTML5 Shiv](http://paulirish.com/2011/the-history-of-the-html5-shiv/).
141
- - [IEPP](https://code.google.com/p/ie-print-protector), by Jon Neal, addressed the printing fault of the original `html5shiv`. It was merged into `html5shiv`.
142
- - **Shimprove**, in April 2010, patched `cloneNode` and `createElement` was later merged into `html5shiv`
143
- - **innerShiv**, introduced in August 2010 by JD Barlett, addressed dynamically adding new HTML5 elements into the DOM. [jQuery added support](http://blog.jquery.com/2011/11/03/jquery-1-7-released/) that made innerShiv redundant and `html5shiv` addressed the same issues as well, so the project was completed.
144
- - The **html5shim** and **html5shiv** sites on Google Code are maintained by Remy Sharp and are identical distribution points of this `html5shiv` project.
145
- - **Modernizr** is developed by the same people as `html5shiv` and can include the latest version in any custom builds created at modernizr.com
146
- - This `html5shiv` repo now contains tests for all the edge cases pursued by the above libraries and has been extensively tested, both in development and production.
147
-
148
- A [detailed changelog of html5shiv](https://github.com/aFarkas/html5shiv/wiki) is available.
149
-
150
- ### Why is it called a *shiv*?
151
-
152
- The term **shiv** [originates](http://ejohn.org/blog/html5-shiv/) from [John Resig](https://github.com/jeresig), who was thought to have used the word for its slang meaning, *a sharp object used as a knife-like weapon*, intended for Internet Explorer. Truth be known, John probably intended to use the word [shim](http://en.wikipedia.org/wiki/Shim_(computing\)), which in computing means *an application compatibility workaround*. Rather than correct his mispelling, most developers familiar with Internet Explorer appreciated the visual imagery. And that, [kids](http://html5homi.es/), is [etymology](https://en.wikipedia.org/wiki/Etymology).