Class: Fuse::Document::Asset::StyleSheet
Direct Known Subclasses
Sass
Defined Under Namespace
Classes: Conditional, Sass
Constant Summary
collapse
- EMBED_WITH =
'style'
- JOIN_WITH =
''
- MEDIA_PATTERN =
/\(([a-z]+(?:,\s*[a-z]+)*)\)(?:\.[a-z]+$|\s*\()/i
HasDependents::COMMENT_PATTERN, HasDependents::REQUIRE_PATTERN
TYPES
Instance Attribute Summary
#path
Instance Method Summary
collapse
#dependents
[], #call, #extension, #filter?, #filtered, for, #full_path, #initialize, #raw, #relative_path, #to_datauri
Instance Method Details
#compress ⇒ Object
33
34
35
36
37
38
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 33
def compress
original = raw
compressed = ::Sass.compile original, style: :compressed
Fuse.log "SASS: Compressed #{path} from #{original.bytesize} bytes to #{compressed.bytesize} bytes", :success
compressed
end
|
#conditional ⇒ Object
25
26
27
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 25
def conditional
@conditional ||= Conditional.new self
end
|
#conditional_signature ⇒ Object
29
30
31
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 29
def conditional_signature
conditional.signature
end
|
21
22
23
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 21
def media
@media ||= (match = MEDIA_PATTERN.match(path)) && match[1].split(/,\s*/).sort.join(', ')
end
|
#reference_with ⇒ Object
10
11
12
13
14
15
16
17
18
19
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 10
def reference_with
{
tag_name: 'link',
attributes: {
rel: 'stylesheet',
href: relative_path,
media: media
}
}
end
|
#type ⇒ Object
40
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 40
def type; 'text/css' end
|