rtlize 0.1.0 → 0.2.1
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.rdoc +1 -1
- data/Rakefile +6 -0
- data/lib/rtlize/rtlizer.rb +49 -7
- data/lib/rtlize/version.rb +1 -1
- data/test/dummy/log/development.log +2 -5
- data/test/dummy/log/test.log +1595 -3
- data/test/unit/rtlizer_test.rb +48 -0
- metadata +11 -7
- data/test/dummy/db/development.sqlite3 +0 -0
data/README.rdoc
CHANGED
@@ -8,7 +8,7 @@ RTLize is a rails plugin that semi-automatically allows you to use the same styl
|
|
8
8
|
|
9
9
|
To add RTLize to your Rails application, all you need to do is add the following line to your Gemfile:
|
10
10
|
|
11
|
-
gem 'rtlize'
|
11
|
+
gem 'rtlize'
|
12
12
|
|
13
13
|
Then run `bundle install` and you'll be all set.
|
14
14
|
|
data/Rakefile
CHANGED
data/lib/rtlize/rtlizer.rb
CHANGED
@@ -44,6 +44,8 @@ module Rtlize
|
|
44
44
|
'border-width' => :quad,
|
45
45
|
'padding' => :quad,
|
46
46
|
'margin' => :quad,
|
47
|
+
'clip' => :rect,
|
48
|
+
'cursor' => :cursor,
|
47
49
|
'text-align' => :rtltr,
|
48
50
|
'float' => :rtltr,
|
49
51
|
'clear' => :rtltr,
|
@@ -51,9 +53,13 @@ module Rtlize
|
|
51
53
|
'border-radius' => :quad_radius,
|
52
54
|
'-webkit-border-radius' => :quad_radius,
|
53
55
|
'-moz-border-radius' => :quad_radius,
|
54
|
-
'box-shadow' => :
|
55
|
-
'-webkit-box-shadow' => :
|
56
|
-
'-moz-box-shadow' => :
|
56
|
+
'box-shadow' => :shadow,
|
57
|
+
'-webkit-box-shadow' => :shadow,
|
58
|
+
'-moz-box-shadow' => :shadow,
|
59
|
+
'text-shadow' => :shadow,
|
60
|
+
'-webkit-text-shadow' => :shadow,
|
61
|
+
'-moz-text-shadow' => :shadow,
|
62
|
+
'rotation' => :deg,
|
57
63
|
}
|
58
64
|
|
59
65
|
class << self
|
@@ -114,6 +120,17 @@ module Rtlize
|
|
114
120
|
v == 'ltr' ? 'rtl' : v == 'rtl' ? 'ltr' : v
|
115
121
|
end
|
116
122
|
|
123
|
+
def rect(v)
|
124
|
+
if v.match(/rect\([^)]*\)/)
|
125
|
+
v.gsub(/\([^)]*\)/) do |m|
|
126
|
+
parts = m.gsub(/[()]/, '').split(',').map(&:strip)
|
127
|
+
"(#{parts[0]}, #{parts[3]}, #{parts[2]}, #{parts[1]})"
|
128
|
+
end
|
129
|
+
else
|
130
|
+
v
|
131
|
+
end
|
132
|
+
end
|
133
|
+
|
117
134
|
def quad(v)
|
118
135
|
# 1px 2px 3px 4px => 1px 4px 3px 2px
|
119
136
|
m = v.split(/\s+/)
|
@@ -134,21 +151,46 @@ module Rtlize
|
|
134
151
|
end
|
135
152
|
end
|
136
153
|
|
137
|
-
def
|
154
|
+
def cursor(v)
|
155
|
+
if v.match(/^[ns]?e-resize$/)
|
156
|
+
v.gsub(/e-resize/, 'w-resize')
|
157
|
+
elsif v.match(/^[ns]?w-resize$/)
|
158
|
+
v.gsub(/w-resize/, 'e-resize')
|
159
|
+
else
|
160
|
+
v
|
161
|
+
end
|
162
|
+
end
|
163
|
+
|
164
|
+
def shadow(v)
|
138
165
|
found = false
|
139
|
-
v.gsub(/rgba\([^)]*\)
|
166
|
+
v.gsub(/rgba\([^)]*\)|,|#[0-9A-Fa-f]*|[-0-9.px]+/) do |m|
|
140
167
|
if m == ","
|
141
168
|
# this property can take several comma-seperated values, we account for that, and transform each one correctly.
|
142
169
|
found = false
|
143
170
|
m
|
144
|
-
elsif m.match(/rgba\([^)]*\)
|
171
|
+
elsif m.match(/rgba\([^)]*\)|#[0-9A-Fa-f]*/) || found
|
145
172
|
m
|
146
173
|
else
|
147
174
|
found = true
|
148
|
-
m.
|
175
|
+
if m.to_f.zero?
|
176
|
+
m
|
177
|
+
else
|
178
|
+
m.chars.first == '-' ? m[1..-1] : '-' + m
|
179
|
+
end
|
149
180
|
end
|
150
181
|
end
|
151
182
|
end
|
183
|
+
|
184
|
+
def deg(v)
|
185
|
+
if v == '0'
|
186
|
+
v
|
187
|
+
else
|
188
|
+
old_angle = v.to_f
|
189
|
+
new_angle = 360 - old_angle
|
190
|
+
new_angle = new_angle.to_i if new_angle == new_angle.to_i # If it's an integer, write it without a decimal part.
|
191
|
+
v.gsub(/[0-9.]+/, new_angle.to_s)
|
192
|
+
end
|
193
|
+
end
|
152
194
|
end
|
153
195
|
end
|
154
196
|
end
|
data/lib/rtlize/version.rb
CHANGED
@@ -1,6 +1,3 @@
|
|
1
1
|
Connecting to database specified by database.yml
|
2
|
-
|
3
|
-
|
4
|
-
[1m[36m (0.2ms)[0m [1mPRAGMA index_list("schema_migrations")[0m
|
5
|
-
[1m[35m (124.6ms)[0m CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
|
6
|
-
[1m[36m (0.7ms)[0m [1mSELECT "schema_migrations"."version" FROM "schema_migrations" [0m
|
2
|
+
Connecting to database specified by database.yml
|
3
|
+
Connecting to database specified by database.yml
|