2021-02-27 13:08:34 +09:00
|
|
|
<template>
|
2021-12-17 16:14:31 +09:00
|
|
|
<MkModal ref="modal" v-slot="{ type, maxHeight }" :prefer-type="asReactionPicker && $store.state.reactionPickerUseDrawerForMobile === false ? 'popup' : 'auto'" :transparent-bg="true" :manual-showing="manualShowing" :src="src" :front="true" @click="$refs.modal.close()" @opening="opening" @close="$emit('close')" @closed="$emit('closed')">
|
2021-12-17 02:14:40 +09:00
|
|
|
<MkEmojiPicker ref="picker" class="ryghynhb _popup _shadow" :class="{ drawer: type === 'drawer' }" :show-pinned="showPinned" :as-reaction-picker="asReactionPicker" :as-drawer="type === 'drawer'" :max-height="maxHeight" @chosen="chosen"/>
|
|
|
|
</MkModal>
|
2021-02-27 13:08:34 +09:00
|
|
|
</template>
|
|
|
|
|
|
|
|
<script lang="ts">
|
|
|
|
import { defineComponent, markRaw } from 'vue';
|
2021-12-17 02:14:40 +09:00
|
|
|
import MkModal from '@/components/ui/modal.vue';
|
2021-11-12 02:02:25 +09:00
|
|
|
import MkEmojiPicker from '@/components/emoji-picker.vue';
|
2021-02-27 13:08:34 +09:00
|
|
|
|
|
|
|
export default defineComponent({
|
|
|
|
components: {
|
2021-12-17 02:14:40 +09:00
|
|
|
MkModal,
|
2021-02-27 13:08:34 +09:00
|
|
|
MkEmojiPicker,
|
|
|
|
},
|
|
|
|
|
|
|
|
props: {
|
2021-02-28 01:09:59 +09:00
|
|
|
manualShowing: {
|
|
|
|
type: Boolean,
|
|
|
|
required: false,
|
|
|
|
default: null,
|
|
|
|
},
|
2021-02-27 13:08:34 +09:00
|
|
|
src: {
|
|
|
|
required: false
|
|
|
|
},
|
|
|
|
showPinned: {
|
|
|
|
required: false,
|
|
|
|
default: true
|
|
|
|
},
|
|
|
|
asReactionPicker: {
|
|
|
|
required: false
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
2021-08-08 12:19:10 +09:00
|
|
|
emits: ['done', 'close', 'closed'],
|
2021-02-27 13:08:34 +09:00
|
|
|
|
|
|
|
data() {
|
|
|
|
return {
|
|
|
|
|
|
|
|
};
|
|
|
|
},
|
|
|
|
|
|
|
|
methods: {
|
|
|
|
chosen(emoji: any) {
|
|
|
|
this.$emit('done', emoji);
|
2021-12-17 02:14:40 +09:00
|
|
|
this.$refs.modal.close();
|
2021-02-27 13:08:34 +09:00
|
|
|
},
|
2021-02-28 10:03:52 +09:00
|
|
|
|
|
|
|
opening() {
|
|
|
|
this.$refs.picker.reset();
|
|
|
|
this.$refs.picker.focus();
|
|
|
|
}
|
2021-02-27 13:08:34 +09:00
|
|
|
}
|
|
|
|
});
|
|
|
|
</script>
|
|
|
|
|
|
|
|
<style lang="scss" scoped>
|
2021-08-09 18:01:12 +09:00
|
|
|
.ryghynhb {
|
2021-12-17 02:14:40 +09:00
|
|
|
&.drawer {
|
|
|
|
border-radius: 24px;
|
|
|
|
border-bottom-right-radius: 0;
|
|
|
|
border-bottom-left-radius: 0;
|
2021-02-27 13:08:34 +09:00
|
|
|
}
|
|
|
|
}
|
|
|
|
</style>
|