@middag-io/react 0.2.1 → 0.3.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 (265) hide show
  1. package/dist-lib/app/ContractPage.d.ts +17 -0
  2. package/dist-lib/app/ContractPage.d.ts.map +1 -0
  3. package/dist-lib/app/bootstrap.d.ts +6 -0
  4. package/dist-lib/app/bootstrap.d.ts.map +1 -0
  5. package/dist-lib/app/providers/auth.d.ts +41 -0
  6. package/dist-lib/app/providers/auth.d.ts.map +1 -0
  7. package/dist-lib/app/providers/flash.d.ts +14 -0
  8. package/dist-lib/app/providers/flash.d.ts.map +1 -0
  9. package/dist-lib/app/providers/i18n.d.ts +40 -0
  10. package/dist-lib/app/providers/i18n.d.ts.map +1 -0
  11. package/dist-lib/app/providers/progress.d.ts +13 -0
  12. package/dist-lib/app/providers/progress.d.ts.map +1 -0
  13. package/dist-lib/app/providers/scope.d.ts +32 -0
  14. package/dist-lib/app/providers/scope.d.ts.map +1 -0
  15. package/dist-lib/app/register-defaults.d.ts +6 -0
  16. package/dist-lib/app/register-defaults.d.ts.map +1 -0
  17. package/dist-lib/app/registries.d.ts +33 -0
  18. package/dist-lib/app/registries.d.ts.map +1 -0
  19. package/dist-lib/assets/lottie/index.d.ts +36 -0
  20. package/dist-lib/assets/lottie/index.d.ts.map +1 -0
  21. package/dist-lib/base/blocks/ActionGridBlock.d.ts +14 -0
  22. package/dist-lib/base/blocks/ActionGridBlock.d.ts.map +1 -0
  23. package/dist-lib/base/blocks/ActivityTimelineBlock.d.ts +13 -0
  24. package/dist-lib/base/blocks/ActivityTimelineBlock.d.ts.map +1 -0
  25. package/dist-lib/base/blocks/CardGridBlock.d.ts +18 -0
  26. package/dist-lib/base/blocks/CardGridBlock.d.ts.map +1 -0
  27. package/dist-lib/base/blocks/ConditionTreeBlock.d.ts +13 -0
  28. package/dist-lib/base/blocks/ConditionTreeBlock.d.ts.map +1 -0
  29. package/dist-lib/base/blocks/DenseTableBlock.d.ts +13 -0
  30. package/dist-lib/base/blocks/DenseTableBlock.d.ts.map +1 -0
  31. package/dist-lib/base/blocks/DetailPanelBlock.d.ts +13 -0
  32. package/dist-lib/base/blocks/DetailPanelBlock.d.ts.map +1 -0
  33. package/dist-lib/base/blocks/EmptyStateBlock.d.ts +12 -0
  34. package/dist-lib/base/blocks/EmptyStateBlock.d.ts.map +1 -0
  35. package/dist-lib/base/blocks/FlowEditorBlock.d.ts +15 -0
  36. package/dist-lib/base/blocks/FlowEditorBlock.d.ts.map +1 -0
  37. package/dist-lib/base/blocks/FormBuilderBlock.d.ts +17 -0
  38. package/dist-lib/base/blocks/FormBuilderBlock.d.ts.map +1 -0
  39. package/dist-lib/base/blocks/FormPanelBlock.d.ts +13 -0
  40. package/dist-lib/base/blocks/FormPanelBlock.d.ts.map +1 -0
  41. package/dist-lib/base/blocks/LinkListBlock.d.ts +12 -0
  42. package/dist-lib/base/blocks/LinkListBlock.d.ts.map +1 -0
  43. package/dist-lib/base/blocks/MarkdownPanelBlock.d.ts +13 -0
  44. package/dist-lib/base/blocks/MarkdownPanelBlock.d.ts.map +1 -0
  45. package/dist-lib/base/blocks/MetricCardBlock.d.ts +10 -0
  46. package/dist-lib/base/blocks/MetricCardBlock.d.ts.map +1 -0
  47. package/dist-lib/base/blocks/SentenceBuilderBlock.d.ts +15 -0
  48. package/dist-lib/base/blocks/SentenceBuilderBlock.d.ts.map +1 -0
  49. package/dist-lib/base/blocks/StatusStripBlock.d.ts +12 -0
  50. package/dist-lib/base/blocks/StatusStripBlock.d.ts.map +1 -0
  51. package/dist-lib/base/blocks/TabbedPanelBlock.d.ts +15 -0
  52. package/dist-lib/base/blocks/TabbedPanelBlock.d.ts.map +1 -0
  53. package/dist-lib/base/form/FormField.d.ts +38 -0
  54. package/dist-lib/base/form/FormField.d.ts.map +1 -0
  55. package/dist-lib/base/form/fields/CheckboxField.d.ts +19 -0
  56. package/dist-lib/base/form/fields/CheckboxField.d.ts.map +1 -0
  57. package/dist-lib/base/form/fields/EntityPickerField.d.ts +24 -0
  58. package/dist-lib/base/form/fields/EntityPickerField.d.ts.map +1 -0
  59. package/dist-lib/base/form/fields/MultiSelectField.d.ts +24 -0
  60. package/dist-lib/base/form/fields/MultiSelectField.d.ts.map +1 -0
  61. package/dist-lib/base/form/fields/NumberField.d.ts +21 -0
  62. package/dist-lib/base/form/fields/NumberField.d.ts.map +1 -0
  63. package/dist-lib/base/form/fields/PasswordField.d.ts +19 -0
  64. package/dist-lib/base/form/fields/PasswordField.d.ts.map +1 -0
  65. package/dist-lib/base/form/fields/RadioField.d.ts +23 -0
  66. package/dist-lib/base/form/fields/RadioField.d.ts.map +1 -0
  67. package/dist-lib/base/form/fields/SelectField.d.ts +24 -0
  68. package/dist-lib/base/form/fields/SelectField.d.ts.map +1 -0
  69. package/dist-lib/base/form/fields/StaticField.d.ts +12 -0
  70. package/dist-lib/base/form/fields/StaticField.d.ts.map +1 -0
  71. package/dist-lib/base/form/fields/SwitchField.d.ts +19 -0
  72. package/dist-lib/base/form/fields/SwitchField.d.ts.map +1 -0
  73. package/dist-lib/base/form/fields/TextField.d.ts +21 -0
  74. package/dist-lib/base/form/fields/TextField.d.ts.map +1 -0
  75. package/dist-lib/base/form/fields/TextareaField.d.ts +21 -0
  76. package/dist-lib/base/form/fields/TextareaField.d.ts.map +1 -0
  77. package/dist-lib/base/hooks/useIsDark.d.ts +12 -0
  78. package/dist-lib/base/hooks/useIsDark.d.ts.map +1 -0
  79. package/dist-lib/base/hooks/usePolling.d.ts +11 -0
  80. package/dist-lib/base/hooks/usePolling.d.ts.map +1 -0
  81. package/dist-lib/base/hooks/useToast.d.ts +17 -0
  82. package/dist-lib/base/hooks/useToast.d.ts.map +1 -0
  83. package/dist-lib/base/layout/DashboardLayout.d.ts +11 -0
  84. package/dist-lib/base/layout/DashboardLayout.d.ts.map +1 -0
  85. package/dist-lib/base/layout/MasterDetailLayout.d.ts +8 -0
  86. package/dist-lib/base/layout/MasterDetailLayout.d.ts.map +1 -0
  87. package/dist-lib/base/layout/SplitLayout.d.ts +8 -0
  88. package/dist-lib/base/layout/SplitLayout.d.ts.map +1 -0
  89. package/dist-lib/base/layout/StackLayout.d.ts +12 -0
  90. package/dist-lib/base/layout/StackLayout.d.ts.map +1 -0
  91. package/dist-lib/base/layout/WizardLayout.d.ts +12 -0
  92. package/dist-lib/base/layout/WizardLayout.d.ts.map +1 -0
  93. package/dist-lib/base/partials/ActionBar/index.d.ts +28 -0
  94. package/dist-lib/base/partials/ActionBar/index.d.ts.map +1 -0
  95. package/dist-lib/base/partials/ConfirmationDialog/index.d.ts +26 -0
  96. package/dist-lib/base/partials/ConfirmationDialog/index.d.ts.map +1 -0
  97. package/dist-lib/base/partials/DataTable/cell-renderers.d.ts +16 -0
  98. package/dist-lib/base/partials/DataTable/cell-renderers.d.ts.map +1 -0
  99. package/dist-lib/base/partials/DataTable/index.d.ts +12 -0
  100. package/dist-lib/base/partials/DataTable/index.d.ts.map +1 -0
  101. package/dist-lib/base/partials/DataTable/types.d.ts +129 -0
  102. package/dist-lib/base/partials/DataTable/types.d.ts.map +1 -0
  103. package/dist-lib/base/partials/DetailSection/index.d.ts +37 -0
  104. package/dist-lib/base/partials/DetailSection/index.d.ts.map +1 -0
  105. package/dist-lib/base/partials/EmptyPlaceholder/index.d.ts +29 -0
  106. package/dist-lib/base/partials/EmptyPlaceholder/index.d.ts.map +1 -0
  107. package/dist-lib/base/partials/FilterBar/index.d.ts +31 -0
  108. package/dist-lib/base/partials/FilterBar/index.d.ts.map +1 -0
  109. package/dist-lib/base/partials/FormSection/index.d.ts +19 -0
  110. package/dist-lib/base/partials/FormSection/index.d.ts.map +1 -0
  111. package/dist-lib/base/partials/LogViewer/JsonBlock.d.ts +8 -0
  112. package/dist-lib/base/partials/LogViewer/JsonBlock.d.ts.map +1 -0
  113. package/dist-lib/base/partials/LogViewer/LogEntry.d.ts +9 -0
  114. package/dist-lib/base/partials/LogViewer/LogEntry.d.ts.map +1 -0
  115. package/dist-lib/base/partials/LogViewer/LogViewerToolbar.d.ts +16 -0
  116. package/dist-lib/base/partials/LogViewer/LogViewerToolbar.d.ts.map +1 -0
  117. package/dist-lib/base/partials/LogViewer/index.d.ts +14 -0
  118. package/dist-lib/base/partials/LogViewer/index.d.ts.map +1 -0
  119. package/dist-lib/base/partials/LogViewer/types.d.ts +26 -0
  120. package/dist-lib/base/partials/LogViewer/types.d.ts.map +1 -0
  121. package/dist-lib/base/partials/MarkdownContent/index.d.ts +17 -0
  122. package/dist-lib/base/partials/MarkdownContent/index.d.ts.map +1 -0
  123. package/dist-lib/base/partials/StatRow/index.d.ts +12 -0
  124. package/dist-lib/base/partials/StatRow/index.d.ts.map +1 -0
  125. package/dist-lib/base/partials/StatusBar/index.d.ts +21 -0
  126. package/dist-lib/base/partials/StatusBar/index.d.ts.map +1 -0
  127. package/dist-lib/base/partials/StatusIndicator/index.d.ts +16 -0
  128. package/dist-lib/base/partials/StatusIndicator/index.d.ts.map +1 -0
  129. package/dist-lib/base/partials/StepIndicator/index.d.ts +15 -0
  130. package/dist-lib/base/partials/StepIndicator/index.d.ts.map +1 -0
  131. package/dist-lib/base/partials/TimelineList/index.d.ts +32 -0
  132. package/dist-lib/base/partials/TimelineList/index.d.ts.map +1 -0
  133. package/dist-lib/base/shell/AdminShell.d.ts +12 -0
  134. package/dist-lib/base/shell/AdminShell.d.ts.map +1 -0
  135. package/dist-lib/base/shell/ProductShell.d.ts +22 -0
  136. package/dist-lib/base/shell/ProductShell.d.ts.map +1 -0
  137. package/dist-lib/base/shell/partials/AppearanceToggle.d.ts +8 -0
  138. package/dist-lib/base/shell/partials/AppearanceToggle.d.ts.map +1 -0
  139. package/dist-lib/base/shell/partials/CommandPalette.d.ts +24 -0
  140. package/dist-lib/base/shell/partials/CommandPalette.d.ts.map +1 -0
  141. package/dist-lib/base/shell/partials/HelpContext.d.ts +15 -0
  142. package/dist-lib/base/shell/partials/HelpContext.d.ts.map +1 -0
  143. package/dist-lib/base/shell/partials/HelpPanel.d.ts +15 -0
  144. package/dist-lib/base/shell/partials/HelpPanel.d.ts.map +1 -0
  145. package/dist-lib/base/shell/partials/InlineInspector.d.ts +15 -0
  146. package/dist-lib/base/shell/partials/InlineInspector.d.ts.map +1 -0
  147. package/dist-lib/base/shell/partials/InspectorContext.d.ts +58 -0
  148. package/dist-lib/base/shell/partials/InspectorContext.d.ts.map +1 -0
  149. package/dist-lib/base/shell/partials/InspectorPanel.d.ts +29 -0
  150. package/dist-lib/base/shell/partials/InspectorPanel.d.ts.map +1 -0
  151. package/dist-lib/base/shell/partials/NavErrorBoundary.d.ts +23 -0
  152. package/dist-lib/base/shell/partials/NavErrorBoundary.d.ts.map +1 -0
  153. package/dist-lib/base/shell/partials/OverlayScreen.d.ts +17 -0
  154. package/dist-lib/base/shell/partials/OverlayScreen.d.ts.map +1 -0
  155. package/dist-lib/base/shell/partials/PageActionButton.d.ts +17 -0
  156. package/dist-lib/base/shell/partials/PageActionButton.d.ts.map +1 -0
  157. package/dist-lib/base/shell/partials/PageFilterTabs.d.ts +22 -0
  158. package/dist-lib/base/shell/partials/PageFilterTabs.d.ts.map +1 -0
  159. package/dist-lib/base/shell/partials/PageHeader.d.ts +22 -0
  160. package/dist-lib/base/shell/partials/PageHeader.d.ts.map +1 -0
  161. package/dist-lib/base/shell/partials/SidebarNav.d.ts +17 -0
  162. package/dist-lib/base/shell/partials/SidebarNav.d.ts.map +1 -0
  163. package/dist-lib/base/theme/appearance.d.ts +58 -0
  164. package/dist-lib/base/theme/appearance.d.ts.map +1 -0
  165. package/dist-lib/base/theme/host-theme-detector.d.ts +22 -0
  166. package/dist-lib/base/theme/host-theme-detector.d.ts.map +1 -0
  167. package/dist-lib/base/theme/useHostTheme.d.ts +27 -0
  168. package/dist-lib/base/theme/useHostTheme.d.ts.map +1 -0
  169. package/dist-lib/base/utils/clipboard.d.ts +12 -0
  170. package/dist-lib/base/utils/clipboard.d.ts.map +1 -0
  171. package/dist-lib/base/utils/conditions.d.ts +7 -0
  172. package/dist-lib/base/utils/conditions.d.ts.map +1 -0
  173. package/dist-lib/base/utils/icons.d.ts +21 -0
  174. package/dist-lib/base/utils/icons.d.ts.map +1 -0
  175. package/dist-lib/base/utils/interpolate.d.ts +7 -0
  176. package/dist-lib/base/utils/interpolate.d.ts.map +1 -0
  177. package/dist-lib/base/utils/time.d.ts +28 -0
  178. package/dist-lib/base/utils/time.d.ts.map +1 -0
  179. package/dist-lib/components/reui/alert-dialog.d.ts +19 -0
  180. package/dist-lib/components/reui/alert-dialog.d.ts.map +1 -0
  181. package/dist-lib/components/reui/alert.d.ts +10 -0
  182. package/dist-lib/components/reui/alert.d.ts.map +1 -0
  183. package/dist-lib/components/reui/badge.d.ts +12 -0
  184. package/dist-lib/components/reui/badge.d.ts.map +1 -0
  185. package/dist-lib/components/reui/button.d.ts +11 -0
  186. package/dist-lib/components/reui/button.d.ts.map +1 -0
  187. package/dist-lib/components/reui/card.d.ts +10 -0
  188. package/dist-lib/components/reui/card.d.ts.map +1 -0
  189. package/dist-lib/components/reui/checkbox.d.ts +5 -0
  190. package/dist-lib/components/reui/checkbox.d.ts.map +1 -0
  191. package/dist-lib/components/reui/dialog.d.ts +18 -0
  192. package/dist-lib/components/reui/dialog.d.ts.map +1 -0
  193. package/dist-lib/components/reui/dropdown-menu.d.ts +26 -0
  194. package/dist-lib/components/reui/dropdown-menu.d.ts.map +1 -0
  195. package/dist-lib/components/reui/frame.d.ts +29 -0
  196. package/dist-lib/components/reui/frame.d.ts.map +1 -0
  197. package/dist-lib/components/reui/input.d.ts +4 -0
  198. package/dist-lib/components/reui/input.d.ts.map +1 -0
  199. package/dist-lib/components/reui/label.d.ts +5 -0
  200. package/dist-lib/components/reui/label.d.ts.map +1 -0
  201. package/dist-lib/components/reui/number-field.d.ts +26 -0
  202. package/dist-lib/components/reui/number-field.d.ts.map +1 -0
  203. package/dist-lib/components/reui/popover.d.ts +11 -0
  204. package/dist-lib/components/reui/popover.d.ts.map +1 -0
  205. package/dist-lib/components/reui/radio-group.d.ts +6 -0
  206. package/dist-lib/components/reui/radio-group.d.ts.map +1 -0
  207. package/dist-lib/components/reui/select.d.ts +16 -0
  208. package/dist-lib/components/reui/select.d.ts.map +1 -0
  209. package/dist-lib/components/reui/separator.d.ts +5 -0
  210. package/dist-lib/components/reui/separator.d.ts.map +1 -0
  211. package/dist-lib/components/reui/sheet.d.ts +15 -0
  212. package/dist-lib/components/reui/sheet.d.ts.map +1 -0
  213. package/dist-lib/components/reui/sidebar.d.ts +70 -0
  214. package/dist-lib/components/reui/sidebar.d.ts.map +1 -0
  215. package/dist-lib/components/reui/skeleton.d.ts +3 -0
  216. package/dist-lib/components/reui/skeleton.d.ts.map +1 -0
  217. package/dist-lib/components/reui/sonner.d.ts +4 -0
  218. package/dist-lib/components/reui/sonner.d.ts.map +1 -0
  219. package/dist-lib/components/reui/spinner.d.ts +3 -0
  220. package/dist-lib/components/reui/spinner.d.ts.map +1 -0
  221. package/dist-lib/components/reui/switch.d.ts +7 -0
  222. package/dist-lib/components/reui/switch.d.ts.map +1 -0
  223. package/dist-lib/components/reui/tabs.d.ts +12 -0
  224. package/dist-lib/components/reui/tabs.d.ts.map +1 -0
  225. package/dist-lib/components/reui/textarea.d.ts +4 -0
  226. package/dist-lib/components/reui/textarea.d.ts.map +1 -0
  227. package/dist-lib/components/reui/tooltip.d.ts +8 -0
  228. package/dist-lib/components/reui/tooltip.d.ts.map +1 -0
  229. package/dist-lib/components/ui/svgs/claudeAiIcon.d.ts +4 -0
  230. package/dist-lib/components/ui/svgs/claudeAiIcon.d.ts.map +1 -0
  231. package/dist-lib/components/ui/svgs/gemini.d.ts +4 -0
  232. package/dist-lib/components/ui/svgs/gemini.d.ts.map +1 -0
  233. package/dist-lib/components/ui/svgs/openai.d.ts +4 -0
  234. package/dist-lib/components/ui/svgs/openai.d.ts.map +1 -0
  235. package/dist-lib/components/ui/svgs/openaiDark.d.ts +4 -0
  236. package/dist-lib/components/ui/svgs/openaiDark.d.ts.map +1 -0
  237. package/dist-lib/contracts/block-data.d.ts +399 -0
  238. package/dist-lib/contracts/block-data.d.ts.map +1 -0
  239. package/dist-lib/contracts/connectors.d.ts +50 -0
  240. package/dist-lib/contracts/connectors.d.ts.map +1 -0
  241. package/dist-lib/contracts/navigation.d.ts +101 -0
  242. package/dist-lib/contracts/navigation.d.ts.map +1 -0
  243. package/dist-lib/contracts/page-contract.d.ts +129 -0
  244. package/dist-lib/contracts/page-contract.d.ts.map +1 -0
  245. package/dist-lib/contracts/shared-props.d.ts +76 -0
  246. package/dist-lib/contracts/shared-props.d.ts.map +1 -0
  247. package/dist-lib/hooks/use-copy-to-clipboard.d.ts +2 -0
  248. package/dist-lib/hooks/use-copy-to-clipboard.d.ts.map +1 -0
  249. package/dist-lib/hooks/use-file-upload.d.ts +2 -0
  250. package/dist-lib/hooks/use-file-upload.d.ts.map +1 -0
  251. package/dist-lib/index.d.ts +22 -0
  252. package/dist-lib/index.d.ts.map +1 -0
  253. package/dist-lib/lib/deprecation.d.ts +10 -0
  254. package/dist-lib/lib/deprecation.d.ts.map +1 -0
  255. package/dist-lib/lib/hooks/use-copy-to-clipboard.d.ts +8 -0
  256. package/dist-lib/lib/hooks/use-copy-to-clipboard.d.ts.map +1 -0
  257. package/dist-lib/lib/hooks/use-file-upload.d.ts +47 -0
  258. package/dist-lib/lib/hooks/use-file-upload.d.ts.map +1 -0
  259. package/dist-lib/lib/hooks/use-mobile.d.ts +2 -0
  260. package/dist-lib/lib/hooks/use-mobile.d.ts.map +1 -0
  261. package/dist-lib/lib/portal-container.d.ts +9 -0
  262. package/dist-lib/lib/portal-container.d.ts.map +1 -0
  263. package/dist-lib/lib/utils.d.ts +3 -0
  264. package/dist-lib/lib/utils.d.ts.map +1 -0
  265. package/package.json +2 -2
@@ -0,0 +1,129 @@
1
+ /**
2
+ * DataTable types — column definitions, pagination, sorting, filtering, and actions.
3
+ *
4
+ * @see NV-05-ux-blocks.md
5
+ */
6
+ import type { ReactNode } from "react";
7
+ import type { EmptyPlaceholderCTA } from "@/base/partials/EmptyPlaceholder";
8
+ import type { FilterDef, AppliedFilters } from "@/base/partials/FilterBar";
9
+ import type { BulkAction } from "@/base/partials/ActionBar";
10
+ export type DataTableCellType = "text" | "status" | "boolean" | "timestamp" | "custom" | "rich_status" | "html" | "link_group";
11
+ export interface DataTableColumn<TData> {
12
+ /** Unique column key, must match a property of TData (or use `render` for computed). */
13
+ key: string;
14
+ /** Header label text. */
15
+ label: string;
16
+ /** Cell type — controls default rendering. Defaults to "text". */
17
+ type?: DataTableCellType;
18
+ /** Whether the column is sortable. Defaults to false. */
19
+ sortable?: boolean;
20
+ /** Whether the column can be hidden via column visibility. Defaults to true. */
21
+ hideable?: boolean;
22
+ /** Whether the column is visible by default. Defaults to true. */
23
+ visible?: boolean;
24
+ /** Fixed width in pixels. When omitted, column auto-sizes. */
25
+ width?: number;
26
+ /** Min width in pixels. */
27
+ minWidth?: number;
28
+ /** Custom cell renderer. Overrides type-based rendering. */
29
+ render?: (value: unknown, row: TData) => ReactNode;
30
+ /** Status-to-semantic mapping for type="status" columns. Maps status string to a semantic intent. */
31
+ statusMap?: Record<string, "success" | "warning" | "destructive" | "secondary" | "info" | "default">;
32
+ }
33
+ export interface DataTablePagination {
34
+ /** Current page index (0-based). */
35
+ page: number;
36
+ /** Rows per page. */
37
+ perPage: number;
38
+ /** Total number of rows across all pages. */
39
+ total: number;
40
+ /** Available page size options. Defaults to [10, 25, 50, 100]. */
41
+ pageSizes?: number[];
42
+ }
43
+ export interface DataTableSort {
44
+ /** Column key being sorted. */
45
+ key: string;
46
+ /** Sort direction. */
47
+ direction: "asc" | "desc";
48
+ }
49
+ export type DataTableFilterOption = {
50
+ value: string;
51
+ label: string;
52
+ };
53
+ export type DataTableFilterDef = FilterDef;
54
+ export type DataTableAppliedFilters = AppliedFilters;
55
+ export interface DataTableRowAction<TData> {
56
+ /** Unique action id. */
57
+ id: string;
58
+ /** Visible label. */
59
+ label: string;
60
+ /** Icon name (kebab-case, resolved via getIcon). */
61
+ icon?: string;
62
+ /** Visual intent for dangerous actions. */
63
+ intent?: "default" | "danger";
64
+ /** Display variant: 'icon' (default) or 'button' (text label visible). */
65
+ variant?: "icon" | "button";
66
+ /** Called when the action is triggered. */
67
+ onAction: (row: TData) => void;
68
+ /** Conditionally hide the action per row. */
69
+ hidden?: (row: TData) => boolean;
70
+ /** Conditionally disable the action per row. */
71
+ disabled?: (row: TData) => boolean;
72
+ /** Show loading spinner instead of icon per row. */
73
+ loading?: (row: TData) => boolean;
74
+ /** Return disabled reason text for tooltip per row. */
75
+ disabledReason?: (row: TData) => string | undefined;
76
+ }
77
+ export type DataTableBulkAction = BulkAction;
78
+ export interface DataTableParamChange {
79
+ page?: number;
80
+ perPage?: number;
81
+ sort?: DataTableSort | null;
82
+ search?: string;
83
+ filters?: DataTableAppliedFilters;
84
+ }
85
+ export interface DataTableProps<TData> {
86
+ /** Column definitions. */
87
+ columns: DataTableColumn<TData>[];
88
+ /** Row data. */
89
+ rows: TData[];
90
+ /** Unique key extractor for each row. String property name or function. */
91
+ rowKey: keyof TData | ((row: TData) => string);
92
+ /** Server-driven pagination state. */
93
+ pagination?: DataTablePagination;
94
+ /** Current sort state. */
95
+ sort?: DataTableSort;
96
+ /** Available filter definitions. */
97
+ filters?: DataTableFilterDef[];
98
+ /** Currently applied filters. */
99
+ appliedFilters?: DataTableAppliedFilters;
100
+ /** Row-level actions (shown on hover by default). */
101
+ rowActions?: DataTableRowAction<TData>[];
102
+ /** When true, row actions are always visible instead of hover-only. */
103
+ actionsAlwaysVisible?: boolean;
104
+ /** Bulk actions for selected rows. */
105
+ bulkActions?: DataTableBulkAction[];
106
+ /** Whether data is currently loading. */
107
+ isLoading?: boolean;
108
+ /** Placeholder for the search input. */
109
+ searchPlaceholder?: string;
110
+ /** Initial search value (controlled externally). */
111
+ searchValue?: string;
112
+ /** Empty state: icon name (kebab-case). */
113
+ emptyStateIcon?: string;
114
+ /** Empty state: title text. */
115
+ emptyStateTitle?: string;
116
+ /** Empty state: description text. */
117
+ emptyStateDescription?: string;
118
+ /** Empty state: CTA button. */
119
+ emptyStateCTA?: EmptyPlaceholderCTA;
120
+ /** Callback when any table parameter changes (page, sort, search, filters). */
121
+ onParamChange?: (params: DataTableParamChange) => void;
122
+ /** Callback when a bulk action is triggered. Receives action id + selected row keys. */
123
+ onBulkAction?: (actionId: string, selectedKeys: string[]) => void;
124
+ /** Callback when a row is clicked (e.g. to open inspector). */
125
+ onRowClick?: (row: TData) => void;
126
+ /** Key of the currently selected row (for visual highlight). */
127
+ selectedRowKey?: string;
128
+ }
129
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/DataTable/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * DetailSection — section-based detail view with key-value fields.
3
+ *
4
+ * Renders structured data as label/value pairs in a responsive grid.
5
+ * Desktop uses CSS grid (1fr/2fr), mobile stacks with overline labels.
6
+ * Supports multiple field kinds: text, status, timestamp, boolean, link, code, email.
7
+ *
8
+ * @see NV-05-ux-blocks.md §4 (detail section anatomy)
9
+ */
10
+ import { type ReactElement } from "react";
11
+ export type FieldKind = "text" | "status" | "timestamp" | "boolean" | "link" | "code" | "email";
12
+ export interface DetailField {
13
+ key: string;
14
+ label: string;
15
+ value: string | number | boolean | null;
16
+ kind?: FieldKind;
17
+ copyable?: boolean;
18
+ href?: string;
19
+ }
20
+ export interface SectionAction {
21
+ id: string;
22
+ label: string;
23
+ onClick: () => void;
24
+ }
25
+ export interface DetailSectionSection {
26
+ id: string;
27
+ title: string;
28
+ fields: DetailField[];
29
+ defaultCollapsed?: boolean;
30
+ actions?: SectionAction[];
31
+ }
32
+ export interface DetailSectionProps {
33
+ sections: DetailSectionSection[];
34
+ isLoading?: boolean;
35
+ }
36
+ export declare function DetailSection({ sections, isLoading, }: DetailSectionProps): ReactElement;
37
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/DetailSection/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAyB,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AA4BjE,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,QAAQ,GACR,WAAW,GACX,SAAS,GACT,MAAM,GACN,MAAM,GACN,OAAO,CAAC;AAEZ,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;IACxC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAmQD,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,SAAS,GACV,EAAE,kBAAkB,GAAG,YAAY,CAYnC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * EmptyPlaceholder — contextual empty state with icon, title, description, and CTA.
3
+ *
4
+ * Variants: first-use, no-results, error, permission, compact, inline.
5
+ *
6
+ * @see NV-05-ux-blocks.md §7.1–7.8, §9.3
7
+ */
8
+ import type { ReactElement } from "react";
9
+ export type EmptyPlaceholderVariant = "first-use" | "no-results" | "error" | "permission" | "compact" | "inline";
10
+ export interface EmptyPlaceholderCTA {
11
+ label: string;
12
+ href?: string;
13
+ onClick?: () => void;
14
+ intent?: "primary" | "secondary";
15
+ isLoading?: boolean;
16
+ }
17
+ export interface EmptyPlaceholderProps {
18
+ variant?: EmptyPlaceholderVariant;
19
+ icon?: string;
20
+ title: string;
21
+ description?: string;
22
+ cta?: EmptyPlaceholderCTA;
23
+ ctaSecondary?: {
24
+ label: string;
25
+ href: string;
26
+ };
27
+ }
28
+ export declare function EmptyPlaceholder({ variant, icon, title, description, cta, ctaSecondary, }: EmptyPlaceholderProps): ReactElement;
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/EmptyPlaceholder/index.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAQ1C,MAAM,MAAM,uBAAuB,GAC/B,WAAW,GACX,YAAY,GACZ,OAAO,GACP,YAAY,GACZ,SAAS,GACT,QAAQ,CAAC;AAEb,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,mBAAmB,CAAC;IAC1B,YAAY,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD;AAkCD,wBAAgB,gBAAgB,CAAC,EAC/B,OAAqB,EACrB,IAAI,EACJ,KAAK,EACL,WAAW,EACX,GAAG,EACH,YAAY,GACb,EAAE,qBAAqB,GAAG,YAAY,CAgEtC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * FilterBar — filter trigger button + popover/sheet with available filters.
3
+ *
4
+ * Desktop (>=1024px): Popover. Tablet/Mobile: Sheet from bottom.
5
+ *
6
+ * @see NV-05-ux-blocks.md §1.2 toolbar anatomy
7
+ */
8
+ import { type ReactElement } from "react";
9
+ export interface FilterDef {
10
+ key: string;
11
+ label: string;
12
+ type: "select" | "multiselect" | "date_range";
13
+ options?: Array<{
14
+ value: string;
15
+ label: string;
16
+ }>;
17
+ }
18
+ export interface AppliedFilters {
19
+ [key: string]: string | string[];
20
+ }
21
+ export interface FilterBarProps {
22
+ filters: FilterDef[];
23
+ applied: AppliedFilters;
24
+ onApply: (key: string, value: string | string[]) => void;
25
+ onRemove: (key: string) => void;
26
+ onClearAll: () => void;
27
+ /** When true, chips are rendered externally (e.g. inline in DataTable toolbar). */
28
+ hideChips?: boolean;
29
+ }
30
+ export declare function FilterBar({ filters, applied, onApply, onRemove, onClearAll, hideChips, }: FilterBarProps): ReactElement;
31
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/FilterBar/index.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAmBpD,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,aAAa,GAAG,YAAY,CAAC;IAC9C,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,cAAc;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,IAAI,CAAC;IACzD,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,mFAAmF;IACnF,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,SAAS,CAAC,EACxB,OAAO,EACP,OAAO,EACP,OAAO,EACP,QAAQ,EACR,UAAU,EACV,SAAiB,GAClB,EAAE,cAAc,GAAG,YAAY,CA8G/B"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * FormSection — collapsible fieldset container for form groups.
3
+ *
4
+ * Does not render fields — receives them as children.
5
+ *
6
+ * @see NV-05-ux-blocks.md §2.6
7
+ */
8
+ import { type ReactElement, type ReactNode } from "react";
9
+ export interface FormSectionProps {
10
+ id: string;
11
+ title?: string;
12
+ description?: string;
13
+ children: ReactNode;
14
+ defaultCollapsed?: boolean;
15
+ hasErrors?: boolean;
16
+ errorCount?: number;
17
+ }
18
+ export declare function FormSection({ id, title, description, children, defaultCollapsed, hasErrors, errorCount, }: FormSectionProps): ReactElement;
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/FormSection/index.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAY,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAMpE,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,WAAW,CAAC,EAC1B,EAAE,EACF,KAAK,EACL,WAAW,EACX,QAAQ,EACR,gBAAwB,EACxB,SAAiB,EACjB,UAAU,GACX,EAAE,gBAAgB,GAAG,YAAY,CAyDjC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * JsonBlock — collapsible JSON payload display.
3
+ */
4
+ import { type ReactElement } from "react";
5
+ export declare function JsonBlock({ data, }: {
6
+ data: Record<string, unknown> | unknown[];
7
+ }): ReactElement;
8
+ //# sourceMappingURL=JsonBlock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonBlock.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/LogViewer/JsonBlock.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAGpD,wBAAgB,SAAS,CAAC,EACxB,IAAI,GACL,EAAE;IACD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC;CAC3C,GAAG,YAAY,CA8Bf"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * LogEntry — single parsed log line with severity badge, timestamp, and context.
3
+ */
4
+ import type { ReactElement } from "react";
5
+ import type { ParsedLogLine } from "./types";
6
+ export declare function LogEntry({ line }: {
7
+ line: ParsedLogLine;
8
+ }): ReactElement;
9
+ //# sourceMappingURL=LogEntry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogEntry.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/LogViewer/LogEntry.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,SAAS,CAAC;AAuB1D,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GAAG,YAAY,CAuCxE"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * LogViewerToolbar — filename, line count, raw/parsed toggle, download, copy, close.
3
+ */
4
+ import type { ReactElement } from "react";
5
+ interface LogViewerToolbarProps {
6
+ filename: string;
7
+ totalLines: number;
8
+ downloadUrl: string;
9
+ rawMode: boolean;
10
+ onToggleRaw: () => void;
11
+ rawContent: string;
12
+ onClose?: () => void;
13
+ }
14
+ export declare function LogViewerToolbar({ filename, totalLines, downloadUrl, rawMode, onToggleRaw, rawContent, onClose, }: LogViewerToolbarProps): ReactElement;
15
+ export {};
16
+ //# sourceMappingURL=LogViewerToolbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogViewerToolbar.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/LogViewer/LogViewerToolbar.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAW1C,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,UAAU,EACV,WAAW,EACX,OAAO,EACP,WAAW,EACX,UAAU,EACV,OAAO,GACR,EAAE,qBAAqB,GAAG,YAAY,CA8CtC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * LogViewer — reusable log content viewer with severity badges, JSON collapsible, raw mode.
3
+ *
4
+ * Receives parsed lines from server (log_reader_service::read_file).
5
+ * Available for dependent plugins at system/partials/LogViewer.
6
+ *
7
+ * @see ADR-924, logs-redesign-design.md
8
+ */
9
+ import { type ReactElement } from "react";
10
+ import type { LogViewerProps } from "./types";
11
+ export { type LogViewerProps } from "./types";
12
+ export { type ParsedLogLine, type LogSeverity } from "./types";
13
+ export declare function LogViewer({ lines, filename, downloadUrl, totalLines, hasMore, isLoading, onLoadMore, onClose, }: LogViewerProps): ReactElement;
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/LogViewer/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAA+B,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAIvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAE/D,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,WAAW,EACX,UAAU,EACV,OAAO,EACP,SAAiB,EACjB,UAAU,EACV,OAAO,GACR,EAAE,cAAc,GAAG,YAAY,CAuF/B"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * LogViewer shared types.
3
+ *
4
+ * Log lines are parsed server-side by log_reader_service::parse_line().
5
+ * The React viewer receives structured data, not raw text.
6
+ */
7
+ export type LogSeverity = "ERROR" | "CRITICAL" | "WARNING" | "INFO" | "DEBUG" | "NOTICE" | "RAW";
8
+ export interface ParsedLogLine {
9
+ datetime: string;
10
+ origin: string;
11
+ actor: string;
12
+ level: LogSeverity | string;
13
+ message: string;
14
+ context: Record<string, unknown> | unknown[];
15
+ }
16
+ export interface LogViewerProps {
17
+ lines: ParsedLogLine[];
18
+ filename: string;
19
+ downloadUrl: string;
20
+ totalLines: number;
21
+ hasMore: boolean;
22
+ isLoading?: boolean;
23
+ onLoadMore?: () => void;
24
+ onClose?: () => void;
25
+ }
26
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/LogViewer/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,WAAW,GACnB,OAAO,GACP,UAAU,GACV,SAAS,GACT,MAAM,GACN,OAAO,GACP,QAAQ,GACR,KAAK,CAAC;AAEV,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,WAAW,GAAG,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC;CAC9C;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * MarkdownContent — renders sanitized markdown with syntax highlighting.
3
+ *
4
+ * Uses react-markdown with rehype-highlight for code blocks and rehype-sanitize
5
+ * for XSS prevention. External links open in a new tab; internal links use
6
+ * Inertia router for SPA navigation.
7
+ *
8
+ * @see NV-05-ux-blocks.md §5 (markdown content rendering)
9
+ */
10
+ import { type ReactElement } from "react";
11
+ export interface MarkdownContentProps {
12
+ content: string;
13
+ maxHeight?: number;
14
+ isLoading?: boolean;
15
+ }
16
+ export declare function MarkdownContent({ content, maxHeight, isLoading, }: MarkdownContentProps): ReactElement;
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/MarkdownContent/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAGL,KAAK,YAAY,EAElB,MAAM,OAAO,CAAC;AAef,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAwRD,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,SAAS,EACT,SAAS,GACV,EAAE,oBAAoB,GAAG,YAAY,CAiCrC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * StatRow — responsive grid container for MetricCardBlock instances.
3
+ *
4
+ * @see NV-05-ux-screens-core.md T-01 metrics region
5
+ */
6
+ import type { ReactElement, ReactNode } from "react";
7
+ export interface StatRowProps {
8
+ children: ReactNode;
9
+ columns?: 2 | 3 | 4;
10
+ }
11
+ export declare function StatRow({ children, columns }: StatRowProps): ReactElement;
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/StatRow/index.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGrD,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CACrB;AAQD,wBAAgB,OAAO,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,YAAY,GAAG,YAAY,CAMzE"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * StatusBar — horizontal strip of status indicators with colored dots.
3
+ *
4
+ * @see NV-05-ux-blocks.md §5.1–5.8
5
+ */
6
+ import type { ReactElement } from "react";
7
+ export type StatusAppearance = "success" | "warning" | "danger" | "info" | "neutral";
8
+ export interface StatusBarItem {
9
+ key: string;
10
+ label: string;
11
+ value: string;
12
+ appearance: StatusAppearance;
13
+ tooltip?: string;
14
+ href?: string;
15
+ }
16
+ export interface StatusBarProps {
17
+ items: StatusBarItem[];
18
+ isLoading?: boolean;
19
+ }
20
+ export declare function StatusBar({ items, isLoading, }: StatusBarProps): ReactElement | null;
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/StatusBar/index.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAU1C,MAAM,MAAM,gBAAgB,GACxB,SAAS,GACT,SAAS,GACT,QAAQ,GACR,MAAM,GACN,SAAS,CAAC;AAEd,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,gBAAgB,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAoED,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,SAAS,GACV,EAAE,cAAc,GAAG,YAAY,GAAG,IAAI,CAqCtC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * StatusIndicator — colored dot/icon with optional label.
3
+ *
4
+ * Used by DataTable status cells, detail panels, and anywhere status display is needed.
5
+ *
6
+ * @see NV-05-ux-blocks.md §1.2
7
+ */
8
+ import type { ReactElement } from "react";
9
+ export type IndicatorSize = "sm" | "md";
10
+ export interface StatusIndicatorProps {
11
+ status: string;
12
+ label?: string;
13
+ size?: IndicatorSize;
14
+ }
15
+ export declare function StatusIndicator({ status, label, size, }: StatusIndicatorProps): ReactElement;
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/StatusIndicator/index.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,CAAC;AAExC,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,aAAa,CAAC;CACtB;AAqBD,wBAAgB,eAAe,CAAC,EAC9B,MAAM,EACN,KAAK,EACL,IAAW,GACZ,EAAE,oBAAoB,GAAG,YAAY,CAerC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * StepIndicator — horizontal step progress bar for WizardLayout.
3
+ *
4
+ * Renders completed/active/pending steps with connecting lines.
5
+ * Step data comes from layout.meta.steps (server-driven).
6
+ */
7
+ import type { ReactElement } from "react";
8
+ export interface StepItem {
9
+ label: string;
10
+ status: "completed" | "active" | "pending";
11
+ }
12
+ export declare function StepIndicator({ steps }: {
13
+ steps: StepItem[];
14
+ }): ReactElement;
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/StepIndicator/index.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAK1C,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;CAC5C;AAED,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;CAAE,GAAG,YAAY,CAqD5E"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * TimelineList — grouped timeline of activity entries.
3
+ *
4
+ * Renders entries grouped by date, connected by a vertical timeline line.
5
+ * Each entry has a colored icon node, actor, timestamp, action, and optional detail.
6
+ *
7
+ * @see NV-05-ux-blocks.md §6 (timeline anatomy)
8
+ */
9
+ import { type ReactElement } from "react";
10
+ export interface TimelineEntry {
11
+ id: string;
12
+ actor: string;
13
+ actorHref?: string;
14
+ action: string;
15
+ detail?: string;
16
+ icon?: string;
17
+ color?: string;
18
+ timestamp: number;
19
+ }
20
+ export interface TimelineGroup {
21
+ label: string;
22
+ entries: TimelineEntry[];
23
+ }
24
+ export interface TimelineListProps {
25
+ groups: TimelineGroup[];
26
+ isLoading?: boolean;
27
+ hasMore?: boolean;
28
+ isLoadingMore?: boolean;
29
+ onLoadMore?: () => void;
30
+ }
31
+ export declare function TimelineList({ groups, isLoading, hasMore, isLoadingMore, onLoadMore, }: TimelineListProps): ReactElement;
32
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/base/partials/TimelineList/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAoBpD,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AAwKD,wBAAgB,YAAY,CAAC,EAC3B,MAAM,EACN,SAAS,EACT,OAAO,EACP,aAAa,EACb,UAAU,GACX,EAAE,iBAAiB,GAAG,YAAY,CA6DlC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * AdminShell — MIDDAG admin shell with dynamic sidebar navigation and optional tab bar.
3
+ *
4
+ * Mirrors ProductShell architecture (SidebarProvider → SidebarNav → PageHeader → content)
5
+ * but adds an optional admin tab bar between header and content when `admin_tabs` prop is present.
6
+ *
7
+ * @see ADR-807 ref/shell-and-navigation §1-2
8
+ */
9
+ import { type ReactElement } from "react";
10
+ import type { ShellProps } from "@/app/registries";
11
+ export declare function AdminShell({ children }: ShellProps): ReactElement;
12
+ //# sourceMappingURL=AdminShell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdminShell.d.ts","sourceRoot":"","sources":["../../../src/base/shell/AdminShell.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAavD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAsFnD,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,EAAE,UAAU,GAAG,YAAY,CAejE"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * ProductShell — main MIDDAG shell with 3-level sidebar navigation.
3
+ *
4
+ * Renders: sidebar (SidebarNav) + page header (PageHeader) + content area.
5
+ * Shell is responsible for layout chrome. Content is rendered by ContractPage.
6
+ *
7
+ * @see ADR-807 ref/shell-and-navigation §1-2
8
+ * @see NV-05-ux-shell-sidebar.md §2
9
+ */
10
+ import { type ReactElement } from "react";
11
+ import type { ShellProps } from "@/app/registries";
12
+ /**
13
+ * ProductShell wraps content in SidebarProvider which manages:
14
+ * - expanded/collapsed state (Cmd+B shortcut built into sidebar primitive)
15
+ * - mobile Sheet overlay
16
+ * - localStorage persistence via cookie (sidebar primitive manages SIDEBAR_COOKIE_NAME)
17
+ *
18
+ * Note: the sidebar primitive uses a cookie for state, not localStorage.
19
+ * We override this in SidebarNav for section-level state (different concern).
20
+ */
21
+ export declare function ProductShell({ children }: ShellProps): ReactElement;
22
+ //# sourceMappingURL=ProductShell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductShell.d.ts","sourceRoot":"","sources":["../../../src/base/shell/ProductShell.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAcvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AA0EnD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE,UAAU,GAAG,YAAY,CAenE"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * AppearanceToggle — cycles System → Light → Dark → System.
3
+ * Position: page header, right side.
4
+ *
5
+ * @see NV-05-ux-shell-sidebar.md §5
6
+ */
7
+ export declare function AppearanceToggle(): import("react/jsx-runtime").JSX.Element;
8
+ //# sourceMappingURL=AppearanceToggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppearanceToggle.d.ts","sourceRoot":"","sources":["../../../../src/base/shell/partials/AppearanceToggle.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiCH,wBAAgB,gBAAgB,4CA6B/B"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * CommandPalette — ⌘K overlay for quick navigation and actions.
3
+ *
4
+ * Matches preview 03: overlay + card + grouped results + keyboard nav.
5
+ *
6
+ * @see ui/previews/03-interaction-patterns.html .cmd-overlay
7
+ * @see DESIGN.md §P8 Command Palette & Keyboard Shortcuts
8
+ */
9
+ import { type ReactElement } from "react";
10
+ export interface CommandItem {
11
+ id: string;
12
+ label: string;
13
+ icon?: string;
14
+ shortcut?: string;
15
+ href?: string;
16
+ group: string;
17
+ }
18
+ interface CommandPaletteProps {
19
+ items: CommandItem[];
20
+ onSelect?: (item: CommandItem) => void;
21
+ }
22
+ export declare function CommandPalette({ items, onSelect, }: CommandPaletteProps): ReactElement | null;
23
+ export {};
24
+ //# sourceMappingURL=CommandPalette.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommandPalette.d.ts","sourceRoot":"","sources":["../../../../src/base/shell/partials/CommandPalette.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAA+B,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAGvE,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,mBAAmB;IAC3B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;CACxC;AAED,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,QAAQ,GACT,EAAE,mBAAmB,GAAG,YAAY,GAAG,IAAI,CA6K3C"}
@@ -0,0 +1,15 @@
1
+ import { type ReactElement, type ReactNode } from "react";
2
+ import type { HelpData } from "@/contracts/page-contract";
3
+ interface HelpContextValue {
4
+ help: HelpData | null;
5
+ isOpen: boolean;
6
+ setHelp: (data: HelpData | null) => void;
7
+ toggle: () => void;
8
+ close: () => void;
9
+ }
10
+ export declare function HelpProvider({ children, }: {
11
+ children: ReactNode;
12
+ }): ReactElement;
13
+ export declare function useHelp(): HelpContextValue;
14
+ export {};
15
+ //# sourceMappingURL=HelpContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HelpContext.d.ts","sourceRoot":"","sources":["../../../../src/base/shell/partials/HelpContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAE1D,UAAU,gBAAgB;IACxB,IAAI,EAAE,QAAQ,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC;IACzC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAUD,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;CACrB,GAAG,YAAY,CAYf;AAGD,wBAAgB,OAAO,IAAI,gBAAgB,CAE1C"}