Skip to content

Commit c9b51f3

Browse files
authored
feat(dropdown): add toggle prop to trigger slot (#1086)
1 parent 6466757 commit c9b51f3

File tree

8 files changed

+18
-10
lines changed

8 files changed

+18
-10
lines changed

packages/oruga/src/components/autocomplete/tests/__snapshots__/autocomplete.test.ts.snap

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ exports[`OAutocomplete tests > render correctly 1`] = `
66
<!--
77
@slot Override the trigger element, default is label prop
88
@binding {boolean} active - dropdown active state
9+
@binding {() => void} toggle - toggle dropdown active state
910
-->
1011
<div data-oruga="input" class="o-input__wrapper"><input role="combobox" aria-autocomplete="list" aria-controls="v-0" aria-expanded="false" id="v-1" data-oruga-input="text" type="text" class="o-input" autocomplete="off">
1112
<!--v-if-->
@@ -20,7 +21,7 @@ exports[`OAutocomplete tests > render correctly 1`] = `
2021
<!--
2122
@slot Place dropdown items here
2223
@binding {boolean} active - dropdown active state
23-
@binding {boolean} toggle - toggle active state function
24+
@binding {() => void} toggle - toggle dropdown active state
2425
-->
2526
<!--v-if-->
2627
</div>

packages/oruga/src/components/datepicker/tests/__snapshots__/datepicker.test.ts.snap

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ exports[`ODatepicker > render correctly 1`] = `
77
<!--
88
@slot Override the trigger element, default is label prop
99
@binding {boolean} active - dropdown active state
10+
@binding {() => void} toggle - toggle dropdown active state
1011
-->
1112
<div data-oruga="input" class="o-input__wrapper"><input id="v-0" data-oruga-input="text" type="text" class="o-input" autocomplete="off">
1213
<!--v-if-->
@@ -21,7 +22,7 @@ exports[`ODatepicker > render correctly 1`] = `
2122
<!--
2223
@slot Place dropdown items here
2324
@binding {boolean} active - dropdown active state
24-
@binding {boolean} toggle - toggle active state function
25+
@binding {() => void} toggle - toggle dropdown active state
2526
-->
2627
<div class="o-dpck__box" role="listitem" tabindex="0" data-oruga="dropdown-item" aria-selected="false" aria-disabled="false">
2728
<!--

packages/oruga/src/components/datetimepicker/tests/__snapshots__/datetimepicker.test.ts.snap

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ exports[`ODatetimepicker tests > render correctly 1`] = `
77
<!--
88
@slot Override the trigger element, default is label prop
99
@binding {boolean} active - dropdown active state
10+
@binding {() => void} toggle - toggle dropdown active state
1011
-->
1112
<div data-oruga="input" class="o-input__wrapper"><input class="o-dtpck__date o-input" id="v-0" data-oruga-input="text" type="text" autocomplete="off">
1213
<!--v-if-->
@@ -21,7 +22,7 @@ exports[`ODatetimepicker tests > render correctly 1`] = `
2122
<!--
2223
@slot Place dropdown items here
2324
@binding {boolean} active - dropdown active state
24-
@binding {boolean} toggle - toggle active state function
25+
@binding {() => void} toggle - toggle dropdown active state
2526
-->
2627
<div class="o-dpck__box" role="listitem" tabindex="0" data-oruga="dropdown-item" aria-selected="false" aria-disabled="false">
2728
<!--
@@ -333,7 +334,7 @@ exports[`ODatetimepicker tests > render correctly 1`] = `
333334
<!--
334335
@slot Place dropdown items here
335336
@binding {boolean} active - dropdown active state
336-
@binding {boolean} toggle - toggle active state function
337+
@binding {() => void} toggle - toggle dropdown active state
337338
-->
338339
<div class="o-tpck__box" role="listitem" tabindex="0" data-oruga="dropdown-item" aria-selected="false" aria-disabled="false">
339340
<!--

packages/oruga/src/components/dropdown/Dropdown.vue

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -432,8 +432,9 @@ defineExpose({ $trigger: triggerRef, $content: contentRef, value: vmodel });
432432
<!--
433433
@slot Override the trigger element, default is label prop
434434
@binding {boolean} active - dropdown active state
435+
@binding {() => void} toggle - toggle dropdown active state
435436
-->
436-
<slot name="trigger" :active="isActive">
437+
<slot name="trigger" :active="isActive" :toggle="onClick">
437438
{{ label }}
438439
</slot>
439440
</component>
@@ -471,7 +472,7 @@ defineExpose({ $trigger: triggerRef, $content: contentRef, value: vmodel });
471472
<!--
472473
@slot Place dropdown items here
473474
@binding {boolean} active - dropdown active state
474-
@binding {boolean} toggle - toggle active state function
475+
@binding {() => void} toggle - toggle dropdown active state
475476
-->
476477
<slot :active="isActive" :toggle="toggle">
477478
<template v-for="group in groupedOptions">

packages/oruga/src/components/dropdown/tests/__snapshots__/dropdown.integration.test.ts.snap

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ exports[`Dropdown integration tests > render correctly 1`] = `
66
<!--
77
@slot Override the trigger element, default is label prop
88
@binding {boolean} active - dropdown active state
9+
@binding {() => void} toggle - toggle dropdown active state
910
--><button class="trigger">trigger</button>
1011
</div>
1112
<!--teleport start-->
@@ -15,7 +16,7 @@ exports[`Dropdown integration tests > render correctly 1`] = `
1516
<!--
1617
@slot Place dropdown items here
1718
@binding {boolean} active - dropdown active state
18-
@binding {boolean} toggle - toggle active state function
19+
@binding {() => void} toggle - toggle dropdown active state
1920
-->
2021
<div class="o-drop__item o-drop__item--clickable text-break" role="listitem" tabindex="0" data-oruga="dropdown-item" aria-selected="false" aria-disabled="false">
2122
<!--

packages/oruga/src/components/dropdown/tests/__snapshots__/dropdown.test.ts.snap

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ exports[`Dropdown tests > render correctly 1`] = `
66
<!--
77
@slot Override the trigger element, default is label prop
88
@binding {boolean} active - dropdown active state
9+
@binding {() => void} toggle - toggle dropdown active state
910
-->
1011
</div>
1112
<!--teleport start-->
@@ -15,7 +16,7 @@ exports[`Dropdown tests > render correctly 1`] = `
1516
<!--
1617
@slot Place dropdown items here
1718
@binding {boolean} active - dropdown active state
18-
@binding {boolean} toggle - toggle active state function
19+
@binding {() => void} toggle - toggle dropdown active state
1920
-->
2021
<!--v-if-->
2122
</div>

packages/oruga/src/components/taginput/tests/__snapshots__/taginput.test.ts.snap

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ exports[`OTaginput tests > render correctly 1`] = `
1313
<!--
1414
@slot Override the trigger element, default is label prop
1515
@binding {boolean} active - dropdown active state
16+
@binding {() => void} toggle - toggle dropdown active state
1617
-->
1718
<div data-oruga="input" class="o-input__wrapper o-input__wrapper--expanded"><input has-counter="false" role="combobox" aria-autocomplete="list" aria-controls="v-0" aria-expanded="false" id="v-1" data-oruga-input="text" type="text" class="o-input o-taginput__input" autocomplete="off">
1819
<!--v-if-->
@@ -27,7 +28,7 @@ exports[`OTaginput tests > render correctly 1`] = `
2728
<!--
2829
@slot Place dropdown items here
2930
@binding {boolean} active - dropdown active state
30-
@binding {boolean} toggle - toggle active state function
31+
@binding {() => void} toggle - toggle dropdown active state
3132
-->
3233
<!--v-if-->
3334
</div>

packages/oruga/src/components/timepicker/tests/__snapshots__/timepicker.test.ts.snap

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ exports[`OTimepicker tests > render correctly 1`] = `
77
<!--
88
@slot Override the trigger element, default is label prop
99
@binding {boolean} active - dropdown active state
10+
@binding {() => void} toggle - toggle dropdown active state
1011
-->
1112
<div data-oruga="input" class="o-input__wrapper"><input id="v-0" data-oruga-input="text" type="text" class="o-input" autocomplete="off">
1213
<!--v-if-->
@@ -21,7 +22,7 @@ exports[`OTimepicker tests > render correctly 1`] = `
2122
<!--
2223
@slot Place dropdown items here
2324
@binding {boolean} active - dropdown active state
24-
@binding {boolean} toggle - toggle active state function
25+
@binding {() => void} toggle - toggle dropdown active state
2526
-->
2627
<div class="o-tpck__box" role="listitem" tabindex="0" data-oruga="dropdown-item" aria-selected="false" aria-disabled="false">
2728
<!--

0 commit comments

Comments
 (0)