diff --git a/packages/kotti-ui/source/kotti-field-currency/KtFieldCurrency.vue b/packages/kotti-ui/source/kotti-field-currency/KtFieldCurrency.vue index b12bed19e..c85f5b69a 100644 --- a/packages/kotti-ui/source/kotti-field-currency/KtFieldCurrency.vue +++ b/packages/kotti-ui/source/kotti-field-currency/KtFieldCurrency.vue @@ -1,6 +1,10 @@ @@ -12,7 +16,12 @@ import type { InputHTMLAttributes } from 'vue/types/jsx' import { Yoco } from '@3yourmind/yoco' import { KtField } from '../kotti-field' -import { useField, useForceUpdate } from '../kotti-field/hooks' +import { + useEmitBlur, + useField, + useForceUpdate, + useKtFieldRef, +} from '../kotti-field/hooks' import { useI18nContext } from '../kotti-i18n/hooks' import type { KottiI18n } from '../kotti-i18n/types' import { makeProps } from '../make-props' @@ -57,6 +66,13 @@ export default defineComponent({ }) const i18nContext = useI18nContext() + const ktFieldRef = useKtFieldRef() + + useEmitBlur({ + emit, + field, + fieldTarget: computed(() => ktFieldRef.value?.inputContainerRef ?? null), + }) const currencyFormat = computed(() => { const result = i18nContext.currencyMap[props.currency] @@ -176,13 +192,11 @@ export default defineComponent({ }), ), inputRef, + ktFieldRef, modifiedField: computed(() => ({ ...field, prefix: currencyFormat.value.symbol, })), - onBlur: () => { - emit('blur', field.currentValue) - }, onInput: (event: Event) => { const value = (event.target as HTMLInputElement).value diff --git a/packages/kotti-ui/source/kotti-field-inline-edit/KtFieldInlineEdit.vue b/packages/kotti-ui/source/kotti-field-inline-edit/KtFieldInlineEdit.vue index 18ed92b4e..e6a80d6d8 100644 --- a/packages/kotti-ui/source/kotti-field-inline-edit/KtFieldInlineEdit.vue +++ b/packages/kotti-ui/source/kotti-field-inline-edit/KtFieldInlineEdit.vue @@ -34,7 +34,6 @@