1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
| <template>
| <div class="payment-input-wrapper">
| <div class="label font-28 mb-18 textColor2">
| {{ $t(label) }}
| </div>
| <div class="payment-input w-full" >
| <slot>
| <input v-if="!isTextArea"
| :readonly="disabled"
| class="w-full h-full inputBackground c2cColor"
| type="text"
| :value="$t(value)"
| @input="changeValue"
| :placeholder="$t(placeholder)"
| >
| <textarea v-else
| class="w-full h-full inputBackground c2cColor"
| type="text"
| :value="$t(value)"
| @input="changeValue"
| :placeholder="$t(placeholder)"
| cols="30" rows="6"
| ></textarea>
| </slot>
| </div>
| </div>
| </template>
|
| <script>
| export default {
| name: "PaymentInput",
| // props: ["label", "color", "value"]
| props: {
| label: {
| redirect: true
| },
| color: {
| default: "#000000"
| },
| value: {
|
| },
| placeholder: {
| default: ""
| },
| disabled: {
| default() {
| return false
| }
| },
| isTextArea:{
| default:false
| }
| },
| methods: {
| changeValue(e) {
| this.$emit("input", e.target.value)
| }
| }
| }
| </script>
|
| <style lang="scss" scoped>
| input, textarea {
| box-sizing: border-box;
| padding: 32px 24px;
| border: none;
| border-radius: 8px;
| }
|
| textarea {
| resize: none;
| }
| </style>
|
|