diff --git a/docs/components/dropdown-select.md b/docs/components/dropdown-select.md
index f7a7eae97..615b044fc 100644
--- a/docs/components/dropdown-select.md
+++ b/docs/components/dropdown-select.md
@@ -1,8 +1,11 @@
# Dropdown
@@ -24,10 +27,10 @@ const value = ref(null)
disabled
/>
diff --git a/lib/components/base/DropdownButton.vue b/lib/components/base/DropdownButton.vue
index 04e78fde4..a6238011e 100644
--- a/lib/components/base/DropdownButton.vue
+++ b/lib/components/base/DropdownButton.vue
@@ -238,7 +238,7 @@ onBeforeUnmount(() => {
.options {
z-index: 10;
- max-height: min(12rem);
+ max-height: 18.75remq;
overflow-y: auto;
box-shadow: var(--shadow-inset-sm), 0 0 0 0 transparent;
diff --git a/lib/components/base/DropdownSelect.vue b/lib/components/base/DropdownSelect.vue
index 01bad8458..a8f41ed2d 100644
--- a/lib/components/base/DropdownSelect.vue
+++ b/lib/components/base/DropdownSelect.vue
@@ -7,6 +7,7 @@
class="animated-dropdown"
@focus="onFocus"
@blur="onBlur"
+ @focusout="onBlur"
@mousedown.prevent
@keydown.enter.prevent="toggleDropdown"
@keydown.up.prevent="focusPreviousOption"
@@ -72,15 +73,15 @@ const props = defineProps({
required: true,
},
defaultValue: {
- type: String,
+ type: [String, Number, Object],
default: null,
},
placeholder: {
- type: String,
+ type: [String, Number],
default: null,
},
modelValue: {
- type: String,
+ type: [String, Number, Object],
default: null,
},
renderUp: {
@@ -147,6 +148,7 @@ const onFocus = () => {
}
const onBlur = (event) => {
+ console.log(event)
if (!isChildOfDropdown(event.relatedTarget)) {
dropdownVisible.value = false
}
@@ -176,7 +178,7 @@ const focusNextOptionOrOpen = () => {
const isChildOfDropdown = (element) => {
let currentNode = element
while (currentNode) {
- if (currentNode === this.$el) {
+ if (currentNode === dropdown.value) {
return true
}
currentNode = currentNode.parentNode
@@ -243,7 +245,7 @@ const isChildOfDropdown = (element) => {
.options {
z-index: 10;
- max-height: min(12rem);
+ max-height: 18.75rem;
overflow-y: auto;
box-shadow: var(--shadow-inset-sm), 0 0 0 0 transparent;
diff --git a/package.json b/package.json
index 895df89b4..129b7fbe8 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "omorphia",
"type": "module",
- "version": "0.4.23",
+ "version": "0.4.24",
"files": [
"dist",
"lib"