diff --git a/.stylelintrc.json b/.stylelintrc.json index e682e98..85dffe8 100644 --- a/.stylelintrc.json +++ b/.stylelintrc.json @@ -1,8 +1,11 @@ { "extends": [ + "stylelint-config-standard-scss", "stylelint-config-sass-guidelines", "stylelint-config-idiomatic-order" ], + "plugins": ["stylelint-scss"], + "files": ["**/*.css", "**/*.scss"], "ignoreFiles": [ "**/vendor/*.css", "**/vendor/**/*.css", @@ -21,6 +24,16 @@ "color-no-invalid-hex": true, "order/properties-alphabetical-order": null, "max-nesting-depth": 5, - "selector-max-compound-selectors": 5 + "selector-max-compound-selectors": 5, + "scss/double-slash-comment-empty-line-before": [ + "always", + { + "ignore": [ + "between-comments", + "stylelint-commands", + "inside-block" + ] + } + ] } } diff --git a/package-lock.json b/package-lock.json index d35f8f7..28e16c2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -39,14 +39,18 @@ "laravel-mix-stylelint": "^1.0.0", "lodash": "^4.17.21", "popper.js": "^1.16.1", + "postcss": "^8.4.19", + "postcss-scss": "^4.0.5", "prettier": "^2.7.1", "resolve-url-loader": "^5.0.0", "sass": "^1.54.9", "sass-loader": "^12.6.0", "slugify": "^1.6.5", - "stylelint": "^14.11.0", + "stylelint": "^14.15.0", "stylelint-config-idiomatic-order": "^8.1.0", "stylelint-config-sass-guidelines": "^9.0.1", + "stylelint-config-standard-scss": "^6.1.0", + "stylelint-scss": "^4.3.0", "stylelint-webpack-plugin": "^3.3.0", "sweetalert2": "^11.4.37", "swiper": "^6.3.4", @@ -10302,6 +10306,35 @@ "stylelint": ">=11" } }, + "node_modules/stylelint-config-recommended": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-9.0.0.tgz", + "integrity": "sha512-9YQSrJq4NvvRuTbzDsWX3rrFOzOlYBmZP+o513BJN/yfEmGSr0AxdvrWs0P/ilSpVV/wisamAHu5XSk8Rcf4CQ==", + "dev": true, + "peerDependencies": { + "stylelint": "^14.10.0" + } + }, + "node_modules/stylelint-config-recommended-scss": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-8.0.0.tgz", + "integrity": "sha512-BxjxEzRaZoQb7Iinc3p92GS6zRdRAkIuEu2ZFLTxJK2e1AIcCb5B5MXY9KOXdGTnYFZ+KKx6R4Fv9zU6CtMYPQ==", + "dev": true, + "dependencies": { + "postcss-scss": "^4.0.2", + "stylelint-config-recommended": "^9.0.0", + "stylelint-scss": "^4.0.0" + }, + "peerDependencies": { + "postcss": "^8.3.3", + "stylelint": "^14.10.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + } + } + }, "node_modules/stylelint-config-sass-guidelines": { "version": "9.0.1", "resolved": "https://registry.npmjs.org/stylelint-config-sass-guidelines/-/stylelint-config-sass-guidelines-9.0.1.tgz", @@ -10342,6 +10375,37 @@ "stylelint": "^14.0.0" } }, + "node_modules/stylelint-config-standard": { + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-29.0.0.tgz", + "integrity": "sha512-uy8tZLbfq6ZrXy4JKu3W+7lYLgRQBxYTUUB88vPgQ+ZzAxdrvcaSUW9hOMNLYBnwH+9Kkj19M2DHdZ4gKwI7tg==", + "dev": true, + "dependencies": { + "stylelint-config-recommended": "^9.0.0" + }, + "peerDependencies": { + "stylelint": "^14.14.0" + } + }, + "node_modules/stylelint-config-standard-scss": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-6.1.0.tgz", + "integrity": "sha512-iZ2B5kQT2G3rUzx+437cEpdcnFOQkwnwqXuY8Z0QUwIHQVE8mnYChGAquyKFUKZRZ0pRnrciARlPaR1RBtPb0Q==", + "dev": true, + "dependencies": { + "stylelint-config-recommended-scss": "^8.0.0", + "stylelint-config-standard": "^29.0.0" + }, + "peerDependencies": { + "postcss": "^8.3.3", + "stylelint": "^14.14.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + } + } + }, "node_modules/stylelint-order": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-3.1.1.tgz", @@ -19473,6 +19537,24 @@ "stylelint-order": "^3.1.1" } }, + "stylelint-config-recommended": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-9.0.0.tgz", + "integrity": "sha512-9YQSrJq4NvvRuTbzDsWX3rrFOzOlYBmZP+o513BJN/yfEmGSr0AxdvrWs0P/ilSpVV/wisamAHu5XSk8Rcf4CQ==", + "dev": true, + "requires": {} + }, + "stylelint-config-recommended-scss": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-8.0.0.tgz", + "integrity": "sha512-BxjxEzRaZoQb7Iinc3p92GS6zRdRAkIuEu2ZFLTxJK2e1AIcCb5B5MXY9KOXdGTnYFZ+KKx6R4Fv9zU6CtMYPQ==", + "dev": true, + "requires": { + "postcss-scss": "^4.0.2", + "stylelint-config-recommended": "^9.0.0", + "stylelint-scss": "^4.0.0" + } + }, "stylelint-config-sass-guidelines": { "version": "9.0.1", "resolved": "https://registry.npmjs.org/stylelint-config-sass-guidelines/-/stylelint-config-sass-guidelines-9.0.1.tgz", @@ -19503,6 +19585,25 @@ } } }, + "stylelint-config-standard": { + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-29.0.0.tgz", + "integrity": "sha512-uy8tZLbfq6ZrXy4JKu3W+7lYLgRQBxYTUUB88vPgQ+ZzAxdrvcaSUW9hOMNLYBnwH+9Kkj19M2DHdZ4gKwI7tg==", + "dev": true, + "requires": { + "stylelint-config-recommended": "^9.0.0" + } + }, + "stylelint-config-standard-scss": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-6.1.0.tgz", + "integrity": "sha512-iZ2B5kQT2G3rUzx+437cEpdcnFOQkwnwqXuY8Z0QUwIHQVE8mnYChGAquyKFUKZRZ0pRnrciARlPaR1RBtPb0Q==", + "dev": true, + "requires": { + "stylelint-config-recommended-scss": "^8.0.0", + "stylelint-config-standard": "^29.0.0" + } + }, "stylelint-order": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-3.1.1.tgz", diff --git a/package.json b/package.json index 8e30cf6..c206177 100644 --- a/package.json +++ b/package.json @@ -48,14 +48,18 @@ "laravel-mix-stylelint": "^1.0.0", "lodash": "^4.17.21", "popper.js": "^1.16.1", + "postcss": "^8.4.19", + "postcss-scss": "^4.0.5", "prettier": "^2.7.1", "resolve-url-loader": "^5.0.0", "sass": "^1.54.9", "sass-loader": "^12.6.0", "slugify": "^1.6.5", - "stylelint": "^14.11.0", + "stylelint": "^14.15.0", "stylelint-config-idiomatic-order": "^8.1.0", "stylelint-config-sass-guidelines": "^9.0.1", + "stylelint-config-standard-scss": "^6.1.0", + "stylelint-scss": "^4.3.0", "stylelint-webpack-plugin": "^3.3.0", "sweetalert2": "^11.4.37", "swiper": "^6.3.4", diff --git a/resources/sass/_dashboard.scss b/resources/sass/_dashboard.scss index dac2503..d001205 100644 --- a/resources/sass/_dashboard.scss +++ b/resources/sass/_dashboard.scss @@ -7,7 +7,7 @@ margin: 48px 0 0; } -#topNavBar { +#top-nav-bar { height: $top-nav-bar-height; } @@ -17,6 +17,6 @@ height: $footer-bar-height; } -#mainContainer { +#main-container { min-height: calc(100vh - $top-nav-bar-height - $footer-bar-height); } diff --git a/resources/sass/_forms.scss b/resources/sass/_forms.scss index ada73f2..efab5c5 100644 --- a/resources/sass/_forms.scss +++ b/resources/sass/_forms.scss @@ -4,6 +4,7 @@ display: inline-block; width: 60px; height: 34px; + /* Hide default HTML checkbox */ input { width: 0; @@ -22,7 +23,6 @@ background-color: #ccc; cursor: pointer; transition: 0.4s; - transition: 0.4s; &::before { position: absolute; @@ -33,7 +33,6 @@ background-color: #fff; content: ""; transition: 0.4s; - transition: 0.4s; } } @@ -47,8 +46,6 @@ input:focus + .slider { input:checked + .slider::before { transform: translateX(26px); - transform: translateX(26px); - transform: translateX(26px); } /* Rounded sliders */ diff --git a/resources/sass/_icons.scss b/resources/sass/_icons.scss index a53cdbb..73bf352 100644 --- a/resources/sass/_icons.scss +++ b/resources/sass/_icons.scss @@ -8,10 +8,12 @@ .cross-red { @extend %icon-size; + color: #dc143c; } .check-green { @extend %icon-size; + color: #2e8b57; } diff --git a/resources/sass/_popup.scss b/resources/sass/_popup.scss index e18248a..f181806 100644 --- a/resources/sass/_popup.scss +++ b/resources/sass/_popup.scss @@ -5,12 +5,12 @@ padding: 0; margin: 20px 0; border-radius: 0.3em; - box-shadow: 0 0.1em 0.4em rgba(0, 0, 0, 0.3); + box-shadow: 0 0.1em 0.4em rgb(0 0 0 / 30%); } .modal-title { padding: 1.5em; - font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif; + font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif; font-weight: 700; } diff --git a/resources/sass/_variables.scss b/resources/sass/_variables.scss index f62f92c..4285e93 100644 --- a/resources/sass/_variables.scss +++ b/resources/sass/_variables.scss @@ -1,6 +1,5 @@ // Body $body-bg: #f8fafc; - $tooltip-max-width: 400px; // Typography @@ -33,7 +32,6 @@ $gray-700: #495057 !default; $gray-800: #343a40 !default; $gray-900: #212529 !default; $black: #000 !default; - $blue: #0d6efd !default; $indigo: #6610f2 !default; $purple: #6f42c1 !default; @@ -44,7 +42,6 @@ $yellow: #ffc107 !default; $green: #198754 !default; $teal: #20c997 !default; $cyan: #0dcaf0 !default; - $primary: $blue !default; $secondary: $gray-600 !default; $success: $green !default; @@ -55,10 +52,11 @@ $light: $gray-100 !default; $dark: $gray-900 !default; .large-tooltip .tooltip-inner { - width: max-content !important; //uses the content as a guide of default length - max-width: 800px !important; //constrained to max width + width: max-content !important; // uses the content as a guide of default length + max-width: 800px !important; // constrained to max width text-align: left; } + @media screen and (max-width: 300px) { .large-tooltip .tooltip-inner { width: inherit; diff --git a/resources/sass/app.scss b/resources/sass/app.scss index d99854e..11ab2d2 100644 --- a/resources/sass/app.scss +++ b/resources/sass/app.scss @@ -1,12 +1,9 @@ // Fonts -@import url("https://fonts.googleapis.com/css?family=Nunito"); - +@import "https://fonts.googleapis.com/css?family=Nunito"; @import "@fancyapps/fancybox/dist/jquery.fancybox"; // Variables @import "variables"; - - @import "classes"; @import "popup"; @import "icons"; @@ -17,7 +14,6 @@ // Toastify @import "~toastify-js/src/toastify.css"; - @import "dashboard"; @import "smoothdnd"; @import "forms";