Text Link
@@ -105,7 +130,7 @@ import buttonPrimary from "@/uxComponents/buttonPrimary/buttonPrimary";
import buttonSecondary from "@/uxComponents/buttonSecondary/buttonSecondary";
import radioCard from "@/uxComponents/radioCard/radioCard";
import listButton from "@/uxComponents/listButton/listButton";
-import radioQuestion from "@/commonComponents/radioQuestion/radioQuestion";
+import radioList from "@/uxComponents/radioList/radioList";
export default {
name: "App",
components: {
@@ -113,7 +138,7 @@ export default {
buttonSecondary,
radioCard,
listButton,
- radioQuestion
+ radioList
},
data() {
return {
diff --git a/src/styles/commonRadioStyles.scss b/src/styles/commonRadioStyles.scss
new file mode 100644
index 000000000..953a75985
--- /dev/null
+++ b/src/styles/commonRadioStyles.scss
@@ -0,0 +1,59 @@
+.radiogroup {
+ &.radio-list-button {
+ input[type="radio"] {
+ opacity: 0;
+ position: fixed;
+ width: 0;
+ &:focus-visible + label {
+ box-shadow: 0 0 0 2px $blue;
+ }
+ &:focus + label {
+ box-shadow: 0 0 0 2px $blue;
+ }
+ &:checked + label {
+ background: $blue-100;
+ box-shadow: 0 0 0 1px $blue;
+ }
+ }
+ label {
+ position: relative;
+ background: $white;
+ height: 3rem;
+ transition: all 150ms linear;
+ border-radius: $border-radius-lg;
+ border: 1px solid $gray-500;
+ width: 100%;
+ &:hover {
+ box-shadow: 0 0 0 4px $blue-100;
+ cursor: pointer;
+ }
+ + p {
+ display: none;
+ }
+ &.error {
+ border: 1px solid $danger;
+ + p {
+ display: flex;
+ color: $danger;
+ }
+ }
+ &.button-loader {
+ padding: 0 40px 0 12px;
+ &:after {
+ content: url(../../assets/img/icons/button-spinner-blue.svg);
+ position: absolute;
+ right: 14px;
+ width: 16px;
+ height: 16px;
+ margin-left: 12px;
+ animation: rotation 1s infinite linear;
+ @keyframes rotation {
+ 100% {
+ transform:rotate(360deg);
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/src/uxComponents/radioList/radioList.spec.js b/src/uxComponents/radioList/radioList.spec.js
new file mode 100644
index 000000000..882a68129
--- /dev/null
+++ b/src/uxComponents/radioList/radioList.spec.js
@@ -0,0 +1 @@
+test.todo('some test to be written in the future');
\ No newline at end of file
diff --git a/src/uxComponents/radioList/radioList.vue b/src/uxComponents/radioList/radioList.vue
new file mode 100644
index 000000000..6b59e6f57
--- /dev/null
+++ b/src/uxComponents/radioList/radioList.vue
@@ -0,0 +1,34 @@
+
+
+
+
+
diff --git a/vue.config.js b/vue.config.js
index 8027ca62b..bda41b2dd 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -24,6 +24,7 @@ module.exports = {
@import "./node_modules/bootstrap/scss/bootstrap";
@import "@/styles/commonStyles.scss";
@import "@/styles/commonButtonStyles.scss";
+ @import "@/styles/commonRadioStyles.scss";
@import "@/styles/commonTypographyStyles.scss";
@import "@/styles/commonComponentStyles/ymmsCommonStyles.scss";
`
diff --git a/vue.release.config.js b/vue.release.config.js
index c6b87f434..5bc60309f 100644
--- a/vue.release.config.js
+++ b/vue.release.config.js
@@ -14,6 +14,7 @@ module.exports = {
@import "./node_modules/bootstrap/scss/bootstrap";
@import "@/styles/commonStyles.scss";
@import "@/styles/commonButtonStyles.scss";
+ @import "@/styles/commonRadioStyles.scss";
@import "@/styles/commonTypographyStyles.scss";
@import "@/styles/commonComponentStyles/ymmsCommonStyles.scss";
`