Browse Source

HUE-8687 [frontend] Fix less generation and add style linter

Johan Ahlen 6 năm trước cách đây
mục cha
commit
0d0a776cb9
72 tập tin đã thay đổi với 1567 bổ sung607 xóa
  1. 7 0
      .stylelintrc.json
  2. 3 2
      Gruntfile.js
  3. 10 10
      apps/filebrowser/src/filebrowser/static/filebrowser/less/listdir_components.less
  4. 6 6
      apps/hbase/src/hbase/static/hbase/less/hbase.less
  5. 14 14
      apps/jobbrowser/src/jobbrowser/static/jobbrowser/less/jobbrowser-embeddable.less
  6. 4 4
      apps/metastore/src/metastore/static/metastore/less/metastore.less
  7. 2 2
      apps/oozie/src/oozie/static/oozie/less/common-editor.less
  8. 2 2
      apps/oozie/src/oozie/static/oozie/less/coordinator.less
  9. 1 1
      apps/oozie/src/oozie/static/oozie/less/workflow-editor.less
  10. 17 17
      apps/oozie/src/oozie/static/oozie/less/workflow.less
  11. 5 5
      apps/security/src/security/static/security/less/security.less
  12. 1 1
      apps/sqoop/src/sqoop/static/sqoop/less/sqoop.less
  13. 0 0
      desktop/core/src/desktop/static/desktop/css/home.css
  14. 0 0
      desktop/core/src/desktop/static/desktop/css/hue-bootstrap-embedded.css
  15. 0 0
      desktop/core/src/desktop/static/desktop/css/hue-embedded.css
  16. 0 0
      desktop/core/src/desktop/static/desktop/css/hue.css
  17. 0 0
      desktop/core/src/desktop/static/desktop/css/hue3-extra.css
  18. 0 0
      desktop/core/src/desktop/static/desktop/css/login.css
  19. 7 0
      desktop/core/src/desktop/static/desktop/less/components/hue-breadcrumbs.less
  20. 3 1
      desktop/core/src/desktop/static/desktop/less/components/hue-catalog-entries-table.less
  21. 0 1
      desktop/core/src/desktop/static/desktop/less/components/hue-clearable.less
  22. 7 7
      desktop/core/src/desktop/static/desktop/less/components/hue-demi-modal.less
  23. 18 13
      desktop/core/src/desktop/static/desktop/less/components/hue-dw-sidebar.less
  24. 1 2
      desktop/core/src/desktop/static/desktop/less/components/hue-execution-analysis.less
  25. 5 3
      desktop/core/src/desktop/static/desktop/less/components/hue-filechooser.less
  26. 11 2
      desktop/core/src/desktop/static/desktop/less/components/hue-gridster.less
  27. 6 3
      desktop/core/src/desktop/static/desktop/less/components/hue-hamburger.less
  28. 6 2
      desktop/core/src/desktop/static/desktop/less/components/hue-inputautocomplete.less
  29. 5 6
      desktop/core/src/desktop/static/desktop/less/components/hue-multi-cluster-sidebar.less
  30. 3 4
      desktop/core/src/desktop/static/desktop/less/components/hue-nav-properties.less
  31. 2 2
      desktop/core/src/desktop/static/desktop/less/components/hue-notify.less
  32. 2 3
      desktop/core/src/desktop/static/desktop/less/components/hue-performance-graph.less
  33. 30 7
      desktop/core/src/desktop/static/desktop/less/components/hue-popover.less
  34. 17 9
      desktop/core/src/desktop/static/desktop/less/components/hue-qq-upload.less
  35. 11 0
      desktop/core/src/desktop/static/desktop/less/components/hue-query-builder.less
  36. 5 4
      desktop/core/src/desktop/static/desktop/less/components/hue-ribbon.less
  37. 7 4
      desktop/core/src/desktop/static/desktop/less/components/hue-scroll-anchor.less
  38. 5 2
      desktop/core/src/desktop/static/desktop/less/components/hue-scrollbar.less
  39. 8 7
      desktop/core/src/desktop/static/desktop/less/components/hue-selectize.less
  40. 9 2
      desktop/core/src/desktop/static/desktop/less/components/hue-selector.less
  41. 41 32
      desktop/core/src/desktop/static/desktop/less/components/hue-shepherd.less
  42. 11 6
      desktop/core/src/desktop/static/desktop/less/components/hue-sidebar.less
  43. 3 3
      desktop/core/src/desktop/static/desktop/less/components/hue-simple-ace.less
  44. 6 3
      desktop/core/src/desktop/static/desktop/less/components/hue-spinner.less
  45. 46 24
      desktop/core/src/desktop/static/desktop/less/components/hue-tables.less
  46. 15 1
      desktop/core/src/desktop/static/desktop/less/components/hue-wizard.less
  47. 0 3
      desktop/core/src/desktop/static/desktop/less/cui/extra-variables.less
  48. 143 143
      desktop/core/src/desktop/static/desktop/less/cui/variables.less
  49. 13 6
      desktop/core/src/desktop/static/desktop/less/home.less
  50. 1 1
      desktop/core/src/desktop/static/desktop/less/httperrors.less
  51. 65 39
      desktop/core/src/desktop/static/desktop/less/hue-assist.less
  52. 12 6
      desktop/core/src/desktop/static/desktop/less/hue-autocomplete.less
  53. 2 2
      desktop/core/src/desktop/static/desktop/less/hue-bootstrap-embedded.less
  54. 1 1
      desktop/core/src/desktop/static/desktop/less/hue-c3-overrides.less
  55. 57 31
      desktop/core/src/desktop/static/desktop/less/hue-cross-version.less
  56. 19 8
      desktop/core/src/desktop/static/desktop/less/hue-cui-overrides.less
  57. 5 2
      desktop/core/src/desktop/static/desktop/less/hue-embedded.less
  58. 7 5
      desktop/core/src/desktop/static/desktop/less/hue-helpers.less
  59. 18 20
      desktop/core/src/desktop/static/desktop/less/hue-mixins.less
  60. 42 22
      desktop/core/src/desktop/static/desktop/less/hue-multi-cluster-icons.less
  61. 1 3
      desktop/core/src/desktop/static/desktop/less/hue.less
  62. 18 12
      desktop/core/src/desktop/static/desktop/less/hue3-extra.less
  63. 60 27
      desktop/core/src/desktop/static/desktop/less/hue4.less
  64. 25 10
      desktop/core/src/desktop/static/desktop/less/login.less
  65. 1 1
      desktop/core/src/desktop/static/desktop/less/login4.less
  66. 5 5
      desktop/libs/dashboard/src/dashboard/static/dashboard/less/common_dashboard.less
  67. 3 3
      desktop/libs/dashboard/src/dashboard/static/dashboard/less/search.less
  68. 3 3
      desktop/libs/indexer/src/indexer/static/indexer/less/importer.less
  69. 1 1
      desktop/libs/notebook/src/notebook/static/notebook/css/notebook-layout.css
  70. 30 30
      desktop/libs/notebook/src/notebook/static/notebook/less/notebook.less
  71. 666 3
      package-lock.json
  72. 7 3
      package.json

+ 7 - 0
.stylelintrc.json

@@ -0,0 +1,7 @@
+{
+  "extends": "stylelint-config-standard",
+  "rules": {
+    "max-empty-lines": 4,
+    "no-descending-specificity": null
+  }
+}

+ 3 - 2
Gruntfile.js

@@ -31,7 +31,8 @@ module.exports = function(grunt) {
         options: {
           paths: ['desktop/core/src/desktop/static/desktop/less'],
           compress: true,
-          banner: '/*!\nLicensed to Cloudera, Inc. under one\nor more contributor license agreements.  See the NOTICE file\ndistributed with this work for additional information\nregarding copyright ownership.  Cloudera, Inc. licenses this file\nto you under the Apache License, Version 2.0 (the\n"License"); you may not use this file except in compliance\nwith the License.  You may obtain a copy of the License at\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an "AS IS" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n */'
+          banner: '/*!\nLicensed to Cloudera, Inc. under one\nor more contributor license agreements.  See the NOTICE file\ndistributed with this work for additional information\nregarding copyright ownership.  Cloudera, Inc. licenses this file\nto you under the Apache License, Version 2.0 (the\n"License"); you may not use this file except in compliance\nwith the License.  You may obtain a copy of the License at\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an "AS IS" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n */',
+          javascriptEnabled: true
         },
         files: {
           'desktop/core/src/desktop/static/desktop/css/hue-bootstrap-embedded.css': 'desktop/core/src/desktop/static/desktop/less/hue-bootstrap-embedded.less',
@@ -99,6 +100,6 @@ module.exports = function(grunt) {
         ],
         tasks: ['less']
       }
-    }
+    },
   });
 };

+ 10 - 10
apps/filebrowser/src/filebrowser/static/filebrowser/less/listdir_components.less

@@ -57,12 +57,12 @@
   background-color: @cui-gray-050;
   border-top: 1px solid @cui-gray-200;
   bottom: 0;
-  -webkit-box-shadow: 0px 1px 3px rgba(50, 50, 50, 0.1);
-  -moz-box-shadow: 0px 1px 3px rgba(50, 50, 50, 0.1);
-  box-shadow: 0px 1px 3px rgba(50, 50, 50, 0.1);
+  -webkit-box-shadow: 0 1px 3px rgba(50, 50, 50, 0.1);
+  -moz-box-shadow: 0 1px 3px rgba(50, 50, 50, 0.1);
+  box-shadow: 0 1px 3px rgba(50, 50, 50, 0.1);
   left: 0;
   margin: 0;
-  padding: 0px;
+  padding: 0;
   position: fixed;
   width: 100%;
   z-index: 1001;
@@ -100,9 +100,9 @@
 }
 
 .shadow {
-  -webkit-box-shadow: 0px 2px 3px rgba(50, 50, 50, 0.1);
-  -moz-box-shadow: 0px 2px 3px rgba(50, 50, 50, 0.1);
-  box-shadow: 0px 1px 2px rgba(50, 50, 50, 0.1);
+  -webkit-box-shadow: 0 2px 3px rgba(50, 50, 50, 0.1);
+  -moz-box-shadow: 0 2px 3px rgba(50, 50, 50, 0.1);
+  box-shadow: 0 1px 2px rgba(50, 50, 50, 0.1);
 }
 
 .scrollable {
@@ -199,15 +199,15 @@
 }
 
 .row-selected {
-  background-color: @cui-gray-100!important;
+  background-color: @cui-gray-100 !important;
 }
 
 .row-highlighted {
-  background-color: @cui-blue-050!important;
+  background-color: @cui-blue-050 !important;
 }
 
 .row-deleted {
-  background-color: @cui-pink-050!important;
+  background-color: @cui-pink-050 !important;
 }
 
 .context-menu {

+ 6 - 6
apps/hbase/src/hbase/static/hbase/less/hbase.less

@@ -590,12 +590,12 @@
     color: @cui-blue-400;
     font-weight: bold;
     background: @cui-gray-900; /* Old browsers */
-    background: -moz-linear-gradient(top, @cui-gray-900 0%, @cui-black 100%); /* FF3.6+ */
-    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, @cui-gray-900), color-stop(100%, @cui-black)); /* Chrome,Safari4+ */
-    background: -webkit-linear-gradient(top, @cui-gray-900 0%, @cui-black 100%); /* Chrome10+,Safari5.1+ */
-    background: -o-linear-gradient(top, @cui-gray-900 0%, @cui-black 100%); /* Opera 11.10+ */
-    background: -ms-linear-gradient(top, @cui-gray-900 0%, @cui-black 100%); /* IE10+ */
-    background: linear-gradient(to bottom, @cui-gray-900 0%, @cui-black 100%); /* W3C */
+    background: -moz-linear-gradient(top, @cui-gray-900 0, @cui-black 100%); /* FF3.6+ */
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, @cui-gray-900), color-stop(100%, @cui-black)); /* Chrome,Safari4+ */
+    background: -webkit-linear-gradient(top, @cui-gray-900 0, @cui-black 100%); /* Chrome10+,Safari5.1+ */
+    background: -o-linear-gradient(top, @cui-gray-900 0, @cui-black 100%); /* Opera 11.10+ */
+    background: -ms-linear-gradient(top, @cui-gray-900 0, @cui-black 100%); /* IE10+ */
+    background: linear-gradient(to bottom, @cui-gray-900 0, @cui-black 100%); /* W3C */
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@cui-gray-900', endColorstr='@cui-black', GradientType=0); /* IE6-9 */
     border-color: @cui-gray-800;
     box-shadow: 0 3px 5px rgba(0, 0, 0, .3);

+ 14 - 14
apps/jobbrowser/src/jobbrowser/static/jobbrowser/less/jobbrowser-embeddable.less

@@ -19,7 +19,7 @@
 
 .jobbrowser-mini {
   .span12.no-margin {
-    margin-left: 0!important;
+    margin-left: 0 !important;
   }
 }
 
@@ -100,8 +100,8 @@
     }
     .metric {
       position: absolute;
-      top: 0px;
-      right: 0px;
+      top: 0;
+      right: 0;
     }
     .name {
       text-transform: capitalize;
@@ -174,7 +174,7 @@
     .buttons {
       position: absolute;
       background-color: white;
-      box-shadow: 0px 0px 5px 0px;
+      box-shadow: 0 0 5px 0;
       right: 45px;
       bottom: 5px;
       color: @cui-gray-600;
@@ -236,10 +236,10 @@
     }
     .details {
       background-color: @cui-white;
-      box-shadow: 0px 0px 10px 0px;
+      box-shadow: 0 0 10px 0;
       color: @cui-gray-600;
       position: absolute;
-      top: 0px;
+      top: 0;
       right: -164px;
       width: 200px;
       height: 100%;
@@ -248,27 +248,27 @@
         background-color: @cui-gray-300;
         width: calc(~"100% - 10px");
         margin-left: 5px;
-        padding: 0px;
+        padding: 0;
         height: 1px;
       }
       h3 {
         display: inline-block;
-        margin: 0px;
+        margin: 0;
       }
       h4 {
-        margin: 0px;
+        margin: 0;
         display: inline-block;
       }
       h5 {
-        margin: 0px;
+        margin: 0;
         display: inline-block;
       }
       ol {
         list-style-type: none;
-        margin: 0px;
+        margin: 0;
       }
       ul {
-        margin: 0px;
+        margin: 0;
       }
       .details-content {
         overflow: scroll;
@@ -285,7 +285,7 @@
         cursor: pointer;
         padding: 4px;
         .fa {
-          padding-top: 0px;
+          padding-top: 0;
           line-height: 40px;
           padding-right: 2px;
         }
@@ -364,7 +364,7 @@
   }
   .query-plan.open {
     .details {
-      right: 0px;
+      right: 0;
       display: flex;
       .details-content {
         visibility: visible;

+ 4 - 4
apps/metastore/src/metastore/static/metastore/less/metastore.less

@@ -62,9 +62,9 @@
   }
 
   h2.card-heading {
-    border-bottom: 1px solid @cui-gray-100!important;
-    font-size: 12px!important;
-    font-weight: bold!important;
+    border-bottom: 1px solid @cui-gray-100 !important;
+    font-size: 12px !important;
+    font-weight: bold !important;
   }
 
   .filter-box {
@@ -149,7 +149,7 @@
   }
 
   .editable-breadcrumb-input {
-    padding: 0!important;
+    padding: 0 !important;
   }
 
   .editable-breadcrumb-input input {

+ 2 - 2
apps/oozie/src/oozie/static/oozie/less/common-editor.less

@@ -60,11 +60,11 @@ input[type="text"].filechooser-input, input[type="text"].half {
 }
 
 input[type="text"].seventy, textarea.seventy {
-  width: 70%!important;
+  width: 70% !important;
 }
 
 input[type="text"].thirty {
-  width: 30%!important;
+  width: 30% !important;
 }
 
 input[type="text"].with-errors, textarea.with-errors {

+ 2 - 2
apps/oozie/src/oozie/static/oozie/less/coordinator.less

@@ -94,11 +94,11 @@
 
 
 div.spinedit .fa-chevron-up {
-  top: -6px!important;
+  top: -6px !important;
 }
 
 div.spinedit .fa-chevron-down {
-  top: 5px!important;;
+  top: 5px !important;;
 }
 
 .label-ignored {

+ 1 - 1
apps/oozie/src/oozie/static/oozie/less/workflow-editor.less

@@ -95,7 +95,7 @@
     z-index: 11;
     overflow-x: auto;
     border: 1px solid @cui-gray-300 !important;
-    min-height: 40px!important;
+    min-height: 40px !important;
   }
 
   .card-widget h2, .card-widget .card-body {

+ 17 - 17
apps/oozie/src/oozie/static/oozie/less/workflow.less

@@ -44,7 +44,7 @@ ul {
 }
 
 .action, .editor-action {
-  border: 0!important;
+  border: 0 !important;
   padding: 0;
 }
 
@@ -91,7 +91,7 @@ ul {
 
 .popover {
   z-index: 2060 !important;
-  margin-left: 166px!important;
+  margin-left: 166px !important;
 }
 
 .control-group.error .CodeMirror {
@@ -182,19 +182,19 @@ ul {
 }
 
 .action .btn-mini i, .editor-action .btn-mini i {
-  line-height: 18px!important;
+  line-height: 18px !important;
 }
 
 .gradient {
   background: @cui-gray-050; /* Old browsers */
   /* IE9 SVG, needs conditional override of 'filter' to 'none' */
   background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
-  background: -moz-linear-gradient(top,  @cui-gray-050 0%, @cui-white 100%); /* FF3.6+ */
-  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,@cui-gray-050), color-stop(100%,@cui-white)); /* Chrome,Safari4+ */
-  background: -webkit-linear-gradient(top,  @cui-gray-050 0%,@cui-white 100%); /* Chrome10+,Safari5.1+ */
-  background: -o-linear-gradient(top,  @cui-gray-050 0%,@cui-white 100%); /* Opera 11.10+ */
-  background: -ms-linear-gradient(top,  @cui-gray-050 0%,@cui-white 100%); /* IE10+ */
-  background: linear-gradient(to bottom,  @cui-gray-050 0%,@cui-white 100%); /* W3C */
+  background: -moz-linear-gradient(top,  @cui-gray-050 0, @cui-white 100%); /* FF3.6+ */
+  background: -webkit-gradient(linear, left top, left bottom, color-stop(0,@cui-gray-050), color-stop(100%,@cui-white)); /* Chrome,Safari4+ */
+  background: -webkit-linear-gradient(top,  @cui-gray-050 0,@cui-white 100%); /* Chrome10+,Safari5.1+ */
+  background: -o-linear-gradient(top,  @cui-gray-050 0,@cui-white 100%); /* Opera 11.10+ */
+  background: -ms-linear-gradient(top,  @cui-gray-050 0,@cui-white 100%); /* IE10+ */
+  background: linear-gradient(to bottom,  @cui-gray-050 0,@cui-white 100%); /* W3C */
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='@cui-gray-050', endColorstr='@cui-white',GradientType=0 ); /* IE6-8 */
 }
 
@@ -202,18 +202,18 @@ ul {
   background: @cui-white; /* Old browsers */
   /* IE9 SVG, needs conditional override of 'filter' to 'none' */
   background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
-  background: -moz-linear-gradient(top,  @cui-white 0%, @cui-gray-050 100%); /* FF3.6+ */
-  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,@cui-white), color-stop(100%,@cui-gray-050)); /* Chrome,Safari4+ */
-  background: -webkit-linear-gradient(top,  @cui-white 0%,@cui-gray-050 100%); /* Chrome10+,Safari5.1+ */
-  background: -o-linear-gradient(top,  @cui-white 0%,@cui-gray-050 100%); /* Opera 11.10+ */
-  background: -ms-linear-gradient(top,  @cui-white 0%,@cui-gray-050 100%); /* IE10+ */
-  background: linear-gradient(to bottom,  @cui-white 0%,@cui-gray-050 100%); /* W3C */
+  background: -moz-linear-gradient(top,  @cui-white 0, @cui-gray-050 100%); /* FF3.6+ */
+  background: -webkit-gradient(linear, left top, left bottom, color-stop(0,@cui-white), color-stop(100%,@cui-gray-050)); /* Chrome,Safari4+ */
+  background: -webkit-linear-gradient(top,  @cui-white 0,@cui-gray-050 100%); /* Chrome10+,Safari5.1+ */
+  background: -o-linear-gradient(top,  @cui-white 0,@cui-gray-050 100%); /* Opera 11.10+ */
+  background: -ms-linear-gradient(top,  @cui-white 0,@cui-gray-050 100%); /* IE10+ */
+  background: linear-gradient(to bottom,  @cui-white 0,@cui-gray-050 100%); /* W3C */
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='@cui-white', endColorstr='@cui-gray-050',GradientType=0 ); /* IE6-8 */
 }
 
 .editor-action-body {
   text-align:left;
   padding:10px;
-  border:1px solid @cui-gray-300!important;
-  border-top:0!important;
+  border:1px solid @cui-gray-300 !important;
+  border-top:0 !important;
 }

+ 5 - 5
apps/security/src/security/static/security/less/security.less

@@ -54,7 +54,7 @@
   }
 
   .fa.striked {
-    color: @cui-red-400!important;
+    color: @cui-red-400 !important;
   }
 
   .node-row.selected {
@@ -238,7 +238,7 @@
   #createRoleModal, #bulkActionsModal, #grantPrivilegeModal {
     width: 800px;
     left: 50%;
-    margin-left: -400px!important;
+    margin-left: -400px !important;
   }
 
 
@@ -289,12 +289,12 @@
   }
 
   .fa-database-open {
-    color: @cui-gray-700!important;
+    color: @cui-gray-700 !important;
   }
 
   .actionbar-main {
-    padding: 0!important;
-    padding-bottom: 10px!important;
+    padding: 0 !important;
+    padding-bottom: 10px !important;
   }
 
   #grantPrivilegeModal .privilege-actions {

+ 1 - 1
apps/sqoop/src/sqoop/static/sqoop/less/sqoop.less

@@ -52,7 +52,7 @@
   }
 
   .sqoop-progress {
-    width: 0%;
+    width: 0;
     background-color: @cui-orange-500;
     height: 3px;
     margin-top: -2px;

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
desktop/core/src/desktop/static/desktop/css/home.css


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
desktop/core/src/desktop/static/desktop/css/hue-bootstrap-embedded.css


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
desktop/core/src/desktop/static/desktop/css/hue-embedded.css


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
desktop/core/src/desktop/static/desktop/css/hue.css


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
desktop/core/src/desktop/static/desktop/css/hue3-extra.css


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 0 - 0
desktop/core/src/desktop/static/desktop/css/login.css


+ 7 - 0
desktop/core/src/desktop/static/desktop/less/components/hue-breadcrumbs.less

@@ -20,23 +20,29 @@
   font-size: 18px;
   list-style: none outside none;
   padding: 9px 9px;
+
   li {
     display: inline-block;
   }
+
   .divider {
     color: @cui-gray-600;
     padding: 0 5px;
   }
+
   .active a {
     color: @cui-gray-800;
   }
+
   a.nounderline:hover {
     text-decoration: none;
   }
+
   & > li:last-child > a {
     font-weight: bold;
     color: @cui-gray-800;
   }
+
   & > li:last-child > span {
     display: none;
   }
@@ -46,6 +52,7 @@
   padding: 8px 15px;
   margin: 0 0 20px;
   list-style: none;
+
   .breadcrumb-link {
     line-height: 21px;
     font-size: 18px;

+ 3 - 1
desktop/core/src/desktop/static/desktop/less/components/hue-catalog-entries-table.less

@@ -18,6 +18,7 @@
 
 .catalog-entries-list-container {
   .flex(1 1 100%);
+
   overflow: auto;
 
   table .select-column {
@@ -48,6 +49,7 @@
     width: 20%;
     max-width: 400px;
     .nowrap-ellipsis();
+
     height: 24px;
   }
 
@@ -76,4 +78,4 @@
   .entries-table-description {
     max-width: 400px;
   }
-}
+}

+ 0 - 1
desktop/core/src/desktop/static/desktop/less/components/hue-clearable.less

@@ -37,4 +37,3 @@
 .clearable.onX {
   cursor: pointer !important;
 }
-

+ 7 - 7
desktop/core/src/desktop/static/desktop/less/components/hue-demi-modal.less

@@ -27,13 +27,14 @@
   background-color: @cui-white;
   min-height: 210px;
   border: 1px solid @cui-gray-400;
-  -webkit-border-bottom-right-radius: 0px;
-  -webkit-border-bottom-left-radius: 0px;
-  -moz-border-radius-bottomright: 0px;
-  -moz-border-radius-bottomleft: 0px;
-  border-bottom-right-radius: 0px;
-  border-bottom-left-radius: 0px;
+  -webkit-border-bottom-right-radius: 0;
+  -webkit-border-bottom-left-radius: 0;
+  -moz-border-radius-bottomright: 0;
+  -moz-border-radius-bottomleft: 0;
+  border-bottom-right-radius: 0;
+  border-bottom-left-radius: 0;
   outline: none;
+
   &.fade {
     top: -500px;
     .hue-linear-transition(opacity);
@@ -62,7 +63,6 @@
   & .modal-footer {
     padding: 10px;
   }
-
 }
 
 .demi-modal-half {

+ 18 - 13
desktop/core/src/desktop/static/desktop/less/components/hue-dw-sidebar.less

@@ -24,11 +24,11 @@
 .hue-dw-brand {
   width: 247px;
   height: 50px;
-  position:fixed;
-  left:0;
-  top:0;
+  position: fixed;
+  left: 0;
+  top: 0;
   background-color: #333d52;
-  z-index:500000;
+  z-index: 500000;
   transition: width @sidebar-animation-duration;
   overflow: hidden;
 
@@ -47,6 +47,7 @@
   position: relative;
   .flex(0 0);
   .flex-basis(250px);
+
   transition: flex-basis @sidebar-animation-duration;
 
   .sidebar {
@@ -59,9 +60,9 @@
     background-color: #323543;
     box-shadow: 0 0 3px 0 @cui-gray-600;
 
-    .fa:before {
+    .fa::before {
       font-size: 16px;
-      color: #B8BEC4;
+      color: #b8bec4;
     }
 
     .sidebar-content {
@@ -76,18 +77,19 @@
     .sidebar-item {
       display: block;
       line-height: 36px;
-      color: #B8BEC4;
+      color: #b8bec4;
       white-space: nowrap;
       font-size: 16px;
 
       .sidebar-caret {
         opacity: 0;
-        float:left;
+        float: left;
       }
 
       .sidebar-icon {
         float: left;
         padding: 0 16px 0 14px;
+
         &.with-tooltip {
           display: none;
         }
@@ -110,7 +112,7 @@
         opacity: 1;
       }
 
-      .fa:before {
+      .fa::before {
         color: #5eab41;
       }
     }
@@ -118,7 +120,8 @@
     .sidebar-item:not(.active):hover {
       background-color: #404350;
       color: @cui-white;
-      .fa:before {
+
+      .fa::before {
         background-color: #404350;
         color: @cui-white;
       }
@@ -149,7 +152,7 @@
       line-height: 36px;
       width: 100%;
       text-align: right;
-      color: #B8BEC4;
+      color: #b8bec4;
       box-shadow: 0 0 3px 0 @cui-gray-600;
 
       span {
@@ -159,7 +162,8 @@
       &:hover {
         background-color: #404350;
         color: @cui-white;
-        .fa:before {
+
+        .fa::before {
           background-color: #404350;
           color: @cui-white;
         }
@@ -173,7 +177,6 @@
     }
   }
 
-
   &.collapsed {
     .flex-basis(49px);
 
@@ -186,12 +189,14 @@
       .sidebar-icon.without-tooltip {
         display: none;
       }
+
       .sidebar-icon.with-tooltip {
         display: initial;
       }
 
       .sidebar-action-button {
         text-align: center;
+
         span {
           padding-right: 0;
         }

+ 1 - 2
desktop/core/src/desktop/static/desktop/less/components/hue-execution-analysis.less

@@ -17,8 +17,7 @@
 */
 
 .hue-execution-analysis {
-
   .no-analysis {
     font-style: italic;
   }
-}
+}

+ 5 - 3
desktop/core/src/desktop/static/desktop/less/components/hue-filechooser.less

@@ -22,7 +22,10 @@
   border-top: 1px dashed @cui-gray-100;
 }
 
-.pathChooser, .pathChooserKo, .pathFolderChooserKo, input[type="text"].filechooser-input {
+.pathChooser,
+.pathChooserKo,
+.pathFolderChooserKo,
+input[type="text"].filechooser-input {
   border-radius: 3px 0 0 3px !important;
   border-right: 0 !important;
 }
@@ -52,7 +55,7 @@
   line-height: 20px;
   min-height: 20px;
   font-size: 1.25em;
-  padding-left: 4px!important;
+  padding-left: 4px !important;
 }
 
 .filechooser-tree .hue-breadcrumbs > li:last-child > a {
@@ -64,4 +67,3 @@
   margin-top: 10px;
   margin-right: 4px;
 }
-

+ 11 - 2
desktop/core/src/desktop/static/desktop/less/components/hue-gridster.less

@@ -20,27 +20,35 @@
   & > ul {
     margin: 0;
     list-style-type: none;
+
     & > li {
       border: 1px solid @cui-white;
       background: @cui-white !important;
       overflow: hidden;
+
       h2 {
         cursor: move;
       }
-      .grid-left-bar, .edit-dimensions {
+
+      .grid-left-bar,
+      .edit-dimensions {
         opacity: 0;
       }
+
       .query-builder {
         h2 {
           cursor: default;
         }
+
         .edit-dimensions {
           opacity: 1;
         }
       }
     }
+
     & > li:hover {
-      .grid-left-bar, .edit-dimensions {
+      .grid-left-bar,
+      .edit-dimensions {
         opacity: 1;
       }
     }
@@ -49,6 +57,7 @@
   .card-widget {
     width: 100% !important;
     margin: 0 !important;
+
     .card-heading {
       font-size: 16px !important;
       font-weight: bold !important;

+ 6 - 3
desktop/core/src/desktop/static/desktop/less/components/hue-hamburger.less

@@ -57,7 +57,9 @@
   position: absolute;
 }
 
-.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
+.hamburger-inner,
+.hamburger-inner::before,
+.hamburger-inner::after {
   width: 24px;
   height: 3px;
   background-color: @hue-primary-color-dark;
@@ -66,7 +68,8 @@
   .hue-ease-transition(~"transform, -webkit-transform");
 }
 
-.hamburger-inner::before, .hamburger-inner::after {
+.hamburger-inner::before,
+.hamburger-inner::after {
   content: "";
   display: block;
 }
@@ -89,4 +92,4 @@
 
 .hamburger-hue.is-active .hamburger-inner::after {
   .hue-transform(~"translate3d(-2px, -3px, 0) rotate(40deg) scale(0.7, 1)");
-}
+}

+ 6 - 2
desktop/core/src/desktop/static/desktop/less/components/hue-inputautocomplete.less

@@ -20,18 +20,22 @@
   border-radius: 0;
   box-shadow: none;
   border-top: none;
+
   .popover-content {
     padding: 0;
     max-height: 200px;
     overflow-y: auto;
+
     ul li {
       cursor: pointer;
       margin: 3px;
       padding: 2px;
     }
-    ul li:hover, ul li.active {
+
+    ul li:hover,
+    ul li.active {
       color: @cui-white;
       background: @hue-primary-color-dark;
     }
   }
-}
+}

+ 5 - 6
desktop/core/src/desktop/static/desktop/less/components/hue-multi-cluster-sidebar.less

@@ -23,7 +23,6 @@
 @sidebar-left-spacing: 16px;
 
 .hue-sidebar {
-
   .sidebar-content {
     position: absolute;
     top: 0;
@@ -32,7 +31,6 @@
     left: 0;
     padding-top: 20px;
     background-color: @cui-white;
-
     overflow-y: auto;
     overflow-x: hidden;
 
@@ -65,10 +63,10 @@
       white-space: nowrap;
       position: relative;
 
-
       .sidebar-icon {
         float: left;
         padding: 0 14px 0 @sidebar-left-spacing;
+
         &.with-tooltip {
           display: none;
         }
@@ -94,14 +92,15 @@
       background: @cui-blue-050;
       color: @cui-blue-500;
 
-      .fa:before {
+      .fa::before {
         color: @cui-blue-500;
       }
     }
 
     .sidebar-item:hover {
       color: @cui-blue-500;
-      .fa:before {
+
+      .fa::before {
         color: @cui-blue-500;
       }
     }
@@ -125,4 +124,4 @@
       vertical-align: middle;
     }
   }
-}
+}

+ 3 - 4
desktop/core/src/desktop/static/desktop/less/components/hue-nav-properties.less

@@ -99,7 +99,7 @@
       }
 
       .hue-nav-property-remove {
-        float:right;
+        float: right;
         margin: 0 3px;
         height: 20px;
       }
@@ -137,7 +137,7 @@
 }
 
 .hue-nav-property-edit-content {
-  position:relative;
+  position: relative;
   padding-top: 5px;
 
   a.close-popover {
@@ -145,11 +145,10 @@
     top: 0;
     right: 0;
     font-size: @font-size-base;
-
     color: @cui-gray-600;
 
     &:hover {
       color: @hue-primary-color-dark;
     }
   }
-}
+}

+ 2 - 2
desktop/core/src/desktop/static/desktop/less/components/hue-notify.less

@@ -35,7 +35,7 @@
 
 .jHueNotify.expanded {
   z-index: 11001;
-  top: 20px!important;
+  top: 20px !important;
   left: 10px;
   bottom: 10px;
   width: auto;
@@ -45,4 +45,4 @@
   max-height: 100%;
   width: auto;
   word-break: normal;
-}
+}

+ 2 - 3
desktop/core/src/desktop/static/desktop/less/components/hue-performance-graph.less

@@ -55,7 +55,7 @@
 
   svg {
     .nvtooltip {
-      font-family:  @font-family-sans-serif;
+      font-family: @font-family-sans-serif;
     }
 
     text {
@@ -69,7 +69,7 @@
     .brush .selection {
       stroke: none;
       fill: @cui-gray-400;
-      fill-opacity: .25;
+      fill-opacity: 0.25;
       shape-rendering: crispEdges;
     }
 
@@ -80,4 +80,3 @@
     }
   }
 }
-

+ 30 - 7
desktop/core/src/desktop/static/desktop/less/components/hue-popover.less

@@ -18,8 +18,10 @@
 
 .hue-popover {
   .display-flex;
+
   position: absolute;
   .flex-direction(column);
+
   top: 0;
   left: 0;
   z-index: 1039;
@@ -118,6 +120,7 @@
 .hue-popover-title {
   .flex(0 1 auto);
   .nowrap-ellipsis;
+
   overflow: hidden;
   padding: 6px 10px;
   margin: 0 30px 0 0;
@@ -149,7 +152,8 @@
   display: none;
 }
 
-.hue-popover-arrow, .hue-popover-arrow::after {
+.hue-popover-arrow,
+.hue-popover-arrow::after {
   position: absolute;
   display: block;
   width: 0;
@@ -185,6 +189,7 @@
   .display-flex();
   .flex(1 1 100%);
   .flex-direction(column);
+
   padding: 0;
   overflow: hidden;
 }
@@ -198,6 +203,7 @@
 
 .context-popover-tabs {
   .flex(0 1 auto);
+
   border-bottom: 1px solid @cui-default-border-color;
   margin-left: -1px;
   margin-right: -1px;
@@ -207,6 +213,7 @@
 .context-popover-tab-container {
   position: relative;
   .flex(1 1 100%);
+
   border: none;
   overflow: auto;
 }
@@ -214,12 +221,13 @@
 .context-popover-tab {
   padding-top: 0 !important;
   padding-bottom: 5px !important;
-  margin-bottom: -1px !important
+  margin-bottom: -1px !important;
 }
 
 .context-popover-flex {
   .display-flex();
   .flex-flow(column nowrap);
+
   position: absolute;
   top: 0;
   bottom: 0;
@@ -233,6 +241,7 @@
 .context-popover-flex-attributes {
   .context-popover-attributes;
   .flex(1);
+
   padding: 0 12px;
 }
 
@@ -250,6 +259,7 @@
 
 .context-popover-table-details {
   .flex(1);
+
   padding: 10px 10px 0 10px;
 }
 
@@ -266,14 +276,17 @@
 .context-popover-section {
   margin-left: 15px;
 }
+
 .context-popover-doc-header-link {
   .flex(1);
+
   margin-top: 10px;
   font-size: 18px;
 }
 
 .context-popover-doc-description {
   .flex(1);
+
   margin-top: 5px;
 
   > em {
@@ -284,6 +297,7 @@
 
 .context-popover-doc-contents {
   .flex(1 1 100%);
+
   margin-top: 8px;
   overflow: auto;
 
@@ -295,6 +309,7 @@
 
 .context-popover-flex-bottom-links {
   .flex(0 0 35px);
+
   border-top: 1px solid @cui-default-border-color;
   z-index: 100;
   background-color: @cui-white;
@@ -328,6 +343,7 @@
 
   .context-popover-sample-controls {
     .flex(0 0 120px);
+
     line-height: 28px;
   }
 
@@ -371,7 +387,8 @@
 
   .fixed-first-column {
     margin-left: 0 !important;
-    table>tbody>tr>td:first-child {
+
+    table > tbody > tr > td:first-child {
       background-color: @cui-gray-050;
     }
   }
@@ -400,6 +417,7 @@
 
 .context-popover-comment {
   .flex(0 1 54px);
+
   margin-top: 2px;
   margin-bottom: 8px;
   padding-left: 4px;
@@ -407,6 +425,7 @@
 
   &.context-popover-comment-expanded {
     .flex(1 1 100%);
+
     white-space: pre-wrap;
     margin-bottom: 2px;
     overflow: auto;
@@ -419,6 +438,7 @@
 
 .context-popover-attributes {
   .flex(1);
+
   margin-bottom: 10px;
   margin-left: 4px;
   font-size: 13px;
@@ -428,7 +448,6 @@
     //background-color: @cui-gray-100;
     border-radius: 4px;
     padding: 2px 4px 2px 0;
-
     white-space: pre;
 
     &:not(:last-child) {
@@ -443,7 +462,7 @@
 
     div:last-child {
       display: inline-block;
-      background-color: #FFF;
+      background-color: #fff;
       //color: @hue-primary-color-dark;
     }
   }
@@ -452,6 +471,7 @@
 .context-popover-inner-content {
   position: absolute;
   .display-flex();
+
   top: 0;
   bottom: 0;
   right: 0;
@@ -476,19 +496,22 @@
 .context-popover-title {
   .display-flex;
   .flex-direction(row);
+
   width: 100%;
-  padding:0;
+  padding: 0;
   background-color: @cui-gray-050;
 }
 
 .context-popover-breadcrumbs {
   .flex(1 1 100%);
   .nowrap-ellipsis();
+
   padding: 5px;
 }
 
 .context-popover-close {
   .flex(1 0 15px);
+
   padding: 5px;
 }
 
@@ -499,4 +522,4 @@
     font-style: italic;
     color: @cui-gray-400;
   }
-}
+}

+ 17 - 9
desktop/core/src/desktop/static/desktop/less/components/hue-qq-upload.less

@@ -26,6 +26,7 @@
 .qq-upload-button {
   display: inline-block;
   *display: inline;
+
   /* IE7 inline-block hack */
   *zoom: 1;
   padding: 5px 12px;
@@ -44,21 +45,22 @@
   background-image: -o-linear-gradient(top, @cui-white, @cui-white);
   background-image: linear-gradient(to bottom, @cui-white, @cui-white);
   background-repeat: repeat-x;
-  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffffffff', GradientType=0);
+  filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffffffff', GradientType=0);
   border-color: @cui-white @cui-white @cui-gray-300;
   border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
   *background-color: @cui-white;
+
   /* Darken IE7 buttons by default so they stand out more given they won't have borders */
-  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
+  filter: progid:dximagetransform.microsoft.gradient(enabled = false);
   border: 1px solid @cui-gray-400;
   *border: 0;
   -webkit-border-radius: 4px;
   -moz-border-radius: 4px;
   border-radius: 4px;
-  *margin-left: .3em;
-  -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
-  -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
-  box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
+  *margin-left: 0.3em;
+  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
   float: right;
 }
 
@@ -66,7 +68,8 @@
   outline: none;
 }
 
-.qq-upload-button:hover, .qq-upload-button:focus {
+.qq-upload-button:hover,
+.qq-upload-button:focus {
   color: @cui-blue-500;
   border-color: @cui-blue-500;
   background-color: @cui-white;
@@ -130,7 +133,11 @@
   text-align: right;
 }
 
-.qq-upload-file, .qq-upload-spinner, .qq-upload-size, .qq-upload-cancel, .qq-upload-failed-text {
+.qq-upload-file,
+.qq-upload-spinner,
+.qq-upload-size,
+.qq-upload-cancel,
+.qq-upload-failed-text {
   margin-right: 7px;
 }
 
@@ -145,7 +152,8 @@
   vertical-align: text-bottom;
 }
 
-.qq-upload-size, .qq-upload-cancel {
+.qq-upload-size,
+.qq-upload-cancel {
   font-size: 11px;
 }
 

+ 11 - 0
desktop/core/src/desktop/static/desktop/less/components/hue-query-builder.less

@@ -18,40 +18,50 @@
 
 #queryBuilder {
   text-align: center;
+
   td {
     vertical-align: middle;
   }
+
   input {
     margin-bottom: 0;
   }
+
   #column li {
     color: blue;
     text-decoration: underline;
     list-style: none;
   }
+
   #column li:hover {
     cursor: pointer;
   }
+
   .databaseAndTable {
     color: @cui-gray-700;
     min-width: 10em;
   }
+
   .queryBuilderRow {
     border-collapse: separate;
     border-spacing-bottom: 10px;
     cursor: default;
   }
+
   .column {
     font-family: @font-family-monospace;
   }
+
   .deleteRule {
     color: @cui-gray-700;
     text-align: right;
   }
+
   .deleteRule:hover {
     color: @cui-gray-800;
     cursor: pointer;
   }
+
   .noselect {
     -webkit-touch-callout: none;
     -webkit-user-select: none;
@@ -60,6 +70,7 @@
     -ms-user-select: none;
     user-select: none;
   }
+
   .button-panel {
     margin: auto;
     text-align: center;

+ 5 - 4
desktop/core/src/desktop/static/desktop/less/components/hue-ribbon.less

@@ -53,7 +53,8 @@
   box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
 }
 
-.ribbon:before, .ribbon:after {
+.ribbon::before,
+.ribbon::after {
   content: "";
   border-top: 3px solid @cui-orange-600;
   border-left: 3px solid transparent;
@@ -62,10 +63,10 @@
   bottom: -3px;
 }
 
-.ribbon:before {
+.ribbon::before {
   left: 0;
 }
 
-.ribbon:after {
+.ribbon::after {
   right: 0;
-}
+}

+ 7 - 4
desktop/core/src/desktop/static/desktop/less/components/hue-scroll-anchor.less

@@ -30,15 +30,18 @@
   padding-left: 14px;
   padding-right: 14px;
   min-height: 22px;
-  &:hover, &:focus {
+
+  &:hover,
+  &:focus {
     text-decoration: none;
     opacity: 0.85;
     color: @cui-white;
     filter: alpha(opacity=85);
   }
+
   & input {
-    min-height: 10px!important;
-    height: 10px!important;
+    min-height: 10px !important;
+    height: 10px !important;
     margin: 0;
   }
 }
@@ -53,4 +56,4 @@
   bottom: 20px;
   right: 20px;
   display: none;
-}
+}

+ 5 - 2
desktop/core/src/desktop/static/desktop/less/components/hue-scrollbar.less

@@ -16,7 +16,8 @@
  limitations under the License.
 */
 
-.dataTables_wrapper:hover > .hue-scrollbar-x-rail, .hue-scrollbar-x-rail:hover {
+.dataTables_wrapper:hover > .hue-scrollbar-x-rail,
+.hue-scrollbar-x-rail:hover {
   opacity: 1;
 }
 
@@ -25,13 +26,15 @@
   z-index: 1039;
   padding: 0;
   background-color: transparent;
-  &>.hue-scrollbar-x {
+
+  & > .hue-scrollbar-x {
     position: absolute;
     background-color: @cui-gray-300;
     border-radius: 5px;
     border: 1px solid @cui-white;
     height: 7px;
     z-index: 1039;
+
     &:hover {
       background-color: @cui-gray-500;
     }

+ 8 - 7
desktop/core/src/desktop/static/desktop/less/components/hue-selectize.less

@@ -75,7 +75,7 @@
   border-right: 0 none;
 }
 
-.selectize-dropdown.plugin-optgroup_columns .optgroup:before {
+.selectize-dropdown.plugin-optgroup_columns .optgroup::before {
   display: none;
 }
 
@@ -90,6 +90,7 @@
 
 .selectize-control.plugin-remove_button [data-value] .remove {
   z-index: 1;
+
   /* fixes ie bug (see #392) */
   position: absolute;
   top: 0;
@@ -241,7 +242,7 @@
   background: @cui-gray-100;
   color: @cui-gray-800;
   border: 0 solid @cui-gray-100;
-  border-radius: 12px
+  border-radius: 12px;
 }
 
 .selectize-read-only.multi .selectize-input > div {
@@ -377,7 +378,7 @@
   cursor: text;
 }
 
-.selectize-control.single .selectize-input:after {
+.selectize-control.single .selectize-input::after {
   content: ' ';
   display: block;
   position: absolute;
@@ -391,13 +392,13 @@
   border-color: @cui-gray-700 transparent transparent transparent;
 }
 
-.selectize-control.single .selectize-input.dropdown-active:after {
+.selectize-control.single .selectize-input.dropdown-active::after {
   margin-top: -4px;
   border-width: 0 5px 5px 5px;
   border-color: transparent transparent @cui-gray-700 transparent;
 }
 
-.selectize-control.rtl.single .selectize-input:after {
+.selectize-control.rtl.single .selectize-input::after {
   left: 15px;
   right: auto;
 }
@@ -421,6 +422,7 @@
 .select-like {
   display: inline-block;
   position: relative;
+
   & input {
     transition: none !important;
     box-shadow: none !important;
@@ -434,7 +436,6 @@
     right: 8px;
     font-size: 15px;
   }
-
 }
 
 .selectize-wrapper {
@@ -505,4 +506,4 @@ div.selectize-input {
   padding: 6px;
   padding-right: 30px;
   text-overflow: ellipsis;
-}
+}

+ 9 - 2
desktop/core/src/desktop/static/desktop/less/components/hue-selector.less

@@ -21,23 +21,29 @@
   padding: 0;
   margin: 0;
   width: 300px;
+
   label {
     float: none;
     padding-left: 4px;
+
     input[type=checkbox] {
       display: inline;
       margin-top: -2px;
       margin-right: 6px;
     }
   }
-  ul, li {
+
+  ul,
+  li {
     margin: 0;
     padding: 0;
   }
+
   ul {
     padding: 4px;
     list-style: none;
   }
+
   li.selectorDivider {
     border-bottom: 1px solid @cui-gray-100;
     padding: 4px;
@@ -48,6 +54,7 @@
 .jHueSelectorHeader {
   background-color: @cui-gray-050;
   padding: 4px;
+
   input[type=text] {
     position: absolute;
     margin-left: 180px;
@@ -68,4 +75,4 @@
 .jHueSelectorBody {
   height: 150px;
   overflow: auto;
-}
+}

+ 41 - 32
desktop/core/src/desktop/static/desktop/less/components/hue-shepherd.less

@@ -16,14 +16,19 @@
  limitations under the License.
 */
 
-.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top.shepherd-target-attached-left .shepherd-content:before,
-.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top.shepherd-target-attached-right .shepherd-content:before,
-.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-target-attached-left .shepherd-content:before,
-.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-target-attached-right .shepherd-content:before {
+.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top.shepherd-target-attached-left .shepherd-content::before,
+.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top.shepherd-target-attached-right .shepherd-content::before,
+.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-target-attached-left .shepherd-content::before,
+.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-target-attached-right .shepherd-content::before {
   display: none;
 }
 
-.shepherd-element, .shepherd-element:after, .shepherd-element:before, .shepherd-element *, .shepherd-element *:after, .shepherd-element *:before {
+.shepherd-element,
+.shepherd-element::after,
+.shepherd-element::before,
+.shepherd-element *,
+.shepherd-element *::after,
+.shepherd-element *::before {
   box-sizing: border-box;
 }
 
@@ -52,7 +57,7 @@
   line-height: 1.5em;
 }
 
-.shepherd-element.shepherd-theme-hue .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue .shepherd-content::before {
   content: "";
   display: block;
   position: absolute;
@@ -68,7 +73,7 @@
   margin-bottom: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-center .shepherd-content::before {
   top: 100%;
   left: 50%;
   margin-left: -16px;
@@ -79,7 +84,7 @@
   margin-top: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-center .shepherd-content::before {
   bottom: 100%;
   left: 50%;
   margin-left: -16px;
@@ -90,7 +95,7 @@
   margin-right: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-right.shepherd-element-attached-middle .shepherd-content::before {
   left: 100%;
   top: 50%;
   margin-top: -16px;
@@ -101,7 +106,7 @@
   margin-left: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-left.shepherd-element-attached-middle .shepherd-content::before {
   right: 100%;
   top: 50%;
   margin-top: -16px;
@@ -120,7 +125,7 @@
   margin-top: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-middle .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-middle .shepherd-content::before {
   bottom: 100%;
   left: 16px;
   border-bottom-color: @cui-gray-900;
@@ -130,7 +135,7 @@
   margin-top: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-middle .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-middle .shepherd-content::before {
   bottom: 100%;
   right: 16px;
   border-bottom-color: @cui-gray-900;
@@ -140,7 +145,7 @@
   margin-bottom: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-middle .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-middle .shepherd-content::before {
   top: 100%;
   left: 16px;
   border-top-color: @cui-gray-900;
@@ -150,7 +155,7 @@
   margin-bottom: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-middle .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-middle .shepherd-content::before {
   top: 100%;
   right: 16px;
   border-top-color: @cui-gray-900;
@@ -160,7 +165,7 @@
   margin-top: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom .shepherd-content::before {
   bottom: 100%;
   left: 16px;
   border-bottom-color: @cui-gray-900;
@@ -170,7 +175,7 @@
   margin-top: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom .shepherd-content::before {
   bottom: 100%;
   right: 16px;
   border-bottom-color: @cui-gray-900;
@@ -180,7 +185,7 @@
   margin-bottom: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-top .shepherd-content::before {
   top: 100%;
   left: 16px;
   border-top-color: @cui-gray-900;
@@ -190,7 +195,7 @@
   margin-bottom: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-top .shepherd-content::before {
   top: 100%;
   right: 16px;
   border-top-color: @cui-gray-900;
@@ -200,7 +205,7 @@
   margin-right: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content::before {
   top: 16px;
   left: 100%;
   border-left-color: @cui-gray-900;
@@ -210,7 +215,7 @@
   margin-left: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content::before {
   top: 16px;
   right: 100%;
   border-right-color: @cui-gray-900;
@@ -220,7 +225,7 @@
   margin-right: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-right.shepherd-target-attached-left .shepherd-content::before {
   bottom: 16px;
   left: 100%;
   border-left-color: @cui-gray-900;
@@ -230,7 +235,7 @@
   margin-left: 16px;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-bottom.shepherd-element-attached-left.shepherd-target-attached-right .shepherd-content::before {
   bottom: 16px;
   right: 100%;
   border-right-color: @cui-gray-900;
@@ -243,7 +248,9 @@
   font-size: 1em;
 }
 
-.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-center.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before, .shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content:before {
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-center.shepherd-has-title .shepherd-content::before,
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-right.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content::before,
+.shepherd-element.shepherd-theme-hue.shepherd-element-attached-top.shepherd-element-attached-left.shepherd-target-attached-bottom.shepherd-has-title .shepherd-content::before {
   border-bottom-color: @cui-gray-900;
 }
 
@@ -263,6 +270,7 @@
 
 .shepherd-element.shepherd-theme-hue .shepherd-content {
   .hue-box-shadow-bottom;
+
   border-radius: 4px;
   padding: 0;
 }
@@ -276,7 +284,7 @@
   border-radius: 0;
 }
 
-.shepherd-element.shepherd-theme-hue .shepherd-content header:after {
+.shepherd-element.shepherd-theme-hue .shepherd-content header::after {
   content: "";
   display: table;
   clear: both;
@@ -292,14 +300,14 @@
   float: right;
   text-decoration: none;
   font-size: 1.25em;
-  line-height: .8em;
+  line-height: 0.8em;
   font-weight: normal;
   color: @cui-white;
   opacity: 0.25;
   position: relative;
-  top: .1em;
-  padding: .8em;
-  margin-bottom: -.8em;
+  top: 0.1em;
+  padding: 0.8em;
+  margin-bottom: -0.8em;
 }
 
 .shepherd-element.shepherd-theme-hue .shepherd-content header a.shepherd-cancel-link:hover {
@@ -311,7 +319,7 @@
 }
 
 .shepherd-element.shepherd-theme-hue .shepherd-content .shepherd-text p {
-  margin: 0 0 .5em 0;
+  margin: 0 0 0.5em 0;
   line-height: 1.3em;
 }
 
@@ -345,7 +353,7 @@
   border-radius: 0;
   cursor: pointer;
   border: 0;
-  margin: 0 .5em 0 0;
+  margin: 0 0.5em 0 0;
   font-family: inherit;
   font-size: 14px;
   line-height: 20px;
@@ -374,7 +382,7 @@
   border-radius: 0;
   cursor: pointer;
   border: 0;
-  margin: 0 .5em 0 0;
+  margin: 0 0.5em 0 0;
   font-family: inherit;
   font-size: 14px;
   line-height: 20px;
@@ -405,8 +413,9 @@
     bottom: 0;
     background-color: @cui-white;
     @opacity: 65;
+
     opacity: @opacity / 100;
     filter: alpha(opacity=@opacity);
     z-index: 1010;
   }
-}
+}

+ 11 - 6
desktop/core/src/desktop/static/desktop/less/components/hue-sidebar.less

@@ -77,7 +77,7 @@
     color: @cui-blue-500;
     background-color: @cui-gray-100;
 
-    .fa:before {
+    .fa::before {
       color: @cui-blue-500;
     }
   }
@@ -85,6 +85,7 @@
   .hue-sidebar-item:hover {
     color: @cui-blue-500;
     background-color: @cui-gray-100;
+
     .sidebar-icon {
       color: @cui-blue-500;
     }
@@ -135,20 +136,23 @@
       padding-top: 15px;
       padding-bottom: 15px;
       text-align: center;
+
       i {
         .hue-ease-transition(color);
       }
     }
 
-    .dz-drag-hover, .dropzone:hover {
-      background-color: @cui-gray-200!important;
+    .dz-drag-hover,
+    .dropzone:hover {
+      background-color: @cui-gray-200 !important;
+
       i {
         color: @cui-blue-500;
       }
     }
 
     a {
-      .pointer
+      .pointer;
     }
   }
 }
@@ -156,7 +160,8 @@
 .hue-sidebar.collapsed {
   width: @collapsed-sidebar-width;
 
-  .hue-sidebar-category-item, .sidebar-item-name {
+  .hue-sidebar-category-item,
+  .sidebar-item-name {
     opacity: 0;
   }
 
@@ -174,4 +179,4 @@
   &.collapsed {
     width: @collapsed-sidebar-width;
   }
-}
+}

+ 3 - 3
desktop/core/src/desktop/static/desktop/less/components/hue-simple-ace.less

@@ -48,7 +48,7 @@
     }
 
     .fa {
-      position:absolute;
+      position: absolute;
       top: 0;
       bottom: 0;
       height: 13px;
@@ -73,6 +73,6 @@
   width: 100%;
 
   .ace_emptyMessage {
-    margin-left:3px;
+    margin-left: 3px;
   }
-}
+}

+ 6 - 3
desktop/core/src/desktop/static/desktop/less/components/hue-spinner.less

@@ -16,11 +16,14 @@
  limitations under the License.
 */
 
-
 .hue-spinner {
   position: absolute;
-  top: 0; left: 0; bottom: 0; right: 0;
+  top: 0;
+  left: 0;
+  bottom: 0;
+  right: 0;
   .hue-fade-in();
+
   margin: auto 0;
   vertical-align: center;
 }
@@ -32,7 +35,7 @@
   left: 0;
   right: 0;
   bottom: 0;
-  background: rgba(255,255,255,.5);
+  background: rgba(255, 255, 255, 0.5);
   .hue-fade-in();
 }
 

+ 46 - 24
desktop/core/src/desktop/static/desktop/less/components/hue-tables.less

@@ -48,7 +48,10 @@ div.dataTables_paginate {
  *********************************************************/
 
 /* Pagination nested */
-.paginate_disabled_previous, .paginate_enabled_previous, .paginate_disabled_next, .paginate_enabled_next {
+.paginate_disabled_previous,
+.paginate_enabled_previous,
+.paginate_disabled_next,
+.paginate_enabled_next {
   height: 19px;
   width: 19px;
   margin-left: 3px;
@@ -128,10 +131,11 @@ table.display td.center {
   *border-collapse: collapsed;
 }
 
-.sorting, .sorting_disabled {
+.sorting,
+.sorting_disabled {
   border-bottom: 1px solid transparent !important;
   padding-right: 20px !important;
-  vertical-align: middle!important;
+  vertical-align: middle !important;
 }
 
 .sorting:hover {
@@ -144,7 +148,7 @@ table.display td.center {
   background: url('../art/datatables/sort_asc.png') no-repeat center right;
   border-bottom: 1px solid @cui-blue-500 !important;
   padding-right: 20px !important;
-  vertical-align: middle!important;
+  vertical-align: middle !important;
 }
 
 .sorting_asc:hover {
@@ -156,23 +160,27 @@ table.display td.center {
   background: url('../art/datatables/sort_desc.png') no-repeat center right;
   border-bottom: 1px solid @cui-blue-500 !important;
   padding-right: 20px !important;
-  vertical-align: middle!important;
+  vertical-align: middle !important;
 }
 
 .sorting_desc:hover {
   background: url('../art/datatables/sort_desc.png') no-repeat center right;
 }
 
-.table-huedatatable, .dataTables_wrapper table {
-  margin-bottom: 0!important;
+.table-huedatatable,
+.dataTables_wrapper table {
+  margin-bottom: 0 !important;
+
   thead {
     th {
-      color: @cui-gray-700!important;
+      color: @cui-gray-700 !important;
       background-color: @cui-white;
     }
   }
+
   border: none;
   border-collapse: separate;
+
   tbody tr:nth-child(odd) {
     background-color: @cui-gray-050;
   }
@@ -183,10 +191,12 @@ table.display td.center {
 }
 
 .sorting_disabled {
-  vertical-align: middle!important;
+  vertical-align: middle !important;
 }
 
-.sorting:hover, .sorting_asc:hover, .sorting_desc:hover {
+.sorting:hover,
+.sorting_asc:hover,
+.sorting_desc:hover {
   border-bottom: 1px solid @cui-blue-500 !important;
 }
 
@@ -378,11 +388,13 @@ tr.even.gradeU td.sorting_3 {
 /*
  * Row highlighting example
  */
-.ex_highlight #example tbody tr.even:hover, #example tbody tr.even td.highlighted {
+.ex_highlight #example tbody tr.even:hover,
+#example tbody tr.even td.highlighted {
   background-color: @cui-yellow-200;
 }
 
-.ex_highlight #example tbody tr.odd:hover, #example tbody tr.odd td.highlighted {
+.ex_highlight #example tbody tr.odd:hover,
+#example tbody tr.odd td.highlighted {
   background-color: @cui-yellow-200;
 }
 
@@ -453,23 +465,28 @@ div.box {
   background-color: @cui-purple-050;
 }
 
-.table tbody tr:hover td, .table tbody tr:hover th {
+.table tbody tr:hover td,
+.table tbody tr:hover th {
   background-color: @cui-purple-gray-050;
 }
 
-.table tr.selected, .table tr.selected td {
-  background-color: @cui-blue-050!important;
+.table tr.selected,
+.table tr.selected td {
+  background-color: @cui-blue-050 !important;
 }
 
-.table tr.locked, .table tr.locked td {
-  background-color: @cui-yellow-100!important;
+.table tr.locked,
+.table tr.locked td {
+  background-color: @cui-yellow-100 !important;
 }
 
-.table tr.locked td.unlockable, .table tr td.lockable {
+.table tr.locked td.unlockable,
+.table tr td.lockable {
   position: relative;
 }
 
-.table tr.locked td.unlockable .fa, .table tr td.lockable .fa {
+.table tr.locked td.unlockable .fa,
+.table tr td.lockable .fa {
   display: none;
   position: absolute;
   margin-top: 6px;
@@ -487,18 +504,20 @@ div.box {
   right: 28px;
 }
 
-.table tr.locked td.unlockable:hover, .table tr td.lockable:hover {
+.table tr.locked td.unlockable:hover,
+.table tr td.lockable:hover {
   color: transparent;
 }
 
-.table tr.locked td.unlockable:hover .fa, .table tr td.lockable:hover .fa {
+.table tr.locked td.unlockable:hover .fa,
+.table tr td.lockable:hover .fa {
   color: @cui-gray-800;
   display: block;
 }
 
 .fixed-first-col-hover {
-  background-color: @cui-purple-gray-050!important;
-  border-left: 2px solid @cui-gray-300!important;
+  background-color: @cui-purple-gray-050 !important;
+  border-left: 2px solid @cui-gray-300 !important;
   padding-left: 14px !important;
 }
 
@@ -536,10 +555,12 @@ div.box {
   border: 1px solid @cui-gray-400;
   border-radius: 6px;
   .hue-box-shadow-bottom;
+
   -webkit-background-clip: padding-box;
   -moz-background-clip: padding;
   background-clip: padding-box;
   white-space: nowrap;
+
   a {
     margin-left: 10px;
     margin-right: -14px;
@@ -547,6 +568,7 @@ div.box {
   }
 }
 
-.table-nowrap td, .table-nowrap th {
+.table-nowrap td,
+.table-nowrap th {
   white-space: nowrap;
 }

+ 15 - 1
desktop/core/src/desktop/static/desktop/less/components/hue-wizard.less

@@ -24,6 +24,7 @@
   margin-top: -10px;
   z-index: 100;
   padding-top: 10px;
+
   ol {
     margin: 0;
   }
@@ -32,52 +33,64 @@
 .step-indicator {
   border-collapse: separate;
   display: table;
-  margin-left: 0px;
+  margin-left: 0;
   position: relative;
   table-layout: fixed;
   vertical-align: middle;
   width: 100%;
+
   li {
     display: table-cell;
     float: none;
     padding: 0;
     width: 49%;
   }
+
   li.arrow {
     width: 2%;
     text-align: center;
   }
+
   .active .step {
     border-color: @cui-blue-700;
     color: @cui-blue-700;
   }
+
   .active .caption {
     color: @cui-blue-700;
   }
+
   .complete .step {
     border-color: @cui-green-500;
     color: @cui-green-500;
   }
+
   .complete .caption {
     color: @cui-green-500;
   }
+
   .error .step {
     border-color: @cui-red-400;
     color: @cui-red-400;
   }
+
   .error .caption {
     color: @cui-red-400;
   }
+
   .active.complete .step {
     border-color: @cui-blue-700;
     color: @cui-blue-700;
   }
+
   .active.complete .caption {
     color: @cui-blue-700;
   }
+
   .inactive .caption {
     color: @cui-gray-300;
   }
+
   .step {
     background-color: @cui-white;
     border: 1px solid @cui-gray-300;
@@ -91,6 +104,7 @@
     position: relative;
     z-index: 1;
   }
+
   .caption {
     box-sizing: border-box;
     color: @cui-gray-300;

+ 0 - 3
desktop/core/src/desktop/static/desktop/less/cui/extra-variables.less

@@ -98,8 +98,6 @@
 @cui-btn-primary-disabled-bg:     @cui-gray-200;
 @cui-btn-primary-disabled-border: @cui-gray-400;
 
-
-
 // === Modals : Shape and Position === //
 @cui-modal-clearing: 30px; // For calculating max-height
 @cui-modal-border-radius: 7px;
@@ -125,7 +123,6 @@
 @cui-modal-width-lg: 900px;
 @cui-modal-width-xl: 90%;
 
-
 // For right aligned horizontal dl, we want a slightly wider.
 @dl-horizontal-right-offset: 176px;
 

+ 143 - 143
desktop/core/src/desktop/static/desktop/less/cui/variables.less

@@ -52,16 +52,16 @@
 //
 //## Settings for some of the most global styles.
 
-//** Background color for `<body>`.
+//## Background color for `<body>`.
 @body-bg:               @cui-blue-gray-050;
-//** Global text color on `<body>`.
+//## Global text color on `<body>`.
 @text-color:            @cui-gray-800;
 
-//** Global textual link color.
+//## Global textual link color.
 @link-color:            @brand-primary;
-//** Link hover color set via explicit color
+//## Link hover color set via explicit color
 @link-hover-color:      @cui-blue-900;
-//** Link hover decoration.
+//## Link hover decoration.
 @link-hover-decoration: underline;
 
 
@@ -71,7 +71,7 @@
 
 @font-family-sans-serif:  Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
 @font-family-serif:       Georgia, "Times New Roman", Times, serif;
-//** Default monospace fonts for `<code>`, `<kbd>`, and `<pre>`.
+//## Default monospace fonts for `<code>`, `<kbd>`, and `<pre>`.
 @font-family-monospace:   Roboto Mono, Menlo, Monaco, Consolas, "Courier New", monospace;
 @font-family-base:        @font-family-sans-serif;
 
@@ -86,12 +86,12 @@
 @font-size-h5:            16px;
 @font-size-h6:            14px;
 
-//** Unit-less `line-height` for use in components like buttons.
+//## Unit-less `line-height` for use in components like buttons.
 @line-height-base:        1.428571429; // 20/14
-//** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.
+//## Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.
 @line-height-computed:    floor((@font-size-base * @line-height-base)); // ~20px
 
-//** By default, this inherits from the `<body>`.
+//## By default, this inherits from the `<body>`.
 @headings-font-family:    inherit;
 @headings-font-weight:    500;
 @headings-line-height:    1.1;
@@ -102,11 +102,11 @@
 //
 //## Specify custom location and filename of the included Glyphicons icon font. Useful for those including Bootstrap via Bower.
 
-//** Load fonts from this directory.
+//## Load fonts from this directory.
 @icon-font-path:          "../fonts/";
-//** File name for all font files.
+//## File name for all font files.
 @icon-font-name:          "glyphicons-halflings-regular";
-//** Element ID within SVG icon file.
+//## Element ID within SVG icon file.
 @icon-font-svg-id:        "glyphicons_halflingsregular";
 
 //== Components
@@ -133,14 +133,14 @@
 @border-radius-large:       4px;
 @border-radius-small:       4px;
 
-//** Global color for active items (e.g., navs or dropdowns).
+//## Global color for active items (e.g., navs or dropdowns).
 @component-active-color:    @cui-default-inverse-color;
-//** Global background color for active items (e.g., navs or dropdowns).
+//## Global background color for active items (e.g., navs or dropdowns).
 @component-active-bg:       @brand-primary;
 
-//** Width of the `border` for generating carets that indicator dropdowns.
+//## Width of the `border` for generating carets that indicator dropdowns.
 @caret-width-base:          4px;
-//** Carets increase slightly in size for larger components.
+//## Carets increase slightly in size for larger components.
 @caret-width-large:         5px;
 
 
@@ -148,20 +148,20 @@
 //
 //## Customizes the `.table` component with basic values, each used across all table variations.
 
-//** Padding for `<th>`s and `<td>`s.
+//## Padding for `<th>`s and `<td>`s.
 @table-cell-padding:            7px 8px 8px 8px;
-//** Padding for cells in `.table-condensed`.
+//## Padding for cells in `.table-condensed`.
 @table-condensed-cell-padding:  3px 8px 4px 8px;
 
-//** Default background color used for all tables.
+//## Default background color used for all tables.
 @table-bg:                      transparent;
-//** Background color used for `.table-striped`.
+//## Background color used for `.table-striped`.
 @table-bg-accent:               @cui-default-bg-color;
-//** Background color used for `.table-hover`.
+//## Background color used for `.table-hover`.
 @table-bg-hover:                @cui-gray-050;
 @table-bg-active:               @table-bg-hover;
 
-//** Border color for table and cell borders.
+//## Border color for table and cell borders.
 @table-border-color:            @cui-default-border-color;
 
 
@@ -207,50 +207,50 @@
 //
 //##
 
-//** `<input>` background color
+//## `<input>` background color
 @input-bg:                       @cui-default-bg-color;
-//** `<input disabled>` background color
+//## `<input disabled>` background color
 @input-bg-disabled:              @cui-gray-050;
 
-//** Text color for `<input>`s
+//## Text color for `<input>`s
 @input-color:                    @text-color;
-//** `<input>` border color
+//## `<input>` border color
 @input-border:                   @cui-gray-400;
 
 // TODO: Rename `@input-border-radius` to `@input-border-radius-base` in v4
-//** Default `.form-control` border radius
+//## Default `.form-control` border radius
 // This has no effect on `<select>`s in some browsers, due to the limited stylability of `<select>`s in CSS.
 @input-border-radius:            @border-radius-base;
-//** Large `.form-control` border radius
+//## Large `.form-control` border radius
 @input-border-radius-large:      @border-radius-large;
-//** Small `.form-control` border radius
+//## Small `.form-control` border radius
 @input-border-radius-small:      @border-radius-small;
 
-//** Border color for inputs on focus
+//## Border color for inputs on focus
 @input-border-focus:             #66afe9;
 
-//** Placeholder text color
+//## Placeholder text color
 @input-color-placeholder:        @cui-gray-500;
 
-//** Default `.form-control` height
+//## Default `.form-control` height
 @input-height-base:              32px;
-//** Large `.form-control` height
+//## Large `.form-control` height
 @input-height-large:             48px;
-//** Small `.form-control` height
+//## Small `.form-control` height
 @input-height-small:             28px;
 
-//** `.form-group` margin
+//## `.form-group` margin
 @form-group-margin-bottom:       12px;
 
 @legend-color:                   @gray-dark;
 @legend-border-color:            #e5e5e5;
 
-//** Background color for textual input addons
+//## Background color for textual input addons
 @input-group-addon-bg:           @well-bg;
-//** Border color for textual input addons
+//## Border color for textual input addons
 @input-group-addon-border-color: @input-border;
 
-//** Disabled cursor for form controls and buttons.
+//## Disabled cursor for form controls and buttons.
 @cursor-disabled:                not-allowed;
 
 
@@ -258,34 +258,34 @@
 //
 //## Dropdown menu container and contents.
 
-//** Background for the dropdown menu.
+//## Background for the dropdown menu.
 @dropdown-bg:                    @cui-default-bg-color;
-//** Dropdown menu `border-color`.
+//## Dropdown menu `border-color`.
 @dropdown-border:                rgba(0,0,0,.15);
-//** Dropdown menu `border-color` **for IE8**.
+//## Dropdown menu `border-color` **for IE8**.
 @dropdown-fallback-border:       #ccc;
-//** Divider color for between dropdown items.
+//## Divider color for between dropdown items.
 @dropdown-divider-bg:            #e5e5e5;
 
-//** Dropdown link text color.
+//## Dropdown link text color.
 @dropdown-link-color:            @gray-dark;
-//** Hover color for dropdown links.
+//## Hover color for dropdown links.
 @dropdown-link-hover-color:      @cui-default-inverse-color;
-//** Hover background for dropdown links.
+//## Hover background for dropdown links.
 @dropdown-link-hover-bg:         @cui-blue-700;
 
-//** Active dropdown menu item text color.
+//## Active dropdown menu item text color.
 @dropdown-link-active-color:     @component-active-color;
-//** Active dropdown menu item background color.
+//## Active dropdown menu item background color.
 @dropdown-link-active-bg:        @component-active-bg;
 
-//** Disabled dropdown menu item background color.
+//## Disabled dropdown menu item background color.
 @dropdown-link-disabled-color:   @gray-light;
 
-//** Text color for headers within dropdown menus.
+//## Text color for headers within dropdown menus.
 @dropdown-header-color:          @gray-light;
 
-//** Deprecated `@dropdown-caret-color` as of v3.1.0
+//## Deprecated `@dropdown-caret-color` as of v3.1.0
 @dropdown-caret-color:           #000;
 
 
@@ -310,32 +310,32 @@
 //## Define the breakpoints at which your layout will change, adapting to different screen sizes.
 
 // Extra small screen / phone
-//** Deprecated `@screen-xs` as of v3.0.1
+//## Deprecated `@screen-xs` as of v3.0.1
 @screen-xs:                  480px;
-//** Deprecated `@screen-xs-min` as of v3.2.0
+//## Deprecated `@screen-xs-min` as of v3.2.0
 @screen-xs-min:              @screen-xs;
-//** Deprecated `@screen-phone` as of v3.0.1
+//## Deprecated `@screen-phone` as of v3.0.1
 @screen-phone:               @screen-xs-min;
 
 // Small screen / tablet
-//** Deprecated `@screen-sm` as of v3.0.1
+//## Deprecated `@screen-sm` as of v3.0.1
 @screen-sm:                  768px;
 @screen-sm-min:              @screen-sm;
-//** Deprecated `@screen-tablet` as of v3.0.1
+//## Deprecated `@screen-tablet` as of v3.0.1
 @screen-tablet:              @screen-sm-min;
 
 // Medium screen / desktop
-//** Deprecated `@screen-md` as of v3.0.1
+//## Deprecated `@screen-md` as of v3.0.1
 @screen-md:                  992px;
 @screen-md-min:              @screen-md;
-//** Deprecated `@screen-desktop` as of v3.0.1
+//## Deprecated `@screen-desktop` as of v3.0.1
 @screen-desktop:             @screen-md-min;
 
 // Large screen / wide desktop
-//** Deprecated `@screen-lg` as of v3.0.1
+//## Deprecated `@screen-lg` as of v3.0.1
 @screen-lg:                  1200px;
 @screen-lg-min:              @screen-lg;
-//** Deprecated `@screen-lg-desktop` as of v3.0.1
+//## Deprecated `@screen-lg-desktop` as of v3.0.1
 @screen-lg-desktop:          @screen-lg-min;
 
 // So media queries don't overlap when required, provide a maximum
@@ -348,14 +348,14 @@
 //
 //## Define your custom responsive grid.
 
-//** Number of columns in the grid.
+//## Number of columns in the grid.
 @grid-columns:              12;
-//** Padding between columns. Gets divided in half for the left and right.
+//## Padding between columns. Gets divided in half for the left and right.
 @grid-gutter-width:         24px;
 // Navbar collapse
-//** Point at which the navbar becomes uncollapsed.
+//## Point at which the navbar becomes uncollapsed.
 @grid-float-breakpoint:     @screen-sm-min;
-//** Point at which the navbar begins collapsing.
+//## Point at which the navbar begins collapsing.
 @grid-float-breakpoint-max: (@grid-float-breakpoint - 1);
 
 
@@ -365,17 +365,17 @@
 
 // Small screen / tablet
 @container-tablet:             (720px + @grid-gutter-width);
-//** For `@screen-sm-min` and up.
+//## For `@screen-sm-min` and up.
 @container-sm:                 @container-tablet;
 
 // Medium screen / desktop
 @container-desktop:            (940px + @grid-gutter-width);
-//** For `@screen-md-min` and up.
+//## For `@screen-md-min` and up.
 @container-md:                 @container-desktop;
 
 // Large screen / wide desktop
 @container-large-desktop:      (1140px + @grid-gutter-width);
-//** For `@screen-lg-min` and up.
+//## For `@screen-lg-min` and up.
 @container-lg:                 @container-large-desktop;
 
 
@@ -543,17 +543,17 @@
 //
 //##
 
-//** Tooltip max width
+//## Tooltip max width
 @tooltip-max-width:           200px;
-//** Tooltip text color
+//## Tooltip text color
 @tooltip-color:               @cui-default-inverse-color;
-//** Tooltip background color
+//## Tooltip background color
 @tooltip-bg:                  #000;
 @tooltip-opacity:             .9;
 
-//** Tooltip arrow width
+//## Tooltip arrow width
 @tooltip-arrow-width:         5px;
-//** Tooltip arrow color
+//## Tooltip arrow color
 @tooltip-arrow-color:         @tooltip-bg;
 
 
@@ -561,28 +561,28 @@
 //
 //##
 
-//** Popover body background color
+//## Popover body background color
 @popover-bg:                          @cui-default-bg-color;
-//** Popover maximum width
+//## Popover maximum width
 @popover-max-width:                   276px;
-//** Popover border color
+//## Popover border color
 @popover-border-color:                @cui-default-border-color;
-//** Popover fallback border color
+//## Popover fallback border color
 @popover-fallback-border-color:       #ccc;
 
-//** Popover title background color
+//## Popover title background color
 @popover-title-bg: @cui-purple-gray-050;
 
-//** Popover arrow width
+//## Popover arrow width
 @popover-arrow-width:                 10px;
-//** Popover arrow color
+//## Popover arrow color
 @popover-arrow-color:                 @popover-bg;
 
-//** Popover outer arrow width
+//## Popover outer arrow width
 @popover-arrow-outer-width:           (@popover-arrow-width + 1);
-//** Popover outer arrow color
+//## Popover outer arrow color
 @popover-arrow-outer-color:           fadein(@popover-border-color, 5%);
-//** Popover outer arrow fallback color
+//## Popover outer arrow fallback color
 @popover-arrow-outer-fallback-color:  darken(@popover-fallback-border-color, 20%);
 
 
@@ -590,22 +590,22 @@
 //
 //##
 
-//** Default label background color
+//## Default label background color
 @label-default-bg:            @gray-light;
-//** Primary label background color
+//## Primary label background color
 @label-primary-bg:            @brand-primary;
-//** Success label background color
+//## Success label background color
 @label-success-bg:            @brand-success;
-//** Info label background color
+//## Info label background color
 @label-info-bg:               @brand-info;
-//** Warning label background color
+//## Warning label background color
 @label-warning-bg:            @brand-warning;
-//** Danger label background color
+//## Danger label background color
 @label-danger-bg:             @brand-danger;
 
-//** Default label text color
+//## Default label text color
 @label-color:                 @cui-default-inverse-color;
-//** Default text color of a linked label
+//## Default text color of a linked label
 @label-link-hover-color:      @cui-default-inverse-color;
 
 
@@ -613,28 +613,28 @@
 //
 //##
 
-//** Padding applied to the modal body
+//## Padding applied to the modal body
 @modal-inner-padding:         24px;
 
-//** Padding applied to the modal title
+//## Padding applied to the modal title
 @modal-title-padding:         15px;
-//** Modal title line-height
+//## Modal title line-height
 @modal-title-line-height:     60px;
 
-//** Background color of modal content area
+//## Background color of modal content area
 @modal-content-bg:           @cui-default-bg-color;
-//** Modal content border color
+//## Modal content border color
 @modal-content-border-color: @cui-gray-800;
-//** Modal content border color **for IE8**
+//## Modal content border color **for IE8**
 @modal-content-fallback-border-color:          #999;
 
-//** Modal backdrop background color
+//## Modal backdrop background color
 @modal-backdrop-bg:           @cui-black;
-//** Modal backdrop opacity
+//## Modal backdrop opacity
 @modal-backdrop-opacity: .68;
-//** Modal header border color
+//## Modal header border color
 @modal-header-border-color:  @cui-default-border-color; // border-bottom only
-//** Modal footer border color
+//## Modal footer border color
 @modal-footer-border-color:  @cui-default-border-color;
 
 @modal-lg:                    900px;
@@ -671,22 +671,22 @@
 //
 //##
 
-//** Background color of the whole progress component
+//## Background color of the whole progress component
 @progress-bg:                 #f5f5f5;
-//** Progress bar text color
+//## Progress bar text color
 @progress-bar-color:          @cui-default-inverse-color;
-//** Variable for setting rounded corners on progress bar.
+//## Variable for setting rounded corners on progress bar.
 @progress-border-radius:      0;
 
-//** Default progress bar color
+//## Default progress bar color
 @progress-bar-bg:             @brand-primary;
-//** Success progress bar color
+//## Success progress bar color
 @progress-bar-success-bg:     @brand-success;
-//** Warning progress bar color
+//## Warning progress bar color
 @progress-bar-warning-bg:     @brand-warning;
-//** Danger progress bar color
+//## Danger progress bar color
 @progress-bar-danger-bg:      @brand-danger;
-//** Info progress bar color
+//## Info progress bar color
 @progress-bar-info-bg:        @brand-info;
 
 
@@ -694,29 +694,29 @@
 //
 //##
 
-//** Background color on `.list-group-item`
+//## Background color on `.list-group-item`
 @list-group-bg:                 @cui-default-bg-color;
-//** `.list-group-item` border color
+//## `.list-group-item` border color
 @list-group-border:             #ddd;
-//** List group border radius
+//## List group border radius
 @list-group-border-radius:      0;
 
-//** Background color of single list items on hover
+//## Background color of single list items on hover
 @list-group-hover-bg:           #f5f5f5;
-//** Text color of active list items
+//## Text color of active list items
 @list-group-active-color:       @component-active-color;
-//** Background color of active list items
+//## Background color of active list items
 @list-group-active-bg:          @component-active-bg;
-//** Border color of active list elements
+//## Border color of active list elements
 @list-group-active-border:      @list-group-active-bg;
-//** Text color for content within active list items
+//## Text color for content within active list items
 @list-group-active-text-color:  lighten(@list-group-active-bg, 40%);
 
-//** Text color of disabled list items
+//## Text color of disabled list items
 @list-group-disabled-color:      @gray-light;
-//** Background color of disabled list items
+//## Background color of disabled list items
 @list-group-disabled-bg:         @gray-lighter;
-//** Text color for content within disabled list items
+//## Text color for content within disabled list items
 @list-group-disabled-text-color: @list-group-disabled-color;
 
 @list-group-link-color:         #555;
@@ -734,7 +734,7 @@
 @panel-footer-padding:        7px 23px 12px 23px;
 @panel-border-radius:         0;
 
-//** Border color for elements within panels
+//## Border color for elements within panels
 @panel-inner-border:          transparent;
 @panel-footer-bg:             @cui-default-bg-color;
 
@@ -767,18 +767,18 @@
 //
 //##
 
-//** Padding around the thumbnail image
+//## Padding around the thumbnail image
 @thumbnail-padding:           4px;
-//** Thumbnail background color
+//## Thumbnail background color
 @thumbnail-bg:                @cui-default-bg-color;
-//** Thumbnail border color
+//## Thumbnail border color
 @thumbnail-border:            #ddd;
-//** Thumbnail border radius
+//## Thumbnail border radius
 @thumbnail-border-radius:     0;
 
-//** Custom text color for thumbnail captions
+//## Custom text color for thumbnail captions
 @thumbnail-caption-color:     @text-color;
-//** Padding around the thumbnail caption
+//## Padding around the thumbnail caption
 @thumbnail-caption-padding:   9px;
 
 
@@ -795,13 +795,13 @@
 //##
 
 @badge-color:                 @cui-default-inverse-color;
-//** Linked badge text color on hover
+//## Linked badge text color on hover
 @badge-link-hover-color:      @cui-default-inverse-color;
 @badge-bg:                    @gray-light;
 
-//** Badge text color in active nav link
+//## Badge text color in active nav link
 @badge-active-color:          @link-color;
-//** Badge background color in active nav link
+//## Badge background color in active nav link
 @badge-active-bg:             @cui-default-bg-color;
 
 @badge-font-weight:           bold;
@@ -815,13 +815,13 @@
 
 @breadcrumb-padding-vertical: 0;
 @breadcrumb-padding-horizontal: 24px;
-//** Breadcrumb background color
+//## Breadcrumb background color
 @breadcrumb-bg:                 transparent;
-//** Breadcrumb text color
+//## Breadcrumb text color
 @breadcrumb-color:              @cui-gray-400;
-//** Text color of current page in the breadcrumb
+//## Text color of current page in the breadcrumb
 @breadcrumb-active-color:       @gray-light;
-//** Textual separator for between breadcrumb elements
+//## Textual separator for between breadcrumb elements
 @breadcrumb-separator:          "/";
 
 
@@ -871,25 +871,25 @@
 //
 //##
 
-//** Horizontal offset for forms and lists.
+//## Horizontal offset for forms and lists.
 @component-offset-horizontal: 146px;
-//** Text muted color
+//## Text muted color
 @text-muted:                  @cui-gray-700;
-//** Abbreviations and acronyms border color
+//## Abbreviations and acronyms border color
 @abbr-border-color:           @gray-light;
-//** Headings small color
+//## Headings small color
 @headings-small-color:        @gray-light;
-//** Blockquote small color
+//## Blockquote small color
 @blockquote-small-color:      @gray-light;
-//** Blockquote font size
+//## Blockquote font size
 @blockquote-font-size:        (@font-size-base * 1.25);
-//** Blockquote border color
+//## Blockquote border color
 @blockquote-border-color:     @gray-lighter;
-//** Page header border color
+//## Page header border color
 @page-header-border-color:    @cui-default-border-color;
-//** Width of horizontal description list titles
+//## Width of horizontal description list titles
 @dl-horizontal-offset:        @component-offset-horizontal;
-//** Point at which .dl-horizontal becomes horizontal
+//## Point at which .dl-horizontal becomes horizontal
 @dl-horizontal-breakpoint:    @grid-float-breakpoint;
-//** Horizontal line color.
+//## Horizontal line color.
 @hr-border:                   @cui-default-border-color;

+ 13 - 6
desktop/core/src/desktop/static/desktop/less/home.less

@@ -23,6 +23,7 @@
 .doc-browser-container {
   .display-flex();
   .flex-direction(column);
+
   position: absolute;
   top: 0;
   bottom: 0;
@@ -35,6 +36,7 @@
   .flex(0 0 auto);
   .display-flex();
   .flex-wrap(nowrap);
+
   overflow: hidden;
   padding: 2px;
   padding-bottom: 0;
@@ -59,8 +61,10 @@
 
 .doc-browser-list {
   .flex(1 1 auto);
+
   overflow-y: scroll;
   overflow-x: hidden;
+  padding: 4px 0;
 }
 
 .doc-browser-breadcrumbs {
@@ -105,10 +109,6 @@
   z-index: 10;
 }
 
-.doc-browser-list {
-  padding: 4px 0;
-}
-
 .doc-browser-entries {
   list-style: none;
   margin: 0;
@@ -157,6 +157,7 @@
 .doc-browser-row {
   .display-flex();
   .flex-wrap(nowrap);
+
   width: 100%;
   height: 100%;
 }
@@ -164,6 +165,7 @@
 .doc-browser-primary-col {
   .flex(1);
   .nowrap-ellipsis();
+
   min-width: 200px;
   vertical-align: middle;
   padding-left: 8px;
@@ -185,6 +187,7 @@
 
 .doc-browser-attr-group {
   .flex(0 1 770px);
+
   white-space: nowrap;
   float: right;
   display: inline-block;
@@ -196,7 +199,7 @@
 }
 
 .doc-browser-attr-col {
-  display: inline-block;;
+  display: inline-block;
   height: 30px;
   line-height: 30px;
   vertical-align: middle;
@@ -217,21 +220,25 @@
 
 .doc-browser-description {
   .nowrap-ellipsis();
+
   width: 300px;
 }
 
 .doc-browser-type {
   .nowrap-ellipsis();
+
   width: 130px;
 }
 
 .doc-browser-owner {
   .nowrap-ellipsis();
+
   width: 130px;
 }
 
 .doc-browser-modified {
   .nowrap-ellipsis();
+
   width: 130px;
 }
 
@@ -325,4 +332,4 @@
 
 .document-types .hi {
   margin-right: 4px;
-}
+}

+ 1 - 1
desktop/core/src/desktop/static/desktop/less/httperrors.less

@@ -34,4 +34,4 @@
     padding: 20px 35px 20px;
     margin-bottom: 50px;
   }
-}
+}

+ 65 - 39
desktop/core/src/desktop/static/desktop/less/hue-assist.less

@@ -22,9 +22,11 @@
 .assist-panel {
   .display-flex;
   .flex-direction(column);
+
   height: 100%;
   overflow: hidden;
   position: relative;
+
   & > .dz-default {
     display: none;
   }
@@ -34,9 +36,10 @@
   .flex(0);
 }
 
-.assist-panel-contents  {
+.assist-panel-contents {
   position: relative;
   .flex(1 1 100%);
+
   overflow: hidden;
   padding-top: 10px;
 }
@@ -130,7 +133,7 @@
   height: 16px;
   -webkit-filter: grayscale(1);
   filter: grayscale(1);
-  opacity: .8;
+  opacity: 0.8;
 }
 
 .assist {
@@ -153,6 +156,7 @@
 
 .assist-header {
   .flex(1);
+
   color: @hue-primary-color-dark;
   background-color: @cui-gray-050;
   border-top: 1px solid @cui-default-border-color;
@@ -178,22 +182,22 @@
 .assist-inner-header {
   width: 100%;
   color: @cui-gray-700;
-  margin-left:3px;
-  margin-bottom:2px;
+  margin-left: 3px;
+  margin-bottom: 2px;
   font-weight: bold;
   font-size: 15px;
-  margin-top: 0
+  margin-top: 0;
 }
 
 .assist-stretchable-list {
-  position:relative;
+  position: relative;
   overflow-y: auto;
   overflow-x: hidden;
   width: 100%;
   border: none;
   padding: 0;
   margin-bottom: 1px;
-  margin-top:3px;
+  margin-top: 3px;
 }
 
 .assist-header-actions {
@@ -209,6 +213,7 @@
 .assist-panel-switches {
   position: relative;
   .flex(0 0 49px);
+
   line-height: 49px;
   padding-left: 12px;
   height: 49px;
@@ -283,7 +288,6 @@
 .assist-tables > li {
   position: relative;
   padding-top: 2px;
-  padding-left-left: 4px;
   margin-left: 0;
   margin-right: 0;
   overflow-x: hidden;
@@ -299,7 +303,8 @@
   .assist-column {
     background-color: @cui-white;
 
-    .assist-actions, .assist-file-actions {
+    .assist-actions,
+    .assist-file-actions {
       background-color: @cui-white;
     }
 
@@ -309,12 +314,14 @@
   }
 
   .assist-column:hover {
-    .assist-actions, .assist-file-actions {
+    .assist-actions,
+    .assist-file-actions {
       background-color: @cui-gray-050;
     }
   }
 
-  .assist-actions, .assist-file-actions {
+  .assist-actions,
+  .assist-file-actions {
     background-color: @cui-gray-050;
   }
 }
@@ -342,7 +349,7 @@
 
 .assist-breadcrumb-back {
   font-size: 15px;
-  margin-right:8px;
+  margin-right: 8px;
 }
 
 .assist-document-link .hi {
@@ -367,7 +374,6 @@
   }
 }
 
-
 .assist-document-link,
 .assist-document-link:focus,
 .assist-table-link,
@@ -387,7 +393,7 @@
 }
 
 .assist-db-header-actions {
-  position:absolute;
+  position: absolute;
   top: 0;
   right: 0;
   padding-left: 4px;
@@ -409,7 +415,7 @@
 }
 
 .assist-actions {
-  position:absolute;
+  position: absolute;
   top: 0;
   right: 0;
   padding-left: 4px;
@@ -428,12 +434,12 @@
   margin-left: 10px;
 }
 
-.assist-file-actions  {
-  position:absolute;
+.assist-file-actions {
+  position: absolute;
   top: 0;
   right: 0;
   padding-right: 15px;
-  padding-left:4px;
+  padding-left: 4px;
   background-color: @cui-white;
   opacity: 0;
 
@@ -443,7 +449,7 @@
 }
 
 .table-actions {
-  padding-top:2px;
+  padding-top: 2px;
 }
 
 .assist-tables > li.selected .assist-actions {
@@ -461,10 +467,10 @@
 }
 
 .highlightable {
-  -webkit-transition: all .6s ease;
-  -moz-transition: all .6s ease;
-  -o-transition: all .6s ease;
-  transition: all .6s ease;
+  -webkit-transition: all 0.6s ease;
+  -moz-transition: all 0.6s ease;
+  -o-transition: all 0.6s ease;
+  transition: all 0.6s ease;
 }
 
 .highlight {
@@ -473,14 +479,15 @@
 }
 
 .assist-db-header-actions .highlightable a > span {
-  -webkit-transition: all .6s ease;
-  -moz-transition: all .6s ease;
-  -o-transition: all .6s ease;
-  transition: all .6s ease;
+  -webkit-transition: all 0.6s ease;
+  -moz-transition: all 0.6s ease;
+  -o-transition: all 0.6s ease;
+  transition: all 0.6s ease;
 }
 
 .assist-db-header-actions .highlight {
   padding-left: 0;
+
   a > span {
     text-shadow: 0 0 0.2em @hue-primary-color-light;
     color: @hue-primary-color-dark !important;
@@ -505,16 +512,19 @@
 
 .assist-flex-panel {
   .display-flex();
+
   position: relative;
   .flex-flow(column nowrap);
   .flex-align-items(stretch);
-  height:100%;
+
+  height: 100%;
 }
 
 .assist-flex-header {
   overflow: hidden;
   position: relative;
   .flex(0 0 25px);
+
   white-space: nowrap;
   font-size: 15px;
 
@@ -528,6 +538,7 @@
   overflow: hidden;
   position: relative;
   .flex(0 0 30px);
+
   white-space: nowrap;
 }
 
@@ -644,6 +655,7 @@
   ul li {
     margin: 8px 0;
   }
+
   .hue-doc-title {
     color: @hue-primary-color-dark;
     font: 15px/normal @font-family-monospace;
@@ -651,6 +663,7 @@
     line-height: 18px;
     margin-bottom: 10px;
   }
+
   .hue-doc-codeblock,
   .hue-doc-codeph {
     font-family: @font-family-monospace;
@@ -659,64 +672,76 @@
     border: 1px solid @cui-gray-100;
     border-radius: 2px;
   }
-  .hue-doc-internal-link {
 
-  }
   .hue-doc-codeph {
     padding: 0 3px;
   }
+
   .hue-doc-codeblock {
     display: block;
     white-space: pre;
     overflow-x: auto;
     margin-bottom: 10px;
     padding: 6px 8px;
+
     .hue-doc-varname {
       color: @cui-steel;
     }
   }
+
   .hue-doc-note {
     border: 1px solid @hue-primary-color-light;
     padding: 4px 5px;
     margin-bottom: 10px;
-    &:before {
+
+    &::before {
       content: 'Note:';
       color: @cui-gray-800;
       font-weight: 500;
     }
   }
+
   .hue-doc-varname {
     font-family: @font-family-monospace;
     font-style: italic;
   }
-  .hue-doc-ph {
 
-  }
+  //.hue-doc-ph {
+  //
+  //}
+
   .hue-doc-filepath {
     font-family: @font-family-monospace;
     color: @cui-gray-800;
   }
-  .hue-doc-external-link {
 
-  }
+  //.hue-doc-external-link {
+  //
+  //}
+
   .hue-doc-cmdname {
     font-family: @font-family-monospace;
     color: @cui-steel;
   }
+
   .hue-doc-term {
     font-family: @font-family-monospace;
   }
+
   .hue-doc-uicontrol {
     display: inline-block;
     font-weight: 500;
   }
+
   .hue-doc-example {
     font-family: @font-family-monospace;
     color: @cui-steel;
   }
-  .hue-doc-sthead {
 
-  }
+  //.hue-doc-sthead {
+  //
+  //}
+
   .hue-doc-pre {
     display: block;
     font-family: @font-family-monospace;
@@ -799,7 +824,6 @@
 
     li {
       padding: 0 10px;
-
       direction: rtl;
       text-align: left;
       .nowrap-ellipsis();
@@ -809,10 +833,12 @@
 
 .assist-preloader-wrapper {
   background: repeat-y @cui-white;
+
   .assist-preloader {
     background-color: @cui-white;
   }
+
   &.assist-preloader-ghost {
     background-image: url(/static/desktop/art/assist-preload.svg);
   }
-}
+}

+ 12 - 6
desktop/core/src/desktop/static/desktop/less/hue-autocomplete.less

@@ -21,6 +21,7 @@
 .hue-ace-autocompleter {
   position: fixed;
   .display-flex();
+
   z-index: 999;
   max-height: 250px;
   align-items: flex-start;
@@ -31,10 +32,10 @@
   .flex(0 0 300px);
   .display-flex();
   .flex-direction(column);
+
   width: 300px;
   max-height: 250px;
   overflow: hidden;
-
   border: 1px solid @cui-gray-300;
   border-radius: 2px;
   background-color: @cui-white;
@@ -52,7 +53,8 @@
 
 .autocompleter-header {
   .flex(0 0 20px);
-  position:relative;
+
+  position: relative;
   padding: 5px;
   background-color: @cui-gray-050;
   line-height: 20px;
@@ -105,16 +107,18 @@
   height: 19px;
   clear: both;
   background-color: @cui-white;
-  padding:3px;
+  padding: 3px;
   cursor: pointer;
   position: relative;
-  font: 12px/normal @font-family-monospace;direction: ltr;
+  font: 12px/normal @font-family-monospace;
+  direction: ltr;
   line-height: 18px;
 }
 
 .autocompleter-suggestion:hover {
   background-color: @cui-blue-010;
 }
+
 .autocompleter-suggestion.selected {
   background-color: @hue-primary-color-light;
 }
@@ -126,6 +130,7 @@
   overflow-x: hidden;
   text-overflow: ellipsis;
   white-space: nowrap;
+
   b {
     font-weight: bolder;
   }
@@ -198,6 +203,7 @@
   color: @cui-gray-700;
   font-style: italic;
 }
+
 .autocompleter-details-contents .details-comment * {
   font-size: 13px !important;
   line-height: 14px !important;
@@ -206,7 +212,7 @@
 
 .autocompleter-details-contents .details-code {
   background-color: @cui-gray-050;
-  padding:3px;
+  padding: 3px;
   color: @cui-gray-700;
   font: 12px/normal @font-family-monospace;
   direction: ltr;
@@ -223,4 +229,4 @@
 .fn-sig {
   white-space: pre;
   font-family: monospace;
-}
+}

+ 2 - 2
desktop/core/src/desktop/static/desktop/less/hue-bootstrap-embedded.less

@@ -23,11 +23,11 @@
   font-size: 14px;
   line-height: 20px;
   color: #424242;
-  background-color: #ECEFF1;
+  background-color: #eceff1;
 
   // From html definition in bootstrap2.css
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
 
   @import (less) "../ext/css/cui/bootstrap2.css";
-}
+}

+ 1 - 1
desktop/core/src/desktop/static/desktop/less/hue-c3-overrides.less

@@ -22,4 +22,4 @@
   svg {
     font: 10px Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
   }
-}
+}

+ 57 - 31
desktop/core/src/desktop/static/desktop/less/hue-cross-version.less

@@ -17,7 +17,6 @@
 */
 @import (reference) "cui/colors.less";
 @import (reference) "hue-mixins.less";
-
 @import "components/hue-breadcrumbs.less";
 @import "components/hue-catalog-entries-table.less";
 @import "components/hue-demi-modal.less";
@@ -45,7 +44,6 @@
 @import "hue-helpers.less";
 @import "hue-c3-overrides.less";
 
-
 ::-webkit-scrollbar {
   width: 9px;
   height: 9px;
@@ -84,10 +82,12 @@ input[type='password']::-ms-reveal {
   padding-left: 0;
   color: @hue-primary-color-dark;
   cursor: pointer;
+
   .favorite-app {
     opacity: 0;
     .hue-linear-transition(opacity);
   }
+
   &:hover {
     .favorite-app {
       opacity: 1;
@@ -114,10 +114,11 @@ input[type='password']::-ms-reveal {
   color: @hue-primary-color-dark !important;
   padding: 0 !important;
   border: none !important;
-  max-width: none!important;
+  max-width: none !important;
 }
 
-.app-header a:focus, .app-header a:hover {
+.app-header a:focus,
+.app-header a:hover {
   color: @hue-primary-color-dark !important;
 }
 
@@ -134,7 +135,8 @@ input[type='password']::-ms-reveal {
   text-align: center !important;
 }
 
-.nowrap, .no-wrap {
+.nowrap,
+.no-wrap {
   white-space: nowrap;
 }
 
@@ -142,7 +144,6 @@ input[type='password']::-ms-reveal {
   padding: 0;
 }
 
-
 // Hue Checkbox
 
 .hue-checkbox {
@@ -169,9 +170,8 @@ input[type='password']::-ms-reveal {
   }
 
   &.hide {
-    display: none!important;
+    display: none !important;
   }
-
 }
 
 .hueCheckboxText {
@@ -200,9 +200,11 @@ input[type='password']::-ms-reveal {
   height: 1em !important; //d3 conflict
   fill: currentColor;
   margin-bottom: 0.2em;
+
   &.hi-fw {
     width: 1.28571429em !important;
   }
+
   &.hi-bigger {
     height: 1.1em !important;
   }
@@ -318,6 +320,7 @@ input[type='password']::-ms-reveal {
     margin-left: 15px;
     vertical-align: text-top;
   }
+
   .config-property {
     display: inline !important;
   }
@@ -360,13 +363,13 @@ input[type='password']::-ms-reveal {
 }
 
 .dockable {
-  background-color: #FFF;
+  background-color: #fff;
   z-index: 1000;
   padding-bottom: 2px;
 }
 
 .pointer {
- cursor: pointer!important;
+  cursor: pointer !important;
 }
 
 .actionbar-creation {
@@ -382,12 +385,15 @@ input[type='password']::-ms-reveal {
   width: 8px;
   height: 8px;
   display: inline-block;
+
   &.green {
     background-color: @cui-green;
   }
+
   &.orange {
     background-color: @cui-orange;
   }
+
   &.red {
     background-color: @cui-red;
   }
@@ -401,69 +407,80 @@ input[type='password']::-ms-reveal {
 
 .status-border {
   &.completed {
-    border-color: @cui-green!important;
+    border-color: @cui-green !important;
   }
+
   &.running {
-    border-color: @cui-orange!important;
+    border-color: @cui-orange !important;
   }
+
   &.failed {
-    border-color: @cui-red!important;
+    border-color: @cui-red !important;
   }
+
   &.info {
-    border-color: @hue-primary-color-dark!important;
+    border-color: @hue-primary-color-dark !important;
   }
 }
 
 .status-background {
   &.completed {
-    background-color: @cui-green!important;
+    background-color: @cui-green !important;
   }
+
   &.running {
-    background-color: @cui-orange!important;
+    background-color: @cui-orange !important;
   }
+
   &.failed {
-    background-color: @cui-red!important;
+    background-color: @cui-red !important;
   }
+
   &.info {
-    background-color: @hue-primary-color-dark!important;
+    background-color: @hue-primary-color-dark !important;
   }
 }
 
 .status-content {
   &.completed {
-    color: @cui-green!important;
+    color: @cui-green !important;
   }
+
   &.running {
-    color: @cui-orange!important;
+    color: @cui-orange !important;
   }
+
   &.failed {
-    color: @cui-red!important;
+    color: @cui-red !important;
   }
+
   &.info {
-    color: @hue-primary-color-dark!important;
+    color: @hue-primary-color-dark !important;
   }
 }
 
-
 .blue,
 .card-heading-blue {
-  color: @hue-primary-color-dark!important;
+  color: @hue-primary-color-dark !important;
 }
 
 .red {
-  color: @cui-red-400!important;
+  color: @cui-red-400 !important;
 }
 
 #ace_settingsmenu {
   width: 350px;
+
   label {
     display: inline-block;
     height: 31px;
     line-height: 31px;
   }
+
   input {
     margin-bottom: 0;
   }
+
   input[type='checkbox'] {
     margin-right: 2px;
     margin-top: 10px;
@@ -473,6 +490,7 @@ input[type='password']::-ms-reveal {
 ul.errorlist {
   list-style: none outside none;
   margin: 0;
+
   li {
     color: @cui-red-700;
     padding: 2px;
@@ -483,15 +501,18 @@ ul.errorlist {
 
 .mega-popover {
   max-width: 1200px;
+
   .content {
     height: 300px;
     overflow-y: scroll;
   }
+
   .popover-content {
     min-height: 360px;
     min-width: 440px;
     max-width: 660px;
   }
+
   input[type="text"] {
     border-radius: 20px;
     margin: 0;
@@ -545,7 +566,7 @@ ul.errorlist {
   padding: 1px !important;
   padding-left: 4px !important;
   font-size: 12px !important;
-  border: 1px solid rgba(0,0,0,0.2) !important;
+  border: 1px solid rgba(0, 0, 0, 0.2) !important;
   border-radius: 2px !important;
   box-shadow: none !important;
   margin-left: -1px;
@@ -620,8 +641,10 @@ ul.errorlist {
   white-space: initial !important;
 }
 
-.nav-pills-border, .nav-tabs-border {
+.nav-pills-border,
+.nav-tabs-border {
   border-bottom: 1px solid @cui-default-border-color;
+
   li.active {
     margin-bottom: -1px;
   }
@@ -635,6 +658,7 @@ ul.errorlist {
   margin-top: 50px;
   color: @cui-gray-500;
   line-height: 60px;
+
   i {
     font-size: 100px;
   }
@@ -669,7 +693,7 @@ ul.errorlist {
   background-color: @cui-white;
 
   > div {
-    position:absolute;
+    position: absolute;
     left: 0;
     right: 0;
     height: 30px;
@@ -732,14 +756,16 @@ ul.errorlist {
     color: @cui-gray-800;
     white-space: nowrap;
     padding: 6px 20px !important;
-    span{
+
+    span {
       font-size: 15px;
     }
   }
+
   div.no-match {
     width: 200px;
     height: 25px;
-    font-size : 15px
+    font-size: 15px;
   }
 }
 
@@ -748,4 +774,4 @@ ul.errorlist {
   margin-right: 30px;
   margin-top: 15px;
   margin-bottom: 0;
-}
+}

+ 19 - 8
desktop/core/src/desktop/static/desktop/less/hue-cui-overrides.less

@@ -34,12 +34,14 @@
   ul.nav li {
     margin-right: 10px;
     line-height: 19px;
+
     a {
       padding: 16px 15px 13px;
     }
   }
 
-  ul.nav li a:hover, ul.nav li a:focus  {
+  ul.nav li a:hover,
+  ul.nav li a:focus {
     background-color: inherit;
   }
 }
@@ -76,10 +78,15 @@
 }
 
 .nav-tabs > li > a {
-  border-bottom-width: 2px!important;
+  border-bottom-width: 2px !important;
 }
 
-.form-inline label, .form-horizontal label, .form-vertical label, .form-inline .control-label, .form-horizontal .control-label, .form-vertical .control-label {
+.form-inline label,
+.form-horizontal label,
+.form-vertical label,
+.form-inline .control-label,
+.form-horizontal .control-label,
+.form-vertical .control-label {
   font-weight: normal !important;
 }
 
@@ -88,7 +95,8 @@
 }
 
 table.datatables {
-  border-top: none!important;
+  border-top: none !important;
+
   th {
     border-top: 1px solid @cui-gray-300 !important;
   }
@@ -100,12 +108,14 @@ table.datatables {
   margin-bottom: 0;
   padding: 0;
   border: none;
+
   .bar {
     .hue-no-box-shadow;
   }
+
   .bar-label {
     text-align: center;
-    color: #FFFFFF;
+    color: #fff;
     font-size: 12px;
     line-height: 20px;
     text-shadow: 0 0 1px @cui-gray-800;
@@ -113,7 +123,8 @@ table.datatables {
 }
 
 button:focus,
-a:focus, a:active,
+a:focus,
+a:active,
 button::-moz-focus-inner,
 input[type="reset"]::-moz-focus-inner,
 input[type="button"]::-moz-focus-inner,
@@ -133,7 +144,7 @@ select:-moz-focusring {
 }
 
 .input-append input[type="password"] {
-    padding: 5px 6px;
+  padding: 5px 6px;
 }
 
 .cui-app-switcher {
@@ -148,4 +159,4 @@ select:-moz-focusring {
       margin: 0 !important;
     }
   }
-}
+}

+ 5 - 2
desktop/core/src/desktop/static/desktop/less/hue-embedded.less

@@ -43,6 +43,7 @@
   .hue-title-bar {
     background-color: @cui-white !important;
     border-bottom: none !important;
+
     .navbar-inner {
       border-bottom: none !important;
     }
@@ -95,13 +96,15 @@
   bottom: 0;
   left: 0;
   z-index: 1040;
-  background-color: #000000;
+  background-color: #000;
 }
+
 .modal-backdrop.fade {
   opacity: 0;
 }
+
 .modal-backdrop,
 .modal-backdrop.fade.in {
   opacity: 0.8;
   filter: alpha(opacity=80);
-}
+}

+ 7 - 5
desktop/core/src/desktop/static/desktop/less/hue-helpers.less

@@ -24,14 +24,15 @@
 }
 
 .vertical-align-middle {
-  vertical-align: middle!important;
+  vertical-align: middle !important;
 }
 
 .inline-block {
   display: inline-block;
 }
 
-pre, .like-pre {
+pre,
+.like-pre {
   border: none;
   border-left: 5px solid @cui-gray-300;
   border-radius: 0;
@@ -113,7 +114,7 @@ pre, .like-pre {
 }
 
 .no-margin-top {
-  margin-top: 0!important;
+  margin-top: 0 !important;
 }
 
 .no-margin-right {
@@ -144,7 +145,8 @@ pre, .like-pre {
   cursor: default !important;
 }
 
-.pointer, .pointer-cursor {
+.pointer,
+.pointer-cursor {
   cursor: pointer !important;
 }
 
@@ -176,4 +178,4 @@ pre, .like-pre {
 
 .flip-both {
   transform: scale(-1, -1);
-}
+}

+ 18 - 20
desktop/core/src/desktop/static/desktop/less/hue-mixins.less

@@ -19,10 +19,8 @@
 
 /*
 
-
   TODO: Replace with CUI equivalents where possible
 
-
 */
 
 @hue-primary-color-dark: @cui-blue-700;
@@ -61,19 +59,19 @@
 .hue-linear-transition(@attributes) {
   @value: ~`"@{attributes}".replace(/,/g, ' .2s linear,')`;
 
-  -webkit-transition: @value .2s linear;
-  -moz-transition: @value .2s linear;
-  -ms-transition: @value .2s linear;
-  transition: @value .2s linear;
+  -webkit-transition: @value 0.2s linear;
+  -moz-transition: @value 0.2s linear;
+  -ms-transition: @value 0.2s linear;
+  transition: @value 0.2s linear;
 }
 
 .hue-ease-transition(@attributes) {
   @value: ~`"@{attributes}".replace(/,/g, ' .2s ease,')`;
 
-  -webkit-transition: @value .2s ease;
-  -moz-transition: @value .2s ease;
-  -ms-transition: @value .2s ease;
-  transition: @value .2s ease;
+  -webkit-transition: @value 0.2s ease;
+  -moz-transition: @value 0.2s ease;
+  -ms-transition: @value 0.2s ease;
+  transition: @value 0.2s ease;
 }
 
 .hue-box-shadow-top {
@@ -93,26 +91,26 @@
 }
 
 .hue-box-shadow(@left: 2px, @top: 2px) {
-  -webkit-box-shadow: @left @top 8px rgba(0,0,0,.18);
-  -moz-box-shadow: @left @top 8px rgba(0,0,0,.18);
+  -webkit-box-shadow: @left @top 8px rgba(0, 0, 0, 0.18);
+  -moz-box-shadow: @left @top 8px rgba(0, 0, 0, 0.18);
   box-shadow: @left @top 6px 0 rgba(0, 0, 0, 0.18), @left @top 8px 0 rgba(0, 0, 0, 0.13);
 }
 
 .hue-inset-box-shadow {
-  -webkit-box-shadow: inset 1px 0 0 rgba(255,255,255,.125)!important;
-  -moz-box-shadow: inset 1px 0 0 rgba(255,255,255,.125)!important;
-  box-shadow: inset 1px 0 0 rgba(255,255,255,.125)!important;
+  -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125) !important;
+  -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125) !important;
+  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125) !important;
 }
 
 .hue-no-box-shadow {
-  -webkit-box-shadow: none!important;
-  -moz-box-shadow: none!important;
-  box-shadow: none!important;
+  -webkit-box-shadow: none !important;
+  -moz-box-shadow: none !important;
+  box-shadow: none !important;
 }
 
 @keyframes fadein {
   from { opacity: 0; }
-  to   { opacity: 1; }
+  to { opacity: 1; }
 }
 
 .hue-fade-in {
@@ -166,4 +164,4 @@
   -webkit-flex-wrap: @wrap;
   -ms-flex-wrap: @wrap;
   flex-wrap: @wrap;
-}
+}

+ 42 - 22
desktop/core/src/desktop/static/desktop/less/hue-multi-cluster-icons.less

@@ -31,8 +31,8 @@
   font-variant: normal;
   text-align: center;
   text-transform: none;
-
   text-rendering: auto;
+
   /* Better Font Rendering =========== */
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
@@ -59,67 +59,87 @@
   @altus-sql-editor: '\e912';
   @altus-feedback: '\e913';
 
-  &.altus-adb-cluster:before {
+  &.altus-adb-cluster::before {
     content: @altus-adb-cluster;
   }
-  &.altus-environment:before {
+
+  &.altus-environment::before {
     content: @altus-environment;
   }
-  &.altus-dashboard:before {
+
+  &.altus-dashboard::before {
     content: @altus-dashboard;
   }
-  &.altus-iam:before {
+
+  &.altus-iam::before {
     content: @altus-iam;
   }
-  &.altus-user-group:before {
+
+  &.altus-user-group::before {
     content: @altus-user-group;
   }
-  &.altus-de-cluster:before {
+
+  &.altus-de-cluster::before {
     content: @altus-de-cluster;
   }
-  &.altus-de-job:before {
+
+  &.altus-de-job::before {
     content: @altus-de-job;
   }
-  &.altus-adb:before {
+
+  &.altus-adb::before {
     content: @altus-adb;
   }
-  &.altus-de:before {
+
+  &.altus-de::before {
     content: @altus-de;
   }
-  &.altus-ds:before {
+
+  &.altus-ds::before {
     content: @altus-ds;
   }
-  &.altus-sdx:before {
+
+  &.altus-sdx::before {
     content: @altus-sdx;
   }
-  &.altus-na:before {
+
+  &.altus-na::before {
     content: @altus-na;
   }
-  &.altus-no-access:before {
+
+  &.altus-no-access::before {
     content: @altus-no-access;
   }
-  &.altus-user-access:before {
+
+  &.altus-user-access::before {
     content: @altus-user-access;
   }
-  &.altus-adb-query:before {
+
+  &.altus-adb-query::before {
     content: @altus-adb-query;
   }
-  &.altus-workload:before {
+
+  &.altus-workload::before {
     content: @altus-workload;
   }
-  &.altus-azure:before {
+
+  &.altus-azure::before {
     content: @altus-azure;
   }
-  &.altus-aws:before {
+
+  &.altus-aws::before {
     content: @altus-aws;
   }
-  &.altus-user:before {
+
+  &.altus-user::before {
     content: @altus-user;
   }
-  &.altus-sql-editor:before {
+
+  &.altus-sql-editor::before {
     content: @altus-sql-editor;
   }
-  &.altus-feedback:before {
+
+  &.altus-feedback::before {
     content: @altus-feedback;
   }
 }

+ 1 - 3
desktop/core/src/desktop/static/desktop/less/hue.less

@@ -17,13 +17,11 @@
 */
 @import (reference) "cui/colors.less";
 @import (reference) "hue-mixins.less";
-
 @import "hue-assist";
 @import "hue-autocomplete";
 @import "hue-cui-overrides.less";
 @import "hue-cross-version.less";
 @import "hue-multi-cluster-icons.less";
-
 @import "components/hue-clearable.less";
 @import "components/hue-sidebar.less";
 @import "components/hue-hamburger.less";
@@ -44,4 +42,4 @@ body {
   margin: 0;
   padding: 0;
   overflow: hidden;
-}
+}

+ 18 - 12
desktop/core/src/desktop/static/desktop/less/hue3-extra.less

@@ -17,12 +17,10 @@
 */
 @import (reference) "cui/colors.less";
 @import (reference) "hue-mixins.less";
-
 @import "hue-assist";
 @import "hue-autocomplete";
 @import "hue-cui-overrides.less";
 @import "hue-cross-version.less";
-
 @import "components/hue-clearable.less";
 
 .svg-hue-logo-main {
@@ -30,12 +28,12 @@
 }
 
 .svg-hue-logo-trunk {
-  fill: #D7B9EB;
+  fill: #d7b9eb;
 }
 
 .subnav {
   background-color: @cui-gray-100;
-  background-image: -moz-linear-gradient(center top, @cui-gray-050 0%, @cui-gray-100 100%);
+  background-image: -moz-linear-gradient(center top, @cui-gray-050 0, @cui-gray-100 100%);
   background-repeat: repeat-x;
   border: 1px solid @cui-gray-200;
   border-radius: 4px;
@@ -65,7 +63,8 @@
   border-left: 1px solid @cui-gray-050;
 }
 
-.subnav .nav > .active > a, .subnav .nav > .active > a:hover {
+.subnav .nav > .active > a,
+.subnav .nav > .active > a:hover {
   background-color: @cui-gray-100;
   border-left: 0 none;
   border-right-color: @cui-gray-300;
@@ -74,11 +73,13 @@
   padding-left: 13px;
 }
 
-.subnav .nav > .active > a .caret, .subnav .nav > .active > a:hover .caret {
+.subnav .nav > .active > a .caret,
+.subnav .nav > .active > a:hover .caret {
   border-top-color: @cui-gray-700;
 }
 
-.subnav .nav > li:first-child > a, .subnav .nav > li:first-child > a:hover {
+.subnav .nav > li:first-child > a,
+.subnav .nav > li:first-child > a:hover {
   border-left: 0 none;
   border-radius: 4px 0 0 4px;
   -webkit-border-radius: 4px 0 0 4px;
@@ -97,12 +98,12 @@
 }
 
 .subnav-fixed {
-  border-color: #D5D5D5;
+  border-color: #d5d5d5;
   border-radius: 0;
   -webkit-border-radius: 0;
   -moz-border-radius: 0;
   border-width: 0 0 1px;
-  box-shadow: 0 1px 0 #FFFFFF inset, 0 1px 5px rgba(0, 0, 0, 0.1);
+  box-shadow: 0 1px 0 #fff inset, 0 1px 5px rgba(0, 0, 0, 0.1);
   left: 0;
   position: fixed;
   right: 0;
@@ -115,7 +116,8 @@
   padding: 0 1px;
 }
 
-.subnav .nav > li:first-child > a, .subnav .nav > li:first-child > a:hover {
+.subnav .nav > li:first-child > a,
+.subnav .nav > li:first-child > a:hover {
   border-radius: 0;
   -webkit-border-radius: 0;
   -moz-border-radius: 0;
@@ -145,12 +147,14 @@
 .search-container {
   .display-flex;
   .flex(1 1 37px);
+
   position: relative;
   margin: 8px 10px 0 10px;
 }
 
 .search-container > input {
   .flex(1 1 100%);
+
   border-radius: 4px 0 0 4px;
   border: 1px solid @cui-gray-300;
   border-right: none;
@@ -160,6 +164,7 @@
 
 .search-container > a {
   .flex(0 0 31px);
+
   margin-bottom: 0;
   cursor: pointer;
   border-bottom-right-radius: 4px;
@@ -196,13 +201,14 @@
 .dropdown-menu > li > a > svg {
   color: @hue-primary-color-dark;
 }
+
 .dropdown-menu > li.active > a > svg,
 .dropdown-menu > li > a:hover > svg,
 .dropdown-menu > li > a:focus > svg,
 .dropdown-menu > li > a:active > svg {
-  color: #FFF !important;
+  color: #fff !important;
 }
 
 .dropdown-menu .svg-app-icon {
   margin-right: 4px;
-}
+}

+ 60 - 27
desktop/core/src/desktop/static/desktop/less/hue4.less

@@ -22,6 +22,7 @@
   position: relative;
   .display-flex;
   .flex-direction(column);
+
   height: 100%;
   width: 100%;
   margin: 0;
@@ -38,6 +39,7 @@
   .flex(1 1 100%);
   .display-flex;
   .flex-direction(row);
+
   position: relative;
   width: 100%;
   min-width: 0;
@@ -55,6 +57,7 @@
 
 .top-nav {
   .display-flex;
+
   position: relative;
   z-index: 1009;
 }
@@ -65,6 +68,7 @@
 
 .top-nav-middle {
   .flex(1);
+
   padding: 0 10px;
   width: 100%;
 }
@@ -124,7 +128,9 @@
   padding: 4px;
   cursor: pointer;
   border-left: 2px solid @cui-white;
-  &:hover, &.active {
+
+  &:hover,
+  &.active {
     background-color: @cui-gray-050;
     border-left-color: @cui-gray-100;
   }
@@ -152,11 +158,13 @@
   border-radius: 4px;
 }
 
-.navbar-dropdown-flat:hover .btn, .btn-flat:hover {
+.navbar-dropdown-flat:hover .btn,
+.btn-flat:hover {
   background-color: rgba(240, 240, 240, 0.6) !important;
 }
 
-.navbar-dropdown-flat .btn, .btn-flat {
+.navbar-dropdown-flat .btn,
+.btn-flat {
   color: @hue-primary-color-dark;
   border: 1px solid transparent;
   background-color: transparent;
@@ -166,7 +174,8 @@
   .hue-ease-transition(~"background-color, color");
 }
 
-.navbar-dropdown-flat .btn:hover, .btn-flat:hover {
+.navbar-dropdown-flat .btn:hover,
+.btn-flat:hover {
   background-color: rgba(240, 240, 240, 0.92);
   border: 1px solid transparent;
   color: @hue-primary-color-dark;
@@ -176,6 +185,7 @@
   .caret {
     opacity: 0;
   }
+
   &:hover {
     .caret {
       opacity: 1;
@@ -269,12 +279,14 @@
 .search-container {
   .display-flex;
   .flex(1 1 44px);
+
   position: relative;
   margin: 8px 10px 0 10px;
 }
 
 .search-container-top-old > input {
   .flex(1 1 100%);
+
   border-radius: 4px;
   border: 1px solid @cui-gray-300;
   box-shadow: none;
@@ -283,6 +295,7 @@
 
 .search-container > input {
   .flex(1 1 100%);
+
   border-radius: 2px 0 0 2px;
   border: 1px solid @cui-gray-300;
   border-right: none;
@@ -292,6 +305,7 @@
 
 .search-container-top {
   .flex(1 1 100%);
+
   position: relative;
 }
 
@@ -309,6 +323,7 @@
 .search-container-top-old > a,
 .search-container > a {
   .flex(0 0 31px);
+
   margin-bottom: 0;
   cursor: pointer;
   border-bottom-right-radius: 4px;
@@ -330,6 +345,7 @@
 .left-panel,
 .right-panel {
   .flex(0);
+
   position: relative;
   background-color: @cui-white;
 }
@@ -340,20 +356,22 @@
 
 .right-panel {
   .display-flex();
+
   min-width: 250px;
 
   &.right-assist-minimized {
     min-width: 38px;
     max-width: 38px;
     flex-basis: 38px;
+
     .right-assist-tabs {
       cursor: default;
     }
-
   }
 
   .right-assist-tabs {
     .flex(0 0 35px);
+
     padding-top: 5px;
     border-left: 1px solid @cui-gray-300;
     border-right: 1px solid @cui-gray-300;
@@ -382,7 +400,6 @@
   .right-assist-contents {
     overflow-x: hidden;
     overflow-y: auto;
-
     position: relative;
     .flex(1 1 100%);
   }
@@ -391,11 +408,13 @@
 .side-panel-closed {
   min-width: 0;
   .flex-basis(0) !important;
+
   width: 0 !important;
 }
 
 .resizer {
   .flex(0 0 2px);
+
   cursor: col-resize;
 }
 
@@ -408,6 +427,7 @@
 
 .page-content {
   .flex(1);
+
   position: relative;
   overflow-x: auto;
 }
@@ -418,8 +438,8 @@
 }
 
 .hue-title-bar {
-  border-bottom: 1px solid #DCDCDC;
-  background-color:#F8F8F8;
+  border-bottom: 1px solid #dcdcdc;
+  background-color: #f8f8f8;
 
   .navbar-inner {
     background-color: transparent !important;
@@ -440,6 +460,7 @@
 .inactive-action-dark,
 .inactive-action-dark a {
   color: @cui-gray-800;
+
   i.fa {
     color: @cui-gray-600;
   }
@@ -487,7 +508,6 @@ a:visited {
 
 /* Context menu, popover etc. */
 
-
 .hue-context-menu {
   display: none;
   position: fixed;
@@ -497,10 +517,11 @@ a:visited {
   list-style: none;
   font-size: 13px;
   opacity: 0;
-  transition: opacity .3s;
+  transition: opacity 0.3s;
 }
 
-.hue-context-menu, .hue-popover-bottom {
+.hue-context-menu,
+.hue-popover-bottom {
   border-radius: @hue-panel-border-radius;
   background-color: @cui-white;
   .hue-box-shadow-bottom;
@@ -509,6 +530,7 @@ a:visited {
 .hue-syntax-drop-down {
   position: absolute;
   z-index: 1038;
+
   .dropdown-menu {
     overflow-y: scroll;
   }
@@ -534,7 +556,6 @@ a:visited {
   line-height: 22px;
   vertical-align: middle;
   padding: 6px 16px 6px 16px;
-
   color: @cui-gray-800;
   text-decoration: none;
   font-weight: 400;
@@ -595,7 +616,8 @@ a:visited {
   vertical-align: middle;
 }
 
-.hue-context-menu > li > a > i:not(.sub-icon), .hue-context-menu > li > a > .hi:not(.sub-icon) {
+.hue-context-menu > li > a > i:not(.sub-icon),
+.hue-context-menu > li > a > .hi:not(.sub-icon) {
   position: absolute;
   top: 6px;
   left: 13px;
@@ -614,7 +636,6 @@ a:visited {
   right: 13px;
   line-height: 22px;
   height: 24px;
-
   color: @cui-gray-800;
   font-size: 12px;
   vertical-align: middle;
@@ -650,7 +671,7 @@ a:visited {
 }
 
 .page-content .navbar.navbar-inverse.navbar-fixed-top {
-  position: static!important;
+  position: static !important;
 }
 
 .page-content .navbar .navbar-inner {
@@ -677,20 +698,22 @@ a:visited {
 
 /* oozie workflow */
 .oozie_workflowComponents .card-toolbar {
-  position: static!important;
-  width: auto!important;
+  position: static !important;
+  width: auto !important;
 }
 
-.tooltip, .ui-autocomplete {
+.tooltip,
+.ui-autocomplete {
   z-index: 1040 !important;
 }
 
 /* sqoop */
 #sqoopComponents .top-bar {
-  position: static!important;
+  position: static !important;
 }
 
 /* context panel */
+
 /* TODO: Positioning and clean-up */
 .context-panel {
   position: fixed;
@@ -724,21 +747,25 @@ a:visited {
   overflow-y: hidden;
   height: 800px;
   max-height: 800px;
+
   input.search-query {
     width: 70px;
   }
+
   .status-border-container li {
     padding: 7px;
     margin-top: 10px;
     border-left: 3px solid @cui-white;
+
     &:hover {
       background-color: @cui-gray-050;
     }
   }
+
   .status-bar {
     height: 1px;
     width: 0;
-    opacity: .5;
+    opacity: 0.5;
   }
 }
 
@@ -829,7 +856,7 @@ ul.risk-list {
   border-radius: 2px;
 }
 
-.risk.d3-tip:after {
+.risk.d3-tip::after {
   box-sizing: border-box;
   display: inline;
   font-size: 10px;
@@ -841,16 +868,15 @@ ul.risk-list {
   text-align: center;
 }
 
-.risk.d3-tip.n:after {
+.risk.d3-tip.n::after {
   margin: -1px 0 0 0;
   top: 100%;
   left: 0;
 }
 
-
 #importerComponents {
   .step-indicator-fixed {
-    position: static!important;
+    position: static !important;
   }
 
   .vertical-spacer {
@@ -885,7 +911,9 @@ ul.risk-list {
 
 .global-search-empty {
   .assist-no-entries();
+
   height: 30px !important;
+
   > div {
     margin: 5px 10px;
   }
@@ -893,8 +921,9 @@ ul.risk-list {
 
 .global-search-results {
   .display-flex();
+
   background-color: @cui-white;
-  position:absolute;
+  position: absolute;
   z-index: 1060;
   top: 35px;
   left: 0;
@@ -904,6 +933,7 @@ ul.risk-list {
 
   .global-search-alternatives {
     .flex(0 0 35%);
+
     position: relative;
     min-width: 175px;
     border-right: 1px solid @cui-default-border-color;
@@ -916,6 +946,7 @@ ul.risk-list {
 
     &.global-search-full-width {
       .flex(0 0 100%);
+
       border-right: none;
     }
 
@@ -936,6 +967,7 @@ ul.risk-list {
           .nowrap-ellipsis();
 
           padding: 5px 0 5px 8px;
+
           > em {
             font-style: normal;
             font-weight: 600;
@@ -973,6 +1005,7 @@ ul.risk-list {
     .global-search-catalog-entry {
       .display-flex();
       .flex-direction(column);
+
       width: 100%;
 
       .hue-popover-title-actions {
@@ -1001,8 +1034,8 @@ ul.risk-list {
   opacity: 0;
   font-size: 16px;
   margin-left: 2px;
-
   color: @cui-gray-700;
+
   :hover {
     color: @hue-primary-color-dark;
   }
@@ -1029,4 +1062,4 @@ ul.risk-list {
 
 .striked {
   text-decoration: line-through;
-}
+}

+ 25 - 10
desktop/core/src/desktop/static/desktop/less/login.less

@@ -21,6 +21,7 @@
   from {
     -webkit-transform: rotateY(0deg);
   }
+
   to {
     -webkit-transform: rotateY(-360deg);
   }
@@ -32,11 +33,13 @@
   margin: auto;
   margin-bottom: 50px;
   background: @cui-white;
-  border: 1px solid #E0E2E3;
+  border: 1px solid #e0e2e3;
   border-radius: 4px;
+
   a {
     white-space: normal;
   }
+
   .logo {
     background-color: @cui-white;
     width: 70px;
@@ -50,16 +53,19 @@
     margin-top: 35px;
     margin-bottom: 35px;
   }
+
   h3 {
     color: @hue-primary-color-dark;
     margin-bottom: 25px;
     text-align: center;
   }
+
   .empty-logo {
     background-color: @cui-white;
     width: 70px;
     height: 70px;
   }
+
   .logo img {
     margin-top: 2px;
   }
@@ -67,9 +73,12 @@
   form {
     margin-left: 75px;
     margin-right: 75px;
-    input[type='submit'], .login-container form select {
+
+    input[type='submit'],
+    .login-container form select {
       width: 100%;
     }
+
     .text-input {
       padding: 1px 10px 1px 19px;
       border: 1px solid @cui-gray-400;
@@ -77,9 +86,9 @@
       margin-bottom: 20px;
       -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
       box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
-      -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
-      -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
-      transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
+      -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
+      -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
+      transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
 
       input:focus {
         border-color: initial !important;
@@ -88,18 +97,24 @@
         box-shadow: none !important;
       }
     }
+
     .text-input.error {
-      border-color: #D0021B;
+      border-color: #d0021b;
     }
+
     ul.errorlist li {
-      color: #D0021B;
+      color: #d0021b;
       padding: 0;
       font-weight: normal;
       font-style: normal;
       margin-top: -10px;
       margin-bottom: 20px;
     }
-    input[type='text'], input[type='password'], input[type='text']:hover, input[type='password']:hover {
+
+    input[type='text'],
+    input[type='password'],
+    input[type='text']:hover,
+    input[type='password']:hover {
       padding: 0;
       border: none;
       box-shadow: none;
@@ -129,10 +144,10 @@
     text-align: center;
     margin-bottom: 20px;
   }
-
 }
 
-:-webkit-autofill, :-webkit-autofill:focus {
+:-webkit-autofill,
+:-webkit-autofill:focus {
   -webkit-box-shadow: 0 0 0 1000px white inset !important;
 }
 

+ 1 - 1
desktop/core/src/desktop/static/desktop/less/login4.less

@@ -43,4 +43,4 @@
 :-webkit-autofill {
   -webkit-animation-name: autofill;
   -webkit-animation-fill-mode: both;
-}
+}

+ 5 - 5
desktop/libs/dashboard/src/dashboard/static/dashboard/less/common_dashboard.less

@@ -54,7 +54,7 @@
   }
 
   .ui-sortable.white {
-    background-color: @cui-white!important;
+    background-color: @cui-white !important;
   }
 
   .ui-sortable h2 {
@@ -72,7 +72,7 @@
   }
 
   .sortable-arguments {
-    margin-left: -10px!important;
+    margin-left: -10px !important;
     width: 99%;
   }
 
@@ -277,8 +277,8 @@
       border-radius: 4px !important;
     }
     .flat-left {
-      border-top-left-radius: 0!important;
-      border-bottom-left-radius: 0!important;
+      border-top-left-radius: 0 !important;
+      border-bottom-left-radius: 0 !important;
       border-left-width: 0;
       margin-left: 0;
     }
@@ -529,7 +529,7 @@
 
   .singleValued.form-horizontal .control-label {
     text-align: left;
-    margin-left: 0px;
+    margin-left: 0;
     width: 60px;
     overflow: hidden;
     text-overflow: ellipsis;

+ 3 - 3
desktop/libs/dashboard/src/dashboard/static/dashboard/less/search.less

@@ -286,7 +286,7 @@
   .fields-chooser li {
     cursor: pointer;
     margin-bottom: 10px;
-    padding: 0px;
+    padding: 0;
   }
 
   .fields-chooser li .badge {
@@ -295,12 +295,12 @@
   }
 
   .badge-left {
-    border-radius: 9px 0px 0px 9px;
+    border-radius: 9px 0 0 9px;
     padding-right: 5px;
   }
 
   .badge-right {
-    border-radius: 0px 9px 9px 0px;
+    border-radius: 0 9px 9px 0;
     padding-left: 5px;
   }
 

+ 3 - 3
desktop/libs/indexer/src/indexer/static/indexer/less/importer.less

@@ -25,8 +25,8 @@
   }
 
   .path {
-    margin-bottom: 0!important;
-    border-right: none!important;
+    margin-bottom: 0 !important;
+    border-right: none !important;
   }
 
   .step .card-body {
@@ -88,7 +88,7 @@
   }
 
   .step .selectize-control.multi .selectize-input {
-    padding-top: 3px!important;
+    padding-top: 3px !important;
   }
 
   .step .show-edit-on-hover a {

+ 1 - 1
desktop/libs/notebook/src/notebook/static/notebook/css/notebook-layout.css

@@ -14,4 +14,4 @@ distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
- */html{height:100%}body{height:100%;margin:0;padding:0;background-color:#FFFFFF;overflow-y:hidden}.vertical-full{height:100%;padding-right:1px;padding-bottom:0}.main-content{height:auto;width:100%;position:absolute;top:74px;bottom:0;background-color:#FFFFFF}.panel-container{position:relative}.left-panel{position:absolute;height:100%;overflow:hidden;outline:none !important}.right-panel{position:absolute;right:0;height:100%;overflow:hidden;outline:none !important}.context-panel{position:fixed;background:#FFFFFF;height:calc(30%);top:70px;transition:all;-webkit-transition-duration:.3s;transition-duration:.3s;z-index:401;overflow-y:auto;padding:10px 0;width:420px;right:-440px;box-shadow:0 0 20px rgba(14,18,21,0.38);outline:none !important}.context-panel.visible{right:0}.context-panel .nav-tabs{padding-left:10px}.context-panel .tab-content{padding:12px;min-height:calc(10%)}.context-panel .tab-pane{height:100%}.content-panel{position:absolute;height:100%;overflow:auto;outline:none !important}
+ */html{height:100%}body{height:100%;margin:0;padding:0;background-color:#FFFFFF;overflow-y:hidden}.vertical-full{height:100%;padding-right:1px;padding-bottom:0}.main-content{height:auto;width:100%;position:absolute;top:74px;bottom:0;background-color:#FFFFFF}.panel-container{position:relative}.left-panel{position:absolute;height:100%;overflow:hidden;outline:none !important}.right-panel{position:absolute;right:0;height:100%;overflow:hidden;outline:none !important}.context-panel{position:fixed;background:#FFFFFF;height:calc(100% - 70px);top:70px;transition:all;-webkit-transition-duration:.3s;transition-duration:.3s;z-index:401;overflow-y:auto;padding:10px 0;width:420px;right:-440px;box-shadow:0 0 20px rgba(14,18,21,0.38);outline:none !important}.context-panel.visible{right:0}.context-panel .nav-tabs{padding-left:10px}.context-panel .tab-content{padding:12px;min-height:calc(100% - 90px)}.context-panel .tab-pane{height:100%}.content-panel{position:absolute;height:100%;overflow:auto;outline:none !important}

+ 30 - 30
desktop/libs/notebook/src/notebook/static/notebook/less/notebook.less

@@ -363,8 +363,8 @@
 
   .inactive-action:hover > .snippet-icon-image {
     -webkit-filter: grayscale(0);
-    -webkit-filter: grayscale(0%);
-    filter: grayscale(0%);
+    -webkit-filter: grayscale(0);
+    filter: grayscale(0);
   }
 
   .snippet-icon {
@@ -736,7 +736,7 @@
   .medium-editor-placeholder:after {
     padding-left: 5px;
     font-size: 13px !important;
-    font-family: @font-family-monospace!important;
+    font-family: @font-family-monospace !important;
     color: @cui-gray-500 !important;
     font-style: normal !important;
   }
@@ -775,11 +775,11 @@
   .results.alert-error, .alert-error-gradient {
     border: none;
     margin-top: -3px;
-    background: -moz-linear-gradient(left, rgba(242, 222, 222, 1) 0%, rgba(255, 255, 255, 0) 100%);
-    background: -webkit-linear-gradient(left, rgba(242, 222, 222, 1) 0%, rgba(255, 255, 255, 0) 100%);
-    background: -o-linear-gradient(left, rgba(242, 222, 222, 1) 0%, rgba(255, 255, 255, 0) 100%);
-    background: -ms-linear-gradient(left, rgba(242, 222, 222, 1) 0%, rgba(255, 255, 255, 0) 100%);
-    background: linear-gradient(to right, rgba(242, 222, 222, 1) 0%, rgba(255, 255, 255, 0) 100%);
+    background: -moz-linear-gradient(left, rgba(242, 222, 222, 1) 0, rgba(255, 255, 255, 0) 100%);
+    background: -webkit-linear-gradient(left, rgba(242, 222, 222, 1) 0, rgba(255, 255, 255, 0) 100%);
+    background: -o-linear-gradient(left, rgba(242, 222, 222, 1) 0, rgba(255, 255, 255, 0) 100%);
+    background: -ms-linear-gradient(left, rgba(242, 222, 222, 1) 0, rgba(255, 255, 255, 0) 100%);
+    background: linear-gradient(to right, rgba(242, 222, 222, 1) 0, rgba(255, 255, 255, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@cui-pink-050', endColorstr='#00ffffff', GradientType=1)
   }
 
@@ -793,11 +793,11 @@
   .alert-notebook, .alert-gradient {
     border: none;
     margin-top: -3px;
-    background: -moz-linear-gradient(left, rgba(252, 248, 227, 1) 0%, rgba(255, 255, 255, 0) 100%);
-    background: -webkit-linear-gradient(left, rgba(252, 248, 227, 1) 0%, rgba(255, 255, 255, 0) 100%);
-    background: -o-linear-gradient(left, rgba(252, 248, 227, 1) 0%, rgba(255, 255, 255, 0) 100%);
-    background: -ms-linear-gradient(left, rgba(252, 248, 227, 1) 0%, rgba(255, 255, 255, 0) 100%);
-    background: linear-gradient(to right, rgba(252, 248, 227, 1) 0%, rgba(255, 255, 255, 0) 100%);
+    background: -moz-linear-gradient(left, rgba(252, 248, 227, 1) 0, rgba(255, 255, 255, 0) 100%);
+    background: -webkit-linear-gradient(left, rgba(252, 248, 227, 1) 0, rgba(255, 255, 255, 0) 100%);
+    background: -o-linear-gradient(left, rgba(252, 248, 227, 1) 0, rgba(255, 255, 255, 0) 100%);
+    background: -ms-linear-gradient(left, rgba(252, 248, 227, 1) 0, rgba(255, 255, 255, 0) 100%);
+    background: linear-gradient(to right, rgba(252, 248, 227, 1) 0, rgba(255, 255, 255, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@cui-yellow-050', endColorstr='#00ffffff', GradientType=1)
   }
 
@@ -1149,22 +1149,22 @@
   .alert-info-gradient {
     border: none;
     margin-top: -3px;
-    background: -moz-linear-gradient(left, @cui-blue-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: -webkit-linear-gradient(left, @cui-blue-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: -o-linear-gradient(left, @cui-blue-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: -ms-linear-gradient(left, @cui-blue-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: linear-gradient(to right, @cui-blue-050 0%, rgba(255, 255, 255, 0) 100%);
+    background: -moz-linear-gradient(left, @cui-blue-050 0, rgba(255, 255, 255, 0) 100%);
+    background: -webkit-linear-gradient(left, @cui-blue-050 0, rgba(255, 255, 255, 0) 100%);
+    background: -o-linear-gradient(left, @cui-blue-050 0, rgba(255, 255, 255, 0) 100%);
+    background: -ms-linear-gradient(left, @cui-blue-050 0, rgba(255, 255, 255, 0) 100%);
+    background: linear-gradient(to right, @cui-blue-050 0, rgba(255, 255, 255, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@cui-blue-050', endColorstr='#00ffffff', GradientType=1);
   }
 
   .alert-success-gradient {
     border: none;
     margin-top: -3px;
-    background: -moz-linear-gradient(left, @cui-lime-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: -webkit-linear-gradient(left, @cui-lime-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: -o-linear-gradient(left, @cui-lime-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: -ms-linear-gradient(left, @cui-lime-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: linear-gradient(to right, @cui-lime-050 0%, rgba(255, 255, 255, 0) 100%);
+    background: -moz-linear-gradient(left, @cui-lime-050 0, rgba(255, 255, 255, 0) 100%);
+    background: -webkit-linear-gradient(left, @cui-lime-050 0, rgba(255, 255, 255, 0) 100%);
+    background: -o-linear-gradient(left, @cui-lime-050 0, rgba(255, 255, 255, 0) 100%);
+    background: -ms-linear-gradient(left, @cui-lime-050 0, rgba(255, 255, 255, 0) 100%);
+    background: linear-gradient(to right, @cui-lime-050 0, rgba(255, 255, 255, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@cui-lime-050', endColorstr='#00ffffff', GradientType=1);
   }
 
@@ -1172,11 +1172,11 @@
     border: none;
     border-left: 1px solid @cui-blue-050;
     margin-top: -3px;
-    background: -moz-linear-gradient(left, @cui-purple-gray-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: -webkit-linear-gradient(left, @cui-purple-gray-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: -o-linear-gradient(left, @cui-purple-gray-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: -ms-linear-gradient(left, @cui-purple-gray-050 0%, rgba(255, 255, 255, 0) 100%);
-    background: linear-gradient(to right, @cui-purple-gray-050 0%, rgba(255, 255, 255, 0) 100%);
+    background: -moz-linear-gradient(left, @cui-purple-gray-050 0, rgba(255, 255, 255, 0) 100%);
+    background: -webkit-linear-gradient(left, @cui-purple-gray-050 0, rgba(255, 255, 255, 0) 100%);
+    background: -o-linear-gradient(left, @cui-purple-gray-050 0, rgba(255, 255, 255, 0) 100%);
+    background: -ms-linear-gradient(left, @cui-purple-gray-050 0, rgba(255, 255, 255, 0) 100%);
+    background: linear-gradient(to right, @cui-purple-gray-050 0, rgba(255, 255, 255, 0) 100%);
     filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@cui-purple-gray-050', endColorstr='#00ffffff', GradientType=1);
   }
 
@@ -1332,7 +1332,7 @@
     }
 
     .input-prepend {
-      line-height: 0px;
+      line-height: 0;
     }
 
     input:not(:focus)[value=""] {
@@ -1340,7 +1340,7 @@
     }
 
     input[type="checkbox"] {
-      margin: 12px 0px 0px 10px;
+      margin: 12px 0 0 10px;
     }
 
     div.selectize-input {

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 666 - 3
package-lock.json


+ 7 - 3
package.json

@@ -71,13 +71,16 @@
     "json-loader": "0.5.7",
     "karma": "^4.0.0",
     "karma-chrome-launcher": "^2.2.0",
-    "karma-jasmine": "",
+    "karma-jasmine": "^2.0.1",
     "karma-jasmine-ajax": "^0.1.13",
     "karma-mocha-reporter": "^2.2.5",
     "karma-spec-reporter": "0.0.32",
     "karma-webpack": "4.0.0-rc.6",
+    "lesshint": "6.3.2",
     "load-grunt-tasks": "4.0.0",
     "prettier": "1.16.1",
+    "stylelint": "^9.10.1",
+    "stylelint-config-standard": "^18.2.0",
     "webpack": "4.29.0",
     "webpack-bundle-analyzer": "^3.0.4",
     "webpack-bundle-tracker": "0.4.2-beta",
@@ -86,10 +89,11 @@
   },
   "scripts": {
     "devinstall": "npm cache clean && npm install && npm prune",
-    "less": "./node_modules/.bin/grunt less",
-    "watch": "./node_modules/.bin/grunt watch",
     "webpack": "webpack --config webpack.config.js",
     "dev": "webpack --watch -d",
+    "less": "./node_modules/.bin/grunt less",
+    "less-dev": "./node_modules/.bin/grunt watch",
+    "less-lint": "stylelint \"desktop/core/src/desktop/static/desktop/less/**/*.less\" --fix",
     "lint": "eslint desktop/core/src/desktop/js",
     "lint-debug": "npm run lint -- --debug",
     "lint-fix": "npm run lint -- --fix",

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác