Function: useCopyMarkdown() ​

Source: 1.1.0 · e3417e89b638

ts
function useCopyMarkdown(): object;

Defined in: packages/valaxy/client/composables/features/copy-markdown.ts:28

Composable for copying raw Markdown content of the current post. Requires siteConfig.llms.enable: true and siteConfig.llms.files: true to have .md files available at build output.

The available ref is initially false and becomes true after a HEAD request confirms the .md file exists. This allows themes to conditionally render the copy button only when the llms feature is enabled.

Returns ​

object

available ​

ts
available: Ref<boolean, boolean>;

copied ​

ts
copied: Ref<boolean, boolean>;

copy ​

ts
copy: () => Promise<void>;

Returns ​

Promise<void>

error ​

ts
error: Ref<string | null, string | null>;

loading ​

ts
loading: Ref<boolean, boolean>;

mdUrl ​

ts
mdUrl: ComputedRef<string>;

Example ​

vue
<script setup>
import { useCopyMarkdown } from 'valaxy'
const { copy, copied, loading, available, error } = useCopyMarkdown()
</script>
<template>
  <button v-if="available" @click="copy" :disabled="loading">
    {{ copied ? 'Copied!' : 'Copy Markdown' }}
  </button>
  <span v-if="error" class="text-red">{{ error }}</span>
</template>