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, const_missing, #extension, #filter?, #filtered, for, #full_path, #initialize, #raw, #relative_path, #to_datauri
Instance Method Details
#compress ⇒ Object
35
36
37
38
39
40
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 35
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
27
28
29
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 27
def conditional
@conditional ||= Conditional.new self
end
|
#conditional_signature ⇒ Object
31
32
33
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 31
def conditional_signature
conditional.signature
end
|
23
24
25
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 23
def media
@media ||= (match = MEDIA_PATTERN.match(path)) && match[1].split(/,\s*/).sort.join(', ')
end
|
#reference_with ⇒ Object
12
13
14
15
16
17
18
19
20
21
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 12
def reference_with
{
tag_name: 'link',
attributes: {
rel: 'stylesheet',
href: relative_path,
media: media
}
}
end
|
#type ⇒ Object
42
|
# File 'lib/fuse/document/asset/style_sheet.rb', line 42
def type; 'text/css' end
|