{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "uptime",
  "type": "registry:ui",
  "title": "Uptime (MIAN)",
  "description": "A status page row: a service, its state today and one bar per day of history. Hover a day for what happened.",
  "categories": [
    "data display",
    "uptime",
    "status page",
    "service status",
    "incidents"
  ],
  "registryDependencies": [
    "https://mian.ro/r/mian-base.json"
  ],
  "files": [
    {
      "path": "mian/components/uptime.css",
      "type": "registry:file",
      "target": "mian/components/uptime.css",
      "content": ".mn-uptime { display: grid; gap: 1.1rem; min-width: 0; }\n.mn-uptime-row { display: grid; gap: .45rem; min-width: 0; }\n.mn-uptime-head { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .6rem; font-size: var(--mn-text-sm); color: var(--mn-fg); }\n.mn-uptime-head strong { font-weight: 600; }\n.mn-uptime-head small { margin-inline-start: auto; color: var(--mn-muted); font-size: .75rem; font-variant-numeric: tabular-nums; }\n.mn-uptime-bars { display: flex; align-items: flex-end; gap: 2px; height: 1.75rem; }\n.mn-uptime-bars > * { position: relative; flex: 1; min-width: 2px; height: 100%; border-radius: 1.5px; background: var(--mn-success); }\n.mn-uptime-bars > [data-s=\"degraded\"] { height: 66%; background: var(--mn-warning); }\n.mn-uptime-bars > [data-s=\"down\"] { height: 33%; background: var(--mn-danger); }\n.mn-uptime-bars > [data-s=\"none\"] { background: var(--mn-surface-2); }\n.mn-uptime-foot { display: flex; justify-content: space-between; color: var(--mn-muted); font-size: .6875rem; }"
    },
    {
      "path": "mian/examples/uptime.html",
      "type": "registry:file",
      "target": "mian/examples/uptime.html",
      "content": "<!-- Services -->\n<div class=\"mn-uptime\" style=\"max-width:38rem\">\n  <div class=\"mn-uptime-row\"><div class=\"mn-uptime-head\"><strong>API</strong><span class=\"mn-badge mn-badge-soft mn-success\">Operational</span><small>99.98% · 90 days</small></div><div class=\"mn-uptime-bars\" role=\"img\" aria-label=\"API, 90 days: one degraded day\"><i data-tip=\"4 Jul · no incidents\"></i><i data-tip=\"5 Jul · no incidents\"></i><i data-tip=\"6 Jul · no incidents\"></i><i data-tip=\"7 Jul · no incidents\"></i><i data-tip=\"8 Jul · no incidents\"></i><i data-tip=\"9 Jul · no incidents\"></i><i data-tip=\"10 Jul · no incidents\"></i><i data-tip=\"11 Jul · no incidents\"></i><i data-tip=\"12 Jul · no incidents\"></i><i data-tip=\"13 Jul · no incidents\"></i><i data-tip=\"14 Jul · no incidents\"></i><i data-tip=\"15 Jul · no incidents\"></i><i data-tip=\"16 Jul · no incidents\"></i><i data-tip=\"17 Jul · no incidents\"></i><i data-tip=\"18 Jul · no incidents\"></i><i data-tip=\"19 Jul · no incidents\"></i><i data-tip=\"20 Jul · no incidents\"></i><i data-tip=\"21 Jul · no incidents\"></i><i data-tip=\"22 Jul · no incidents\"></i><i data-tip=\"23 Jul · no incidents\"></i><i data-tip=\"24 Jul · no incidents\"></i><i data-tip=\"25 Jul · no incidents\"></i><i data-tip=\"26 Jul · no incidents\"></i><i data-tip=\"27 Jul · no incidents\"></i><i data-tip=\"28 Jul · no incidents\"></i><i data-tip=\"29 Jul · no incidents\"></i><i data-tip=\"30 Jul · no incidents\"></i><i data-tip=\"31 Jul · no incidents\"></i><i data-tip=\"1 Aug · no incidents\"></i><i data-tip=\"2 Aug · no incidents\"></i><i data-tip=\"3 Aug · no incidents\"></i><i data-tip=\"4 Aug · no incidents\"></i><i data-tip=\"5 Aug · no incidents\"></i><i data-tip=\"6 Aug · no incidents\"></i><i data-tip=\"7 Aug · no incidents\"></i><i data-tip=\"8 Aug · no incidents\"></i><i data-tip=\"9 Aug · no incidents\"></i><i data-tip=\"10 Aug · no incidents\"></i><i data-tip=\"11 Aug · no incidents\"></i><i data-tip=\"12 Aug · no incidents\"></i><i data-tip=\"13 Aug · no incidents\"></i><i data-tip=\"14 Aug · no incidents\"></i><i data-tip=\"15 Aug · no incidents\"></i><i data-tip=\"16 Aug · no incidents\"></i><i data-tip=\"17 Aug · no incidents\"></i><i data-tip=\"18 Aug · no incidents\"></i><i data-tip=\"19 Aug · no incidents\"></i><i data-tip=\"20 Aug · no incidents\"></i><i data-tip=\"21 Aug · no incidents\"></i><i data-tip=\"22 Aug · no incidents\"></i><i data-tip=\"23 Aug · no incidents\"></i><i data-tip=\"24 Aug · no incidents\"></i><i data-tip=\"25 Aug · no incidents\"></i><i data-tip=\"26 Aug · no incidents\"></i><i data-tip=\"27 Aug · no incidents\"></i><i data-tip=\"28 Aug · no incidents\"></i><i data-tip=\"29 Aug · no incidents\"></i><i data-tip=\"30 Aug · no incidents\"></i><i data-tip=\"31 Aug · no incidents\"></i><i data-tip=\"1 Sep · no incidents\"></i><i data-tip=\"2 Sep · no incidents\"></i><i data-s=\"degraded\" data-tip=\"3 Sep · slow responses for 42 min\"></i><i data-tip=\"4 Sep · no incidents\"></i><i data-tip=\"5 Sep · no incidents\"></i><i data-tip=\"6 Sep · no incidents\"></i><i data-tip=\"7 Sep · no incidents\"></i><i data-tip=\"8 Sep · no incidents\"></i><i data-tip=\"9 Sep · no incidents\"></i><i data-tip=\"10 Sep · no incidents\"></i><i data-tip=\"11 Sep · no incidents\"></i><i data-tip=\"12 Sep · no incidents\"></i><i data-tip=\"13 Sep · no incidents\"></i><i data-tip=\"14 Sep · no incidents\"></i><i data-tip=\"15 Sep · no incidents\"></i><i data-tip=\"16 Sep · no incidents\"></i><i data-tip=\"17 Sep · no incidents\"></i><i data-tip=\"18 Sep · no incidents\"></i><i data-tip=\"19 Sep · no incidents\"></i><i data-tip=\"20 Sep · no incidents\"></i><i data-tip=\"21 Sep · no incidents\"></i><i data-tip=\"22 Sep · no incidents\"></i><i data-tip=\"23 Sep · no incidents\"></i><i data-tip=\"24 Sep · no incidents\"></i><i data-tip=\"25 Sep · no incidents\"></i><i data-tip=\"26 Sep · no incidents\"></i><i data-tip=\"27 Sep · no incidents\"></i><i data-tip=\"28 Sep · no incidents\"></i><i data-tip=\"29 Sep · no incidents\"></i><i data-tip=\"30 Sep · no incidents\"></i><i data-tip=\"1 Oct · no incidents\"></i></div></div>\n  <div class=\"mn-uptime-row\"><div class=\"mn-uptime-head\"><strong>Dashboard</strong><span class=\"mn-badge mn-badge-soft mn-success\">Operational</span><small>100% · 90 days</small></div><div class=\"mn-uptime-bars\" role=\"img\" aria-label=\"Dashboard, 90 days: no incidents\"><i data-tip=\"4 Jul · no incidents\"></i><i data-tip=\"5 Jul · no incidents\"></i><i data-tip=\"6 Jul · no incidents\"></i><i data-tip=\"7 Jul · no incidents\"></i><i data-tip=\"8 Jul · no incidents\"></i><i data-tip=\"9 Jul · no incidents\"></i><i data-tip=\"10 Jul · no incidents\"></i><i data-tip=\"11 Jul · no incidents\"></i><i data-tip=\"12 Jul · no incidents\"></i><i data-tip=\"13 Jul · no incidents\"></i><i data-tip=\"14 Jul · no incidents\"></i><i data-tip=\"15 Jul · no incidents\"></i><i data-tip=\"16 Jul · no incidents\"></i><i data-tip=\"17 Jul · no incidents\"></i><i data-tip=\"18 Jul · no incidents\"></i><i data-tip=\"19 Jul · no incidents\"></i><i data-tip=\"20 Jul · no incidents\"></i><i data-tip=\"21 Jul · no incidents\"></i><i data-tip=\"22 Jul · no incidents\"></i><i data-tip=\"23 Jul · no incidents\"></i><i data-tip=\"24 Jul · no incidents\"></i><i data-tip=\"25 Jul · no incidents\"></i><i data-tip=\"26 Jul · no incidents\"></i><i data-tip=\"27 Jul · no incidents\"></i><i data-tip=\"28 Jul · no incidents\"></i><i data-tip=\"29 Jul · no incidents\"></i><i data-tip=\"30 Jul · no incidents\"></i><i data-tip=\"31 Jul · no incidents\"></i><i data-tip=\"1 Aug · no incidents\"></i><i data-tip=\"2 Aug · no incidents\"></i><i data-tip=\"3 Aug · no incidents\"></i><i data-tip=\"4 Aug · no incidents\"></i><i data-tip=\"5 Aug · no incidents\"></i><i data-tip=\"6 Aug · no incidents\"></i><i data-tip=\"7 Aug · no incidents\"></i><i data-tip=\"8 Aug · no incidents\"></i><i data-tip=\"9 Aug · no incidents\"></i><i data-tip=\"10 Aug · no incidents\"></i><i data-tip=\"11 Aug · no incidents\"></i><i data-tip=\"12 Aug · no incidents\"></i><i data-tip=\"13 Aug · no incidents\"></i><i data-tip=\"14 Aug · no incidents\"></i><i data-tip=\"15 Aug · no incidents\"></i><i data-tip=\"16 Aug · no incidents\"></i><i data-tip=\"17 Aug · no incidents\"></i><i data-tip=\"18 Aug · no incidents\"></i><i data-tip=\"19 Aug · no incidents\"></i><i data-tip=\"20 Aug · no incidents\"></i><i data-tip=\"21 Aug · no incidents\"></i><i data-tip=\"22 Aug · no incidents\"></i><i data-tip=\"23 Aug · no incidents\"></i><i data-tip=\"24 Aug · no incidents\"></i><i data-tip=\"25 Aug · no incidents\"></i><i data-tip=\"26 Aug · no incidents\"></i><i data-tip=\"27 Aug · no incidents\"></i><i data-tip=\"28 Aug · no incidents\"></i><i data-tip=\"29 Aug · no incidents\"></i><i data-tip=\"30 Aug · no incidents\"></i><i data-tip=\"31 Aug · no incidents\"></i><i data-tip=\"1 Sep · no incidents\"></i><i data-tip=\"2 Sep · no incidents\"></i><i data-tip=\"3 Sep · no incidents\"></i><i data-tip=\"4 Sep · no incidents\"></i><i data-tip=\"5 Sep · no incidents\"></i><i data-tip=\"6 Sep · no incidents\"></i><i data-tip=\"7 Sep · no incidents\"></i><i data-tip=\"8 Sep · no incidents\"></i><i data-tip=\"9 Sep · no incidents\"></i><i data-tip=\"10 Sep · no incidents\"></i><i data-tip=\"11 Sep · no incidents\"></i><i data-tip=\"12 Sep · no incidents\"></i><i data-tip=\"13 Sep · no incidents\"></i><i data-tip=\"14 Sep · no incidents\"></i><i data-tip=\"15 Sep · no incidents\"></i><i data-tip=\"16 Sep · no incidents\"></i><i data-tip=\"17 Sep · no incidents\"></i><i data-tip=\"18 Sep · no incidents\"></i><i data-tip=\"19 Sep · no incidents\"></i><i data-tip=\"20 Sep · no incidents\"></i><i data-tip=\"21 Sep · no incidents\"></i><i data-tip=\"22 Sep · no incidents\"></i><i data-tip=\"23 Sep · no incidents\"></i><i data-tip=\"24 Sep · no incidents\"></i><i data-tip=\"25 Sep · no incidents\"></i><i data-tip=\"26 Sep · no incidents\"></i><i data-tip=\"27 Sep · no incidents\"></i><i data-tip=\"28 Sep · no incidents\"></i><i data-tip=\"29 Sep · no incidents\"></i><i data-tip=\"30 Sep · no incidents\"></i><i data-tip=\"1 Oct · no incidents\"></i></div></div>\n  <div class=\"mn-uptime-row\"><div class=\"mn-uptime-head\"><strong>Webhooks</strong><span class=\"mn-badge mn-badge-soft mn-warning\">Degraded</span><small>99.71% · 90 days</small></div><div class=\"mn-uptime-bars\" role=\"img\" aria-label=\"Webhooks, 90 days: one outage and two degraded days, including today\"><i data-tip=\"4 Jul · no incidents\"></i><i data-tip=\"5 Jul · no incidents\"></i><i data-tip=\"6 Jul · no incidents\"></i><i data-tip=\"7 Jul · no incidents\"></i><i data-tip=\"8 Jul · no incidents\"></i><i data-tip=\"9 Jul · no incidents\"></i><i data-tip=\"10 Jul · no incidents\"></i><i data-tip=\"11 Jul · no incidents\"></i><i data-tip=\"12 Jul · no incidents\"></i><i data-tip=\"13 Jul · no incidents\"></i><i data-tip=\"14 Jul · no incidents\"></i><i data-tip=\"15 Jul · no incidents\"></i><i data-tip=\"16 Jul · no incidents\"></i><i data-tip=\"17 Jul · no incidents\"></i><i data-tip=\"18 Jul · no incidents\"></i><i data-tip=\"19 Jul · no incidents\"></i><i data-tip=\"20 Jul · no incidents\"></i><i data-tip=\"21 Jul · no incidents\"></i><i data-tip=\"22 Jul · no incidents\"></i><i data-tip=\"23 Jul · no incidents\"></i><i data-tip=\"24 Jul · no incidents\"></i><i data-tip=\"25 Jul · no incidents\"></i><i data-tip=\"26 Jul · no incidents\"></i><i data-s=\"down\" data-tip=\"27 Jul · outage for 3 h 10 min\"></i><i data-s=\"degraded\" data-tip=\"28 Jul · delayed deliveries\"></i><i data-tip=\"29 Jul · no incidents\"></i><i data-tip=\"30 Jul · no incidents\"></i><i data-tip=\"31 Jul · no incidents\"></i><i data-tip=\"1 Aug · no incidents\"></i><i data-tip=\"2 Aug · no incidents\"></i><i data-tip=\"3 Aug · no incidents\"></i><i data-tip=\"4 Aug · no incidents\"></i><i data-tip=\"5 Aug · no incidents\"></i><i data-tip=\"6 Aug · no incidents\"></i><i data-tip=\"7 Aug · no incidents\"></i><i data-tip=\"8 Aug · no incidents\"></i><i data-tip=\"9 Aug · no incidents\"></i><i data-tip=\"10 Aug · no incidents\"></i><i data-tip=\"11 Aug · no incidents\"></i><i data-tip=\"12 Aug · no incidents\"></i><i data-tip=\"13 Aug · no incidents\"></i><i data-tip=\"14 Aug · no incidents\"></i><i data-tip=\"15 Aug · no incidents\"></i><i data-tip=\"16 Aug · no incidents\"></i><i data-tip=\"17 Aug · no incidents\"></i><i data-tip=\"18 Aug · no incidents\"></i><i data-tip=\"19 Aug · no incidents\"></i><i data-tip=\"20 Aug · no incidents\"></i><i data-tip=\"21 Aug · no incidents\"></i><i data-tip=\"22 Aug · no incidents\"></i><i data-tip=\"23 Aug · no incidents\"></i><i data-tip=\"24 Aug · no incidents\"></i><i data-tip=\"25 Aug · no incidents\"></i><i data-tip=\"26 Aug · no incidents\"></i><i data-tip=\"27 Aug · no incidents\"></i><i data-tip=\"28 Aug · no incidents\"></i><i data-tip=\"29 Aug · no incidents\"></i><i data-tip=\"30 Aug · no incidents\"></i><i data-tip=\"31 Aug · no incidents\"></i><i data-tip=\"1 Sep · no incidents\"></i><i data-tip=\"2 Sep · no incidents\"></i><i data-tip=\"3 Sep · no incidents\"></i><i data-tip=\"4 Sep · no incidents\"></i><i data-tip=\"5 Sep · no incidents\"></i><i data-tip=\"6 Sep · no incidents\"></i><i data-tip=\"7 Sep · no incidents\"></i><i data-tip=\"8 Sep · no incidents\"></i><i data-tip=\"9 Sep · no incidents\"></i><i data-tip=\"10 Sep · no incidents\"></i><i data-tip=\"11 Sep · no incidents\"></i><i data-tip=\"12 Sep · no incidents\"></i><i data-tip=\"13 Sep · no incidents\"></i><i data-tip=\"14 Sep · no incidents\"></i><i data-tip=\"15 Sep · no incidents\"></i><i data-tip=\"16 Sep · no incidents\"></i><i data-tip=\"17 Sep · no incidents\"></i><i data-tip=\"18 Sep · no incidents\"></i><i data-tip=\"19 Sep · no incidents\"></i><i data-tip=\"20 Sep · no incidents\"></i><i data-tip=\"21 Sep · no incidents\"></i><i data-tip=\"22 Sep · no incidents\"></i><i data-tip=\"23 Sep · no incidents\"></i><i data-tip=\"24 Sep · no incidents\"></i><i data-tip=\"25 Sep · no incidents\"></i><i data-tip=\"26 Sep · no incidents\"></i><i data-tip=\"27 Sep · no incidents\"></i><i data-tip=\"28 Sep · no incidents\"></i><i data-tip=\"29 Sep · no incidents\"></i><i data-tip=\"30 Sep · no incidents\"></i><i data-s=\"degraded\" data-tip=\"1 Oct · delayed deliveries, ongoing\"></i></div><div class=\"mn-uptime-foot\"><span>90 days ago</span><span>Today</span></div></div>\n</div>"
    }
  ],
  "docs": "MIAN components are HTML + CSS classes, not React components. The styles are already included in mian-base; this item adds the component's CSS section and example markup for reference. Docs: https://mian.ro/components/uptime",
  "meta": {
    "mian": {
      "license": "LicenseRef-MIAN-1.0",
      "requiresJs": false,
      "classes": [
        "mn-uptime",
        "mn-uptime-row",
        "mn-uptime-head",
        "mn-uptime-bars",
        "mn-uptime-foot"
      ],
      "accessibility": [
        "Days that were not fine are shorter as well as coloured, so the history reads without colour.",
        "State today’s status in words in the badge.",
        "Give each bar strip role=\"img\" and a label that summarises it (“90 days, two incidents”)."
      ],
      "intents": [
        "status page",
        "service uptime",
        "incident history",
        "system status",
        "availability bars"
      ]
    }
  }
}
