Modrinth/libs/omorphia/docs/components/markdown-editor.md

2.7 KiB

Markdown Editor

The Markdown editor allows for easy formatting of Markdown text whether the user is familiar with Markdown or not. It includes standard shortcuts such as CTRL+B for bold, CTRL+I for italic, and more.

Full editor

<script setup>
import { ref } from "vue";
const description = ref(null)
</script>

<MarkdownEditor v-model="description" />

With options

<script setup>
import { ref } from "vue";
const description = ref(null)
</script>

<MarkdownEditor v-model="description" placeholder="Enter a description" max-length="800" max-height="400" />

With image upload

<script setup lang="ts">
import { ref } from "vue";
const description = ref(null)

// Return a URL to the image for the editor to consume
const onImageUpload = (file: File): string => {
  // Upload the file to your server and return a URL
  // This example url will not work bc of proxy

  // If the upload fails, throw an error and it will show as
  // a Validation Error to the user
  return URL.createObjectURL(file).replace("blob:", "");
};
</script>

<MarkdownEditor v-model="description" :on-image-upload="onImageUpload" />

Without heading buttons

<script setup>
import { ref } from "vue";
const description = ref(null)
</script>

<MarkdownEditor v-model="description" :heading-buttons="false" />

With default value

<script setup>
import { ref } from "vue";

const description = ref("Hello, world! This is a **bold** statement.");
</script>

<MardownEditor v-model="description" />

Disabled

<script setup>
import { ref } from "vue";

const description = ref(null);
</script>

<MardownEditor v-model="description" disabled />