diff --git a/package-lock.json b/package-lock.json
index 74815f878..cde6a019f 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -2724,7 +2724,6 @@
"thread-loader": "^2.1.3",
"url-loader": "^2.2.0",
"vue-loader": "^15.9.2",
- "vue-loader-v16": "npm:vue-loader@^16.1.0",
"vue-style-loader": "^4.1.2",
"webpack": "^4.0.0",
"webpack-bundle-analyzer": "^3.8.0",
@@ -3026,7 +3025,6 @@
"merge-source-map": "^1.1.0",
"postcss": "^7.0.36",
"postcss-selector-parser": "^6.0.2",
- "prettier": "^1.18.2",
"source-map": "~0.6.1",
"vue-template-es2015-compiler": "^1.9.0"
},
@@ -4985,7 +4983,6 @@
"dependencies": {
"anymatch": "~3.1.2",
"braces": "~3.0.2",
- "fsevents": "~2.3.2",
"glob-parent": "~5.1.2",
"is-binary-path": "~2.1.0",
"is-glob": "~4.0.1",
@@ -7279,8 +7276,7 @@
"esprima": "^4.0.1",
"estraverse": "^4.2.0",
"esutils": "^2.0.2",
- "optionator": "^0.8.1",
- "source-map": "~0.6.1"
+ "optionator": "^0.8.1"
},
"bin": {
"escodegen": "bin/escodegen.js",
@@ -10827,7 +10823,6 @@
"@jest/types": "^24.9.0",
"anymatch": "^2.0.0",
"fb-watchman": "^2.0.0",
- "fsevents": "^1.2.7",
"graceful-fs": "^4.1.15",
"invariant": "^2.2.4",
"jest-serializer": "^24.9.0",
@@ -17893,8 +17888,7 @@
"dependencies": {
"chokidar": "^3.4.1",
"graceful-fs": "^4.1.2",
- "neo-async": "^2.5.0",
- "watchpack-chokidar2": "^2.0.1"
+ "neo-async": "^2.5.0"
},
"optionalDependencies": {
"chokidar": "^3.4.1",
@@ -18269,7 +18263,6 @@
"anymatch": "^2.0.0",
"async-each": "^1.0.1",
"braces": "^2.3.2",
- "fsevents": "^1.2.7",
"glob-parent": "^3.1.0",
"inherits": "^2.0.3",
"is-binary-path": "^1.0.0",
diff --git a/src/App.vue b/src/App.vue
index c4d5d301b..6d9602582 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -28,23 +28,13 @@
-
@@ -59,11 +49,13 @@
diff --git a/src/assets/img/icons/button-spinner-green.svg b/src/assets/img/icons/button-spinner-green.svg
new file mode 100644
index 000000000..2ee9031dd
--- /dev/null
+++ b/src/assets/img/icons/button-spinner-green.svg
@@ -0,0 +1,3 @@
+
diff --git a/src/assets/img/icons/button-spinner.svg b/src/assets/img/icons/button-spinner-white.svg
similarity index 100%
rename from src/assets/img/icons/button-spinner.svg
rename to src/assets/img/icons/button-spinner-white.svg
diff --git a/src/assets/scss/components/_buttons.scss b/src/assets/scss/components/_buttons.scss
index a59cef969..bf3cbf883 100644
--- a/src/assets/scss/components/_buttons.scss
+++ b/src/assets/scss/components/_buttons.scss
@@ -1,7 +1,6 @@
//Custom button styles
.btn {
- &.btn-primary,
- &.btn-primary-focus {
+ &.btn-primary {
position: relative;
background: $blue-700;
background: linear-gradient(270deg, rgba(21,116,161,1) 0%, rgba(18,91,126,1) 100%);
@@ -13,10 +12,15 @@
&:hover {
background: linear-gradient(270deg, rgba(6,87,124,1) 0%, rgba(6,87,124,1) 100%);
}
+ &:focus, // Mouse, touch, stylus focus
+ &:focus-visible { // Keyboard focus for accessibility
+ outline: none;
+ box-shadow: 0 0 0 3px, 0 0 0 5.5px $blue-700;
+ }
&.button-loader {
padding: 0 40px 0 12px;
&:after {
- content: url(../../assets/img/icons/button-spinner.svg);
+ content: url(../../assets/img/icons/button-spinner-white.svg);
position: absolute;
right: 14px;
width: 16px;
@@ -31,62 +35,38 @@
}
}
}
- &.disabled {
- background: $gray-100;
- background: linear-gradient(270deg, $gray-100 0%, $gray-100 100%);
- color: $gray-400;
+ &:disabled {
+ background: $gray-100 !important;
+ background: linear-gradient(270deg, $gray-100 0%, $gray-100 100%) !important;
+ color: $gray-400 !important;
+ height: 48px;
+ border: none;
+ border-radius: $border-radius-lg;
}
- &.btn-primary-focus {
- position: relative;//Required for :after pseduo to position correctly
- margin: 5px;//Because :after is position absolute and isn't accounted for in DOM
- &:before {
- content: "";
- position: absolute;
- width: calc(100% + 12px);
- height: calc(100% + 12px);
- border: 3px solid $blue-700;
- background-color: $white;
- border-radius: 12px;
- left: -6px;
- top: -6px;
- z-index: -1;
+ &.list-button {
+ position: relative;
+ background: $white;
+ height: 48px;
+ transition: all 150ms linear;
+ border-radius: $border-radius-lg;
+ border: 1px solid rgba($gray-300,.3);
+ width: 100%;
+ &.button-loader {
+ padding: 0 40px 0 12px;
+ &:after {
+ content: url(../../assets/img/icons/button-spinner-green.svg);
+ position: absolute;
+ right: 14px;
+ width: 16px;
+ height: 16px;
+ margin-left: 12px;
+ animation: rotation 1s infinite linear;
+ @keyframes rotation {
+ 100% {
+ transform:rotate(360deg);
+ }
+ }
+ }
}
}
- &.btn-funnel {
- display: flex;
- justify-content: space-between;
- }
}
-// Non-Bootstrap button
-// Intended to be used without .btn class
-.btn-damage {
- width: 100%;
- background-color: $white;
- border: 1px solid #b3b4b5;
- &:focus {
- background-color: #e7f1f6;
- border: 1px solid $blue;
- }
- &:focus-visible { // For keyboard/screenreader
- background-color: #e7f1f6;
- outline: none;
- box-shadow: 0 0 0 2px $blue;
- }
-}
-
-// Non-Bootstrap button
-// Intended to be used without .btn class
-.btn-damage {
- width: 100%;
- background-color: $white;
- border: 1px solid #b3b4b5;
- &:focus {
- background-color: #e7f1f6;
- border: 1px solid $blue;
- }
- &:focus-visible { // For keyboard/screenreader
- background-color: #e7f1f6;
- outline: none;
- box-shadow: 0 0 0 2px $blue;
- }
-}
\ No newline at end of file
diff --git a/src/uxComponents/buttonPrimary/buttonPrimary.vue b/src/uxComponents/buttonPrimary/buttonPrimary.vue
index 194c1483f..5e0dd1dcf 100644
--- a/src/uxComponents/buttonPrimary/buttonPrimary.vue
+++ b/src/uxComponents/buttonPrimary/buttonPrimary.vue
@@ -1,6 +1,8 @@