Member Junction
    Preparing search index...

    Branding applied to exported files, across EVERY format. HTML gets the full treatment (theme colors, an inlined logo, the title, and a trademark footer); JSON/markdown/text carry the title and trademark (markdown also references the logo). Hosts supply this via mj-conversation-chat-area's exportBranding input. Color theming (brandTokens) is HTML-only — it has no meaning in the data/plain-text formats.

    interface ExportBranding {
        brandTokens?: Record<string, string>;
        logoUrl?: string;
        title?: string;
        trademark?: string;
    }
    Index

    Properties

    brandTokens?: Record<string, string>

    CSS custom-property snapshot emitted as a :root{} block in the exported document, so the export's stylesheet (which reads var(--mj-…, fallback)) renders in the app's theme. HTML export only. Keys must be valid custom-property names (--like-this). Entries are DROPPED when the key is invalid or the value carries declaration-escape / network-call characters (<>{};@\, url(, expression() — plain colors, var(), and color-mix() pass. When omitted and ExportOptions.includeTheme is true, the current theme is auto-snapshotted from document.documentElement (see DEFAULT_EXPORT_THEME_TOKENS).

    logoUrl?: string

    Logo URL. In HTML it is fetched and inlined as a data URI (so the file stays self-contained) and rendered above the title — requires ExportOptions.includeCSS, since it needs its stylesheet rule. In markdown it is referenced by URL. JSON carries it as a string; plain text omits it.

    If the fetch fails, or the response isn't content-type: image/*, the raw URL is emitted instead — so the exported file will reach out to that URL when opened. There is no size or timeout guard on the fetch: a very large logo inflates the export.

    title?: string

    Overrides the exported document's title (defaults to the conversation name).

    trademark?: string

    A short trademark / attribution line (e.g. © 2026 Acme Association · Powered by Betty) rendered at the FOOT of the exported document: a styled HTML footer, a markdown/text trailer, and a field in the JSON branding block.

    In HTML it needs its stylesheet rule, so — like the logo — it is emitted only when ExportOptions.includeCSS is true. The markdown/text/JSON trailers have no such dependency and always emit.

    NOT escaped for markdown: a value containing _, ], ), or a newline can break the surrounding markdown. Supply plain text (HTML and JSON are escaped).