middleman-inliner 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 8e9864e67bfb2d0f695c1fb5a96988e803b2d984
4
+ data.tar.gz: 8a14a16f72ebf4fe6893a4145430cdf768afa3a8
5
+ SHA512:
6
+ metadata.gz: 0f90d3e2bff878c01304d24957f90fa48d5f42013fc8c6b0d5408a940d9a341745f1bb9567e296056bc04236a4e150d323bc2a98c4c3174f97737028a1742e44
7
+ data.tar.gz: eb7e95565ac16bdbf22294a145abc6096007144cd4dcaa056714383845523aa50a4a4c1de7ac19d99e975989606dc381d85a8b081fa0da02795c5047f821bece
@@ -0,0 +1,43 @@
1
+ require 'middleman-core'
2
+
3
+ class Inliner < Middleman::Extension
4
+ def initialize(app, options_hash={}, &block)
5
+ super
6
+
7
+ app.compass_config do |config|
8
+ config.output_style = :compressed
9
+ end
10
+ end
11
+
12
+ helpers do
13
+ def inline_css(*names)
14
+ names.map { |name|
15
+ name += ".css" unless name.include?(".css")
16
+ css_path = sitemap.resources.select { |p| p.source_file.include?(name) }.first
17
+ "<style type='text/css'>#{css_path.render}</style>"
18
+ }.reduce(:+)
19
+ end
20
+
21
+ def inline_js(*names)
22
+ names.map { |name|
23
+ name += ".js" unless name.include?(".js")
24
+ js = sprockets.find_asset(name).to_s
25
+ "<script type='text/javascript'>#{defined?(Uglifier) ? Uglifier.compile(js) : js}</script>"
26
+ }.reduce(:+)
27
+ end
28
+
29
+ alias :inline_javascript :inline_js
30
+ alias :inline_js_tag :inline_js
31
+ alias :inline_javascript_tag :inline_js
32
+ alias :javascript_inline_tag :inline_js
33
+ alias :js_inline_tag :inline_js
34
+
35
+ alias :inline_stylesheet :inline_css
36
+ alias :inline_css_tag :inline_css
37
+ alias :inline_stylesheet_tag :inline_css
38
+ alias :stylesheet_inline_tag :inline_css
39
+ alias :css_inline_tag :inline_css
40
+ end
41
+ end
42
+
43
+ Inliner.register(:inliner)
@@ -0,0 +1 @@
1
+ require 'middleman-inliner'
metadata ADDED
@@ -0,0 +1,46 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: middleman-inliner
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Kai Inui
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-06-22 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Inline JS and CSS in just one line.
14
+ email: me@kaiinui.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/middleman-inliner.rb
20
+ - lib/middleman_extension.rb
21
+ homepage: https://github.com/kaiinui/middleman-inliner
22
+ licenses:
23
+ - MIT
24
+ metadata: {}
25
+ post_install_message:
26
+ rdoc_options: []
27
+ require_paths:
28
+ - lib
29
+ required_ruby_version: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ required_rubygems_version: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - ">="
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ requirements: []
40
+ rubyforge_project:
41
+ rubygems_version: 2.3.0
42
+ signing_key:
43
+ specification_version: 4
44
+ summary: Inline JS and CSS in just one line.
45
+ test_files: []
46
+ has_rdoc: