middleman 0.13.2.pre → 0.14.0.pre2
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +1 -1
- data/VERSION +1 -1
- data/lib/middleman.rb +16 -1
- data/lib/middleman/base.rb +27 -31
- data/lib/middleman/erb.rb +24 -0
- data/lib/middleman/haml.rb +1 -1
- data/lib/middleman/rack/minify_css.rb +8 -11
- data/lib/middleman/rack/minify_javascript.rb +7 -10
- data/lib/middleman/rack/sprockets.rb +45 -23
- data/lib/middleman/sass.rb +1 -1
- data/middleman.gemspec +6 -8
- metadata +9 -11
- data/lib/middleman/rack/downstream.rb +0 -9
- data/lib/middleman/rack/sprockets+ruby19.rb +0 -29
- data/lib/middleman/rack/static.rb +0 -18
data/Rakefile
CHANGED
@@ -23,7 +23,7 @@ begin
|
|
23
23
|
gem.add_dependency("sinatra-content-for")
|
24
24
|
gem.add_dependency("rack-test")
|
25
25
|
gem.add_dependency("yui-compressor")
|
26
|
-
gem.add_dependency("haml", ">=3.0.0.
|
26
|
+
gem.add_dependency("haml", ">=3.0.0.rc.1")
|
27
27
|
gem.add_dependency("compass", ">=0.10.0.rc3")
|
28
28
|
gem.add_dependency("fancy-buttons")
|
29
29
|
gem.add_dependency("json_pure")
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.14.0.pre2
|
data/lib/middleman.rb
CHANGED
@@ -2,4 +2,19 @@ libdir = File.dirname(__FILE__)
|
|
2
2
|
$LOAD_PATH.unshift(libdir) unless $LOAD_PATH.include?(libdir)
|
3
3
|
|
4
4
|
require 'rubygems'
|
5
|
-
|
5
|
+
|
6
|
+
module Middleman
|
7
|
+
|
8
|
+
module Rack
|
9
|
+
autoload :Sprockets, "middleman/rack/sprockets"
|
10
|
+
autoload :MinifyJavascript, "middleman/rack/minify_javascript"
|
11
|
+
autoload :MinifyCSS, "middleman/rack/minify_css"
|
12
|
+
end
|
13
|
+
|
14
|
+
autoload :Base, "middleman/base"
|
15
|
+
autoload :ERb, "middleman/erb"
|
16
|
+
autoload :Haml, "middleman/haml"
|
17
|
+
autoload :Sass, "middleman/sass"
|
18
|
+
autoload :Helpers, "middleman/helpers"
|
19
|
+
|
20
|
+
end
|
data/lib/middleman/base.rb
CHANGED
@@ -12,6 +12,7 @@ module Middleman
|
|
12
12
|
set :app_file, __FILE__
|
13
13
|
set :root, ENV["MM_DIR"] || Dir.pwd
|
14
14
|
set :reload, false
|
15
|
+
set :sessions, false
|
15
16
|
set :logging, false
|
16
17
|
set :environment, ENV['MM_ENV'] || :development
|
17
18
|
set :supported_formats, %w(erb)
|
@@ -23,7 +24,6 @@ module Middleman
|
|
23
24
|
set :build_dir, "build"
|
24
25
|
set :http_prefix, nil
|
25
26
|
|
26
|
-
use ::Rack::ConditionalGet if environment == :development
|
27
27
|
helpers Sinatra::ContentFor
|
28
28
|
|
29
29
|
set :features, []
|
@@ -69,11 +69,8 @@ module Middleman
|
|
69
69
|
# Base case renderer (do nothing), Should be over-ridden
|
70
70
|
module StaticRender
|
71
71
|
def render_path(path, layout)
|
72
|
-
if template_exists?(path, :erb)
|
73
|
-
|
74
|
-
else
|
75
|
-
false
|
76
|
-
end
|
72
|
+
return false if !template_exists?(path, :erb)
|
73
|
+
erb(path.to_sym, :layout => layout)
|
77
74
|
end
|
78
75
|
end
|
79
76
|
include StaticRender
|
@@ -95,11 +92,6 @@ module Middleman
|
|
95
92
|
ensure
|
96
93
|
@@layout = nil
|
97
94
|
end
|
98
|
-
|
99
|
-
# This will match all requests not overridden in the project's init.rb
|
100
|
-
not_found do
|
101
|
-
process_request
|
102
|
-
end
|
103
95
|
|
104
96
|
def self.enabled?(name)
|
105
97
|
name = (name.to_s << "?").to_sym
|
@@ -110,6 +102,11 @@ module Middleman
|
|
110
102
|
self.class.enabled?(name)
|
111
103
|
end
|
112
104
|
|
105
|
+
# This will match all requests not overridden in the project's init.rb
|
106
|
+
not_found do
|
107
|
+
process_request
|
108
|
+
end
|
109
|
+
|
113
110
|
private
|
114
111
|
def process_request(layout = :layout)
|
115
112
|
# Normalize the path and add index if we're looking at a directory
|
@@ -129,15 +126,10 @@ module Middleman
|
|
129
126
|
end
|
130
127
|
end
|
131
128
|
|
129
|
+
require "middleman/erb"
|
132
130
|
# Haml is required & includes helpers
|
133
131
|
require "middleman/haml"
|
134
132
|
require "middleman/sass"
|
135
|
-
require "middleman/helpers"
|
136
|
-
require "middleman/rack/static"
|
137
|
-
require "middleman/rack/sprockets"
|
138
|
-
require "middleman/rack/minify_javascript"
|
139
|
-
require "middleman/rack/minify_css"
|
140
|
-
require "middleman/rack/downstream"
|
141
133
|
|
142
134
|
class Middleman::Base
|
143
135
|
helpers Middleman::Helpers
|
@@ -153,26 +145,21 @@ class Middleman::Base
|
|
153
145
|
disable :automatic_image_sizes
|
154
146
|
disable :relative_assets
|
155
147
|
disable :cache_buster
|
148
|
+
disable :ugly_haml
|
156
149
|
|
157
150
|
# Default build features
|
158
151
|
configure :build do
|
159
152
|
end
|
160
153
|
|
161
|
-
# Check for and evaluate local configuration
|
162
|
-
local_config = File.join(self.root, "init.rb")
|
163
|
-
if File.exists? local_config
|
164
|
-
puts "== Reading: Local config" if logging?
|
165
|
-
Middleman::Base.class_eval File.read(local_config)
|
166
|
-
set :app_file, File.expand_path(local_config)
|
167
|
-
end
|
168
|
-
|
169
|
-
use Middleman::Rack::Static
|
170
|
-
use Middleman::Rack::Sprockets
|
171
|
-
use Middleman::Rack::MinifyJavascript
|
172
|
-
use Middleman::Rack::MinifyCSS
|
173
|
-
use Middleman::Rack::Downstream
|
174
|
-
|
175
154
|
def self.new(*args, &block)
|
155
|
+
# Check for and evaluate local configuration
|
156
|
+
local_config = File.join(self.root, "init.rb")
|
157
|
+
if File.exists? local_config
|
158
|
+
puts "== Reading: Local config" if logging?
|
159
|
+
Middleman::Base.class_eval File.read(local_config)
|
160
|
+
set :app_file, File.expand_path(local_config)
|
161
|
+
end
|
162
|
+
|
176
163
|
# loop over enabled feature
|
177
164
|
features.flatten.each do |feature_name|
|
178
165
|
next unless send(:"#{feature_name}?")
|
@@ -184,6 +171,15 @@ class Middleman::Base
|
|
184
171
|
end
|
185
172
|
end
|
186
173
|
|
174
|
+
use ::Rack::ConditionalGet if environment == :development
|
175
|
+
use Middleman::Rack::MinifyJavascript if minify_javascript?
|
176
|
+
use Middleman::Rack::MinifyCSS if minify_css?
|
177
|
+
|
178
|
+
# Built-in javascript combination
|
179
|
+
use Middleman::Rack::Sprockets, :root => Middleman::Base.root,
|
180
|
+
:load_path => [ File.join("public", Middleman::Base.js_dir),
|
181
|
+
File.join("views", Middleman::Base.js_dir) ]
|
182
|
+
|
187
183
|
@@afters.each { |block| class_eval(&block) }
|
188
184
|
|
189
185
|
super
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require "erb"
|
2
|
+
|
3
|
+
module Middleman
|
4
|
+
module ERb
|
5
|
+
module Renderer
|
6
|
+
def self.included(base)
|
7
|
+
base.supported_formats << "erb"
|
8
|
+
end
|
9
|
+
|
10
|
+
def render_path(path, layout)
|
11
|
+
if template_exists?(path, :erb)
|
12
|
+
layout = false if File.extname(path) == ".xml"
|
13
|
+
erb(path.to_sym, :layout => layout)
|
14
|
+
else
|
15
|
+
super
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
class Middleman::Base
|
23
|
+
include Middleman::ERb::Renderer
|
24
|
+
end
|
data/lib/middleman/haml.rb
CHANGED
@@ -13,7 +13,7 @@ module Middleman
|
|
13
13
|
result = nil
|
14
14
|
begin
|
15
15
|
layout = false if File.extname(path) == ".xml"
|
16
|
-
result = haml(path.to_sym, :layout => layout)
|
16
|
+
result = haml(path.to_sym, :layout => layout, :ugly => Middleman::Base.enabled?(:ugly_haml))
|
17
17
|
rescue ::Haml::Error => e
|
18
18
|
result = "Haml Error: #{e}"
|
19
19
|
result << "<pre>Backtrace: #{e.backtrace.join("\n")}</pre>"
|
@@ -10,19 +10,16 @@ class Middleman::Rack::MinifyCSS
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def call(env)
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
status, headers, response = @app.call(env)
|
14
|
+
|
15
|
+
if Middleman::Base.enabled?(:minify_css) && env["PATH_INFO"].match(/\.css$/)
|
16
16
|
compressor = ::YUI::CssCompressor.new
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
env["DOWNSTREAM"][2] = compressor.compress(source)
|
23
|
-
env["DOWNSTREAM"][1]["Content-Length"] = ::Rack::Utils.bytesize(env["DOWNSTREAM"][2]).to_s
|
17
|
+
|
18
|
+
uncompressed_source = response.is_a?(::Rack::File) ? File.read(response.path) : response
|
19
|
+
response = compressor.compress(uncompressed_source)
|
20
|
+
headers["Content-Length"] = ::Rack::Utils.bytesize(response).to_s
|
24
21
|
end
|
25
22
|
|
26
|
-
|
23
|
+
[status, headers, response]
|
27
24
|
end
|
28
25
|
end
|
@@ -10,19 +10,16 @@ class Middleman::Rack::MinifyJavascript
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def call(env)
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
status, headers, response = @app.call(env)
|
14
|
+
|
15
|
+
if env["PATH_INFO"].match(/\.js$/)
|
16
16
|
compressor = ::YUI::JavaScriptCompressor.new(:munge => true)
|
17
17
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
env["DOWNSTREAM"][2] = compressor.compress(source)
|
23
|
-
env["DOWNSTREAM"][1]["Content-Length"] = ::Rack::Utils.bytesize(env["DOWNSTREAM"][2]).to_s
|
18
|
+
uncompressed_source = response.is_a?(::Rack::File) ? File.read(response.path) : response
|
19
|
+
response = compressor.compress(uncompressed_source)
|
20
|
+
headers["Content-Length"] = ::Rack::Utils.bytesize(response).to_s
|
24
21
|
end
|
25
22
|
|
26
|
-
|
23
|
+
[status, headers, response]
|
27
24
|
end
|
28
25
|
end
|
@@ -1,34 +1,25 @@
|
|
1
|
-
|
2
|
-
require 'sprockets'
|
3
|
-
require 'middleman/rack/sprockets+ruby19' # Sprockets ruby 1.9 duckpunch
|
4
|
-
rescue LoadError
|
5
|
-
puts "Sprockets not available. Install it with: gem install sprockets"
|
6
|
-
end
|
1
|
+
require 'sprockets'
|
7
2
|
|
8
3
|
class Middleman::Rack::Sprockets
|
9
4
|
def initialize(app, options={})
|
10
5
|
@app = app
|
6
|
+
@options = options
|
11
7
|
end
|
12
8
|
|
13
9
|
def call(env)
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
source = "public" if File.exists?(File.join(Middleman::Base.views, path))
|
18
|
-
source = "views" if File.exists?(File.join(Middleman::Base.views, path))
|
10
|
+
if env["PATH_INFO"].match(/\.js$/)
|
11
|
+
public_file_path = File.join(Middleman::Base.public, env["PATH_INFO"])
|
12
|
+
view_file_path = File.join(Middleman::Base.views, env["PATH_INFO"])
|
19
13
|
|
20
|
-
if
|
21
|
-
|
22
|
-
env["DOWNSTREAM"][2].path :
|
23
|
-
env["DOWNSTREAM"][2]
|
14
|
+
source_file = Rack::File.new(Middleman::Base.public) if File.exists?(public_file_path)
|
15
|
+
source_file = Rack::File.new(Middleman::Base.views) if File.exists?(view_file_path)
|
24
16
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
env["DOWNSTREAM"][1]["Content-Length"] = ::Rack::Utils.bytesize(env["DOWNSTREAM"][2]).to_s
|
17
|
+
if source_file
|
18
|
+
status, headers, response = source_file.call(env)
|
19
|
+
secretary = ::Sprockets::Secretary.new(@options.merge( :source_files => [ response.path ] ))
|
20
|
+
response = secretary.concatenation.to_s
|
21
|
+
headers["Content-Length"] = ::Rack::Utils.bytesize(response).to_s
|
22
|
+
return [status, headers, response]
|
32
23
|
end
|
33
24
|
end
|
34
25
|
|
@@ -36,4 +27,35 @@ class Middleman::Rack::Sprockets
|
|
36
27
|
end
|
37
28
|
end
|
38
29
|
|
39
|
-
Middleman::Base.supported_formats << "js"
|
30
|
+
Middleman::Base.supported_formats << "js"
|
31
|
+
|
32
|
+
# Sprockets ruby 1.9 duckpunch
|
33
|
+
module Sprockets
|
34
|
+
class SourceFile
|
35
|
+
def source_lines
|
36
|
+
@lines ||= begin
|
37
|
+
lines = []
|
38
|
+
|
39
|
+
comments = []
|
40
|
+
File.open(pathname.absolute_location, 'rb') do |file|
|
41
|
+
file.each do |line|
|
42
|
+
lines << line = SourceLine.new(self, line, file.lineno)
|
43
|
+
|
44
|
+
if line.begins_pdoc_comment? || comments.any?
|
45
|
+
comments << line
|
46
|
+
end
|
47
|
+
|
48
|
+
if line.ends_multiline_comment?
|
49
|
+
if line.ends_pdoc_comment?
|
50
|
+
comments.each { |l| l.comment! }
|
51
|
+
end
|
52
|
+
comments.clear
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
lines
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
data/lib/middleman/sass.rb
CHANGED
data/middleman.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{middleman}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.14.0.pre2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Thomas Reynolds"]
|
12
|
-
s.date = %q{2010-04-
|
12
|
+
s.date = %q{2010-04-28}
|
13
13
|
s.email = %q{tdreyno@gmail.com}
|
14
14
|
s.executables = ["mm-init", "mm-build", "mm-server"]
|
15
15
|
s.extra_rdoc_files = [
|
@@ -43,6 +43,7 @@ Gem::Specification.new do |s|
|
|
43
43
|
"lib/middleman/base.rb",
|
44
44
|
"lib/middleman/builder.rb",
|
45
45
|
"lib/middleman/config.ru",
|
46
|
+
"lib/middleman/erb.rb",
|
46
47
|
"lib/middleman/fastimage.rb",
|
47
48
|
"lib/middleman/features/asset_host.rb",
|
48
49
|
"lib/middleman/features/automatic_image_sizes.rb",
|
@@ -54,12 +55,9 @@ Gem::Specification.new do |s|
|
|
54
55
|
"lib/middleman/features/smush_pngs.rb",
|
55
56
|
"lib/middleman/haml.rb",
|
56
57
|
"lib/middleman/helpers.rb",
|
57
|
-
"lib/middleman/rack/downstream.rb",
|
58
58
|
"lib/middleman/rack/minify_css.rb",
|
59
59
|
"lib/middleman/rack/minify_javascript.rb",
|
60
|
-
"lib/middleman/rack/sprockets+ruby19.rb",
|
61
60
|
"lib/middleman/rack/sprockets.rb",
|
62
|
-
"lib/middleman/rack/static.rb",
|
63
61
|
"lib/middleman/sass.rb",
|
64
62
|
"lib/middleman/template/init.rbt",
|
65
63
|
"lib/middleman/template/views/index.html.haml",
|
@@ -124,7 +122,7 @@ Gem::Specification.new do |s|
|
|
124
122
|
s.add_runtime_dependency(%q<sinatra-content-for>, [">= 0"])
|
125
123
|
s.add_runtime_dependency(%q<rack-test>, [">= 0"])
|
126
124
|
s.add_runtime_dependency(%q<yui-compressor>, [">= 0"])
|
127
|
-
s.add_runtime_dependency(%q<haml>, [">= 3.0.0.
|
125
|
+
s.add_runtime_dependency(%q<haml>, [">= 3.0.0.rc.1"])
|
128
126
|
s.add_runtime_dependency(%q<compass>, [">= 0.10.0.rc3"])
|
129
127
|
s.add_runtime_dependency(%q<fancy-buttons>, [">= 0"])
|
130
128
|
s.add_runtime_dependency(%q<json_pure>, [">= 0"])
|
@@ -143,7 +141,7 @@ Gem::Specification.new do |s|
|
|
143
141
|
s.add_dependency(%q<sinatra-content-for>, [">= 0"])
|
144
142
|
s.add_dependency(%q<rack-test>, [">= 0"])
|
145
143
|
s.add_dependency(%q<yui-compressor>, [">= 0"])
|
146
|
-
s.add_dependency(%q<haml>, [">= 3.0.0.
|
144
|
+
s.add_dependency(%q<haml>, [">= 3.0.0.rc.1"])
|
147
145
|
s.add_dependency(%q<compass>, [">= 0.10.0.rc3"])
|
148
146
|
s.add_dependency(%q<fancy-buttons>, [">= 0"])
|
149
147
|
s.add_dependency(%q<json_pure>, [">= 0"])
|
@@ -163,7 +161,7 @@ Gem::Specification.new do |s|
|
|
163
161
|
s.add_dependency(%q<sinatra-content-for>, [">= 0"])
|
164
162
|
s.add_dependency(%q<rack-test>, [">= 0"])
|
165
163
|
s.add_dependency(%q<yui-compressor>, [">= 0"])
|
166
|
-
s.add_dependency(%q<haml>, [">= 3.0.0.
|
164
|
+
s.add_dependency(%q<haml>, [">= 3.0.0.rc.1"])
|
167
165
|
s.add_dependency(%q<compass>, [">= 0.10.0.rc3"])
|
168
166
|
s.add_dependency(%q<fancy-buttons>, [">= 0"])
|
169
167
|
s.add_dependency(%q<json_pure>, [">= 0"])
|
metadata
CHANGED
@@ -4,10 +4,10 @@ version: !ruby/object:Gem::Version
|
|
4
4
|
prerelease: true
|
5
5
|
segments:
|
6
6
|
- 0
|
7
|
-
-
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
7
|
+
- 14
|
8
|
+
- 0
|
9
|
+
- pre2
|
10
|
+
version: 0.14.0.pre2
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Thomas Reynolds
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-04-
|
18
|
+
date: 2010-04-28 00:00:00 -07:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -138,9 +138,9 @@ dependencies:
|
|
138
138
|
- 3
|
139
139
|
- 0
|
140
140
|
- 0
|
141
|
-
-
|
142
|
-
-
|
143
|
-
version: 3.0.0.
|
141
|
+
- rc
|
142
|
+
- 1
|
143
|
+
version: 3.0.0.rc.1
|
144
144
|
type: :runtime
|
145
145
|
version_requirements: *id010
|
146
146
|
- !ruby/object:Gem::Dependency
|
@@ -280,6 +280,7 @@ files:
|
|
280
280
|
- lib/middleman/base.rb
|
281
281
|
- lib/middleman/builder.rb
|
282
282
|
- lib/middleman/config.ru
|
283
|
+
- lib/middleman/erb.rb
|
283
284
|
- lib/middleman/fastimage.rb
|
284
285
|
- lib/middleman/features/asset_host.rb
|
285
286
|
- lib/middleman/features/automatic_image_sizes.rb
|
@@ -291,12 +292,9 @@ files:
|
|
291
292
|
- lib/middleman/features/smush_pngs.rb
|
292
293
|
- lib/middleman/haml.rb
|
293
294
|
- lib/middleman/helpers.rb
|
294
|
-
- lib/middleman/rack/downstream.rb
|
295
295
|
- lib/middleman/rack/minify_css.rb
|
296
296
|
- lib/middleman/rack/minify_javascript.rb
|
297
|
-
- lib/middleman/rack/sprockets+ruby19.rb
|
298
297
|
- lib/middleman/rack/sprockets.rb
|
299
|
-
- lib/middleman/rack/static.rb
|
300
298
|
- lib/middleman/sass.rb
|
301
299
|
- lib/middleman/template/init.rbt
|
302
300
|
- lib/middleman/template/views/index.html.haml
|
@@ -1,29 +0,0 @@
|
|
1
|
-
module Sprockets
|
2
|
-
class SourceFile
|
3
|
-
def source_lines
|
4
|
-
@lines ||= begin
|
5
|
-
lines = []
|
6
|
-
|
7
|
-
comments = []
|
8
|
-
File.open(pathname.absolute_location, 'rb') do |file|
|
9
|
-
file.each do |line|
|
10
|
-
lines << line = SourceLine.new(self, line, file.lineno)
|
11
|
-
|
12
|
-
if line.begins_pdoc_comment? || comments.any?
|
13
|
-
comments << line
|
14
|
-
end
|
15
|
-
|
16
|
-
if line.ends_multiline_comment?
|
17
|
-
if line.ends_pdoc_comment?
|
18
|
-
comments.each { |l| l.comment! }
|
19
|
-
end
|
20
|
-
comments.clear
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
|
25
|
-
lines
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
class Middleman::Rack::Static
|
2
|
-
def initialize(app, options={})
|
3
|
-
@app = app
|
4
|
-
end
|
5
|
-
|
6
|
-
def call(env)
|
7
|
-
public_file_path = File.join(Middleman::Base.public, env["PATH_INFO"])
|
8
|
-
view_file_path = File.join(Middleman::Base.views, env["PATH_INFO"])
|
9
|
-
|
10
|
-
if File.exists?(public_file_path) && !File.directory?(public_file_path)
|
11
|
-
env["DOWNSTREAM"] = ::Rack::File.new(Middleman::Base.public).call(env)
|
12
|
-
elsif File.exists?(view_file_path) && !File.directory?(view_file_path)
|
13
|
-
env["DOWNSTREAM"] = ::Rack::File.new(Middleman::Base.views).call(env)
|
14
|
-
end
|
15
|
-
|
16
|
-
@app.call(env)
|
17
|
-
end
|
18
|
-
end
|