Bug 27072: Don't process staff interface CSS with rtlcss
authorOwen Leonard <oleonard@myacpl.org>
Mon, 23 Nov 2020 14:15:14 +0000 (14:15 +0000)
committerJonathan Druart <jonathan.druart@bugs.koha-community.org>
Tue, 24 Nov 2020 20:27:59 +0000 (21:27 +0100)
This patch changes Koha's gulpfile to add a check for the "OPAC" context
before using rtlcss to automatically build right-to-left versions of
CSS.

To test, apply the patch and test the process of building CSS for both
the OPAC and staff client:

- "yarn css --view opac" : This should build unminified CSS for the
    OPAC, including map files in bootstrap/css/maps

- "yarn build --view opac" : This should build minified CSS for the
  OPAC and generate the RTL versions.

- "yarn css" : This should build unminified CSS for the staff
  interface, including map files in prog/css/maps.

- "yarn build" : This should build minified CSS for the
   staff interface, with no creation of RTL versions.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
gulpfile.js

index 1a37a15..cc3ba2e 100644 (file)
@@ -42,35 +42,47 @@ var sassOptions = {
 
 // CSS processing for development
 function css() {
-    return src(css_base + "/src/**/*.scss")
+    var stream = src(css_base + "/src/**/*.scss")
         .pipe(sourcemaps.init())
         .pipe(sass(sassOptions).on('error', sass.logError))
         .pipe(autoprefixer())
-        .pipe(sourcemaps.write('./maps'))
-        .pipe(dest(css_base))
+        .pipe(dest(css_base));
 
-        .pipe(rtlcss())
-        .pipe(rename({
-            suffix: '-rtl'
-        })) // Append "-rtl" to the filename.
+    if (args.view == "opac") {
+        stream = stream
+            .pipe(rtlcss())
+            .pipe(rename({
+                suffix: '-rtl'
+            })) // Append "-rtl" to the filename.
+            .pipe(dest(css_base));
+    }
+
+    stream = stream.pipe(sourcemaps.write('./maps'))
         .pipe(dest(css_base));
+
+    return stream;
+
 }
 
 // CSS processing for production
 function build() {
-    return src(css_base + "/src/**/*.scss")
+    var stream = src(css_base + "/src/**/*.scss")
         .pipe(sass(sassOptions).on('error', sass.logError))
         .pipe(autoprefixer())
         .pipe(cssnano({
             zindex: false
         }))
-        .pipe(dest(css_base))
+        .pipe(dest(css_base));
 
-        .pipe(rtlcss())
+    if( args.view == "opac" ){
+        stream = stream.pipe(rtlcss())
         .pipe(rename({
             suffix: '-rtl'
         })) // Append "-rtl" to the filename.
         .pipe(dest(css_base));
+    }
+
+    return stream;
 }
 
 const poTasks = {