Skip to content

@fungi.computer/stipe

EmbedThemeOptions = Readonly<{ accent?: string; fontFamily?: string; }>

Host inputs for the embed and embed-dark themes. Both are optional.


EmbedThemeProperties = Readonly<Record<string, string>>>>

Custom properties the embed themes read, keyed by property name.


TerminalPalette = object

Semantic terminal colors projected from a maintained theme.

readonly background: string

readonly foreground: string

readonly cursor: string

readonly cursorAccent: string

readonly selectionBackground: string

readonly primary: string

readonly accent: string

readonly success: string

readonly info: string

readonly warning: string

readonly error: string

readonly black: string

readonly red: string

readonly green: string

readonly yellow: string

readonly blue: string

readonly magenta: string

readonly cyan: string

readonly white: string

readonly brightBlack: string

readonly brightRed: string

readonly brightGreen: string

readonly brightYellow: string

readonly brightBlue: string

readonly brightMagenta: string

readonly brightCyan: string

readonly brightWhite: string

readonly optional selectionForeground?: string

const EMBED_THEME_TOKENS: object

The embed themes’ default chrome tokens, for surfaces outside Daisy (the loader’s launcher in a host page’s shadow root). styles.css defines the same values; a test keeps the two in step.

readonly embed: object

readonly base100: "#ffffff" = "#ffffff"

readonly baseContent: "#1f2328" = "#1f2328"

readonly primary: "#2f5fd0" = "#2f5fd0"

readonly primaryContent: "#ffffff" = "#ffffff"

readonly embed-dark: object

readonly base100: "#1b1d21" = "#1b1d21"

readonly baseContent: "#e8eaed" = "#e8eaed"

readonly primary: "#7aa2f7" = "#7aa2f7"

readonly primaryContent: "#000000" = "#000000"


const STIPE_GOOEY_FILTER: Readonly<{ alphaIntercept: -9; alphaSlope: 19; blurStdDeviation: 1.5; }>

Frozen Gooey SVG filter constants for Stipe’s visual law.


const STIPE_SPACING_NAMES: readonly ["2xs", "xs", "sm", "md", "lg", "xl", "2xl", "3xl", "4xl"]

Named spacing scale shared by CSS utilities and class conflict resolution.


const STIPE_TOKEN_NAMES: readonly ["--stipe-font-synthesis", "--stipe-surface-frame-width", "--stipe-surface-frame-image", "--stipe-surface-molding-contrast", "--stipe-shadow-raised", "--stipe-shadow-inset", "--stipe-shadow-edge", "--stipe-display-texture-image", "--stipe-display-text-shadow", "--stipe-canvas", "--stipe-surface", "--stipe-surface-raised", "--stipe-surface-selected", "--stipe-fg-muted", "--stipe-linework", "--stipe-hairline", "--stipe-figure-ink", "--stipe-density-compact", "--stipe-density-comfortable", "--stipe-motion-spring", "--stipe-motion-squish", "--stipe-motion-fast", "--stipe-motion-normal", "--stipe-motion-slow", "--stipe-motion-ease", "--stipe-layer-base", "--stipe-layer-popover", "--stipe-layer-modal", "--stipe-layer-toast", "--stipe-icon-size-sm", "--stipe-icon-size-md", "--stipe-icon-size-lg", "--stipe-icon-stroke", "--stipe-card-rim", "--stipe-card-rim-edge", "--stipe-card-face", "--stipe-card-panel", "--stipe-card-ink", "--stipe-card-ink-muted", "--stipe-card-accent", "--stipe-art-coral", "--stipe-art-blue", "--stipe-art-mint", "--stipe-art-grape", "--stipe-art-yellow", "--stipe-art-cream", "--stipe-art-ink", "--stipe-art-inkcap", "--stipe-art-graphite", "--stipe-sketch-ink"]

Canonical Stipe token names in declaration order.

readableContentColor(hex): "#ffffff" | "#000000"

Black or white, whichever has the higher WCAG contrast on hex.

string

"#ffffff" | "#000000"


embedThemeProperties(options): EmbedThemeProperties

Project host inputs onto the embed themes’ custom properties. The host applies them (for example with style.setProperty) beside data-theme="embed" or data-theme="embed-dark".

EmbedThemeOptions

EmbedThemeProperties


terminalPalette(theme): TerminalPalette | undefined

Return the maintained terminal palette for an exact theme name.

string

TerminalPalette | undefined

Re-exports pierreTreesStyle


Re-exports PierreTreesStyleOptions


Re-exports applyTheme


Re-exports getTheme


Re-exports subscribeTheme


Re-exports ThemeListener