Luigit
repositories / dotfiles

dotfiles

bugabingas dorkfiles

owned by admin

nugu/mermaid.nu

Raw
use palette.nu

# Generate the Mermaid palette installed into the personal Mermaid skill.
def mode [mode: string] {
	let p = (palette nugu $mode).palette
	let variables = {
		darkMode: ($mode == "dark")
		background: $p.content.backdrop
		primaryColor: $p.ui.backdrop
		primaryTextColor: $p.content.normal
		primaryBorderColor: $p.content.accent
		secondaryColor: $p.ui.normal
		secondaryTextColor: $p.ui.backdrop
		secondaryBorderColor: $p.ui.accent
		tertiaryColor: $p.content.backdrop
		tertiaryTextColor: $p.content.normal
		tertiaryBorderColor: $p.content.unfocus
		mainBkg: $p.ui.backdrop
		nodeBorder: $p.content.accent
		clusterBkg: $p.ui.backdrop
		clusterBorder: $p.ui.accent
		defaultLinkColor: $p.content.unfocus
		lineColor: $p.content.unfocus
		titleColor: $p.content.accent
		edgeLabelBackground: $p.ui.backdrop
		nodeTextColor: $p.content.normal
		actorBkg: $p.ui.backdrop
		actorBorder: $p.content.accent
		actorTextColor: $p.content.normal
		actorLineColor: $p.content.unfocus
		signalColor: $p.content.normal
		signalTextColor: $p.content.normal
		labelBoxBkgColor: $p.ui.backdrop
		labelBoxBorderColor: $p.content.accent
		labelTextColor: $p.content.normal
		loopTextColor: $p.content.normal
		activationBorderColor: $p.content.accent
		activationBkgColor: $p.ui.focus
		noteBkgColor: $p.ui.backdrop
		noteTextColor: $p.content.normal
		noteBorderColor: $p.content.accent
		classText: $p.content.normal
		labelColor: $p.content.normal
		altBackground: $p.ui.backdrop
	}
	{
		mode: $mode
		colors: {
			background: $p.content.backdrop
			text: $p.content.normal
			accent: $p.content.accent
			muted: $p.content.unfocus
			focus: $p.content.focus
			error: $p.error
			warning: $p.warning
			info: $p.info
		}
		mermaid: {
			theme: "base"
			themeVariables: $variables
		}
	}
}

export def palette [] {
	{
		schema: 1
		source: "nugu"
		modes: {
			dark: (mode dark)
			light: (mode light)
		}
	} | to json --indent 2
}