Skip to content

Commit 5bbdf81

Browse files
committed
empty selects by default
1 parent 0737316 commit 5bbdf81

File tree

5 files changed

+37
-4
lines changed

5 files changed

+37
-4
lines changed

index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@
2626
</main>
2727
</body>
2828
<script>
29-
// var public_key = 'f8d88b6562b3434ba4ef'
30-
var public_key = '9c79f14df986a1ec693c'
29+
var public_key = 'f8d88b6562b3434ba4ef'
30+
// var public_key = '9c79f14df986a1ec693c'
3131
var api_root = null // 'http://localhost:8000'
3232
var socket1 = socket(public_key, {
3333
element: '#socket1',

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "tutorcruncher-socket",
3-
"version": "0.0.13",
3+
"version": "0.0.14",
44
"description": "TutorCruncher socket",
55
"author": "Samuel Colvin <[email protected]>",
66
"private": false,

src/components/input.vue

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
<label v-else-if="field.type === 'select'">
1919
{{ label }}
2020
<select :name="name" :required="field.required" @input="changed">
21+
<option value="">---------</option>
2122
<option v-for="choice in field.choices" :value="choice.value" :selected="choice.value === value">
2223
{{ choice.display_name }}
2324
</option>
@@ -40,7 +41,10 @@
4041
</template>
4142

4243
<script>
44+
import Multiselect from 'vue-multiselect'
45+
4346
export default {
47+
components: { Multiselect },
4448
props: {
4549
field: Object,
4650
},

test/unit/specs/_shared.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,25 @@ const enquiry_options = {
2828
visible: [
2929
{field: 'first_field', prefix: null, type: 'text', label: 'Foobar', max_length: 255},
3030
{field: 'custom_field', prefix: 'attributes', type: 'text', label: 'Custom Field', max_length: 2047},
31+
{
32+
field: 'select_test',
33+
choices: [
34+
{
35+
display_name: 'v1',
36+
value: 'v1'
37+
},
38+
{
39+
display_name: 'v2',
40+
value: 'v2'
41+
}
42+
],
43+
help_text: 'xxx',
44+
label: 'Select Test',
45+
prefix: 'attributes',
46+
required: true,
47+
sort_index: 1000,
48+
type: 'select'
49+
},
3150
],
3251
}
3352

test/unit/specs/enquiry.js

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,19 @@ describe('con-modal.vue, enquiry.vue', () => {
3737
vm.$el.querySelector('textarea').value = 'X'
3838
vm.$el.querySelector('textarea').dispatchEvent(new window.Event('input'))
3939

40+
vm.$el.querySelector('select').options[2].selected = true
41+
vm.$el.querySelector('select').dispatchEvent(new window.Event('input'))
42+
4043
await tick()
4144
expect(vm.$el.querySelector('input').value).to.equal('the new value')
42-
expect(vm.enquiry_data).to.deep.equal({first_field: 'the new value', attributes: {custom_field: 'X'}})
45+
console.log(vm.enquiry_data)
46+
expect(vm.enquiry_data).to.deep.equal({
47+
first_field: 'the new value',
48+
attributes: {
49+
custom_field: 'X',
50+
select_test: 'v2'
51+
}
52+
})
4353

4454
expect(vm.method_calls['submit_enquiry']).to.equal(undefined)
4555
vm.$el.querySelector('form').dispatchEvent(new window.Event('submit'))

0 commit comments

Comments
 (0)