knowyt/client/src/components/CollectQuote.vue

172 lines
3.6 KiB
Vue
Raw Normal View History

2021-10-15 18:45:41 +00:00
<template>
2021-10-29 20:13:38 +00:00
<div class="collect-quote">
2021-11-07 22:51:37 +00:00
<div class="collect-quote__backdrop" />
2021-11-07 22:31:04 +00:00
<div class="collect-quote__container">
<div class="collect-quote__quote-container">
2021-11-07 22:51:37 +00:00
<div class="collect-quote__title">Preview:</div>
2021-11-07 22:31:04 +00:00
<div class="collect-quote__quote">
<Quote :text="quote.quote" />
</div>
</div>
<div class="collect-quote__inputgroup">
2021-11-22 06:08:54 +00:00
<button class="collect-quote__button-close" @click="close">X</button>
2021-11-09 21:28:52 +00:00
<form class="collect-quote__textinput-container">
2021-11-07 22:31:04 +00:00
<input type="hidden" name="id" :value="quote.id" />
2021-12-02 18:07:15 +00:00
<textarea
class="collect-quote__textinput"
v-model="quote.quote"
placeholder="hier eintragen ..."
/>
2021-11-07 22:31:04 +00:00
</form>
2021-11-22 06:08:54 +00:00
<div class="collect-quote__cta-container">
<button class="collect-quote__cta" @click="save">Save</button>
</div>
2021-11-07 22:31:04 +00:00
</div>
</div>
2021-10-15 18:45:41 +00:00
</div>
</template>
2021-10-29 20:13:38 +00:00
2021-10-15 18:45:41 +00:00
<script>
export default {
props: ['quote'],
methods: {
2021-10-29 20:13:38 +00:00
save() {
this.$nuxt.$emit('save-quote', this.quote)
2021-11-22 06:08:54 +00:00
},
close() {
this.$nuxt.$emit('close-quote')
},
2021-10-15 18:45:41 +00:00
},
}
</script>
<style lang="scss">
2021-11-28 16:24:22 +00:00
@import '~/assets/css/components';
2021-10-15 18:45:41 +00:00
.collect-quote {
2021-11-28 19:28:43 +00:00
color: $primary-text-color;
2021-11-07 22:31:04 +00:00
2021-11-07 22:51:37 +00:00
&__backdrop {
2021-11-09 20:52:10 +00:00
position: fixed;
2021-11-07 22:31:04 +00:00
left: 0;
top: 0;
2021-11-07 22:51:37 +00:00
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.5);
}
&__container {
position: absolute;
display: flex;
left: 10%;
top: 15%;
2021-11-07 22:31:04 +00:00
width: 80%;
2021-11-07 22:51:37 +00:00
height: 400px;
2021-11-28 19:28:43 +00:00
background-color: $primary-box-background-color;
border: 4px solid $primary-box-border-color;
2021-11-07 22:31:04 +00:00
border-radius: 20px;
2021-11-28 19:28:43 +00:00
color: $primary-box-text-color;
2021-11-07 22:31:04 +00:00
}
&__quote-container {
position: relative;
display: flex;
flex-direction: column;
left: 0;
top: 0;
width: 50%;
height: 100%;
2021-11-28 19:28:43 +00:00
border-right: 1px solid $primary-box-border-color;
2021-11-09 21:28:52 +00:00
overflow: hidden;
2021-11-07 22:51:37 +00:00
}
&__title {
font-size: 32px;
font-family: "Wendy One";
2021-11-09 21:28:52 +00:00
margin: 48px 0 16px 48px;
2021-11-07 22:31:04 +00:00
}
&__quote {
align-self: center;
max-width: 400px;
2021-11-09 21:28:52 +00:00
margin: 0 48px;
2021-11-07 22:31:04 +00:00
}
&__inputgroup {
2021-11-09 21:28:52 +00:00
width: 50%;
height: 100%;
display: flex;
flex-direction: column;
}
&__textinput-container {
2021-12-02 18:07:15 +00:00
height: 100%;
2021-11-09 21:28:52 +00:00
margin: 48px 48px 0 48px;
}
&__textinput {
width: 100%;
2021-12-02 18:07:15 +00:00
height: 100%;
background: transparent;
color: $primary-text-color;
font-size: 16px;
border: 1px solid #808080;
outline: 0;
resize: none;
&:focus {
border-width: 3px;
border-image: linear-gradient(to right, #e0e0e0 0, #c0c0c0 30%, #e0e0e0 100%);
border-image-slice: 1;
}
2021-11-09 21:28:52 +00:00
}
2021-11-22 06:08:54 +00:00
&__button-close {
2021-11-09 21:28:52 +00:00
align-self: flex-end;
2021-11-22 06:08:54 +00:00
width: 48px;
height: 48px;
margin: 2px;
padding: 10px;
background: none;
border: 0;
font-size: 24px;
2021-11-28 19:28:43 +00:00
color: $primary-box-text-color;
2021-11-22 06:08:54 +00:00
cursor: pointer;
&:hover {
2021-11-28 19:28:43 +00:00
background-color: $primary-box-hover-background-color;
color: $primary-box-hover-text-color;
2021-11-22 06:08:54 +00:00
border-radius: 16px;
}
}
&__cta-container {
position: relative;
width: 100%;
height: 100%;
}
&__cta {
position: absolute;
right: 0;
bottom: 0;
2021-11-09 21:28:52 +00:00
margin: 48px;
2021-11-28 19:28:43 +00:00
background-color: $button-background-color;
2021-11-09 21:28:52 +00:00
width: 80px;
height: 48px;
2021-11-28 19:28:43 +00:00
border: 4px solid $button-border-color;
2021-11-09 21:28:52 +00:00
border-radius: 8px;
2021-11-28 19:28:43 +00:00
color: $button-text-color;
2021-11-09 21:28:52 +00:00
font-family: Dosis;
font-size: 24px;
2021-11-22 06:08:54 +00:00
cursor: pointer;
2021-11-09 21:28:52 +00:00
&:hover {
2021-11-28 19:28:43 +00:00
background-color: $button-hover-background-color;
border-color: $button-hover-border-color;
color: $button-hover-text-color;
2021-11-09 21:28:52 +00:00
}
2021-11-07 22:31:04 +00:00
}
2021-10-15 18:45:41 +00:00
}
</style>