/* global React */ const { useState } = window.ReactHooks; function ProductPage({ query }) { const params = new URLSearchParams(query); const id = params.get("id") || "horizon-kpi"; const p = window.PRODUCTS.find((x) => x.id === id) || window.PRODUCTS[0]; const [tab, setTab] = useState("Overview"); const [seat, setSeat] = useState(5); const related = window.PRODUCTS.filter((x) => x.id !== p.id).slice(0, 4); return (
Home/Catalog/{p.category}

{p.name}

{p.tagline}

Preview · {p.name} INTERACTIVE
{["Overview", "Features", "Technical", "Changelog"].map((t) => ( ))}
{tab === "Overview" && (

{p.summary}

Every TC visual ships with a documented measure contract, formatting pane parity for Power BI Desktop and Service, and a test suite pinned to the Microsoft certification path. You can roll back any version from your tenant admin, without re-publishing reports.

)} {tab === "Features" && (
    {p.features.map((f, i) => (
  • F{String(i + 1).padStart(2, "0")} {f}
  • ))}
)} {tab === "Technical" && (
Runtime
Power BI Desktop 2.118+ · Power BI Service · Fabric
Cert. status
Microsoft certified · code-signed
Data bind
Up to 30,000 categories · Direct Query & Import
Render
SVG with optional WebGL for N > 5000
Bundle size
~180 KB gzipped
Locales
EN, ES, DE, FR, PT-BR, JA
)} {tab === "Changelog" && (
    {[ ["2.4.1", "2026-03-18", "Fix: axis tick alignment when scale < 10"], ["2.4.0", "2026-02-09", "New: multi-metric KPI layout (up to 6 metrics)"], ["2.3.2", "2025-12-04", "Perf: 18% faster first render on large models"], ["2.3.0", "2025-10-22", "New: accessibility summaries, high-contrast mode"] ].map(([v, d, msg]) => (
  • v{v} {d} {msg}
  • ))}
)}
Related visuals
{related.map((r) => (
{r.category}
{r.name}
{r.tagline}
v{r.version} ${r.price}
))}
); } window.ProductPage = ProductPage;