useMessageComponent.ts 1001 B

1234567891011121314151617181920212223242526272829
  1. import MessageType from '@/utils/MessageType'
  2. import MessageText from '@/components/messages/MessageText.vue'
  3. import MessageImage from '@/components/messages/MessageImage.vue'
  4. import MessageFile from '@/components/messages/MessageFile.vue'
  5. import MessageVoice from '@/components/messages/MessageVoice.vue'
  6. import MessageVideo from '@/components/messages/MessageVideo.vue'
  7. import MessageMultipleForward from "@/components/messages/MessageMultipleForward.vue";
  8. import VimPlugin from "@/plugins/VimPlugin";
  9. const useMessageComponent = (type: string) => {
  10. switch (type) {
  11. case MessageType.image:
  12. return MessageImage
  13. case MessageType.file:
  14. return MessageFile
  15. case MessageType.voice:
  16. return MessageVoice
  17. case MessageType.video:
  18. return MessageVideo
  19. case MessageType.forward:
  20. return MessageMultipleForward
  21. case MessageType.text:
  22. return MessageText
  23. default:
  24. return VimPlugin.renderMessage(type)
  25. }
  26. }
  27. export default useMessageComponent