'Implementing a Contenteditable-like Vue component

What are good ways to implement a textarea element which contains sub-components like Chips or blobs ?

I would like the user for example to be able to insert that Chip in between the text. If possible drag and drop that chip after the next paragraph and so on.

I prefer not to use external libraries or if I do, they ought to be light.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source