Browse Source

Changed bootstrap-sass back to bootstrap (with less). Theme now loads before the preloader is shown.

n1474335 8 years ago
parent
commit
823b276ef5

+ 2 - 2
Gruntfile.js

@@ -186,11 +186,11 @@ module.exports = function (grunt) {
                             })
                         },
                         {
-                            test: /\.scss$/,
+                            test: /\.less$/,
                             loader: ExtractTextPlugin.extract({
                                 use: [
                                     { loader: "css-loader?minimize" },
-                                    { loader: "sass-loader" }
+                                    { loader: "less-loader" }
                                 ]
                             })
                         },

+ 2 - 2
package.json

@@ -34,6 +34,7 @@
     "babel-loader": "^6.4.0",
     "babel-polyfill": "^6.23.0",
     "babel-preset-env": "^1.2.2",
+    "bootstrap": "^3.3.7",
     "css-loader": "^0.27.3",
     "exports-loader": "^0.6.4",
     "extract-text-webpack-plugin": "^2.1.0",
@@ -51,9 +52,8 @@
     "html-webpack-plugin": "^2.28.0",
     "imports-loader": "^0.7.1",
     "ink-docstrap": "^1.1.4",
-    "node-sass": "^4.5.2",
-    "sass-loader": "^6.0.3",
     "jsdoc-babel": "^0.3.0",
+    "less-loader": "^4.0.3",
     "style-loader": "^0.15.0",
     "url-loader": "^0.5.8",
     "web-resource-inliner": "^4.1.0",

+ 5 - 0
src/web/html/index.html

@@ -30,6 +30,11 @@
         <meta name="keywords" content="base64, hex, decode, encode, encrypt, decrypt, compress, decompress, regex, regular expressions, hash, crypt, hexadecimal, user agent, url, certificate, x.509, parser, JSON, gzip,  md5, sha1, aes, des, blowfish, xor" />
 
         <link rel="icon" type="image/ico" href="<%- require('../static/images/favicon.ico') %>" />
+
+        <script type="application/javascript">
+            // Load theme before the preloader is shown
+            document.querySelector(":root").className = JSON.parse(localStorage.getItem("options")).theme;
+        </script>
     </head>
     <body>
         <!-- Preloader overlay -->

+ 1 - 1
src/web/index.js

@@ -9,7 +9,7 @@ import "./stylesheets/main.js";
 
 // Libs
 import "babel-polyfill";
-import "bootstrap-sass";
+import "bootstrap";
 import "bootstrap-switch";
 import "bootstrap-colorpicker";
 import CanvasComponents from "../core/lib/canvascomponents.js";

+ 1 - 1
src/web/stylesheets/main.js

@@ -10,7 +10,7 @@
 import "google-code-prettify/src/prettify.css";
 
 /* Frameworks */
-import "./vendors/bootstrap.scss";
+import "./vendors/bootstrap.less";
 import "bootstrap-switch/dist/css/bootstrap3/bootstrap-switch.css";
 import "bootstrap-colorpicker/dist/css/bootstrap-colorpicker.css";
 

+ 58 - 0
src/web/stylesheets/vendors/bootstrap.less

@@ -0,0 +1,58 @@
+/**
+ * Bootstrap imports
+ *
+ * @author n1474335 [n1474335@gmail.com]
+ * @copyright Crown Copyright 2017
+ * @license Apache-2.0
+ */
+
+// Core variables and mixins
+@import "~bootstrap/less/variables.less";
+@import "~bootstrap/less/mixins.less";
+
+// Reset and dependencies
+@import "~bootstrap/less/normalize.less";
+@import "~bootstrap/less/print.less";
+// @import "~bootstrap/less/glyphicons.less";
+
+// Core CSS
+@import "~bootstrap/less/scaffolding.less";
+@import "~bootstrap/less/type.less";
+@import "~bootstrap/less/code.less";
+// @import "~bootstrap/less/grid.less";
+@import "~bootstrap/less/tables.less";
+@import "~bootstrap/less/forms.less";
+@import "~bootstrap/less/buttons.less";
+
+// Components
+@import "~bootstrap/less/component-animations.less";
+@import "~bootstrap/less/dropdowns.less";
+@import "~bootstrap/less/button-groups.less";
+@import "~bootstrap/less/input-groups.less";
+@import "~bootstrap/less/navs.less";
+// @import "~bootstrap/less/navbar.less";
+// @import "~bootstrap/less/breadcrumbs.less";
+// @import "~bootstrap/less/pagination.less";
+// @import "~bootstrap/less/pager.less";
+@import "~bootstrap/less/labels.less";
+// @import "~bootstrap/less/badges.less";
+// @import "~bootstrap/less/jumbotron.less";
+// @import "~bootstrap/less/thumbnails.less";
+@import "~bootstrap/less/alerts.less";
+@import "~bootstrap/less/progress-bars.less";
+// @import "~bootstrap/less/media.less";
+@import "~bootstrap/less/list-group.less";
+@import "~bootstrap/less/panels.less";
+// @import "~bootstrap/less/responsive-embed.less";
+// @import "~bootstrap/less/wells.less";
+@import "~bootstrap/less/close.less";
+
+// Components w/ JavaScript
+@import "~bootstrap/less/modals.less";
+@import "~bootstrap/less/tooltip.less";
+@import "~bootstrap/less/popovers.less";
+// @import "~bootstrap/less/carousel.less";
+
+// Utility classes
+@import "~bootstrap/less/utilities.less";
+// @import "~bootstrap/less/responsive-utilities.less";

+ 0 - 58
src/web/stylesheets/vendors/bootstrap.scss

@@ -1,58 +0,0 @@
-/**
- * Bootstrap imports
- *
- * @author n1474335 [n1474335@gmail.com]
- * @copyright Crown Copyright 2017
- * @license Apache-2.0
- */
-
-// Core variables and mixins
-@import "~bootstrap-sass/assets/stylesheets/~bootstrap-sass/assets/stylesheets/bootstrap/variables";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/mixins";
-
-// Reset and dependencies
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/normalize";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/print";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/glyphicons";
-
-// Core CSS
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/scaffolding";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/type";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/code";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/grid";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/tables";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/forms";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/buttons";
-
-// Components
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/component-animations";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/dropdowns";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/button-groups";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/input-groups";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/navs";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/navbar";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/breadcrumbs";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/pagination";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/pager";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/labels";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/badges";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/jumbotron";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/thumbnails";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/alerts";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/progress-bars";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/media";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/list-group";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/panels";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/responsive-embed";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/wells";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/close";
-
-// Components w/ JavaScript
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/modals";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/tooltip";
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/popovers";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/carousel";
-
-// Utility classes
-@import "~bootstrap-sass/assets/stylesheets/bootstrap/utilities";
-// @import "~bootstrap-sass/assets/stylesheets/bootstrap/responsive-utilities";