stylus_assets 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.md
CHANGED
@@ -94,6 +94,16 @@ StylusAssets::StylusTemplate.name_filter = lambda { |n| n.sub /^(templates|style
|
|
94
94
|
|
95
95
|
By default, `name_filter` strips the leading `templates/`, `stylesheets/` and `styles/` directory off of the name.
|
96
96
|
|
97
|
+
#### Variable prefix
|
98
|
+
|
99
|
+
By default, Stylus assets doesn't prefix the style variables with a `$`, but you can configure it to do so:
|
100
|
+
|
101
|
+
```ruby
|
102
|
+
StylusAssets::StylusTemplate.variable_prefix = true
|
103
|
+
```
|
104
|
+
|
105
|
+
All following examples are prefix free.
|
106
|
+
|
97
107
|
## Render
|
98
108
|
|
99
109
|
When you have a template named `header` with the given content:
|
@@ -16,6 +16,9 @@ module StylusAssets
|
|
16
16
|
|
17
17
|
# The JavaScript Style template namespace
|
18
18
|
attr_accessor :namespace
|
19
|
+
|
20
|
+
# The variable prefix
|
21
|
+
attr_accessor :variable_prefix
|
19
22
|
end
|
20
23
|
|
21
24
|
# By default the namespace is JSST (JavaScript Style template)
|
@@ -27,6 +30,9 @@ module StylusAssets
|
|
27
30
|
# The default mime type of the tilt template
|
28
31
|
self.default_mime_type = 'application/javascript'
|
29
32
|
|
33
|
+
# If the variable should be prefixed with a $ sign
|
34
|
+
self.variable_prefix = false
|
35
|
+
|
30
36
|
# Test if the compiler is initialized.
|
31
37
|
#
|
32
38
|
# @return [Boolean] the initialization status
|
@@ -2,6 +2,12 @@
|
|
2
2
|
#
|
3
3
|
class window.StylusAssets
|
4
4
|
|
5
|
+
# Whether to prefix variables with a $ on not
|
6
|
+
@prefixVariables = <%= StylusAssets::StylusTemplate.variable_prefix %>
|
7
|
+
|
8
|
+
# Test if object is an array
|
9
|
+
@isArray = Array.isArray or (obj) -> !!(obj and obj.concat and obj.unshift and not obj.callee)
|
10
|
+
|
5
11
|
# Render stylus css with its variables to plain css
|
6
12
|
#
|
7
13
|
# @param [String] css the stylus css
|
@@ -12,21 +18,27 @@ class window.StylusAssets
|
|
12
18
|
@render: (name, css, variables = {}, doc = undefined) ->
|
13
19
|
result = undefined
|
14
20
|
newVariables = {}
|
15
|
-
|
21
|
+
prefix = if StylusAssets.prefixVariables then '$' else ''
|
22
|
+
|
16
23
|
# Replace existing less variables
|
17
24
|
#
|
18
25
|
for variable, value of variables
|
19
|
-
existing =
|
26
|
+
existing = ///\$?#{ variable }\s*=.*///
|
27
|
+
|
28
|
+
if StylusAssets.isArray(value)
|
29
|
+
list = ''
|
30
|
+
list += "'#{ v }' " for v in value
|
31
|
+
value = list.substring(0, list.length - 1)
|
20
32
|
|
21
33
|
if existing.test css
|
22
|
-
css = css.replace existing, "#{ variable } = #{ value }"
|
34
|
+
css = css.replace existing, "#{ prefix }#{ variable } = #{ value }"
|
23
35
|
else
|
24
36
|
newVariables[variable] = value
|
25
37
|
|
26
38
|
# Add bew Stylus variables
|
27
39
|
#
|
28
40
|
style = ''
|
29
|
-
style += "#{ variable } = #{ value }\n" for variable, value of newVariables
|
41
|
+
style += "#{ prefix }#{ variable } = #{ value }\n" for variable, value of newVariables
|
30
42
|
style += css
|
31
43
|
|
32
44
|
# Compile the Stylus stylesheet
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stylus_assets
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-06-
|
12
|
+
date: 2012-06-26 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: tilt
|
@@ -71,7 +71,7 @@ files:
|
|
71
71
|
- lib/stylus_assets/version.rb
|
72
72
|
- lib/stylus_assets.rb
|
73
73
|
- vendor/assets/javascripts/stylus.js
|
74
|
-
- vendor/assets/javascripts/stylus_assets.js.coffee
|
74
|
+
- vendor/assets/javascripts/stylus_assets.js.coffee.erb
|
75
75
|
- LICENSE
|
76
76
|
- README.md
|
77
77
|
homepage: https://github.com/netzpirat/stylus_assets
|
@@ -88,7 +88,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
88
88
|
version: '0'
|
89
89
|
segments:
|
90
90
|
- 0
|
91
|
-
hash:
|
91
|
+
hash: -1206232681905005782
|
92
92
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
93
93
|
none: false
|
94
94
|
requirements:
|