|
4 | 4 | bordered |
5 | 5 | class="bg-formcard q-pa-md" |
6 | 6 | > |
7 | | - <div class="row"> |
8 | | - <h3 class="subquestion"> |
9 | | - The person's given names |
10 | | - <InfoDialog name="authorGivenNames" /> |
11 | | - </h3> |
12 | | - </div> |
13 | | - <div class="row"> |
| 7 | + <fieldset class="q-mb-md"> |
| 8 | + <legend> |
| 9 | + Author's name, split into four parts |
| 10 | + <InfoDialog name="authorNames" /> |
| 11 | + </legend> |
14 | 12 | <q-input |
15 | 13 | autofocus |
16 | 14 | bg-color="white" |
17 | 15 | class="col" |
18 | 16 | data-cy="input-given-names" |
19 | 17 | dense |
20 | | - label="given-names" |
| 18 | + label="Given names" |
21 | 19 | outlined |
22 | 20 | standout |
23 | 21 | v-bind:model-value="givenNames" |
24 | 22 | v-bind:error="false" |
25 | 23 | v-bind:error-message="''" |
26 | 24 | v-on:update:modelValue="$emit('update', 'givenNames', $event)" |
27 | 25 | /> |
28 | | - </div> |
29 | | - <div class="row"> |
30 | | - <h3 class="subquestion"> |
31 | | - The person's last names, split into parts |
32 | | - <InfoDialog name="authorLastNames" /> |
33 | | - </h3> |
34 | | - </div> |
35 | | - <div class="row"> |
36 | | - <q-input |
37 | | - bg-color="white" |
38 | | - class="col-3" |
39 | | - data-cy="input-name-particle" |
40 | | - dense |
41 | | - label="name-particle" |
42 | | - outlined |
43 | | - standout |
44 | | - v-bind:model-value="nameParticle" |
45 | | - v-bind:error="false" |
46 | | - v-bind:error-message="''" |
47 | | - v-on:update:modelValue="$emit('update', 'nameParticle', $event)" |
48 | | - /> |
49 | | - <q-input |
50 | | - bg-color="white" |
51 | | - class="col" |
52 | | - data-cy="input-family-names" |
53 | | - dense |
54 | | - label="family-names" |
55 | | - outlined |
56 | | - standout |
57 | | - v-bind:model-value="familyNames" |
58 | | - v-bind:error="false" |
59 | | - v-bind:error-message="''" |
60 | | - v-on:update:modelValue="$emit('update', 'familyNames', $event)" |
61 | | - /> |
62 | | - <q-input |
63 | | - bg-color="white" |
64 | | - class="col-3" |
65 | | - data-cy="input-name-suffix" |
66 | | - dense |
67 | | - label="name-suffix" |
68 | | - outlined |
69 | | - standout |
70 | | - v-bind:model-value="nameSuffix" |
71 | | - v-bind:error="false" |
72 | | - v-bind:error-message="''" |
73 | | - v-on:update:modelValue="$emit('update', 'nameSuffix', $event)" |
74 | | - /> |
75 | | - </div> |
76 | | - <div class="row"> |
77 | | - <h3 class="subquestion"> |
78 | | - The person's email address |
79 | | - <InfoDialog name="authorEmail" /> |
80 | | - </h3> |
81 | | - </div> |
| 26 | + <div class="row"> |
| 27 | + <q-input |
| 28 | + bg-color="white" |
| 29 | + class="col-3" |
| 30 | + data-cy="input-name-particle" |
| 31 | + dense |
| 32 | + label="Name particle" |
| 33 | + outlined |
| 34 | + standout |
| 35 | + v-bind:model-value="nameParticle" |
| 36 | + v-bind:error="false" |
| 37 | + v-bind:error-message="''" |
| 38 | + v-on:update:modelValue="$emit('update', 'nameParticle', $event)" |
| 39 | + /> |
| 40 | + <q-input |
| 41 | + bg-color="white" |
| 42 | + class="col" |
| 43 | + data-cy="input-family-names" |
| 44 | + dense |
| 45 | + label="Family names" |
| 46 | + outlined |
| 47 | + standout |
| 48 | + v-bind:model-value="familyNames" |
| 49 | + v-bind:error="false" |
| 50 | + v-bind:error-message="''" |
| 51 | + v-on:update:modelValue="$emit('update', 'familyNames', $event)" |
| 52 | + /> |
| 53 | + <q-input |
| 54 | + bg-color="white" |
| 55 | + class="col-3" |
| 56 | + data-cy="input-name-suffix" |
| 57 | + dense |
| 58 | + label="Name suffix" |
| 59 | + outlined |
| 60 | + standout |
| 61 | + v-bind:model-value="nameSuffix" |
| 62 | + v-bind:error="false" |
| 63 | + v-bind:error-message="''" |
| 64 | + v-on:update:modelValue="$emit('update', 'nameSuffix', $event)" |
| 65 | + /> |
| 66 | + </div> |
| 67 | + </fieldset> |
82 | 68 | <div class="row"> |
83 | 69 | <q-input |
| 70 | + aria-label="E-mail. Press tab to reach help button." |
84 | 71 | bg-color="white" |
85 | 72 | class="col" |
86 | 73 | data-cy="input-email" |
87 | 74 | dense |
88 | | - label="email" |
| 75 | + label="E-mail" |
89 | 76 | outlined |
90 | 77 | standout |
91 | 78 | type="email" |
|
94 | 81 | v-bind:error="emailErrors.length > 0" |
95 | 82 | v-bind:error-message="emailErrors.join(', ')" |
96 | 83 | v-on:update:modelValue="$emit('update', 'email', $event)" |
97 | | - /> |
98 | | - </div> |
99 | | - <div class="row"> |
100 | | - <h3 class="subquestion col"> |
101 | | - The person's affiliation |
102 | | - <InfoDialog name="authorAffiliation" /> |
103 | | - </h3> |
104 | | - <h3 class="subquestion col"> |
105 | | - The person's ORCID |
106 | | - <InfoDialog name="authorOrcid" /> |
107 | | - </h3> |
| 84 | + > |
| 85 | + <template v-slot:after> |
| 86 | + <InfoDialog name="authorEmail" /> |
| 87 | + </template> |
| 88 | + </q-input> |
108 | 89 | </div> |
109 | 90 | <div class="row"> |
110 | 91 | <q-input |
| 92 | + aria-label="Affiliation. Press tab to reach help button." |
111 | 93 | bg-color="white" |
112 | 94 | class="col" |
113 | 95 | data-cy="input-affiliation" |
114 | 96 | dense |
115 | | - label="affiliation" |
| 97 | + label="Affiliation" |
116 | 98 | outlined |
117 | 99 | standout |
118 | 100 | v-bind:model-value="affiliation" |
119 | 101 | v-bind:error="false" |
120 | 102 | v-bind:error-message="''" |
121 | 103 | v-on:update:modelValue="$emit('update', 'affiliation', $event)" |
122 | | - /> |
| 104 | + > |
| 105 | + <template v-slot:after> |
| 106 | + <InfoDialog name="authorAffiliation" /> |
| 107 | + </template> |
| 108 | + </q-input> |
123 | 109 | <q-input |
| 110 | + aria-label="ORCID. Press tab to reach help button." |
124 | 111 | bg-color="white" |
125 | 112 | class="col" |
126 | 113 | data-cy="input-orcid" |
127 | 114 | dense |
128 | 115 | hint="Format: https://orcid.org/0000-0000-0000-0000" |
129 | | - label="orcid" |
| 116 | + label="ORCID" |
130 | 117 | mask="https://orcid.org/####-####-####-###X" |
131 | 118 | outlined |
132 | 119 | standout |
|
135 | 122 | v-bind:error="orcidErrors.length > 0" |
136 | 123 | v-bind:error-message="orcidErrors.join(', ')" |
137 | 124 | v-on:update:modelValue="$emit('update', 'orcid', $event)" |
138 | | - /> |
| 125 | + > |
| 126 | + <template v-slot:after> |
| 127 | + <InfoDialog name="authorOrcid" /> |
| 128 | + </template> |
| 129 | + </q-input> |
139 | 130 | </div> |
140 | 131 |
|
141 | 132 | <q-card-actions align="right"> |
|
0 commit comments