UNPKG

vite-plugin-asciidoc

Version:

[![npm](https://img.shields.io/npm/v/vite-plugin-asciidoc?style=for-the-badge)](https://www.npmjs.com/package/vite-plugin-asciidoc)

31 lines (30 loc) 1.18 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createAsciidocPlugin = void 0; const asciidoctor_1 = __importDefault(require("asciidoctor")); const path_1 = __importDefault(require("path")); const html_1 = require("./html"); function createAsciidocPlugin(options) { const adoc = (0, asciidoctor_1.default)(); return { name: 'adoc', transform(code, id) { const extension = path_1.default.extname(id); if (extension !== '.adoc') { return undefined; } const html = adoc.convert(code, { base_dir: path_1.default.dirname(id), ...options, }); const htmlAsJs = (0, html_1.prepareHtml)(html, id); const document = adoc.loadFile(id); const additional = `export const attributes = ${JSON.stringify(document.getAttributes())}`; return `${htmlAsJs}\n${additional}`; }, }; } exports.createAsciidocPlugin = createAsciidocPlugin;