@trinityui/design-system 2.4.0 → 2.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/CHANGELOG.md +24 -491
  2. package/dist/{Legend.js → IllustratedMessage.js} +1247 -1204
  3. package/dist/app-shell.js +32 -32
  4. package/dist/assets/index.d.ts +1 -1
  5. package/dist/components/AI/QueryInput.d.ts +3 -3
  6. package/dist/components/AIDigestCard/AIDigestCard.d.ts +29 -0
  7. package/dist/components/AIDigestCard/AIDigestCard.d.ts.map +1 -0
  8. package/dist/components/AIDigestCard/index.d.ts +9 -0
  9. package/dist/components/AIDigestCard/index.d.ts.map +1 -0
  10. package/dist/components/AIDigestCard/types.d.ts +70 -0
  11. package/dist/components/AIDigestCard/types.d.ts.map +1 -0
  12. package/dist/components/AppLayout/AIFabLayout.deprecated.d.ts +1 -1
  13. package/dist/components/AssessmentDrawer/AssessmentDrawer.d.ts +23 -0
  14. package/dist/components/AssessmentDrawer/AssessmentDrawer.d.ts.map +1 -0
  15. package/dist/components/AssessmentDrawer/index.d.ts +9 -0
  16. package/dist/components/AssessmentDrawer/index.d.ts.map +1 -0
  17. package/dist/components/AssessmentDrawer/types.d.ts +88 -0
  18. package/dist/components/AssessmentDrawer/types.d.ts.map +1 -0
  19. package/dist/components/AuditDrawer/AuditDrawer.d.ts +37 -0
  20. package/dist/components/AuditDrawer/AuditDrawer.d.ts.map +1 -0
  21. package/dist/components/AuditDrawer/index.d.ts +9 -0
  22. package/dist/components/AuditDrawer/index.d.ts.map +1 -0
  23. package/dist/components/AuditDrawer/types.d.ts +116 -0
  24. package/dist/components/AuditDrawer/types.d.ts.map +1 -0
  25. package/dist/components/BulkActionDock/BulkActionDock.d.ts +30 -0
  26. package/dist/components/BulkActionDock/BulkActionDock.d.ts.map +1 -0
  27. package/dist/components/BulkActionDock/index.d.ts +9 -0
  28. package/dist/components/BulkActionDock/index.d.ts.map +1 -0
  29. package/dist/components/BulkActionDock/types.d.ts +71 -0
  30. package/dist/components/BulkActionDock/types.d.ts.map +1 -0
  31. package/dist/components/DateRangePicker/DateRangePicker.d.ts +20 -0
  32. package/dist/components/DateRangePicker/DateRangePicker.d.ts.map +1 -0
  33. package/dist/components/DateRangePicker/index.d.ts +9 -0
  34. package/dist/components/DateRangePicker/index.d.ts.map +1 -0
  35. package/dist/components/DateRangePicker/types.d.ts +72 -0
  36. package/dist/components/DateRangePicker/types.d.ts.map +1 -0
  37. package/dist/components/EntityDetailPanel/EntityDetailPanel.d.ts +17 -0
  38. package/dist/components/EntityDetailPanel/EntityDetailPanel.d.ts.map +1 -0
  39. package/dist/components/EntityDetailPanel/index.d.ts +9 -0
  40. package/dist/components/EntityDetailPanel/index.d.ts.map +1 -0
  41. package/dist/components/EntityDetailPanel/types.d.ts +108 -0
  42. package/dist/components/EntityDetailPanel/types.d.ts.map +1 -0
  43. package/dist/components/GanttView/GanttView.d.ts +25 -0
  44. package/dist/components/GanttView/GanttView.d.ts.map +1 -0
  45. package/dist/components/GanttView/index.d.ts +9 -0
  46. package/dist/components/GanttView/index.d.ts.map +1 -0
  47. package/dist/components/GanttView/types.d.ts +110 -0
  48. package/dist/components/GanttView/types.d.ts.map +1 -0
  49. package/dist/components/GaugeCard/GaugeCard.d.ts +34 -0
  50. package/dist/components/GaugeCard/GaugeCard.d.ts.map +1 -0
  51. package/dist/components/GaugeCard/index.d.ts +9 -0
  52. package/dist/components/GaugeCard/index.d.ts.map +1 -0
  53. package/dist/components/GaugeCard/types.d.ts +85 -0
  54. package/dist/components/GaugeCard/types.d.ts.map +1 -0
  55. package/dist/components/GeoStatusMap/GeoStatusMap.d.ts +17 -0
  56. package/dist/components/GeoStatusMap/GeoStatusMap.d.ts.map +1 -0
  57. package/dist/components/GeoStatusMap/index.d.ts +9 -0
  58. package/dist/components/GeoStatusMap/index.d.ts.map +1 -0
  59. package/dist/components/GeoStatusMap/types.d.ts +117 -0
  60. package/dist/components/GeoStatusMap/types.d.ts.map +1 -0
  61. package/dist/components/HierarchicalDrillDown/HierarchicalDrillDown.d.ts +22 -0
  62. package/dist/components/HierarchicalDrillDown/HierarchicalDrillDown.d.ts.map +1 -0
  63. package/dist/components/HierarchicalDrillDown/index.d.ts +9 -0
  64. package/dist/components/HierarchicalDrillDown/index.d.ts.map +1 -0
  65. package/dist/components/HierarchicalDrillDown/types.d.ts +81 -0
  66. package/dist/components/HierarchicalDrillDown/types.d.ts.map +1 -0
  67. package/dist/components/HistoricalDataIndicator/HistoricalDataIndicator.d.ts +21 -0
  68. package/dist/components/HistoricalDataIndicator/HistoricalDataIndicator.d.ts.map +1 -0
  69. package/dist/components/HistoricalDataIndicator/index.d.ts +9 -0
  70. package/dist/components/HistoricalDataIndicator/index.d.ts.map +1 -0
  71. package/dist/components/HistoricalDataIndicator/types.d.ts +58 -0
  72. package/dist/components/HistoricalDataIndicator/types.d.ts.map +1 -0
  73. package/dist/components/InsightCard/InsightCard.d.ts +27 -0
  74. package/dist/components/InsightCard/InsightCard.d.ts.map +1 -0
  75. package/dist/components/InsightCard/index.d.ts +9 -0
  76. package/dist/components/InsightCard/index.d.ts.map +1 -0
  77. package/dist/components/InsightCard/types.d.ts +62 -0
  78. package/dist/components/InsightCard/types.d.ts.map +1 -0
  79. package/dist/components/NotificationCenter/NotificationCenter.d.ts +31 -0
  80. package/dist/components/NotificationCenter/NotificationCenter.d.ts.map +1 -0
  81. package/dist/components/NotificationCenter/index.d.ts +9 -0
  82. package/dist/components/NotificationCenter/index.d.ts.map +1 -0
  83. package/dist/components/NotificationCenter/types.d.ts +91 -0
  84. package/dist/components/NotificationCenter/types.d.ts.map +1 -0
  85. package/dist/components/OrgChart/OrgChart.d.ts +23 -0
  86. package/dist/components/OrgChart/OrgChart.d.ts.map +1 -0
  87. package/dist/components/OrgChart/index.d.ts +9 -0
  88. package/dist/components/OrgChart/index.d.ts.map +1 -0
  89. package/dist/components/OrgChart/types.d.ts +81 -0
  90. package/dist/components/OrgChart/types.d.ts.map +1 -0
  91. package/dist/components/PageTOC/PageTOC.d.ts +33 -0
  92. package/dist/components/PageTOC/PageTOC.d.ts.map +1 -0
  93. package/dist/components/PageTOC/index.d.ts +9 -0
  94. package/dist/components/PageTOC/index.d.ts.map +1 -0
  95. package/dist/components/PageTOC/types.d.ts +58 -0
  96. package/dist/components/PageTOC/types.d.ts.map +1 -0
  97. package/dist/components/StatusHero/StatusHero.d.ts +31 -0
  98. package/dist/components/StatusHero/StatusHero.d.ts.map +1 -0
  99. package/dist/components/StatusHero/index.d.ts +9 -0
  100. package/dist/components/StatusHero/index.d.ts.map +1 -0
  101. package/dist/components/StatusHero/types.d.ts +57 -0
  102. package/dist/components/StatusHero/types.d.ts.map +1 -0
  103. package/dist/components/SystemBanner/SystemBanner.d.ts +28 -0
  104. package/dist/components/SystemBanner/SystemBanner.d.ts.map +1 -0
  105. package/dist/components/SystemBanner/index.d.ts +9 -0
  106. package/dist/components/SystemBanner/index.d.ts.map +1 -0
  107. package/dist/components/SystemBanner/types.d.ts +58 -0
  108. package/dist/components/SystemBanner/types.d.ts.map +1 -0
  109. package/dist/components/TopRisksStrip/TopRisksStrip.d.ts +26 -0
  110. package/dist/components/TopRisksStrip/TopRisksStrip.d.ts.map +1 -0
  111. package/dist/components/TopRisksStrip/index.d.ts +9 -0
  112. package/dist/components/TopRisksStrip/index.d.ts.map +1 -0
  113. package/dist/components/TopRisksStrip/types.d.ts +61 -0
  114. package/dist/components/TopRisksStrip/types.d.ts.map +1 -0
  115. package/dist/components/templates/Auth/AuthTemplate.d.ts +28 -0
  116. package/dist/components/templates/Auth/AuthTemplate.d.ts.map +1 -0
  117. package/dist/components/templates/Auth/index.d.ts +3 -0
  118. package/dist/components/templates/Auth/index.d.ts.map +1 -0
  119. package/dist/components/templates/Auth/types.d.ts +67 -0
  120. package/dist/components/templates/Auth/types.d.ts.map +1 -0
  121. package/dist/components/templates/Catalog/CatalogTemplate.d.ts +19 -0
  122. package/dist/components/templates/Catalog/CatalogTemplate.d.ts.map +1 -0
  123. package/dist/components/templates/Catalog/index.d.ts +3 -0
  124. package/dist/components/templates/Catalog/index.d.ts.map +1 -0
  125. package/dist/components/templates/Catalog/types.d.ts +85 -0
  126. package/dist/components/templates/Catalog/types.d.ts.map +1 -0
  127. package/dist/components/templates/ConnectorWizard/ConnectorWizardTemplate.d.ts +83 -0
  128. package/dist/components/templates/ConnectorWizard/ConnectorWizardTemplate.d.ts.map +1 -0
  129. package/dist/components/templates/ConnectorWizard/index.d.ts +2 -0
  130. package/dist/components/templates/ConnectorWizard/index.d.ts.map +1 -0
  131. package/dist/components/templates/ErrorPage/ErrorPageTemplate.d.ts +53 -0
  132. package/dist/components/templates/ErrorPage/ErrorPageTemplate.d.ts.map +1 -0
  133. package/dist/components/templates/ErrorPage/index.d.ts +2 -0
  134. package/dist/components/templates/ErrorPage/index.d.ts.map +1 -0
  135. package/dist/components/templates/InsightsCenter/InsightsCenterTemplate.d.ts +64 -0
  136. package/dist/components/templates/InsightsCenter/InsightsCenterTemplate.d.ts.map +1 -0
  137. package/dist/components/templates/InsightsCenter/index.d.ts +2 -0
  138. package/dist/components/templates/InsightsCenter/index.d.ts.map +1 -0
  139. package/dist/components/templates/IntegrationDetail/IntegrationDetailTemplate.d.ts +60 -0
  140. package/dist/components/templates/IntegrationDetail/IntegrationDetailTemplate.d.ts.map +1 -0
  141. package/dist/components/templates/IntegrationDetail/index.d.ts +2 -0
  142. package/dist/components/templates/IntegrationDetail/index.d.ts.map +1 -0
  143. package/dist/components/templates/Onboarding/OnboardingTemplate.d.ts +63 -0
  144. package/dist/components/templates/Onboarding/OnboardingTemplate.d.ts.map +1 -0
  145. package/dist/components/templates/Onboarding/index.d.ts +2 -0
  146. package/dist/components/templates/Onboarding/index.d.ts.map +1 -0
  147. package/dist/components/templates/PlanHero/PlanHero.d.ts +20 -0
  148. package/dist/components/templates/PlanHero/PlanHero.d.ts.map +1 -0
  149. package/dist/components/templates/PlanHero/index.d.ts +3 -0
  150. package/dist/components/templates/PlanHero/index.d.ts.map +1 -0
  151. package/dist/components/templates/PlanHero/types.d.ts +69 -0
  152. package/dist/components/templates/PlanHero/types.d.ts.map +1 -0
  153. package/dist/components/templates/Report/ReportTemplate.d.ts +74 -0
  154. package/dist/components/templates/Report/ReportTemplate.d.ts.map +1 -0
  155. package/dist/components/templates/Report/index.d.ts +2 -0
  156. package/dist/components/templates/Report/index.d.ts.map +1 -0
  157. package/dist/components/templates/Wizard/WizardTemplate.d.ts +81 -0
  158. package/dist/components/templates/Wizard/WizardTemplate.d.ts.map +1 -0
  159. package/dist/components/templates/Wizard/index.d.ts +2 -0
  160. package/dist/components/templates/Wizard/index.d.ts.map +1 -0
  161. package/dist/components/templates/index.d.ts +10 -0
  162. package/dist/components/templates/index.d.ts.map +1 -1
  163. package/dist/essentials.js +1 -1
  164. package/dist/index.d.ts +37 -0
  165. package/dist/index.d.ts.map +1 -1
  166. package/dist/index.js +49113 -41408
  167. package/dist/trinity.css +1 -1
  168. package/package.json +11 -4
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @fileoverview GeoStatusMap — geographic map with status overlays at locations.
3
+ *
4
+ * Projection-agnostic — the consumer supplies the base map SVG (as ReactNode)
5
+ * and a projection function. The component handles markers, severity coloring,
6
+ * tooltips, legend, and click interactions. This keeps the component bundle
7
+ * small (no baked-in TopoJSON) and lets each product pick its own region.
8
+ *
9
+ * @module components/GeoStatusMap
10
+ */
11
+ import * as React from 'react';
12
+ import type { GeoStatusMapProps } from './types';
13
+ export declare const GeoStatusMap: <TMeta>(props: GeoStatusMapProps<TMeta> & {
14
+ ref?: React.Ref<HTMLDivElement>;
15
+ }) => React.ReactElement;
16
+ export default GeoStatusMap;
17
+ //# sourceMappingURL=GeoStatusMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GeoStatusMap.d.ts","sourceRoot":"","sources":["../../../src/components/GeoStatusMap/GeoStatusMap.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAW/B,OAAO,KAAK,EACV,iBAAiB,EAIlB,MAAM,SAAS,CAAC;AAoIjB,eAAO,MAAM,YAAY,EA4NnB,CAAC,KAAK,EACV,KAAK,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;CAAE,KAClE,KAAK,CAAC,YAAY,CAAC;AAExB,eAAe,YAAY,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @internal
3
+ * GeoStatusMap barrel.
4
+ *
5
+ * PUBLIC API: Import from '@trinityui/design-system' instead.
6
+ */
7
+ export { GeoStatusMap, default as GeoStatusMapDefault } from './GeoStatusMap';
8
+ export type { GeoStatusMapProps, GeoLocation, GeoSeverity, GeoMarkerShape, } from './types';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/GeoStatusMap/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE9E,YAAY,EACV,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,cAAc,GACf,MAAM,SAAS,CAAC"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * @fileoverview Types for GeoStatusMap — geographic map with status overlays
3
+ * at locations.
4
+ *
5
+ * The component is projection-agnostic — the consumer supplies the base map
6
+ * SVG (as ReactNode) and a projection function that turns lat/lng into SVG
7
+ * (x, y). This keeps the bundle small (no baked-in TopoJSON) and lets each
8
+ * product pick the region/projection it needs.
9
+ */
10
+ import type { ReactNode } from 'react';
11
+ import type { SxProps, Theme } from '@mui/material';
12
+ /**
13
+ * Severity drives marker color.
14
+ *
15
+ * Maps to `theme.palette.<severity>.main`:
16
+ * - `success` — green (on track / healthy)
17
+ * - `warning` — amber (at risk / degraded)
18
+ * - `error` — red (down / critical)
19
+ * - `info` — blue (informational)
20
+ * - `neutral` — muted (pending / inactive)
21
+ */
22
+ export type GeoSeverity = 'success' | 'warning' | 'error' | 'info' | 'neutral';
23
+ /**
24
+ * A single point on the map.
25
+ *
26
+ * Supply EITHER:
27
+ * - `lng` + `lat` — geographic coordinates (will be passed through `project()`)
28
+ * - `x` + `y` — pre-projected SVG coordinates (skip projection — useful when
29
+ * the consumer already projected via d3-geo or similar)
30
+ *
31
+ * The component picks `x`/`y` if both pairs are supplied.
32
+ */
33
+ export interface GeoLocation<TMeta = unknown> {
34
+ /** Stable id. */
35
+ id: string;
36
+ /** Display label (tooltip + legend). */
37
+ label: ReactNode;
38
+ /** Longitude (degrees). */
39
+ lng?: number;
40
+ /** Latitude (degrees). */
41
+ lat?: number;
42
+ /** Pre-projected SVG x. */
43
+ x?: number;
44
+ /** Pre-projected SVG y. */
45
+ y?: number;
46
+ /** Severity drives marker color. Default `info`. */
47
+ severity?: GeoSeverity;
48
+ /** Numeric value for clustering / sizing. */
49
+ value?: number;
50
+ /** Tooltip secondary text. */
51
+ description?: ReactNode;
52
+ /** Consumer-defined payload — flows into selection callback. */
53
+ meta?: TMeta;
54
+ }
55
+ /**
56
+ * Marker shape.
57
+ *
58
+ * - `dot` — solid filled circle (default)
59
+ * - `ring` — outlined circle (better for high-density displays)
60
+ * - `pulse` — solid circle with an animated outer ring (for "live" markers)
61
+ */
62
+ export type GeoMarkerShape = 'dot' | 'ring' | 'pulse';
63
+ /**
64
+ * Props for GeoStatusMap.
65
+ */
66
+ export interface GeoStatusMapProps<TMeta = unknown> {
67
+ /**
68
+ * Base map SVG content (paths, etc). Rendered inside the component's
69
+ * `<svg>` with the `viewBox` you configure.
70
+ *
71
+ * Examples:
72
+ * - Inlined world TopoJSON paths
73
+ * - A static SVG world map you imported as a string
74
+ * - For a US map: pre-rendered state outlines
75
+ *
76
+ * The component does NOT supply baked-in topology — the team picks the
77
+ * region. See the stories for examples.
78
+ */
79
+ baseMap: ReactNode;
80
+ /** SVG viewBox. Should match the projection's extent. */
81
+ viewBox: string;
82
+ /** Locations to overlay as markers. */
83
+ locations: ReadonlyArray<GeoLocation<TMeta>>;
84
+ /**
85
+ * Optional projection function. Required when a location has `lng`/`lat`
86
+ * but no `x`/`y`. Receives `[lng, lat]` and returns `[x, y]` in SVG units.
87
+ * If omitted, all locations must supply pre-projected `x`/`y`.
88
+ */
89
+ project?: (coords: [number, number]) => [number, number];
90
+ /** Marker shape. Default `dot`. */
91
+ markerShape?: GeoMarkerShape;
92
+ /** Marker radius. Default 6. */
93
+ markerRadius?: number;
94
+ /** Currently selected location id (shows a highlight ring). */
95
+ selectedId?: string;
96
+ /** Called when a marker is clicked. */
97
+ onSelect?: (location: GeoLocation<TMeta>) => void;
98
+ /** Custom tooltip renderer. Default shows label + description + value. */
99
+ renderTooltip?: (location: GeoLocation<TMeta>) => ReactNode;
100
+ /** Show severity legend. Default true. */
101
+ showLegend?: boolean;
102
+ /** Legend label override per severity. */
103
+ legendLabels?: Partial<Record<GeoSeverity, ReactNode>>;
104
+ /** Fill color for the base map paths. Default semantic background.tertiary. */
105
+ baseMapFill?: string;
106
+ /** Stroke color for the base map paths. Default semantic border.subtle. */
107
+ baseMapStroke?: string;
108
+ /** Background color of the canvas. Default semantic background.secondary. */
109
+ canvasBackground?: string;
110
+ /** Maximum visible height. Default 480. */
111
+ maxHeight?: number | string;
112
+ /** sx for the root container. */
113
+ sx?: SxProps<Theme>;
114
+ /** Accessible label override. Default "Geographic status map". */
115
+ ariaLabel?: string;
116
+ }
117
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/GeoStatusMap/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEpD;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AAE/E;;;;;;;;;GASG;AACH,MAAM,WAAW,WAAW,CAAC,KAAK,GAAG,OAAO;IAC1C,iBAAiB;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,wCAAwC;IACxC,KAAK,EAAE,SAAS,CAAC;IACjB,2BAA2B;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,0BAA0B;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,gEAAgE;IAChE,IAAI,CAAC,EAAE,KAAK,CAAC;CACd;AAED;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,KAAK,GAAG,OAAO;IAChD;;;;;;;;;;;OAWG;IACH,OAAO,EAAE,SAAS,CAAC;IACnB,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,SAAS,EAAE,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7C;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzD,mCAAmC;IACnC,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;IAClD,0EAA0E;IAC1E,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC;IAC5D,0CAA0C;IAC1C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;IACvD,+EAA+E;IAC/E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2EAA2E;IAC3E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,iCAAiC;IACjC,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @fileoverview HierarchicalDrillDown — Finder-style column view for navigating
3
+ * a tree of items.
4
+ *
5
+ * Layout: N side-by-side lanes, each scrollable independently. Clicking an
6
+ * item in lane K updates `selectedPath[K]` and re-renders the K+1 lane with
7
+ * that item's children. The right-most lane can optionally render a custom
8
+ * detail pane (via `renderDetail`) for the deepest selected node.
9
+ *
10
+ * Keyboard support: each row is a real `<button>`, so Tab + Enter/Space work.
11
+ * Arrow keys are intentionally NOT bound — they'd conflict with screen reader
12
+ * navigation patterns. Use focus + Enter for selection.
13
+ *
14
+ * @module components/HierarchicalDrillDown
15
+ */
16
+ import * as React from 'react';
17
+ import type { HierarchicalDrillDownProps } from './types';
18
+ export declare const HierarchicalDrillDown: <TMeta>(props: HierarchicalDrillDownProps<TMeta> & {
19
+ ref?: React.Ref<HTMLDivElement>;
20
+ }) => React.ReactElement;
21
+ export default HierarchicalDrillDown;
22
+ //# sourceMappingURL=HierarchicalDrillDown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HierarchicalDrillDown.d.ts","sourceRoot":"","sources":["../../../src/components/HierarchicalDrillDown/HierarchicalDrillDown.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAW/B,OAAO,KAAK,EACV,0BAA0B,EAE3B,MAAM,SAAS,CAAC;AA2NjB,eAAO,MAAM,qBAAqB,EA8I7B,CAAC,KAAK,EACT,KAAK,EAAE,0BAA0B,CAAC,KAAK,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;CAAE,KAC3E,KAAK,CAAC,YAAY,CAAC;AAExB,eAAe,qBAAqB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @internal
3
+ * HierarchicalDrillDown barrel.
4
+ *
5
+ * PUBLIC API: Import from '@trinityui/design-system' instead.
6
+ */
7
+ export { HierarchicalDrillDown, default as HierarchicalDrillDownDefault, } from './HierarchicalDrillDown';
8
+ export type { HierarchicalDrillDownProps, DrillDownNode, } from './types';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/HierarchicalDrillDown/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,qBAAqB,EACrB,OAAO,IAAI,4BAA4B,GACxC,MAAM,yBAAyB,CAAC;AAEjC,YAAY,EACV,0BAA0B,EAC1B,aAAa,GACd,MAAM,SAAS,CAAC"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * @fileoverview Types for HierarchicalDrillDown — Finder-style 3-lane column
3
+ * view for navigating a tree of items.
4
+ */
5
+ import type { ReactNode } from 'react';
6
+ import type { SxProps, Theme } from '@mui/material';
7
+ /**
8
+ * A single node in the hierarchy.
9
+ *
10
+ * The component is data-shape agnostic — supply your own type via the `T`
11
+ * generic on `HierarchicalDrillDownProps`. The required surface is just the
12
+ * `id`, `label`, optional `children` (subtree), optional `icon`, optional
13
+ * `meta` (right-aligned secondary text or chip), optional `severity` (drives
14
+ * the dot color when shown), and optional `disabled`.
15
+ *
16
+ * Lazy-loading: when `children` is `undefined` AND `hasChildren` is `true`,
17
+ * the component renders a chevron and calls `onLoadChildren(node)` when the
18
+ * lane focuses on this node. The consumer is expected to return a Promise
19
+ * that resolves to the children, or to update the tree state externally and
20
+ * re-render.
21
+ */
22
+ export interface DrillDownNode<TMeta = unknown> {
23
+ /** Stable id for React keys + lane state. */
24
+ id: string;
25
+ /** Display label. */
26
+ label: ReactNode;
27
+ /** Optional secondary text or chip rendered right-aligned. */
28
+ meta?: ReactNode;
29
+ /** Optional leading icon. */
30
+ icon?: ReactNode;
31
+ /** Optional severity dot (uses theme palette colors). */
32
+ severity?: 'success' | 'warning' | 'error' | 'info' | 'neutral';
33
+ /** Disabled row — not clickable, dimmed. */
34
+ disabled?: boolean;
35
+ /** Children. If absent, node is a leaf (or lazy — see `hasChildren`). */
36
+ children?: ReadonlyArray<DrillDownNode<TMeta>>;
37
+ /**
38
+ * When true AND children is undefined, the row shows a chevron and the
39
+ * lane requests children via `onLoadChildren` when this node is focused.
40
+ */
41
+ hasChildren?: boolean;
42
+ /** Optional consumer-defined payload — flows into row render and selection callback. */
43
+ meta_data?: TMeta;
44
+ }
45
+ /**
46
+ * Props for HierarchicalDrillDown.
47
+ */
48
+ export interface HierarchicalDrillDownProps<TMeta = unknown> {
49
+ /** Root nodes — top level of the tree. */
50
+ nodes: ReadonlyArray<DrillDownNode<TMeta>>;
51
+ /**
52
+ * Current navigation path — array of node ids from root to the deepest
53
+ * selected level. The lane structure is:
54
+ * [0] = root listing
55
+ * [1] = children of selectedPath[0]
56
+ * [2] = children of selectedPath[1]
57
+ * etc.
58
+ */
59
+ selectedPath?: ReadonlyArray<string>;
60
+ /** Called when the user clicks a node — receives the full path (including the new node). */
61
+ onSelect?: (path: ReadonlyArray<string>, node: DrillDownNode<TMeta>) => void;
62
+ /** Called when a node with `hasChildren: true` is focused but its children aren't loaded yet. */
63
+ onLoadChildren?: (node: DrillDownNode<TMeta>) => void;
64
+ /** Render the right pane (terminal level) with custom content for the deepest selected node. */
65
+ renderDetail?: (node: DrillDownNode<TMeta>) => ReactNode;
66
+ /** Number of lanes to render. Default 3 (Finder column view). */
67
+ laneCount?: 2 | 3 | 4;
68
+ /** Lane width. Default 240. */
69
+ laneWidth?: number;
70
+ /** Detail lane width override (when `renderDetail` is used). Default 320. */
71
+ detailWidth?: number;
72
+ /** Custom empty-state per lane when there are no items. */
73
+ emptyState?: ReactNode;
74
+ /** Lane header — typically a search input or label. */
75
+ laneHeader?: (level: number) => ReactNode;
76
+ /** sx for the root container. */
77
+ sx?: SxProps<Theme>;
78
+ /** Accessible label override. Default "Hierarchical navigation". */
79
+ ariaLabel?: string;
80
+ }
81
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/HierarchicalDrillDown/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEpD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,aAAa,CAAC,KAAK,GAAG,OAAO;IAC5C,6CAA6C;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,qBAAqB;IACrB,KAAK,EAAE,SAAS,CAAC;IACjB,8DAA8D;IAC9D,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,6BAA6B;IAC7B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IAChE,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/C;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wFAAwF;IACxF,SAAS,CAAC,EAAE,KAAK,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B,CAAC,KAAK,GAAG,OAAO;IACzD,0CAA0C;IAC1C,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3C;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACrC,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;IAC7E,iGAAiG;IACjG,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;IACtD,gGAAgG;IAChG,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC;IACzD,iEAAiE;IACjE,SAAS,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACtB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,uDAAuD;IACvD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;IAC1C,iCAAiC;IACjC,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @fileoverview HistoricalDataIndicator — a labeled trend delta with explicit period context.
3
+ *
4
+ * Wraps `DifferentialIndicator` (the existing primitive) with a "vs &lt;period&gt;"
5
+ * label so dashboards always make the comparison window unambiguous.
6
+ *
7
+ * @module components/HistoricalDataIndicator
8
+ * @example
9
+ * ```tsx
10
+ * import { HistoricalDataIndicator } from '@trinityui/design-system';
11
+ *
12
+ * <HistoricalDataIndicator value={12.4} period="prior-week" />
13
+ * <HistoricalDataIndicator value={-2.1} period="prior-month" comparison="320 → 313" />
14
+ * <HistoricalDataIndicator value={5.3} invertPolarity periodLabel="vs target" />
15
+ * ```
16
+ */
17
+ import * as React from 'react';
18
+ import type { HistoricalDataIndicatorProps } from './types';
19
+ export declare const HistoricalDataIndicator: React.ForwardRefExoticComponent<HistoricalDataIndicatorProps & React.RefAttributes<HTMLDivElement>>;
20
+ export default HistoricalDataIndicator;
21
+ //# sourceMappingURL=HistoricalDataIndicator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HistoricalDataIndicator.d.ts","sourceRoot":"","sources":["../../../src/components/HistoricalDataIndicator/HistoricalDataIndicator.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,OAAO,KAAK,EAAE,4BAA4B,EAAoB,MAAM,SAAS,CAAC;AAW9E,eAAO,MAAM,uBAAuB,qGAgGlC,CAAC;AAEH,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @internal
3
+ * HistoricalDataIndicator barrel.
4
+ *
5
+ * PUBLIC API: Import from '@trinityui/design-system' instead.
6
+ */
7
+ export { HistoricalDataIndicator, default as HistoricalDataIndicatorDefault, } from './HistoricalDataIndicator';
8
+ export type { HistoricalDataIndicatorProps, HistoricalPeriod, HistoricalDensity, } from './types';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/HistoricalDataIndicator/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,uBAAuB,EACvB,OAAO,IAAI,8BAA8B,GAC1C,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EACV,4BAA4B,EAC5B,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * @fileoverview Types for HistoricalDataIndicator — a labeled delta with period context.
3
+ */
4
+ import type { SxProps, Theme } from '@mui/material';
5
+ import type { StatusSize } from '../StatusIndicator';
6
+ /**
7
+ * Pre-set period labels — covers the most common comparison windows.
8
+ */
9
+ export type HistoricalPeriod = 'prior-day' | 'prior-week' | 'prior-month' | 'prior-quarter' | 'prior-year' | 'prior-period';
10
+ /**
11
+ * Display density.
12
+ */
13
+ export type HistoricalDensity = 'compact' | 'comfortable';
14
+ /**
15
+ * Props for HistoricalDataIndicator.
16
+ *
17
+ * Combines `DifferentialIndicator` (delta + arrow) with a "vs &lt;period&gt;" label
18
+ * to make the comparison window explicit. Use this when a raw delta would be
19
+ * ambiguous about its timeframe.
20
+ */
21
+ export interface HistoricalDataIndicatorProps {
22
+ /** Numeric delta (positive or negative). 0 renders the "flat" state. */
23
+ value: number;
24
+ /** Render the value as a percentage (appends "%"). Default `true`. */
25
+ percentage?: boolean;
26
+ /** Render the value as currency. Mutually exclusive with `percentage`. */
27
+ currency?: string;
28
+ /** Number of decimal places shown. Default `1`. */
29
+ decimals?: number;
30
+ /**
31
+ * Pre-set comparison period label. Use `periodLabel` instead for custom text.
32
+ */
33
+ period?: HistoricalPeriod;
34
+ /**
35
+ * Custom comparison label — overrides `period`. Useful for "vs Q3 baseline",
36
+ * "vs target", etc.
37
+ */
38
+ periodLabel?: string;
39
+ /** Optional raw values shown after the period label (e.g. "1,284 → 1,310"). */
40
+ comparison?: string;
41
+ /** Show the trend arrow before the delta. Default `true`. */
42
+ showIcon?: boolean;
43
+ /** Indicator size. Default `medium`. */
44
+ size?: StatusSize;
45
+ /** Display density — `compact` hides the period label on small screens. */
46
+ density?: HistoricalDensity;
47
+ /**
48
+ * Invert the semantic meaning of up/down. Set `true` when an *increase* is
49
+ * negative (e.g. error rate, churn) so the arrow still uses the correct color.
50
+ * Default `false`.
51
+ */
52
+ invertPolarity?: boolean;
53
+ /** sx overrides for the root container. */
54
+ sx?: SxProps<Theme>;
55
+ /** Optional explicit aria-label. Falls back to a sensible default. */
56
+ ariaLabel?: string;
57
+ }
58
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/HistoricalDataIndicator/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,WAAW,GACX,YAAY,GACZ,aAAa,GACb,eAAe,GACf,YAAY,GACZ,cAAc,CAAC;AAEnB;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE1D;;;;;;GAMG;AACH,MAAM,WAAW,4BAA4B;IAC3C,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wCAAwC;IACxC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2CAA2C;IAC3C,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @fileoverview InsightCard — severity-tinted tile that surfaces a single risk, anomaly, or recommendation.
3
+ *
4
+ * Composes existing primitives — MUI Card, `IconIndicator` from StatusIndicator,
5
+ * and semantic tokens — so visual weight matches the rest of the system. Severity
6
+ * colors come from the active MUI theme so light/dark mode + Trinity overrides
7
+ * track automatically.
8
+ *
9
+ * @module components/InsightCard
10
+ * @example
11
+ * ```tsx
12
+ * import { InsightCard } from '@trinityui/design-system';
13
+ *
14
+ * <InsightCard
15
+ * severity="high"
16
+ * eyebrow="Compliance · Q3"
17
+ * title="3 sites missed the data-freshness SLA"
18
+ * description="Mean latency drifted 18% above target this week."
19
+ * actions={<Button size="small">View affected sites</Button>}
20
+ * />
21
+ * ```
22
+ */
23
+ import * as React from 'react';
24
+ import type { InsightCardProps } from './types';
25
+ export declare const InsightCard: React.ForwardRefExoticComponent<InsightCardProps & React.RefAttributes<HTMLDivElement>>;
26
+ export default InsightCard;
27
+ //# sourceMappingURL=InsightCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InsightCard.d.ts","sourceRoot":"","sources":["../../../src/components/InsightCard/InsightCard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAkB/B,OAAO,KAAK,EAAE,gBAAgB,EAAmB,MAAM,SAAS,CAAC;AA+BjE,eAAO,MAAM,WAAW,yFAuKvB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @internal
3
+ * InsightCard barrel.
4
+ *
5
+ * PUBLIC API: Import from '@trinityui/design-system' instead.
6
+ */
7
+ export { InsightCard, default as InsightCardDefault } from './InsightCard';
8
+ export type { InsightCardProps, InsightSeverity, InsightVariant, } from './types';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/InsightCard/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE3E,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC"}
@@ -0,0 +1,62 @@
1
+ /**
2
+ * @fileoverview Types for InsightCard — severity-tinted tile that surfaces a single risk, anomaly, or recommendation.
3
+ */
4
+ import type { ReactNode } from 'react';
5
+ import type { SxProps, Theme } from '@mui/material';
6
+ /**
7
+ * Severity level. Maps to MUI palette tokens at render time so dark mode and
8
+ * Trinity theme overrides flow through.
9
+ *
10
+ * - `critical` — hard escalation, draws strongest visual weight
11
+ * - `high` — needs attention this period
12
+ * - `medium` — keep an eye on it
13
+ * - `low` — positive / nominal observation
14
+ * - `info` — neutral informational insight
15
+ */
16
+ export type InsightSeverity = 'critical' | 'high' | 'medium' | 'low' | 'info';
17
+ /**
18
+ * Visual emphasis. `tinted` (default) draws a subtle severity-colored
19
+ * background; `outlined` swaps to a colored left rail + neutral surface for
20
+ * dense grids where multiple tinted cards would overwhelm.
21
+ */
22
+ export type InsightVariant = 'tinted' | 'outlined';
23
+ /**
24
+ * Props for InsightCard.
25
+ *
26
+ * Composes MUI Card with the existing `IconIndicator` primitive from
27
+ * StatusIndicator — no parallel severity rendering paths.
28
+ */
29
+ export interface InsightCardProps {
30
+ /** Risk / severity level. Drives icon, color, and accent. */
31
+ severity: InsightSeverity;
32
+ /** Short title — should fit on 1–2 lines. */
33
+ title: string;
34
+ /** Body text — 1–3 sentence summary of the insight. */
35
+ description?: string;
36
+ /**
37
+ * Optional eyebrow above the title (e.g. "Compliance · Q3").
38
+ *
39
+ * Accepts a string or any ReactNode. Pass JSX (e.g. an `AILabel` + text)
40
+ * when the eyebrow needs to mark the insight as AI-generated.
41
+ */
42
+ eyebrow?: ReactNode;
43
+ /** Optional metric / numeric value rendered prominently above the title. */
44
+ value?: string;
45
+ /** Optional `HistoricalDataIndicator` or other delta component shown beside the value. */
46
+ delta?: ReactNode;
47
+ /** Action slot — render `Button`s or links here. */
48
+ actions?: ReactNode;
49
+ /** Visual variant. Default `tinted`. */
50
+ variant?: InsightVariant;
51
+ /** When true, swaps card to a clickable surface with hover/focus affordance. */
52
+ interactive?: boolean;
53
+ /** Called when the card itself is clicked (requires `interactive`). */
54
+ onClick?: () => void;
55
+ /** Called when the dismiss control is clicked. If omitted, no dismiss button is shown. */
56
+ onDismiss?: () => void;
57
+ /** sx overrides for the root Card. */
58
+ sx?: SxProps<Theme>;
59
+ /** Accessible label override for the card root. */
60
+ ariaLabel?: string;
61
+ }
62
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/InsightCard/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEpD;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;AAE9E;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6DAA6D;IAC7D,QAAQ,EAAE,eAAe,CAAC;IAC1B,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0FAA0F;IAC1F,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,oDAAoD;IACpD,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,wCAAwC;IACxC,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,gFAAgF;IAChF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,0FAA0F;IAC1F,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,sCAAsC;IACtC,EAAE,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACpB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * @fileoverview NotificationCenter — bell-button + popover surfacing recent
3
+ * notifications with read/unread + per-item actions.
4
+ *
5
+ * Visual pattern: a 40×40 IconButton with notification badge in app chrome;
6
+ * clicking opens a popover anchored bottom-right. The popover contains a
7
+ * header ("Notifications" + "Mark all as read"), a scrollable list of
8
+ * NotificationItem rows, and an optional footer (e.g. "View all").
9
+ *
10
+ * Severity colors come from `theme.palette.<severity>.main` so light/dark mode
11
+ * and Trinity theme overrides flow through correctly.
12
+ *
13
+ * @module components/NotificationCenter
14
+ * @example
15
+ * ```tsx
16
+ * import { NotificationCenter } from '@trinityui/design-system';
17
+ *
18
+ * <NotificationCenter
19
+ * notifications={items}
20
+ * onMarkAsRead={(id) => acknowledge(id)}
21
+ * onMarkAllRead={() => acknowledgeAll()}
22
+ * footerAction={<Button size="small">View all</Button>}
23
+ * />
24
+ * ```
25
+ */
26
+ import * as React from 'react';
27
+ import type { NotificationCenterProps } from './types';
28
+ export declare const NotificationCenter: React.ForwardRefExoticComponent<NotificationCenterProps & React.RefAttributes<HTMLButtonElement>>;
29
+ export default NotificationCenter;
30
+ export declare function NotificationCenterLoading(): React.ReactElement;
31
+ //# sourceMappingURL=NotificationCenter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationCenter.d.ts","sourceRoot":"","sources":["../../../src/components/NotificationCenter/NotificationCenter.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA4B/B,OAAO,KAAK,EACV,uBAAuB,EAGxB,MAAM,SAAS,CAAC;AAkLjB,eAAO,MAAM,kBAAkB,mGA6L7B,CAAC;AAEH,eAAe,kBAAkB,CAAC;AAIlC,wBAAgB,yBAAyB,IAAI,KAAK,CAAC,YAAY,CAM9D"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @internal
3
+ * NotificationCenter barrel.
4
+ *
5
+ * PUBLIC API: Import from '@trinityui/design-system' instead.
6
+ */
7
+ export { NotificationCenter, NotificationCenterLoading, default as NotificationCenterDefault, } from './NotificationCenter';
8
+ export type { NotificationCenterProps, NotificationItem, NotificationSeverity, } from './types';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/NotificationCenter/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,OAAO,IAAI,yBAAyB,GACrC,MAAM,sBAAsB,CAAC;AAE9B,YAAY,EACV,uBAAuB,EACvB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,SAAS,CAAC"}