add StaticFileDrop
This commit is contained in:
parent
20d2eb2709
commit
229769e249
|
@ -0,0 +1,11 @@
|
||||||
|
module Jekyll
|
||||||
|
module Drops
|
||||||
|
class StaticFileDrop < Drop
|
||||||
|
extend Forwardable
|
||||||
|
def_delegators :@obj, :name, :extname, :modified_time, :basename
|
||||||
|
def_delegator :@obj, :relative_path, :path
|
||||||
|
def_delegator :@obj, :data, :fallback_data
|
||||||
|
def_delegator :@obj, :type, :collection
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -28,6 +28,10 @@ module Jekyll
|
||||||
@collection = collection
|
@collection = collection
|
||||||
@relative_path = File.join(*[@dir, @name].compact)
|
@relative_path = File.join(*[@dir, @name].compact)
|
||||||
@extname = File.extname(@name)
|
@extname = File.extname(@name)
|
||||||
|
|
||||||
|
data.default_proc = proc do |_, key|
|
||||||
|
site.frontmatter_defaults.find(relative_path, type, key)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
# rubocop: enable ParameterLists
|
# rubocop: enable ParameterLists
|
||||||
|
|
||||||
|
@ -96,13 +100,15 @@ module Jekyll
|
||||||
end
|
end
|
||||||
|
|
||||||
def to_liquid
|
def to_liquid
|
||||||
{
|
@to_liquid ||= Drops::StaticFileDrop.new(self)
|
||||||
"basename" => File.basename(name, extname),
|
end
|
||||||
"name" => name,
|
|
||||||
"extname" => extname,
|
def data
|
||||||
"modified_time" => modified_time,
|
@data ||= {}
|
||||||
"path" => File.join("", relative_path),
|
end
|
||||||
}
|
|
||||||
|
def basename
|
||||||
|
File.basename(name, extname)
|
||||||
end
|
end
|
||||||
|
|
||||||
def placeholders
|
def placeholders
|
||||||
|
|
|
@ -148,8 +148,9 @@ class TestStaticFile < JekyllUnitTest
|
||||||
"extname" => ".txt",
|
"extname" => ".txt",
|
||||||
"modified_time" => @static_file.modified_time,
|
"modified_time" => @static_file.modified_time,
|
||||||
"path" => "/static_file.txt",
|
"path" => "/static_file.txt",
|
||||||
|
"collection" => nil
|
||||||
}
|
}
|
||||||
assert_equal expected, @static_file.to_liquid
|
assert_equal expected, @static_file.to_liquid.to_h
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue