import { resetTheme as e } from "../../services/theme-engine/index.js";
import { AccentSwitcher as t } from "./accent-switcher.js";
import { DensitySwitcher as n } from "./density-switcher.js";
import { FontStackPicker as r } from "./font-stack-picker.js";
import { GlassSlider as i } from "./glass-slider.js";
import { IconSetPicker as a } from "./icon-set-picker.js";
import { IconUsageMatrix as o } from "./icon-usage-matrix.js";
import { RadiusSlider as s } from "./radius-slider.js";
import { ThemePresetGrid as c } from "./theme-preset-grid.js";
import { ThemePreviewTile as l } from "./theme-preview-tile.js";
import { ThemeSwitcher as u } from "./theme-switcher.js";
//#region src/components/theme/theme-studio.ts
var d = {
	showTabs: !0,
	showHeader: !0,
	showBrandSection: !0
};
function f(e, t, n) {
	let r = document.createElement(e);
	return t && (r.className = t), n !== void 0 && (r.textContent = n), r;
}
function p(e, t, n, r) {
	let i = f("section", "theme-studio-section"), a = f("div", "theme-studio-section__head"), o = f("div", "theme-studio-section__titles");
	return o.appendChild(f("h3", "theme-studio-section__title", e)), o.appendChild(f("div", "theme-studio-section__helper", t)), a.appendChild(o), r && a.appendChild(r), i.appendChild(a), i.appendChild(n), i;
}
function m() {
	let e = f("div", "theme-studio-tabs");
	for (let t of [
		"Profile",
		"Organization",
		"Appearance",
		"About"
	]) {
		let n = f("button", "theme-studio-tab", t);
		n.type = "button", t === "Appearance" && n.classList.add("is-active"), n.disabled = t !== "Appearance", e.appendChild(n);
	}
	return e;
}
function h() {
	let t = f("button", "theme-studio-link", "Reset to default");
	return t.type = "button", t.addEventListener("click", () => {
		e();
	}), t;
}
function g() {
	let e = f("div", "theme-studio-advanced"), t = f("div", "theme-studio-advanced__row");
	t.appendChild(new n().el), e.appendChild(t);
	let r = f("div", "theme-studio-advanced__row");
	r.appendChild(new s().el), e.appendChild(r);
	let i = f("div", "theme-studio-advanced__matrix-head");
	return i.appendChild(f("h4", "theme-studio-advanced__matrix-title", "Per-icon mapping")), i.appendChild(f("p", "theme-studio-advanced__matrix-helper", "Rebind any icon slot. Useful if your team thinks of detection as a bug instead of a shield.")), e.appendChild(i), e.appendChild(new o().el), e;
}
function _() {
	let e = document.createElement("details");
	e.className = "theme-studio-section theme-studio-section--advanced";
	let t = document.createElement("summary");
	t.className = "theme-studio-section__head theme-studio-section__head--summary";
	let n = f("div", "theme-studio-section__titles");
	n.appendChild(f("h3", "theme-studio-section__title", "Advanced")), n.appendChild(f("div", "theme-studio-section__helper", "Density, corner radius, and per-icon overrides")), t.appendChild(n);
	let r = f("span", "theme-studio-section__chev", "Show");
	return t.appendChild(r), e.appendChild(t), e.appendChild(g()), e.addEventListener("toggle", () => {
		r.textContent = e.open ? "Hide" : "Show";
	}), e;
}
var v = class {
	el;
	options;
	constructor(e = {}) {
		this.options = {
			...d,
			...e
		}, this.el = document.createElement("section"), this.el.className = "theme-studio-pane", this.render();
	}
	render() {
		if (this.el.innerHTML = "", this.options.showTabs && this.el.appendChild(m()), this.options.showHeader) {
			let e = f("header", "theme-studio-pane__header");
			e.appendChild(f("h1", "theme-studio-pane__title", "Appearance")), e.appendChild(f("p", "theme-studio-pane__subtitle", "Customize how CounterMeasure looks. Pick a preset, tweak the color mode, accent, transparency, typography, and icons. Changes apply immediately and persist on this device.")), this.el.appendChild(e);
		}
		if (this.el.appendChild(p("Start from a preset", "Curated combinations of mode, accent, font, and icon style.", new c().el, h())), this.el.appendChild(p("Live preview", "A miniature app shell that re-renders as you tweak settings below.", new l().el)), this.el.appendChild(p("Color Mode", "Choose how the interface looks.", new u().el)), this.el.appendChild(p("Accent Color", "Pick a color that highlights actions and links.", new t().el)), this.el.appendChild(p("Surface Transparency", "How translucent panels, hover states, and overlays appear.", new i({ expanded: !0 }).el)), this.el.appendChild(p("Typography", "Select the typeface used throughout the app.", new r().el)), this.el.appendChild(p("Icon Set", "Choose the icon style for navigation and content.", new a().el)), this.options.showBrandSection) {
			let e = f("div", "theme-studio-brand-note");
			e.appendChild(f("p", "theme-studio-brand-note__text", "Brand assets live under design-system brand resources. Switch icon sets to CounterMeasure above to apply the bespoke security glyphs.")), this.el.appendChild(p("Brand", "Logo, wordmark, and brand glyph references.", e));
		}
		this.el.appendChild(_());
	}
};
function y(e, t) {
	let n = new v(t);
	return e.innerHTML = "", e.appendChild(n.el), n;
}
//#endregion
export { v as ThemeStudio, y as renderThemeStudio };

//# sourceMappingURL=theme-studio.js.map