Browse Source

:sparkles: onboarding styles added all the way to the questionnaire #TODO style questionResponse.vue

tags/0.0.3^2
K Rob 3 years ago
parent
commit
ebc73418cc

+ 9
- 5
frontend/src/components/onboarding/AccountType.vue View File

1
 <template lang="pug">
1
 <template lang="pug">
2
-.account-typpe
3
-    h3 {{ question }}
4
-    //- w-button.ma1.grow(@click="this.$emit('go-to-step', currentStep + 1)") CANDIDATES
5
-    w-button.ma1.grow(@click='handleSubmit("Recruiter")') CANDIDATES
6
-    w-button.ma1.grow(@click='handleSubmit("Jobseeker")') JOBS
2
+w-card.w-flex.column
3
+    p {Name}, let's get started on your profile while we verify your account
4
+    w-button.search-type(@click='handleSubmit("Recruiter")')
5
+        w-icon.mr1 mdi mdi-account-multiple
6
+        | CANDIDATES
7
+    w-button.search-type(@click='handleSubmit("Jobseeker")')
8
+        w-icon.mr1 mdi mdi-bookmark-box-multiple
9
+        | JOBS
7
 </template>
10
 </template>
11
+
8
 <script>
12
 <script>
9
 export default {
13
 export default {
10
     name: 'AccountType',
14
     name: 'AccountType',

+ 6
- 5
frontend/src/components/onboarding/Aspects.vue View File

1
 <template lang="pug">
1
 <template lang="pug">
2
-.aspects
2
+w-card.aspects.w-flex.column
3
     form.questionnaire(@submit.prevent='this.$emit("handle-submit")')
3
     form.questionnaire(@submit.prevent='this.$emit("handle-submit")')
4
         QuestionResponse(
4
         QuestionResponse(
5
             :question='question'
5
             :question='question'
10
             w-icon.mr1 wi-check
10
             w-icon.mr1 wi-check
11
             | SUBMIT ANSWERS
11
             | SUBMIT ANSWERS
12
 </template>
12
 </template>
13
+
13
 <script>
14
 <script>
14
 import QuestionResponse from './QuestionResponse.vue'
15
 import QuestionResponse from './QuestionResponse.vue'
15
 const answered = [null, null, null, null, null, null]
16
 const answered = [null, null, null, null, null, null]
27
     },
28
     },
28
     emits: ['handle-submit', 'update-answers'],
29
     emits: ['handle-submit', 'update-answers'],
29
     async created() {
30
     async created() {
30
-        this.aspectQuestions.forEach((q,i) => {
31
-            console.log(`Aspect #${i}: ${JSON.stringify(q)}`) 
31
+        this.aspectQuestions.forEach((q, i) => {
32
+            console.log(`Aspect #${i}: ${JSON.stringify(q)}`)
32
         })
33
         })
33
     },
34
     },
34
     methods: {
35
     methods: {
35
         updateRadio(onRadioSelect) {
36
         updateRadio(onRadioSelect) {
36
-            answered[onRadioSelect.id-1] = onRadioSelect.answer
37
+            answered[onRadioSelect.id - 1] = onRadioSelect.answer
37
             this.$emit('update-answers', {
38
             this.$emit('update-answers', {
38
                 key: 'Aspects',
39
                 key: 'Aspects',
39
                 question: {
40
                 question: {
40
-                    response_key_prompt: 'aspects'
41
+                    response_key_prompt: 'aspects',
41
                 },
42
                 },
42
                 answer: answered,
43
                 answer: answered,
43
             })
44
             })

+ 3
- 2
frontend/src/components/onboarding/CompanyID.vue View File

1
 <template lang="pug">
1
 <template lang="pug">
2
-.company-id
2
+w-card.company-id.w-flex.column
3
     h3 Company ID
3
     h3 Company ID
4
     p {{ question }}
4
     p {{ question }}
5
     input(
5
     input(
7
         type='text'
7
         type='text'
8
         v-model='companyID'
8
         v-model='companyID'
9
     )
9
     )
10
-    w-button.ma1.grow(@click='handleSubmit') NEXT
10
+    w-button.next-btn(@click='handleSubmit') Next
11
 </template>
11
 </template>
12
+
12
 <script>
13
 <script>
13
 export default {
14
 export default {
14
     name: 'CompanyID',
15
     name: 'CompanyID',

+ 3
- 3
frontend/src/components/onboarding/Interests.vue View File

1
 <template lang="pug">
1
 <template lang="pug">
2
-.interests
2
+w-card.interests.w-flex.column
3
     h3 Interests
3
     h3 Interests
4
     p {{ question }}
4
     p {{ question }}
5
-    DynamicTagList(:placeholder='"interest"' :tags='interests')
6
-    w-button.ma1.grow(@click='handleSubmit') NEXT
5
+    w-button.next-btn(@click='handleSubmit') NEXT
7
 </template>
6
 </template>
8
 
7
 
9
 <script>
8
 <script>
10
 import DynamicTagList from '../DynamicTagList.vue'
9
 import DynamicTagList from '../DynamicTagList.vue'
10
+
11
 export default {
11
 export default {
12
     name: 'Interests',
12
     name: 'Interests',
13
     components: {
13
     components: {

+ 5
- 3
frontend/src/components/onboarding/LicensesAndCertifications.vue View File

1
 <template lang="pug">
1
 <template lang="pug">
2
-.licenses-certifications
3
-    h3 Licenses &amp; Certifications
2
+w-card.licenses-certifications.w-flex.column
3
+    h3 Licenses & Certifications
4
     p {{ question }}
4
     p {{ question }}
5
     DynamicTagList(
5
     DynamicTagList(
6
         :placeholder='"requirement"'
6
         :placeholder='"requirement"'
7
         :tags='licensesAndCertifications'
7
         :tags='licensesAndCertifications'
8
     )
8
     )
9
-    w-button.ma1.grow(@click='handleSubmit') NEXT
9
+    w-button.next-btn(@click='handleSubmit') NEXT
10
 </template>
10
 </template>
11
+
11
 <script>
12
 <script>
12
 import DynamicTagList from '../DynamicTagList.vue'
13
 import DynamicTagList from '../DynamicTagList.vue'
14
+
13
 export default {
15
 export default {
14
     name: 'LicensesAndCertifications',
16
     name: 'LicensesAndCertifications',
15
     components: {
17
     components: {

+ 7
- 0
frontend/src/components/onboarding/Location.vue View File

1
 <template lang="pug">
1
 <template lang="pug">
2
+<<<<<<< HEAD
2
 .location
3
 .location
3
     h3 Location
4
     h3 Location
4
     p {{ question }}
5
     p {{ question }}
5
     DynamicTagList(:placeholder='"location"' :tags='locations')
6
     DynamicTagList(:placeholder='"location"' :tags='locations')
6
     w-button.ma1.grow(@click='handleSubmit') NEXT
7
     w-button.ma1.grow(@click='handleSubmit') NEXT
8
+=======
9
+w-card.w-flex.column
10
+    h3 Location
11
+    p Where would you like to select your candidates from?
12
+    w-button.next-btn(@click="this.$emit('go-to-step', currentStep + 1)") NEXT
13
+>>>>>>> 59a1766 (:sparkles: onboarding styles added all the way to the questionnaire #TODO style questionResponse.vue)
7
 </template>
14
 </template>
8
 <script>
15
 <script>
9
 import DynamicTagList from '../DynamicTagList.vue'
16
 import DynamicTagList from '../DynamicTagList.vue'

+ 3
- 3
frontend/src/components/onboarding/Role.vue View File

1
 <template lang="pug">
1
 <template lang="pug">
2
-.role
3
-    h3 ACTIVELY SEARCHING
2
+w-card.role.w-flex.column
3
+    h3 Actively Searching
4
     p {{ question }}
4
     p {{ question }}
5
     w-select.mt4(:items='items' placeholder='i am' v-model='selectedRole')
5
     w-select.mt4(:items='items' placeholder='i am' v-model='selectedRole')
6
-    w-button.ma1.grow(@click='handleSubmit') NEXT
6
+    w-button.next-btn(@click='handleSubmit') NEXT
7
 </template>
7
 </template>
8
 
8
 
9
 <script>
9
 <script>

+ 5
- 3
frontend/src/components/onboarding/Skills.vue View File

1
 <template lang="pug">
1
 <template lang="pug">
2
-.skills
3
-    h3 RECRUITER
2
+w-card.skills.w-flex.column
3
+    h3 Recruiter
4
     p {{ question }}
4
     p {{ question }}
5
     DynamicTagList(:placeholder='"skill"' :tags='skills')
5
     DynamicTagList(:placeholder='"skill"' :tags='skills')
6
-    w-button.ma1.grow(@click='handleSubmit') NEXT
6
+    w-button.next-btn(@click='handleSubmit') NEXT
7
 </template>
7
 </template>
8
+
8
 <script>
9
 <script>
9
 import DynamicTagList from '../DynamicTagList.vue'
10
 import DynamicTagList from '../DynamicTagList.vue'
11
+
10
 export default {
12
 export default {
11
     name: 'Skills',
13
     name: 'Skills',
12
     components: {
14
     components: {

+ 5
- 1
frontend/src/components/onboarding/Splash.vue View File

1
 <template lang="pug">
1
 <template lang="pug">
2
 w-flex.column
2
 w-flex.column
3
-    w-image.splash-logo(:height='300' :src='`/assets/logos/siimee_logo.jpg`' :width='300')
3
+    w-image.splash-logo(
4
+        :height='300'
5
+        :src='`/assets/logos/siimee_logo.jpg`'
6
+        :width='300'
7
+    )
4
     w-button.ma1.grow.next-btn(
8
     w-button.ma1.grow.next-btn(
5
         :height='50'
9
         :height='50'
6
         :width='315'
10
         :width='315'

+ 76
- 2
frontend/src/views/OnboardingView.vue View File

45
         },
45
         },
46
         updateAnswers(payload) {
46
         updateAnswers(payload) {
47
             // null payload is passed on splash page
47
             // null payload is passed on splash page
48
-            if(payload){
48
+            if (payload) {
49
                 const k = payload.question.response_key_prompt
49
                 const k = payload.question.response_key_prompt
50
                 this.answered[k] = payload.answer
50
                 this.answered[k] = payload.answer
51
                 console.log(`${k}:`, this.answered[k])
51
                 console.log(`${k}:`, this.answered[k])
52
                 console.log(`Updated answers: ${JSON.stringify(this.answered)}`)
52
                 console.log(`Updated answers: ${JSON.stringify(this.answered)}`)
53
-                if(k === 'aspects') return
53
+                if (k === 'aspects') return
54
             }
54
             }
55
             this.goToStep(this.currentStep + 1)
55
             this.goToStep(this.currentStep + 1)
56
         },
56
         },
57
     },
57
     },
58
 }
58
 }
59
 </script>
59
 </script>
60
+
61
+<style lang="sass">
62
+.view--onboarding
63
+    width: 100%
64
+    max-width: 428px
65
+    height: 100vh
66
+    background-color: #fff
67
+    color: #1F2024
68
+    font-family: 'Century Gothic'
69
+    margin: 0 auto
70
+
71
+    .w-button
72
+            display: flex
73
+            width: 315px
74
+            height: 60px
75
+            border-radius: 6
76
+            background-color: #D5D5D5
77
+            color: #1F2024
78
+            margin: 11px auto
79
+            font-weight: bold
80
+            font-size: 16px
81
+            text-transform: uppercase
82
+            &.next-btn
83
+                border-radius: 6px
84
+                background-color: #5BA626
85
+                color: #1F2024
86
+                height: 50px
87
+                width: 315px
88
+                font-size: 18px
89
+                padding: 7px
90
+
91
+    .w-card
92
+        background-color: #1F2024
93
+        font-family: 'Century Gothic' sans-serif
94
+        min-height: 100vh
95
+        height: 100%
96
+        justify-content: center
97
+        align-items: center
98
+        width: 100%
99
+
100
+        h3
101
+            text-transform: uppercase
102
+            text-align: center
103
+            font-size: 28px
104
+            font-weight: bold
105
+            color: white
106
+            margin-top: 88px
107
+
108
+        p
109
+            color: white
110
+            font-size: 18px
111
+            padding: 11px
112
+            text-align: center
113
+            margin: 22px auto
114
+            font-weight: bold
115
+
116
+        input
117
+            display: flex
118
+            width: 315px
119
+            height: 60px
120
+            padding: 11px
121
+            border-radius: 6
122
+            background-color: #D5D5D5
123
+            color: #1F2024
124
+            margin: 11px auto
125
+            font-weight: bold
126
+            font-size: 16px
127
+        .w-select
128
+            padding: 11px
129
+            color: #1F2024
130
+        .search-type
131
+            color: #1F2024
132
+            height: 50px
133
+</style>

Loading…
Cancel
Save