@volverjs/ui-vue 0.0.9-beta.3 → 0.0.9-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15,16 +15,16 @@
15
15
  const dialogEl: Ref<HTMLDialogElement | undefined> = ref()
16
16
 
17
17
  // data
18
+ const modelValue = useVModel(props, 'modelValue', emit)
18
19
  const localModelValue = ref(false)
19
- const modelValue = computed({
20
- get() {
21
- return props.modelValue ?? localModelValue.value
22
- },
23
- set(value) {
24
- if (props.modelValue === undefined) {
25
- localModelValue.value = value
20
+ const opened = computed({
21
+ get: () => modelValue.value ?? localModelValue.value,
22
+ set: (newValue) => {
23
+ if (modelValue.value === undefined) {
24
+ localModelValue.value = newValue
25
+ return
26
26
  }
27
- emit('update:modelValue', value)
27
+ modelValue.value = newValue
28
28
  },
29
29
  })
30
30
 
@@ -80,24 +80,24 @@
80
80
 
81
81
  // methods
82
82
  onClickOutside(modalWrapper, () => {
83
- if (!props.keepOpen) {
84
- modelValue.value = false
83
+ if (!props.keepOpen && opened.value) {
84
+ opened.value = false
85
85
  }
86
86
  })
87
87
 
88
88
  function close() {
89
- modelValue.value = false
89
+ opened.value = false
90
90
  }
91
91
 
92
92
  function open() {
93
- modelValue.value = true
93
+ opened.value = true
94
94
  }
95
95
 
96
96
  defineExpose({ close, open })
97
97
 
98
98
  // keyboard
99
99
  onKeyStroke('Escape', (e) => {
100
- if (modelValue.value) {
100
+ if (opened.value) {
101
101
  e.preventDefault()
102
102
  close()
103
103
  }
@@ -107,7 +107,7 @@
107
107
  <template>
108
108
  <Transition :name="transitioName" v-on="dialogTransitionHandlers">
109
109
  <dialog
110
- v-show="modelValue"
110
+ v-show="opened"
111
111
  v-bind="dialogAttrs"
112
112
  ref="dialogEl"
113
113
  :class="dialogClass"
@@ -270,7 +270,7 @@
270
270
  onClickOutside(
271
271
  floatingEl,
272
272
  () => {
273
- if (!props.keepOpen) {
273
+ if (!props.keepOpen && expanded.value) {
274
274
  expanded.value = false
275
275
  }
276
276
  },