html5shiv-rails 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/MIT-LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright 2012 David Morton <mortonda@dgrmm.net>
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,26 @@
1
+ # Html5shivRails
2
+
3
+ Html5hivRails simply provides the [html5him.js and html5shim-printshim.js](https://github.com/aFarkas/html5shiv) libraries in a rails engine form.
4
+
5
+ ## Rails 3.1 and up
6
+
7
+ For Rails 3.1 and greater, the files will be added to the asset pipeline and available for you to use. You have the option of `html5shiv.js` and `html5shiv-printshiv.js`, depending on if you need to support printing.
8
+
9
+
10
+ ### Installation
11
+
12
+ Just add this to your Gemfile:
13
+
14
+ gem 'html5shiv'
15
+
16
+ and run
17
+
18
+ bundle install
19
+
20
+ ### Usage
21
+
22
+ Since you probably only want to include this when serving IE, place it in a conditional comment in the `<head>` section in your layout:
23
+
24
+ <!--[if lt IE 9]>
25
+ <%= javascript_include_tag 'html5shiv-printshiv' %>
26
+ <![endif]-->
data/Rakefile ADDED
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env rake
2
+ begin
3
+ require 'bundler/setup'
4
+ require "bundler/gem_tasks"
5
+ rescue LoadError
6
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
7
+ end
8
+
9
+
10
+ desc 'Convert less to scss'
11
+ task :convert do
12
+ ruby('build/convert.rb')
13
+ end
@@ -0,0 +1,4 @@
1
+ require "html5shiv-rails/engine"
2
+
3
+ module Html5shivRails
4
+ end
@@ -0,0 +1,10 @@
1
+ module Html5shivRails
2
+ class Engine < ::Rails::Engine
3
+ # Enabling assets precompiling under rails 3.1
4
+ if Rails.version >= '3.1'
5
+ initializer :assets do |config|
6
+ Rails.application.config.assets.precompile += %w( html5shiv.js html5shiv-printshiv.js )
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,3 @@
1
+ module Html5shivRails
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,7 @@
1
+ (function(m,j){function q(a,c){var f=a.createElement("p"),b=a.getElementsByTagName("head")[0]||a.documentElement;f.innerHTML="x<style>"+c+"</style>";return b.insertBefore(f.lastChild,b.firstChild)}function n(){var a=k.elements;return"string"==typeof a?a.split(" "):a}function u(a){var c={},f=a.createElement,b=a.createDocumentFragment,d=b();a.createElement=function(a){if(!k.shivMethods)return f(a);var e;e=c[a]?c[a].cloneNode():v.test(a)?(c[a]=f(a)).cloneNode():f(a);return e.canHaveChildren&&!w.test(a)?
2
+ d.appendChild(e):e};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+n().join().replace(/\w+/g,function(a){f(a);d.createElement(a);return'c("'+a+'")'})+");return n}")(k,d)}function r(a){var c;if(a.documentShived)return a;k.shivCSS&&!s&&(c=!!q(a,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}"));o||(c=!u(a));if(c)a.documentShived=c;return a}function x(a){for(var c,f=a.attributes,
3
+ b=f.length,d=a.ownerDocument.createElement(l+":"+a.nodeName);b--;)c=f[b],c.specified&&d.setAttribute(c.nodeName,c.nodeValue);d.style.cssText=a.style.cssText;return d}function t(a){var c,f,b=a.namespaces,d=a.parentWindow;if(!y||a.printShived)return a;"undefined"==typeof b[l]&&b.add(l);d.attachEvent("onbeforeprint",function(){var g,e,i;i=a.styleSheets;for(var b=[],h=i.length,d=Array(h);h--;)d[h]=i[h];for(;i=d.pop();)if(!i.disabled&&z.test(i.media)){try{g=i.imports,e=g.length}catch(j){e=0}for(h=0;h<
4
+ e;h++)d.push(g[h]);try{b.push(i.cssText)}catch(k){}}g=b.reverse().join("").split("{");e=g.length;h=RegExp("(^|[\\s,>+~])("+n().join("|")+")(?=[[\\s,>+~#.:]|$)","gi");for(d="$1"+l+"\\:$2";e--;)b=g[e]=g[e].split("}"),b[b.length-1]=b[b.length-1].replace(h,d),g[e]=b.join("}");b=g.join("{");e=a.getElementsByTagName("*");h=e.length;d=RegExp("^(?:"+n().join("|")+")$","i");for(i=[];h--;)g=e[h],d.test(g.nodeName)&&i.push(g.applyElement(x(g)));f=i;c=q(a,b)});d.attachEvent("onafterprint",function(){for(var a=
5
+ f,b=a.length;b--;)a[b].removeNode();c.removeNode(!0)});a.printShived=!0;return a}var p=m.html5||{},w=/^<|^(?:button|form|map|select|textarea|object|iframe|option|optgroup)$/i,v=/^<|^(?:a|b|button|code|div|fieldset|form|h1|h2|h3|h4|h5|h6|i|iframe|img|input|label|li|link|ol|option|p|param|q|script|select|span|strong|style|table|tbody|td|textarea|tfoot|th|thead|tr|ul)$/i,s,o;(function(){var a=j.createElement("a");a.innerHTML="<xyz></xyz>";s="hidden"in a;if(!(a=1==a.childNodes.length))a:{try{j.createElement("a")}catch(c){a=
6
+ !0;break a}a=j.createDocumentFragment();a="undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}o=a})();var k={elements:p.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:!1!==p.shivCSS,shivMethods:!1!==p.shivMethods,type:"default",shivDocument:r};m.html5=k;r(j);var z=/^$|\b(?:all|print)\b/,l="html5shiv",y=!o&&function(){var a=
7
+ j.documentElement;return!("undefined"==typeof j.namespaces||"undefined"==typeof j.parentWindow||"undefined"==typeof a.applyElement||"undefined"==typeof a.removeNode||"undefined"==typeof m.attachEvent)}();k.type+=" print";k.shivPrint=t;t(j)})(this,document);
@@ -0,0 +1,4 @@
1
+ (function(g,b){function k(){var a=e.elements;return"string"==typeof a?a.split(" "):a}function l(a){var c={},f=a.createElement,b=a.createDocumentFragment,d=b();a.createElement=function(a){if(!e.shivMethods)return f(a);var b;b=c[a]?c[a].cloneNode():m.test(a)?(c[a]=f(a)).cloneNode():f(a);return b.canHaveChildren&&!n.test(a)?d.appendChild(b):b};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+k().join().replace(/\w+/g,function(a){f(a);
2
+ d.createElement(a);return'c("'+a+'")'})+");return n}")(e,d)}function h(a){var c;if(a.documentShived)return a;if(e.shivCSS&&!i){c=a.createElement("p");var b=a.getElementsByTagName("head")[0]||a.documentElement;c.innerHTML="x<style>article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}</style>";c=!!b.insertBefore(c.lastChild,b.firstChild)}j||(c=!l(a));if(c)a.documentShived=c;return a}var d=g.html5||{},n=/^<|^(?:button|form|map|select|textarea|object|iframe|option|optgroup)$/i,
3
+ m=/^<|^(?:a|b|button|code|div|fieldset|form|h1|h2|h3|h4|h5|h6|i|iframe|img|input|label|li|link|ol|option|p|param|q|script|select|span|strong|style|table|tbody|td|textarea|tfoot|th|thead|tr|ul)$/i,i,j;(function(){var a=b.createElement("a");a.innerHTML="<xyz></xyz>";i="hidden"in a;if(!(a=1==a.childNodes.length))a:{try{b.createElement("a")}catch(c){a=!0;break a}a=b.createDocumentFragment();a="undefined"==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}j=
4
+ a})();var e={elements:d.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:!1!==d.shivCSS,shivMethods:!1!==d.shivMethods,type:"default",shivDocument:h};g.html5=e;h(b)})(this,document);
metadata ADDED
@@ -0,0 +1,74 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: html5shiv-rails
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - David Morton
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-05-22 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: railties
16
+ requirement: &70206626041800 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: 3.2.0
22
+ - - <
23
+ - !ruby/object:Gem::Version
24
+ version: '5.0'
25
+ type: :runtime
26
+ prerelease: false
27
+ version_requirements: *70206626041800
28
+ description: While it is easy to just copy from the original github site, having it
29
+ in a gem file should be even easier!
30
+ email:
31
+ - mortonda@dgrmm.net
32
+ executables: []
33
+ extensions: []
34
+ extra_rdoc_files: []
35
+ files:
36
+ - vendor/assets/javascripts/html5shiv-printshiv.js
37
+ - vendor/assets/javascripts/html5shiv.js
38
+ - lib/html5shiv-rails/engine.rb
39
+ - lib/html5shiv-rails/version.rb
40
+ - lib/html5shiv-rails.rb
41
+ - MIT-LICENSE
42
+ - Rakefile
43
+ - README.md
44
+ homepage: https://github.com/dgm/html5shiv-rails
45
+ licenses: []
46
+ post_install_message:
47
+ rdoc_options: []
48
+ require_paths:
49
+ - lib
50
+ required_ruby_version: !ruby/object:Gem::Requirement
51
+ none: false
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ segments:
57
+ - 0
58
+ hash: -1169509441844951968
59
+ required_rubygems_version: !ruby/object:Gem::Requirement
60
+ none: false
61
+ requirements:
62
+ - - ! '>='
63
+ - !ruby/object:Gem::Version
64
+ version: '0'
65
+ segments:
66
+ - 0
67
+ hash: -1169509441844951968
68
+ requirements: []
69
+ rubyforge_project:
70
+ rubygems_version: 1.8.10
71
+ signing_key:
72
+ specification_version: 3
73
+ summary: A rails gem theat bundles the html5-shiv in a gem
74
+ test_files: []