diff --git a/src/assets/icons/spinner.svg b/src/assets/icons/spinner.svg new file mode 100644 index 00000000..d5b7fe4c --- /dev/null +++ b/src/assets/icons/spinner.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/styles/ux-variables.scss b/src/styles/ux-variables.scss new file mode 100644 index 00000000..52cf8916 --- /dev/null +++ b/src/styles/ux-variables.scss @@ -0,0 +1,186 @@ +//Colors + +// White/black +$white: #FFFFFF; +$black: #000000; + +// Blues +$blue-100: #E4F1F7;// Used in theme +$blue-200: #C1DFEE; +$blue-300: #9FCEE6; +$blue-400: #69ADCF;// Used in theme +$blue-500: #3B8FB8; +$blue: #1574A1;// Default Blue +$blue-700: #06577C; +$blue-800: #003D58; +$blue-900: #002433;// Used in theme + +// Reds +$red-100: #FFE6E4; +$red-200: #FCBFBB; +$red-300: #F89892; +$red-400: #E65C53; +$red: #D4281C;// Default Red +$red-600: #AC160B; +$red-700: #840900; +$red-800: #5B0600; +$red-900: #330300; + +// Greens +$green-100: #E3F2EA; +$green-200: #BCEDD4; +$green-300: #94D7B6; +$green-400: #5ABC8C;// Used in theme +$green-500: #2CA168; +$green: #0C7E47;// Default Green +$green-700: #006A36; +$green-800: #004F28; +$green-900: #00331A; + +// Yellows +$yellow-100: #FFF5EB; +$yellow-200: #FFE1C6; +$yellow-300: #FFCAA0; +$yellow-400: #F5975D; +$yellow: #E86421;// Default Yellow +$yellow-600: #BB4B06; +$yellow-700: #8E3C00; +$yellow-800: #602D00; +$yellow-900: #331A00; + +// Grays +$gray-100: #F5F5F5;// Used in theme +$gray-200: #E3E4E4;// Used in theme +$gray-300: #D2D4D4; +$gray: #B0B3B3;// Default Gray +$gray-500: #8E9292;// Used in theme +$gray-550: #727676;// Used in theme +$gray-600: #4D5151;// Used in theme +$gray-700: #303333;// Used in theme +$gray-800: #222424;// Used in theme +$gray-900: #181A1A;// Used in theme + +// Miscellaneous Colors +$indigo: #6610f2; +$purple: #6f42c1; +$pink: #d63384; +$orange: #fd7e14; +$teal: #20c997; +$cyan: #0dcaf0; + +// scss-docs-start colors-map +$colors: ( +"blue": $blue, +"indigo": $indigo, +"purple": $purple, +"pink": $pink, +"red": $red, +"orange": $orange, +"yellow": $yellow, +"green": $green, +"teal": $teal, +"cyan": $cyan, +"white": $white, +"gray": $gray, +"gray-dark": $gray-500 +); + +// scss-docs-start theme-color-variables +$primary: $blue; +$secondary: $red; +$success: $green; +$info: $cyan; +$warning: $yellow; +$danger: $red; +$light: $gray-100; +$dark: $gray-500; + +// scss-docs-start theme-colors-map +$theme-colors: ( +"primary": $primary, +"secondary": $secondary, +"success": $success, +"info": $info, +"warning": $warning, +"danger": $danger, +"light": $light, +"dark": $dark +); + +//Default font color +$body-color: $gray-600; + +//Fonts +$font-family-sans-serif: Roboto, Arial, Helvetica, sans-serif; +$font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +// stylelint-enable value-keyword-case +$font-family-base: $font-family-sans-serif; +$font-family-code: $font-family-monospace; +$font-size-base: 1rem; // Assumes the browser default, typically `16px` + +//Custom Font size (extra small) +$font-size-xsm: $font-size-base * .75; +$font-sizes: ( + 7: $font-size-xsm +); + +//Font weight +$font-weight-lighter: lighter; +$font-weight-light: 300; +$font-weight-normal: 400; +$font-weight-bold: 500; +$font-weight-bolder: bolder; + +//Headings +$h1-font-size: $font-size-base * 3; +$h2-font-size: $font-size-base * 2.625; +$h3-font-size: $font-size-base * 2; +$h4-font-size: $font-size-base * 1.625; +$h5-font-size: $font-size-base * 1.25; +$h6-font-size: $font-size-base * .875; + +//Border Radius +// Helper classes are rounded, rounded-1, rounded-2, rounded-3 +$border-radius: .25rem; +$border-radius-sm: .2rem; +$border-radius-lg: .5rem;//Used for buttons. Can be used for other things, of course. +$border-radius-pill: 50rem; + +//Spacing +// 8 spacers available instead of the usual 5 +$spacer: 1rem; +$spacers: ( + 0: 0, + 1: $spacer * .25, /* 4px */ + 2: $spacer * .5, /* 8px */ + 3: $spacer * .75, /* 12px */ + 4: $spacer * 1, /* 16px */ + 5: $spacer * 1.5, /* 24px */ + 6: $spacer * 2, /* 32px */ + 7: $spacer * 2.5, /* 40px */ + 8: $spacer * 3, /* 48px */ +); + +//Grid breakpoints +$grid-breakpoints: ( + xs: 0, + sm: 576px, + md: 838px, + lg: 1074px, + xl: 1416px +); + +//Shadow +$box-shadow: 0 .5rem 1rem rgba($black, .15); +$box-shadow-sm: 0 .125rem .25rem rgba($black, .075); +$box-shadow-lg: 0 1rem 3rem rgba($black, .25);//Safelite default +$box-shadow-inset: inset 0 1px 2px rgba($black, .075); + +//Alerts +$alert-bg-scale: -90%; +$alert-border-scale: -100%; +$alert-color-scale: 40%; + +//Modal animation +$modal-fade-transform: translate(0, 0); +$modal-backdrop-opacity: 0; diff --git a/src/ux-components/loader/loader.vue b/src/ux-components/loader/loader.vue index 66dfe762..25d7e02d 100644 --- a/src/ux-components/loader/loader.vue +++ b/src/ux-components/loader/loader.vue @@ -42,7 +42,7 @@ //Spinner basics &:after { content: ""; - mask: url(../../assets/img/icons/spinner.svg); + mask: url(../../assets/icons/spinner.svg); mask-size: cover; position: relative; width: 1rem; diff --git a/vue.config.js b/vue.config.js index ccad75f0..97730661 100644 --- a/vue.config.js +++ b/vue.config.js @@ -10,6 +10,7 @@ module.exports = { // Note: only include functions, variables and mixins here additionalData: ` @import "./node_modules/bootstrap/scss/functions"; + @import "@/styles/ux-variables.scss"; @import "./node_modules/bootstrap/scss/variables"; @import "./node_modules/bootstrap/scss/mixins"; `, diff --git a/vue.release.config.js b/vue.release.config.js index f6b57ccf..49511e62 100644 --- a/vue.release.config.js +++ b/vue.release.config.js @@ -10,6 +10,7 @@ module.exports = { // Note: only include functions, variables and mixins here additionalData: ` @import "./node_modules/bootstrap/scss/functions"; + @import "@/styles/ux-variables.scss"; @import "./node_modules/bootstrap/scss/variables"; @import "./node_modules/bootstrap/scss/mixins"; `,