Files
HealthLog/src/components/settings/insights-section.tsx
T
Marc-André Bombeck 33d7d103da feat(settings): standardize settings and admin section framing
Introduce a shared SettingsSectionFrame (the settings twin of the admin
renderer's SectionFrame) that emits the canonical visible heading +
subheading, and route all 19 settings sections through it. Every settings
page now shows a real h1 + subtitle in the reference Übersicht style
instead of an invisible sr-only title; the section bodies drop their own
headings and off-style intro paragraphs (the explanatory copy folds into
the frame subtitle).

- Route the admin About page through SectionFrame so it carries the same
  visible heading as every other admin section.
- Rename the AI settings section from KI-Auswertung to KI-Anbieter across
  six locales: the page configures the provider and key, not an analysis.
- Add a heading-block spacer to the settings and admin sidebars so the
  first menu item lines up with the top of the first card.
- Remove the always-on core-domains card from Module: a tracking area that
  can't be turned off doesn't need listing.
- Move the proactive-coach control out of Benachrichtigungen into Coach.
- Move admin module availability out of the Coach section into its own
  page: it gates every module, not just the coach.
- Give the Layout Insights editor a proper Insights heading.

Adds settings.sections.<slug>.subtitle and the new admin keys across all
six locales; removes the now-unused module core-domain strings.
2026-06-18 21:28:33 +02:00

29 lines
1.2 KiB
TypeScript

"use client";
import { InsightsOverviewArrangeSection } from "@/components/settings/insights-overview-arrange-section";
import { InsightsPillOrderSection } from "@/components/settings/insights-pill-order-section";
/**
* v1.15.18 — the "Insights" settings section (analogous to the Dashboard
* section). Hosts two blocks:
* 1. Arrange the OVERVIEW — section show/hide + order, persisted to
* `insightsLayoutJson.sections` (the v1.15.11 inline edit mode).
* 2. Sort the navigation PILLS — pill order, persisted to
* `insightsLayoutJson.tiles[].order` (already a separate field in v2).
*
* Both write through the same `/api/insights/layout` contract the tab strip
* and the overview share, so a save here repaints both surfaces in lockstep.
*
* v1.18.6 (W9) — the visible "Insights" heading + subtitle now come from the
* shared `<SettingsSectionFrame>`, and the "← back to hub" link rides the
* frame's `topSlot`. The body is the two arrange cards only.
*/
export function InsightsSection() {
return (
<div className="space-y-6">
<InsightsOverviewArrangeSection id="insights-overview-arrange" />
<InsightsPillOrderSection id="insights-pill-order" />
</div>
);
}