123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- 'use strict';
- Object.defineProperty(exports, '__esModule', { value: true });
- var vue = require('vue');
- require('../../utils/index.js');
- var i18n = require('../../utils/i18n.js');
- function useComposition({
- afterComposition,
- emit
- }) {
- const isComposing = vue.ref(false);
- const handleCompositionStart = (event) => {
- emit == null ? void 0 : emit("compositionstart", event);
- isComposing.value = true;
- };
- const handleCompositionUpdate = (event) => {
- var _a;
- emit == null ? void 0 : emit("compositionupdate", event);
- const text = (_a = event.target) == null ? void 0 : _a.value;
- const lastCharacter = text[text.length - 1] || "";
- isComposing.value = !i18n.isKorean(lastCharacter);
- };
- const handleCompositionEnd = (event) => {
- emit == null ? void 0 : emit("compositionend", event);
- if (isComposing.value) {
- isComposing.value = false;
- vue.nextTick(() => afterComposition(event));
- }
- };
- const handleComposition = (event) => {
- event.type === "compositionend" ? handleCompositionEnd(event) : handleCompositionUpdate(event);
- };
- return {
- isComposing,
- handleComposition,
- handleCompositionStart,
- handleCompositionUpdate,
- handleCompositionEnd
- };
- }
- exports.useComposition = useComposition;
- //# sourceMappingURL=index.js.map
|