]>
Commit | Line | Data |
---|---|---|
6527f429 DM |
1 | <project name="x-sass-impl">\r |
2 | \r | |
3 | <target name="-init-sass-compiler" depends="-init-compiler">\r | |
4 | <x-normalize-path path="${build.out.resources.dir}"\r | |
5 | property="image.search.path"/>\r | |
6 | <condition property="is.theme.package" value="true">\r | |
7 | <equals arg1="${package.type}" arg2="theme"/>\r | |
8 | </condition>\r | |
9 | </target>\r | |
10 | \r | |
11 | <target name="-compile-sass-rtl-theme" depends="-init-sass-compiler" if="is.theme.package">\r | |
12 | <x-compile refid="${compiler.ref.id}">\r | |
13 | <![CDATA[\r | |
14 | include\r | |
15 | -all\r | |
16 | and\r | |
17 | sass\r | |
18 | -etc=true\r | |
19 | -vars=true\r | |
20 | -rules=true\r | |
21 | -class-name-vars=true\r | |
22 | -variable=$image-search-path:'${image.search.path}' !default\r | |
23 | -variable=$theme-name: '${package.name}' !default\r | |
24 | -output=${build.all.rtl.scss}\r | |
25 | -forward=${package.sass.dynamic}\r | |
26 | and\r | |
27 | sass\r | |
28 | -ruby=true\r | |
29 | -output=${build.all.ruby}\r | |
30 | ]]>\r | |
31 | </x-compile>\r | |
32 | </target>\r | |
33 | \r | |
34 | <target name="-compile-sass-ltr-theme" depends="-init-sass-compiler" if="is.theme.package">\r | |
35 | <x-compile refid="${compiler.ref.id}">\r | |
36 | <![CDATA[\r | |
37 | exclude\r | |
38 | -all\r | |
39 | and\r | |
40 | include\r | |
41 | -not\r | |
42 | -namespace=Ext.rtl\r | |
43 | and\r | |
44 | sass\r | |
45 | -etc=true\r | |
46 | -vars=true\r | |
47 | -rules=true\r | |
48 | -class-name-vars=true\r | |
49 | -variable=$image-search-path:'${image.search.path}' !default\r | |
50 | -variable=$theme-name: '${theme.name}' !default\r | |
51 | -output=${build.all.scss}\r | |
52 | -forward=${package.sass.dynamic}\r | |
53 | and\r | |
54 | sass\r | |
55 | -ruby=true\r | |
56 | -output=${build.all.ruby}\r | |
57 | ]]>\r | |
58 | </x-compile>\r | |
59 | </target>\r | |
60 | \r | |
61 | <target name="-compile-sass-rtl" depends="-init-sass-compiler" unless="is.theme.package">\r | |
62 | <x-compile refid="${compiler.ref.id}">\r | |
63 | <![CDATA[\r | |
64 | exclude\r | |
65 | -all\r | |
66 | and\r | |
67 | include\r | |
68 | -tag=package-${package.name}\r | |
69 | and\r | |
70 | save\r | |
71 | pkg\r | |
72 | and\r | |
73 | sass\r | |
74 | -class-name-vars=true\r | |
75 | -variable=$image-search-path:'${image.search.path}' !default\r | |
76 | -variable=$theme-name: '${theme.name}' !default\r | |
77 | -output=${build.all.rtl.scss}\r | |
78 | -forward=${package.sass.dynamic}\r | |
79 | and\r | |
80 | include\r | |
81 | -all\r | |
82 | and\r | |
83 | save\r | |
84 | all\r | |
85 | and\r | |
86 | sass\r | |
87 | -etc=true\r | |
88 | -vars=true\r | |
89 | +append\r | |
90 | -output=${build.all.rtl.scss}\r | |
91 | -forward=${package.sass.dynamic}\r | |
92 | and\r | |
93 | restore\r | |
94 | pkg\r | |
95 | and\r | |
96 | sass\r | |
97 | -rules=true\r | |
98 | +append\r | |
99 | -output=${build.all.rtl.scss}\r | |
100 | and\r | |
101 | sass\r | |
102 | -ruby=true\r | |
103 | -output=${build.all.ruby}\r | |
104 | ]]>\r | |
105 | </x-compile>\r | |
106 | </target>\r | |
107 | \r | |
108 | <target name="-compile-sass-ltr" depends="-init-sass-compiler" unless="is.theme.package">\r | |
109 | <x-compile refid="${compiler.ref.id}">\r | |
110 | <![CDATA[\r | |
111 | exclude\r | |
112 | -all\r | |
113 | and\r | |
114 | include\r | |
115 | -tag=package-${package.name}\r | |
116 | and\r | |
117 | save\r | |
118 | pkg\r | |
119 | and\r | |
120 | sass\r | |
121 | -class-name-vars=true\r | |
122 | -variable=$image-search-path:'${image.search.path}' !default\r | |
123 | -variable=$theme-name: '${theme.name}' !default\r | |
124 | -output=${build.all.scss}\r | |
125 | -forward=${package.sass.dynamic}\r | |
126 | and\r | |
127 | exclude\r | |
128 | -all\r | |
129 | and\r | |
130 | include\r | |
131 | -not\r | |
132 | -namespace=Ext.rtl\r | |
133 | and\r | |
134 | save\r | |
135 | all-rtl\r | |
136 | and\r | |
137 | sass\r | |
138 | -etc=true\r | |
139 | -vars=true\r | |
140 | +append\r | |
141 | -output=${build.all.scss}\r | |
142 | -forward=${package.sass.dynamic}\r | |
143 | and\r | |
144 | restore\r | |
145 | pkg\r | |
146 | and\r | |
147 | sass\r | |
148 | -rules=true\r | |
149 | +append\r | |
150 | -output=${build.all.scss}\r | |
151 | and\r | |
152 | sass\r | |
153 | -ruby=true\r | |
154 | -output=${build.all.ruby}\r | |
155 | ]]>\r | |
156 | </x-compile>\r | |
157 | </target>\r | |
158 | \r | |
159 | <target name="-compile-sass"\r | |
160 | depends="-compile-sass-rtl-theme,-compile-sass-ltr-theme,-compile-sass-rtl,-compile-sass-ltr">\r | |
161 | <echo file="${package.example.compass.config}">\r | |
162 | require '${build.all.ruby}'\r | |
163 | cache_path = '${compass.cache.dir}'\r | |
164 | </echo>\r | |
165 | </target>\r | |
166 | \r | |
167 | <macrodef name="x-compress-css-files">\r | |
168 | <attribute name="dir"/>\r | |
169 | <attribute name="prefix"/>\r | |
170 | <attribute name="outprefix"/>\r | |
171 | <sequential>\r | |
172 | <x-split-css file="@{dir}/@{prefix}.css"\r | |
173 | outdir="${build.resources.dir}"\r | |
174 | limit="${build.css.selector.limit}"/>\r | |
175 | \r | |
176 | <for param="cssfile">\r | |
177 | <fileset dir="@{dir}" includes="@{prefix}*.css"/>\r | |
178 | <sequential>\r | |
179 | <local name="css.output.name"/>\r | |
180 | <local name="pattern"/>\r | |
181 | <property name="pattern" value="(.*?)(@{prefix})(_\d{1,2})*\.css"/>\r | |
182 | <propertyregex property="css.output.name"\r | |
183 | input="@{cssfile}"\r | |
184 | regexp="${pattern}"\r | |
185 | select="\1@{outprefix}\3.css"\r | |
186 | override="true"/>\r | |
187 | <x-echo>Compressing @{cssfile} to ${css.output.name}</x-echo>\r | |
188 | <x-compress-css srcfile="@{cssfile}"\r | |
189 | outfile="${css.output.name}"/>\r | |
190 | </sequential>\r | |
191 | </for>\r | |
192 | \r | |
193 | <replaceregexp file="@{dir}/@{outprefix}.css"\r | |
194 | match="@import '@{prefix}(_\d\d).css';"\r | |
195 | replace="@import '@{outprefix}\1.css';"\r | |
196 | flags="g"/>\r | |
197 | </sequential>\r | |
198 | </macrodef>\r | |
199 | \r | |
200 | <macrodef name="x-fashion-build-css">\r | |
201 | <attribute name="dir"/>\r | |
202 | <attribute name="outdir"/>\r | |
203 | <attribute name="suffix"/>\r | |
204 | <attribute name="compress"/>\r | |
205 | <sequential>\r | |
206 | <for param="cssfile">\r | |
207 | <fileset dir="@{dir}" includes="*.scss"/>\r | |
208 | <sequential>\r | |
209 | <local name="css.output.name"/>\r | |
210 | \r | |
211 | <x-script-def name="x-calc-path">\r | |
212 | <attribute name="file"/>\r | |
213 | <attribute name="dir"/>\r | |
214 | <attribute name="outdir"/>\r | |
215 | <attribute name="suffix"/>\r | |
216 | <![CDATA[\r | |
217 | \r | |
218 | importPackage(java.io);\r | |
219 | \r | |
220 | var file = attributes.get('file') + '',\r | |
221 | dir = attributes.get('dir') + '',\r | |
222 | outdir = attributes.get('outdir') + '',\r | |
223 | name = new File(file).getName() + '',\r | |
224 | suffix = attributes.get('suffix') + '',\r | |
225 | outName;\r | |
226 | \r | |
227 | name = name.replace(/-debug\.scss/g, suffix + '.css');\r | |
228 | outName = new File(outdir, name).getAbsolutePath();\r | |
229 | project.setProperty('css.output.name', outName);\r | |
230 | \r | |
231 | ]]>\r | |
232 | </x-script-def>\r | |
233 | \r | |
234 | <x-calc-path file="@{cssfile}"\r | |
235 | dir="@{dir}"\r | |
236 | outdir="@{outdir}"\r | |
237 | suffix="@{suffix}"/>\r | |
238 | \r | |
239 | <x-echo>Building @{cssfile} to ${css.output.name}</x-echo>\r | |
240 | \r | |
241 | <x-sass-build input="@{cssfile}"\r | |
242 | output="${css.output.name}"\r | |
243 | refId="package.web.server"\r | |
244 | split="${build.css.selector.limit}"\r | |
245 | compress="@{compress}"/>\r | |
246 | \r | |
247 | </sequential>\r | |
248 | </for>\r | |
249 | </sequential>\r | |
250 | </macrodef>\r | |
251 | \r | |
252 | <target name="-compass-compile" depends="-load-sass-page,-compile-sass">\r | |
253 | <if>\r | |
254 | <x-is-true value="${package.sass.fashion}"/>\r | |
255 | <then>\r | |
256 | <if>\r | |
257 | <x-is-false value="${package.sass.rhino}"/>\r | |
258 | <then>\r | |
259 | <x-fashion-build-css\r | |
260 | dir="${package.sass.build.dir}"\r | |
261 | outdir="${build.resources.dir}"\r | |
262 | suffix="-debug"\r | |
263 | compress="false"/>\r | |
264 | <x-fashion-build-css\r | |
265 | dir="${package.sass.build.dir}"\r | |
266 | outdir="${build.resources.dir}"\r | |
267 | suffix=""\r | |
268 | compress="true"/>\r | |
269 | </then>\r | |
270 | <else>\r | |
271 | <x-fashion-compile\r | |
272 | file="${compass.sass.dir}"\r | |
273 | toFile="${compass.css.dir}"/>\r | |
274 | </else>\r | |
275 | </if>\r | |
276 | \r | |
277 | </then>\r | |
278 | <else>\r | |
279 | <x-compass-compile\r | |
280 | rubyPath="${build.ruby.path}"\r | |
281 | trace="${compass.compile.trace}"\r | |
282 | boring="${compass.compile.boring}"\r | |
283 | force="${compass.compile.force}"\r | |
284 | dir="${compass.working.dir}"\r | |
285 | sassdir="${compass.sass.dir}"\r | |
286 | cssdir="${compass.css.dir}"\r | |
287 | config="${package.example.compass.config}"/>\r | |
288 | </else>\r | |
289 | </if>\r | |
290 | </target>\r | |
291 | \r | |
292 | <target name="-compile-css" depends="-compass-compile">\r | |
293 | <if>\r | |
294 | <not><x-is-true value="${package.sass.fashion}"/></not>\r | |
295 | <then>\r | |
296 | <x-compress-css-files\r | |
297 | dir="${build.resources.dir}"\r | |
298 | prefix="${build.all.css.debug.prefix}"\r | |
299 | outprefix="${build.all.css.prefix}"/>\r | |
300 | \r | |
301 | <x-compress-css-files\r | |
302 | dir="${build.resources.dir}"\r | |
303 | prefix="${build.all.rtl.css.debug.prefix}"\r | |
304 | outprefix="${build.all.rtl.css.prefix}"/>\r | |
305 | </then>\r | |
306 | </if>\r | |
307 | </target>\r | |
308 | \r | |
309 | <target name="-before-sass"/>\r | |
310 | <target name="-sass" depends="-compile-css"/>\r | |
311 | <target name="-after-sass"/>\r | |
312 | \r | |
313 | </project> |