コンテンツへスキップ

レンダラー API

Lunaria では、生成されたダッシュボードにコンテンツを挿入および上書きする機能が提供されています。このリファレンスでは、すべての利用可能なレンダラー設定オプションについて説明します。

renderer.config.ts
import { defineRendererConfig } from '@lunariajs/core';
export default defineRendererConfig({
// あなたの設定オプションはここに記述します...
});

コンポーネント

Lunaria には、より良いコンポーネント作成体験を可能にするために、組み込みの html タグ付きテンプレートリテラルが備えられています。

renderer.config.ts
import { defineRendererConfig, html } from '@lunariajs/core';
export default defineRendererConfig({
slots: {
afterTitle: () => html`<p>これは例となるコンポーネントです!</p>`,
},
});

構文強調表示と言語サポートは、lit-html VSCode 拡張 および vim-jsx-pretty プラグイン を通して利用可能です。

ルートレベルのオプション

slots

型: Slots

export default defineRendererConfig({
slots: {
head: (config) => html`<meta name="robots" content="noindex" />`,
beforeTitle: (config) => html`<p>例となるコンポーネント</p>`,
afterTitle: (config) => html`<p>例となるコンポーネント</p>`,
afterStatusByLocale: (config) => html`<p>例となるコンポーネント</p>`,
afterStatusByFile: (config) => html`<p>例となるコンポーネント</p>`,
},
});

Slots

type Slots = {
head?: (config: LunariaConfig) => string;
beforeTitle?: (config: LunariaConfig) => string;
afterTitle?: (config: LunariaConfig) => string;
afterStatusByLocale?: (config: LunariaConfig) => string;
afterStatusByFile?: (config: LunariaConfig) => string;
};

overrides

型: Overrides

export default defineRendererConfig({
overrides: {
meta: (config) => html`<meta name="robots" content="noindex" />`,
body: (config, status) => html`<main>例となるコンポーネント</main>`,
statusByLocale: (config, status) => html`<p>例となるコンポーネント</p>`,
statusByFile: (config, status) => html`<p>例となるコンポーネント</p>`,
},
});

Overrides

type Overrides = {
meta?: (config: LunariaConfig) => string;
body?: (config: LunariaConfig, status: LocalizationStatus[]) => string;
statusByLocale?: (config: LunariaConfig, status: LocalizationStatus[]) => string;
statusByFile?: (config: LunariaConfig, status: LocalizationStatus[]) => string;
};