@machinemetrics/mm-react-components 1.2.2 → 1.2.5-0

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 (136) hide show
  1. package/CHANGELOG.md +102 -0
  2. package/agent-docs/agent-documentation-reference.md +42 -22
  3. package/agent-docs/tickets-pattern.md +78 -0
  4. package/dist/App.d.ts.map +1 -1
  5. package/dist/components/ui/accordion.d.ts.map +1 -1
  6. package/dist/components/ui/alert-dialog.d.ts.map +1 -1
  7. package/dist/components/ui/alert.d.ts.map +1 -1
  8. package/dist/components/ui/aspect-ratio.d.ts.map +1 -1
  9. package/dist/components/ui/badge.d.ts.map +1 -1
  10. package/dist/components/ui/button-group.d.ts.map +1 -1
  11. package/dist/components/ui/button.d.ts.map +1 -1
  12. package/dist/components/ui/calendar.d.ts +0 -6
  13. package/dist/components/ui/calendar.d.ts.map +1 -1
  14. package/dist/components/ui/card.d.ts.map +1 -1
  15. package/dist/components/ui/checkbox.d.ts.map +1 -1
  16. package/dist/components/ui/code-preview.d.ts +8 -4
  17. package/dist/components/ui/code-preview.d.ts.map +1 -1
  18. package/dist/components/ui/data-table/TableView.d.ts +0 -3
  19. package/dist/components/ui/data-table/TableView.d.ts.map +1 -1
  20. package/dist/components/ui/data-table/cards/ResponsiveTable.d.ts +0 -3
  21. package/dist/components/ui/data-table/cards/ResponsiveTable.d.ts.map +1 -1
  22. package/dist/components/ui/data-table/pagination.d.ts +0 -3
  23. package/dist/components/ui/data-table/pagination.d.ts.map +1 -1
  24. package/dist/components/ui/data-table/toolbar/DataTableToolbar.d.ts +0 -3
  25. package/dist/components/ui/data-table/toolbar/DataTableToolbar.d.ts.map +1 -1
  26. package/dist/components/ui/date-picker.d.ts +8 -4
  27. package/dist/components/ui/date-picker.d.ts.map +1 -1
  28. package/dist/components/ui/date-range-picker.d.ts +0 -3
  29. package/dist/components/ui/date-range-picker.d.ts.map +1 -1
  30. package/dist/components/ui/dialog.d.ts.map +1 -1
  31. package/dist/components/ui/drawer.d.ts.map +1 -1
  32. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  33. package/dist/components/ui/dropzone/index.d.ts +3 -12
  34. package/dist/components/ui/dropzone/index.d.ts.map +1 -1
  35. package/dist/components/ui/hero-metric-card/HeroMetricCard.d.ts.map +1 -1
  36. package/dist/components/ui/hero-metric-card/HeroMetricCardItem.d.ts.map +1 -1
  37. package/dist/components/ui/hover-card.d.ts.map +1 -1
  38. package/dist/components/ui/input.d.ts.map +1 -1
  39. package/dist/components/ui/item.d.ts.map +1 -1
  40. package/dist/components/ui/kanban/KanbanBoard.d.ts +8 -0
  41. package/dist/components/ui/kanban/KanbanBoard.d.ts.map +1 -0
  42. package/dist/components/ui/kanban/KanbanCard.d.ts +8 -0
  43. package/dist/components/ui/kanban/KanbanCard.d.ts.map +1 -0
  44. package/dist/components/ui/kanban/KanbanCardOverlay.d.ts +8 -0
  45. package/dist/components/ui/kanban/KanbanCardOverlay.d.ts.map +1 -0
  46. package/dist/components/ui/kanban/KanbanColumn.d.ts +8 -0
  47. package/dist/components/ui/kanban/KanbanColumn.d.ts.map +1 -0
  48. package/dist/components/ui/kanban/KanbanContext.d.ts +28 -0
  49. package/dist/components/ui/kanban/KanbanContext.d.ts.map +1 -0
  50. package/dist/components/ui/kanban/dragEndUtils.d.ts +26 -0
  51. package/dist/components/ui/kanban/dragEndUtils.d.ts.map +1 -0
  52. package/dist/components/ui/kanban/index.d.ts +9 -0
  53. package/dist/components/ui/kanban/index.d.ts.map +1 -0
  54. package/dist/components/ui/kanban/types.d.ts +58 -0
  55. package/dist/components/ui/kanban/types.d.ts.map +1 -0
  56. package/dist/components/ui/kbd.d.ts +0 -6
  57. package/dist/components/ui/kbd.d.ts.map +1 -1
  58. package/dist/components/ui/label.d.ts.map +1 -1
  59. package/dist/components/ui/menubar.d.ts.map +1 -1
  60. package/dist/components/ui/page-header/page-header.d.ts.map +1 -1
  61. package/dist/components/ui/popover.d.ts.map +1 -1
  62. package/dist/components/ui/progress.d.ts.map +1 -1
  63. package/dist/components/ui/radio-group.d.ts.map +1 -1
  64. package/dist/components/ui/scroll-area.d.ts +0 -6
  65. package/dist/components/ui/scroll-area.d.ts.map +1 -1
  66. package/dist/components/ui/select.d.ts.map +1 -1
  67. package/dist/components/ui/separator.d.ts.map +1 -1
  68. package/dist/components/ui/sheet-banner.d.ts +1 -1
  69. package/dist/components/ui/sheet-banner.d.ts.map +1 -1
  70. package/dist/components/ui/sheet.d.ts.map +1 -1
  71. package/dist/components/ui/sidebar.d.ts.map +1 -1
  72. package/dist/components/ui/simple-pagination.d.ts +0 -3
  73. package/dist/components/ui/simple-pagination.d.ts.map +1 -1
  74. package/dist/components/ui/skeleton.d.ts +0 -3
  75. package/dist/components/ui/skeleton.d.ts.map +1 -1
  76. package/dist/components/ui/slider.d.ts +0 -6
  77. package/dist/components/ui/slider.d.ts.map +1 -1
  78. package/dist/components/ui/spinner-carbide.d.ts +0 -3
  79. package/dist/components/ui/spinner-carbide.d.ts.map +1 -1
  80. package/dist/components/ui/spinner.d.ts +0 -3
  81. package/dist/components/ui/spinner.d.ts.map +1 -1
  82. package/dist/components/ui/switch.d.ts.map +1 -1
  83. package/dist/components/ui/table/Table.d.ts.map +1 -1
  84. package/dist/components/ui/table.d.ts.map +1 -1
  85. package/dist/components/ui/tabs.d.ts.map +1 -1
  86. package/dist/components/ui/textarea.d.ts.map +1 -1
  87. package/dist/components/ui/tickets/TicketActivitySection.d.ts +20 -0
  88. package/dist/components/ui/tickets/TicketActivitySection.d.ts.map +1 -0
  89. package/dist/components/ui/tickets/TicketDates.d.ts +20 -0
  90. package/dist/components/ui/tickets/TicketDates.d.ts.map +1 -0
  91. package/dist/components/ui/tickets/TicketDetailLayout.d.ts +32 -0
  92. package/dist/components/ui/tickets/TicketDetailLayout.d.ts.map +1 -0
  93. package/dist/components/ui/tickets/TicketDetails.d.ts +32 -0
  94. package/dist/components/ui/tickets/TicketDetails.d.ts.map +1 -0
  95. package/dist/components/ui/tickets/TicketDetailsSidebar.d.ts +21 -0
  96. package/dist/components/ui/tickets/TicketDetailsSidebar.d.ts.map +1 -0
  97. package/dist/components/ui/tickets/TicketFieldControl.d.ts +32 -0
  98. package/dist/components/ui/tickets/TicketFieldControl.d.ts.map +1 -0
  99. package/dist/components/ui/tickets/TicketForm.d.ts +22 -0
  100. package/dist/components/ui/tickets/TicketForm.d.ts.map +1 -0
  101. package/dist/components/ui/tickets/TicketLabels.d.ts +57 -0
  102. package/dist/components/ui/tickets/TicketLabels.d.ts.map +1 -0
  103. package/dist/components/ui/tickets/TicketTypes.d.ts +67 -0
  104. package/dist/components/ui/tickets/TicketTypes.d.ts.map +1 -0
  105. package/dist/components/ui/tickets/TicketUserSelect.d.ts +17 -0
  106. package/dist/components/ui/tickets/TicketUserSelect.d.ts.map +1 -0
  107. package/dist/components/ui/tickets/UserDisplay.d.ts +21 -0
  108. package/dist/components/ui/tickets/UserDisplay.d.ts.map +1 -0
  109. package/dist/components/ui/tickets/UserFieldValue.d.ts +24 -0
  110. package/dist/components/ui/tickets/UserFieldValue.d.ts.map +1 -0
  111. package/dist/components/ui/tickets/index.d.ts +12 -0
  112. package/dist/components/ui/tickets/index.d.ts.map +1 -0
  113. package/dist/components/ui/toggle.d.ts.map +1 -1
  114. package/dist/components/ui/virtualized-combobox/index.d.ts.map +1 -1
  115. package/dist/index.d.ts +4 -0
  116. package/dist/index.d.ts.map +1 -1
  117. package/dist/lib/code-preview-public-names.d.ts +12 -0
  118. package/dist/lib/code-preview-public-names.d.ts.map +1 -0
  119. package/dist/lib/mm-react-components.css +1 -1
  120. package/dist/main.d.ts +0 -1
  121. package/dist/main.d.ts.map +1 -1
  122. package/dist/mm-react-components.es.js +824 -709
  123. package/dist/mm-react-components.es.js.map +1 -1
  124. package/dist/mm-react-components.umd.js +1 -1
  125. package/dist/mm-react-components.umd.js.map +1 -1
  126. package/dist/preview/CalendarPreview.d.ts.map +1 -1
  127. package/dist/preview/FormPreview.d.ts.map +1 -1
  128. package/dist/preview/KanbanPreview.d.ts +2 -0
  129. package/dist/preview/KanbanPreview.d.ts.map +1 -0
  130. package/dist/preview/SheetBannerPreview.d.ts.map +1 -1
  131. package/dist/preview/TicketsPreview.d.ts +2 -0
  132. package/dist/preview/TicketsPreview.d.ts.map +1 -0
  133. package/dist/themes/carbide.css +97 -23
  134. package/package.json +2 -1
  135. package/dist/preview/set-display-names.d.ts +0 -2
  136. package/dist/preview/set-display-names.d.ts.map +0 -1
package/CHANGELOG.md CHANGED
@@ -5,6 +5,108 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.2.4] - 2026-03-26
9
+
10
+ ### Fixed
11
+
12
+ - **Calendar and DatePicker (Carbide dark mode):** Selected days and date ranges now show the expected primary and accent fills in dark mode. A global ghost-button rule had higher specificity than calendar day styles, so highlights looked missing.
13
+ - **Calendar (Carbide dark mode):** Month and year dropdowns keep a visible indigo border on dark surfaces; they previously blended into the card.
14
+ - **Calendar (today):** The current day is easier to see against the calendar surface (accent/primary tint and border), including when it is not the selected date.
15
+ - **Calendar inside popovers:** Calendar no longer stacks a second heavy shadow on top of popover content; corner radius matches the rest of the control set.
16
+ - **Static component preview (`build:static`):** Generated code snippets use public component names (for example `AspectRatio`) instead of minified or internal labels, so examples match the package API.
17
+
18
+ ### Changed
19
+
20
+ - Preview app: `CodePreview` route remains hash-only for tests; sidebar exclusions updated. Preview build trims `esbuild.keepNames` where snippet naming no longer requires it.
21
+
22
+ ## [Unreleased]
23
+
24
+ ### Changed
25
+
26
+ - **TicketDetails:** Two-column **narrative + metadata** layout: header includes ticket id, title, and **status / priority / due** (keys `status`, `priority`, `dueDate`, `due`); main column is **description** then **Activity** with **All / Comments / Updates** tabs; right rail is **Details** (people), **Dates**, and **Custom fields** with optional **Show more** and sticky positioning on large viewports. Optional `onBack` and `onAddCustomField`. `data-slot` hooks for Carbide theming.
27
+ - **`partitionDetailFields`:** Now returns `headerFields`, `mainColumnFields`, `sidebarPeopleFields`, `sidebarDateFields`, `sidebarCustomFields`, and composed `sidebarFields` (people → dates → custom). `assignee` key maps to the people rail. **Breaking for consumers** that assumed `status` / `priority` / `dueDate` lived only in `sidebarFields` or that `otherMainFields` rendered in the main column — those fields are repositioned in the default `TicketDetails` shell (see `PartitionDetailFieldsResult`).
28
+
29
+ ### Added
30
+
31
+ - **`TicketSystemEvent`** and optional `TicketDetails` prop **`systemEvents`** for the Updates timeline and All-tab merge.
32
+ - **`TicketFieldControl`:** optional **`layout="inline"`** for compact header controls; **`date`** fields use the Carbide **`DatePicker`** (not native `<input type="date">`).
33
+ - **`DatePicker`:** optional **`triggerClassName`** for trigger button styling; optional **`aria-invalid`** / **`aria-describedby`** on the trigger; **controlled `month`** resets when the popover opens so the calendar shows the **selected date’s month** (or `defaultMonth` / today when empty).
34
+ - **`TicketForm`:** **`date`** fields use **`DatePicker`** (not native `<input type="date">`).
35
+ - **`parseTicketDateString`** / **`formatTicketDateString`** exported from the tickets module for host apps.
36
+ - **`TicketFieldType` `updatedDate`:** Read-only timestamp for “last updated” (and similar). Renders as styled text in **`TicketForm`** and **`TicketDetails`** — never an `<input>`. Use **`formatTicketTimestampDisplay`** for custom UIs; value is typically ISO or `YYYY-MM-DD` on the ticket payload.
37
+ - **`TicketDetailsLabels`:** strings for activity tabs, sidebar section titles, back button, show more/less, add field, and comment body label.
38
+
39
+ ## [1.3.0] - 2026-03-19
40
+
41
+ ### Changed
42
+
43
+ - **TicketDetails** (formerly `TicketDetailSheet`): Renders **detail content only** (no outer `Sheet`), same presentation-only model as `TicketForm`. No `open` / `onClose` / `onOpen`; the host controls visibility and chrome (e.g. `Sheet` + `SheetContent` with its own close). Renamed exports: `TicketDetails`, `TicketDetailsProps`, `TicketDetailsLabels`, `defaultTicketDetailsLabels`, `mergeTicketDetailsLabels`. Removed `closeAriaLabel` from detail labels (library no longer renders a close control).
44
+ - **Tickets module file names:** Renamed to PascalCase under `src/components/ui/tickets/` (`TicketTypes.ts`, `TicketLabels.ts`, `UserFieldValue.ts`, `TicketUserSelect.tsx`, `TicketDates.ts`, `TicketDetailLayout.ts`) for consistency with other feature folders.
45
+
46
+ ### Added
47
+
48
+ - **Ticket pattern components:** `TicketForm`, `TicketDetails`, `TicketFieldControl`, and `UserDisplay` for schema-driven ticket create/edit and detail UI. Host apps inject `userSelectComponent` and own persistence (`onSubmit`, `onCancel`, `onValuesChange`, `onPostComment`). Optional `labels` props override default copy.
49
+ - **Ticket utilities and types:** Exported `Ticket`, `TicketFieldDefinition`, `Comment`, and helpers (`fieldKeyToHeader`, `getMergedDetailFields`, `partitionDetailFields`, `formatCreationDate`, `formatRelativeTime`, user-field JSON helpers).
50
+ - **Docs:** `src/components/ui/tickets/README.md`, `agent-docs/tickets-pattern.md`, and agent-documentation-reference table entry.
51
+ - **Kanban:** Compound `KanbanBoard`, `KanbanColumn`, `KanbanCard`, and `KanbanCardOverlay` with `@dnd-kit` drag-and-drop. Helpers `dataToKanbanItems`, `normalizeToKanbanColumn`, and `computeMoveFromDragEnd` map table-shaped data to board items and derive moves from drag-end events. Column chrome uses `SheetBanner`; README, preview, Playwright visual tests, and agent-documentation-reference updates.
52
+
53
+ ---
54
+
55
+ ## [1.2.3] - 2026-03-23
56
+
57
+ ### Changed
58
+
59
+ - **CircleCI `build` job:** Updated base image (browsers and OS deps included), `resource_class: xlarge` for parallelism aligned with `PW_WORKERS` to reduce build time.
60
+
61
+ ### Fixed
62
+
63
+ - **Visual regression stability:** Updated Playwright infrastructure to reduce visual regression test flakes.
64
+ - **Colors preview testing:** Playwright coverage for the Colors tab, snapshot focus narrowed to the preview/screen area.
65
+
66
+ ---
67
+
68
+ ## [1.2.2] - 2026-03-20
69
+
70
+ ### Added
71
+
72
+ - **Agent-docs (color/style):** Guidance for installed package paths (`@machinemetrics/mm-react-components/themes/carbide`, `agent-docs/style-color-reference`), Carbide token usage, and AI-facing color/style reference workflows.
73
+
74
+ ---
75
+
76
+ ## [1.2.1] - 2026-03-18
77
+
78
+ ### Changed
79
+
80
+ - **React `displayName`:** Set on public components and related exports to improve code reflection in CodePreview component.
81
+
82
+ ---
83
+
84
+ ## [1.2.0] - 2026-03-10
85
+
86
+ ### Added
87
+
88
+ - **`agent-docs/lovable.md`:** Added single Lovable (and custom-knowledge) compatability doc for Carbide rules, theme, widgets, and exports.
89
+ - **Conversion guidance:** Agent-docs and skill updates for converting UIs to Carbide (remove legacy inline/component CSS, map to library components and tokens).
90
+
91
+ ---
92
+
93
+ ## [1.1.2] - 2026-03-04
94
+
95
+ ### Added
96
+
97
+ - **Dark mode visual tests:** Playwright project and fixtures so light and dark snapshots run consistently (`*-chromium.png` / `*-chromium-dark.png`); open-state specs cover portaled UI in dark mode.
98
+
99
+ ### Changed
100
+
101
+ - **`mm-install-skill`:** Interactive prompts for AI target (Cursor, Copilot, Claude, Gemini) and install scope (project vs user) live in the skill installer; `mm-init` only asks whether to install the skill and delegates when confirmed.
102
+ - **Skill and agent-docs:** ScrollArea vs Card guidance for scrollable regions; troubleshooting when ScrollArea does not scroll.
103
+
104
+ ### Fixed
105
+
106
+ - **Default variants:** Ensured components that support variants default correctly when the `variant` prop is omitted.
107
+
108
+ ---
109
+
8
110
  ## [1.1.1] - 2026-02-17
9
111
 
10
112
  ### Added
@@ -54,14 +54,14 @@ This directory contains comprehensive documentation and tools for AI agents work
54
54
 
55
55
  ### Layout & Navigation
56
56
 
57
- | Component | Exports | Description |
58
- | -------------- | --------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------- |
59
- | **Card** | `Card`, `CardHeader`, `CardTitle`, `CardDescription`, `CardContent`, `CardFooter` | Content container with sections (no built-in scroll) |
57
+ | Component | Exports | Description |
58
+ | -------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
59
+ | **Card** | `Card`, `CardHeader`, `CardTitle`, `CardDescription`, `CardContent`, `CardFooter` | Content container with sections (no built-in scroll) |
60
60
  | **ScrollArea** | `ScrollArea`, `ScrollBar` | Scrollable region; **must have constrained height** (e.g. `h-[300px]`, `max-h-[50vh]`, or `flex-1 min-h-0` in flex layout) or it won’t scroll |
61
- | **Separator** | `Separator` | Visual divider |
62
- | **Tabs** | `Tabs`, `TabsList`, `TabsTrigger`, `TabsContent` | Tabbed interface |
63
- | **Breadcrumb** | `Breadcrumb`, `BreadcrumbList`, `BreadcrumbItem`, `BreadcrumbLink`, `BreadcrumbPage`, `BreadcrumbSeparator`, `BreadcrumbEllipsis` | Navigation breadcrumbs |
64
- | **PageHeader** | `PageHeader` (+ types) | Application page header with actions/tabs |
61
+ | **Separator** | `Separator` | Visual divider |
62
+ | **Tabs** | `Tabs`, `TabsList`, `TabsTrigger`, `TabsContent` | Tabbed interface |
63
+ | **Breadcrumb** | `Breadcrumb`, `BreadcrumbList`, `BreadcrumbItem`, `BreadcrumbLink`, `BreadcrumbPage`, `BreadcrumbSeparator`, `BreadcrumbEllipsis` | Navigation breadcrumbs |
64
+ | **PageHeader** | `PageHeader` (+ types) | Application page header with actions/tabs |
65
65
 
66
66
  ### Overlays & Modals
67
67
 
@@ -96,15 +96,17 @@ This directory contains comprehensive documentation and tools for AI agents work
96
96
 
97
97
  ### Advanced Components
98
98
 
99
- | Component | Exports | Description |
100
- | ------------------- | --------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
101
- | **DataTable** | `DataTable`, `DataTablePagination`, `ResponsiveTable`, `TABLE_TOKENS`, column creators, hooks, toolbar, CSV export (+ types) | Full-featured data table with sorting, filtering, pagination (client-side & server-side) |
102
- | **HeroMetricCard** | `HeroMetricCard`, `HeroMetricCardItem` (+ types) | Metrics dashboard card with trends |
103
- | **Calendar** | `Calendar` | Date picker calendar |
104
- | **DatePicker** | `DatePicker` | Single date selection with label and placeholder |
105
- | **DateRangePicker** | `DateRangePicker` | Date range selection |
106
- | **Dropzone** | `Dropzone`, `DropzoneContent`, `DropzoneEmptyState` | File upload drag-drop |
107
- | **Chart** | `ChartContainer`, `ChartTooltip`, `ChartTooltipContent`, `ChartLegend`, `ChartLegendContent`, `ChartStyle` (+ `ChartConfig` type) | Recharts integration |
99
+ | Component | Exports | Description |
100
+ | ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
101
+ | **DataTable** | `DataTable`, `DataTablePagination`, `ResponsiveTable`, `TABLE_TOKENS`, column creators, hooks, toolbar, CSV export (+ types) | Full-featured data table with sorting, filtering, pagination (client-side & server-side) |
102
+ | **HeroMetricCard** | `HeroMetricCard`, `HeroMetricCardItem` (+ types) | Metrics dashboard card with trends |
103
+ | **Calendar** | `Calendar` | Date picker calendar |
104
+ | **DatePicker** | `DatePicker` | Single date selection with label and placeholder |
105
+ | **DateRangePicker** | `DateRangePicker` | Date range selection |
106
+ | **Dropzone** | `Dropzone`, `DropzoneContent`, `DropzoneEmptyState` | File upload drag-drop |
107
+ | **Kanban** | `KanbanBoard`, `KanbanColumn`, `KanbanCard`, `KanbanCardOverlay`, `normalizeToKanbanColumn`, `dataToKanbanItems` (+ types) | Drag-and-drop Kanban board; compound API; same columns/data as DataTable |
108
+ | **Tickets** | `TicketForm`, `TicketDetails`, `TicketFieldControl`, `UserDisplay`, field helpers (`formatTicketTimestampDisplay`, …), `TicketSystemEvent`, `PartitionDetailFieldsResult` (+ `TicketUserSelectComponent`) | Schema-driven ticket form and detail UI; **`data-slot`** on form/details/field wrapper (see tickets README); optional `systemEvents` / `onBack` / `onAddCustomField` |
109
+ | **Chart** | `ChartContainer`, `ChartTooltip`, `ChartTooltipContent`, `ChartLegend`, `ChartLegendContent`, `ChartStyle` (+ `ChartConfig` type) | Recharts integration |
108
110
 
109
111
  ### Interactive Elements
110
112
 
@@ -128,6 +130,18 @@ All components follow shadcn/ui patterns with Carbide theme integration for indu
128
130
 
129
131
  ## Component Usage Guides
130
132
 
133
+ ### Table + Kanban from same columns and data
134
+
135
+ Use the same column definitions and data for both DataTable and Kanban:
136
+
137
+ - **Columns**: Pass table column objects directly to `KanbanColumn` via `column={col}` (accepts `{ id, title? }` or `{ id, header? }`).
138
+ - **Items**: `const items = dataToKanbanItems(data, { columnIdKey: 'status', titleKey: 'name' });` then filter by column when rendering cards.
139
+ - **Compound API**: `<KanbanBoard onMove={...}><KanbanColumn column={col}>…<KanbanCard item={item}>…</KanbanCard>…</KanbanColumn></KanbanBoard>`. Card content is children of `KanbanCard`. Optional `renderDragPreview(item)` for custom drag overlay.
140
+
141
+ ### Ticket form and detail sheet
142
+
143
+ Schema-driven ticket UI (`TicketForm`, `TicketDetails`, `TicketFieldControl`) — inject a user picker (`TicketUserSelectComponent`), pass `onSubmit` / `onCancel`, and wire `onValuesChange` + `comments` / `onPostComment` / optional `systemEvents`. `TicketDetails` has no open/close API; mount it wherever needed (header metadata, Activity tabs, sticky sidebar). See **[tickets-pattern.md](./tickets-pattern.md)**.
144
+
131
145
  ### Scrolling content: Card vs ScrollArea
132
146
 
133
147
  **There is no "Panel" component.** For a panel-like or card-like region where content may be longer than the visible area, use **ScrollArea** around the scrollable content. **Card** is a structural container (border, padding, sections) and does not add scrolling.
@@ -139,25 +153,31 @@ All components follow shadcn/ui patterns with Carbide theme integration for indu
139
153
  **Pattern for a scrollable card/panel:**
140
154
 
141
155
  ```tsx
142
- import { Card, CardHeader, CardTitle, CardContent, ScrollArea } from '@machinemetrics/mm-react-components';
156
+ import {
157
+ Card,
158
+ CardHeader,
159
+ CardTitle,
160
+ CardContent,
161
+ ScrollArea,
162
+ } from '@machinemetrics/mm-react-components';
143
163
 
144
164
  <Card className="flex max-h-[80vh] flex-col">
145
165
  <CardHeader>
146
166
  <CardTitle>Panel title</CardTitle>
147
167
  </CardHeader>
148
168
  <ScrollArea className="flex-1 min-h-0">
149
- <CardContent>
150
- {/* Long content here scrolls inside the card */}
151
- </CardContent>
169
+ <CardContent>{/* Long content here scrolls inside the card */}</CardContent>
152
170
  </ScrollArea>
153
- </Card>
171
+ </Card>;
154
172
  ```
155
173
 
156
174
  Or wrap only the body in ScrollArea with a fixed height:
157
175
 
158
176
  ```tsx
159
177
  <Card>
160
- <CardHeader><CardTitle>Title</CardTitle></CardHeader>
178
+ <CardHeader>
179
+ <CardTitle>Title</CardTitle>
180
+ </CardHeader>
161
181
  <ScrollArea className="h-[200px] rounded-md border">
162
182
  <div className="p-4">{/* long content */}</div>
163
183
  </ScrollArea>
@@ -0,0 +1,78 @@
1
+ # Ticket pattern (`TicketForm`, `TicketDetails`)
2
+
3
+ Carbide-composed UI for configurable work-item fields: form, per-field control, and **detail body** (header with id + title + status/priority/due, main column for description + activity, sticky metadata rail). Same idea as `TicketForm` — **presentation only**: no overlay, open state, or routing inside the library. Your app chooses where it mounts (page, `Sheet`, drawer) and owns visibility.
4
+
5
+ ## Quick start
6
+
7
+ ```tsx
8
+ import {
9
+ TicketForm,
10
+ TicketDetails,
11
+ UserDisplay,
12
+ fieldKeyToHeader,
13
+ Sheet,
14
+ SheetContent,
15
+ } from '@machinemetrics/mm-react-components';
16
+ import { MyUserSelect } from './MyUserSelect';
17
+
18
+ <TicketForm
19
+ fieldDefinitions={defs}
20
+ onSubmit={(values) => saveTicket(values)}
21
+ onCancel={() => navigate(-1)}
22
+ getDisplayName={(id) => ...}
23
+ getCurrentUser={() => api.getMe()}
24
+ userSelectComponent={MyUserSelect}
25
+ />;
26
+
27
+ <Sheet open={open} onOpenChange={setOpen}>
28
+ <SheetContent side="right" className="p-0 flex flex-col ...">
29
+ <TicketDetails
30
+ ticket={ticket}
31
+ ticketFieldDefinitions={ticketDefs}
32
+ formFieldDefinitions={formDefs}
33
+ getDisplayName={(id) => ...}
34
+ usersLoading={loading}
35
+ onValuesChange={(next) => updateTicket(ticket.id, next)}
36
+ userSelectComponent={MyUserSelect}
37
+ comments={comments}
38
+ systemEvents={systemEvents}
39
+ onPostComment={({ authorUserId, body }) => addComment(...)}
40
+ onBack={() => setOpen(false)}
41
+ onAddCustomField={() => openAddFieldFlow()}
42
+ />
43
+ </SheetContent>
44
+ </Sheet>;
45
+ ```
46
+
47
+ ## Types
48
+
49
+ Use exported `TicketFieldDefinition`, `Ticket`, `Comment`, `TicketSystemEvent`, and `TicketConfig` for shared shapes between host and UI.
50
+
51
+ For **read-only timestamps** (e.g. last updated), use **`type: 'updatedDate'`** on the field — not `text` or `date`. The UI shows a muted read-only line; the host still passes the raw value (typically ISO) on the ticket. Use **`formatTicketTimestampDisplay`** if you render the value elsewhere.
52
+
53
+ ## Layout helpers
54
+
55
+ `partitionDetailFields` returns `headerFields`, `mainColumnFields`, `sidebarPeopleFields`, `sidebarDateFields`, `sidebarCustomFields`, plus `sidebarFields` (flattened rail list), `mainTopFields` (same as main column / description), and `otherMainFields` (same as custom — legacy names). Use these if you build a custom shell instead of `TicketDetails`.
56
+
57
+ ## Activity
58
+
59
+ - **Comments** — existing `Comment[]` and `onPostComment`.
60
+ - **System events** — optional `TicketSystemEvent[]` (`id`, `createdAt`, `message`) for the **Updates** tab; merged chronologically with comments under **All**.
61
+
62
+ ## Copy / i18n
63
+
64
+ Pass `labels` (see `TicketFormLabels`, `TicketDetailsLabels`, `TicketFieldControlLabels`) or use `mergeTicketFormLabels` / `mergeTicketDetailsLabels` defaults.
65
+
66
+ ## Theming
67
+
68
+ Carbide hooks use `data-slot` on ticket surfaces:
69
+
70
+ - **`TicketForm`:** `ticket-form` (root form), `ticket-form-readonly-field` (e.g. `updatedDate`, `currentUser` rows).
71
+ - **`TicketDetails`:** `ticket-details`, `ticket-details-header`, `ticket-details-main`, `ticket-details-activity`, `ticket-details-sidebar`.
72
+ - **`TicketFieldControl`:** `ticket-field-control` wraps each field; primitives inside still expose their own slots (`input`, `date-picker`, etc.).
73
+
74
+ See [src/components/ui/tickets/README.md](../src/components/ui/tickets/README.md) for the full table.
75
+
76
+ ## See also
77
+
78
+ - [src/components/ui/tickets/README.md](../src/components/ui/tickets/README.md) (source tree; also shipped in repo)
package/dist/App.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAyEA,iBAAS,GAAG,4CAmQX;AAED,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAoFA,iBAAS,GAAG,4CAmQX;AAED,eAAe,GAAG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../../src/components/ui/accordion.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,kBAAkB,MAAM,2BAA2B,CAAC;AAMhE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAS5E,QAAA,MAAM,aAAa,iKAYjB,CAAC;AAKH,QAAA,MAAM,gBAAgB;yBAGG,MAAM;mDAwB7B,CAAC;AAIH,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../../src/components/ui/accordion.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,kBAAkB,MAAM,2BAA2B,CAAC;AAMhE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAS5E,QAAA,MAAM,aAAa,iKAYjB,CAAC;AAGH,QAAA,MAAM,gBAAgB;yBAGG,MAAM;mDA2B7B,CAAC;AAEH,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"alert-dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/alert-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,oBAAoB,MAAM,8BAA8B,CAAC;AAerE,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,kCAAkC,CAAC;AAG1C,QAAA,MAAM,kBAAkB,wKAetB,CAAC;AAKH,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,OAAO,CAAC,2CAc3D;AAGD,QAAA,MAAM,iBAAiB,6KAWrB,CAAC;AAIH,QAAA,MAAM,iBAAiB,6KAWrB,CAAC;AAKH,QAAA,MAAM,sBAAsB,wLAY1B,CAAC;AAIH,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,GACvB,CAAC"}
1
+ {"version":3,"file":"alert-dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/alert-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,oBAAoB,MAAM,8BAA8B,CAAC;AAerE,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,kCAAkC,CAAC;AAG1C,QAAA,MAAM,kBAAkB,wKAetB,CAAC;AAGH,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,OAAO,CAAC,2CAc3D;AAGD,QAAA,MAAM,iBAAiB,6KAWrB,CAAC;AAEH,QAAA,MAAM,iBAAiB,6KAWrB,CAAC;AAGH,QAAA,MAAM,sBAAsB,wLAY1B,CAAC;AAEH,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,GACvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"alert.d.ts","sourceRoot":"","sources":["../../../src/components/ui/alert.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAKlE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGzE,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAI/D,QAAA,MAAM,aAAa;;8EAiBlB,CAAC;AAGF,KAAK,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,EAAE,SAAS,CAAC,GACvE,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAErC,QAAA,MAAM,KAAK,gGAcV,CAAC;AAIF,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"alert.d.ts","sourceRoot":"","sources":["../../../src/components/ui/alert.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAKlE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGzE,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAI/D,QAAA,MAAM,aAAa;;8EAiBlB,CAAC;AAGF,KAAK,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,EAAE,SAAS,CAAC,GACvE,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAErC,QAAA,MAAM,KAAK,gGAeT,CAAC;AAEH,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"aspect-ratio.d.ts","sourceRoot":"","sources":["../../../src/components/ui/aspect-ratio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,QAAA,MAAM,WAAW,mLAG0C,CAAC;AAI5D,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"aspect-ratio.d.ts","sourceRoot":"","sources":["../../../src/components/ui/aspect-ratio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,QAAA,MAAM,WAAW,mLAKf,CAAC;AAEH,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../src/components/ui/badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAKlE,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAK/D,QAAA,MAAM,aAAa;;;8EAyBlB,CAAC;AAGF,KAAK,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,GACtD,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAErC,QAAA,MAAM,KAAK,iGAoBV,CAAC;AAIF,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../src/components/ui/badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAKlE,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAK/D,QAAA,MAAM,aAAa;;;8EAyBlB,CAAC;AAGF,KAAK,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,GACtD,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAErC,QAAA,MAAM,KAAK,iGAqBT,CAAC;AAEH,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/button-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,kCAAkC,CAAC;AAG1C,QAAA,MAAM,eAAe;;gDAKnB,CAAC;AAIH,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/button-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,kCAAkC,CAAC;AAG1C,QAAA,MAAM,eAAe;;gDAKnB,CAAC;AAEH,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,QAAA,MAAM,MAAM;;;;;mDAiBV,CAAC;AAIH,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,QAAA,MAAM,MAAM;;;;;mDAiBV,CAAC;AAEH,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -4,12 +4,6 @@ import { Button } from '@/components/shadcn/button';
4
4
  declare function Calendar({ className, classNames, showOutsideDays, captionLayout, buttonVariant, formatters, components, ...props }: React.ComponentProps<typeof DayPicker> & {
5
5
  buttonVariant?: React.ComponentProps<typeof Button>['variant'];
6
6
  }): import("react/jsx-runtime").JSX.Element;
7
- declare namespace Calendar {
8
- var displayName: string;
9
- }
10
7
  declare function CalendarDayButton({ className, day, modifiers, ...props }: React.ComponentProps<typeof DayButton>): import("react/jsx-runtime").JSX.Element;
11
- declare namespace CalendarDayButton {
12
- var displayName: string;
13
- }
14
8
  export { Calendar, CalendarDayButton };
15
9
  //# sourceMappingURL=calendar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../../src/components/ui/calendar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAwB,MAAM,kBAAkB,CAAC;AAG9E,OAAO,EAAE,MAAM,EAAkB,MAAM,4BAA4B,CAAC;AAEpE,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,UAAU,EACV,eAAsB,EACtB,aAAuB,EACvB,aAAuB,EACvB,UAAU,EACV,UAAU,EACV,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,GAAG;IAC1C,aAAa,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;CAChE,2CA2IA;kBAtJQ,QAAQ;;;AAwJjB,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,EACH,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,2CA4BxC;kBAjCQ,iBAAiB;;;AAsC1B,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../../src/components/ui/calendar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAwB,MAAM,kBAAkB,CAAC;AAG9E,OAAO,EAAE,MAAM,EAAkB,MAAM,4BAA4B,CAAC;AAEpE,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,UAAU,EACV,eAAsB,EACtB,aAAuB,EACvB,aAAuB,EACvB,UAAU,EACV,UAAU,EACV,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,GAAG;IAC1C,aAAa,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;CAChE,2CA8IA;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,EACH,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,2CA4BxC;AAED,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../src/components/ui/card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAGlC,QAAA,MAAM,IAAI,kKAKR,CAAC;AAIH,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../src/components/ui/card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAGlC,QAAA,MAAM,IAAI,kKAKR,CAAC;AAEH,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/ui/checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,iBAAiB,MAAM,0BAA0B,CAAC;AAS9D,QAAA,MAAM,QAAQ,iKAsBZ,CAAC;AAIH,OAAO,EAAE,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../src/components/ui/checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,iBAAiB,MAAM,0BAA0B,CAAC;AAS9D,QAAA,MAAM,QAAQ,iKAsBZ,CAAC;AAEH,OAAO,EAAE,QAAQ,EAAE,CAAC"}
@@ -37,8 +37,11 @@ export interface CodePreviewProps {
37
37
  */
38
38
  jsxStringOptions?: Parameters<typeof reactElementToJSXString>[1];
39
39
  /**
40
- * Optional pre-generated code string to display instead of auto-extracting from children.
41
- * Useful for interactive previews where the code is dynamically generated.
40
+ * Pre-generated code string to show instead of auto-extracting from children.
41
+ * Use when the rendered tree is wrapped (e.g. local preview components) so
42
+ * `react-element-to-jsx-string` cannot see public component markup, or when
43
+ * the snippet must include imports/setup above the JSX. **Must be kept in
44
+ * sync** with the live preview when both change.
42
45
  */
43
46
  code?: string;
44
47
  /**
@@ -51,8 +54,9 @@ export interface CodePreviewProps {
51
54
  /**
52
55
  * CodePreview - A Carbide component for displaying React components with automatically extracted JSX code.
53
56
  *
54
- * Uses react-element-to-jsx-string to automatically extract JSX code from a React element,
55
- * eliminating the need to duplicate code as strings. The component is the single source of truth.
57
+ * Uses react-element-to-jsx-string to extract JSX from children when `code` is omitted.
58
+ * If children hide the public API behind a wrapper component, pass `code` for an accurate
59
+ * snippet and maintain it alongside the live demo (see `FormPreview`).
56
60
  *
57
61
  * @example
58
62
  * ```tsx
@@ -1 +1 @@
1
- {"version":3,"file":"code-preview.d.ts","sourceRoot":"","sources":["../../../src/components/ui/code-preview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,uBAAuB,MAAM,6BAA6B,CAAC;AA6ElE,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;;;GAcG;AACH,QAAA,MAAM,WAAW,yFAiQhB,CAAC;AAIF,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"code-preview.d.ts","sourceRoot":"","sources":["../../../src/components/ui/code-preview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,uBAAuB,MAAM,6BAA6B,CAAC;AA8ElE,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;;;;GAeG;AACH,QAAA,MAAM,WAAW,yFA6PhB,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1,7 +1,4 @@
1
1
  import * as React from 'react';
2
2
  import type { DataTableProps } from './types';
3
3
  export declare function DataTable<TData, TValue>({ columns, data, loading, columnRegistry, initialState, tableId, toolbar, emptyState, forceEmptyState, manualPagination, pageCount, totalRowCount, onRowSelectionChange, onSortingChange, onPaginationChange, onColumnVisibilityChange, onColumnOrderChange, onBatchAction, onRowClick, onExportComplete, customGlobalFilterFn, }: DataTableProps<TData, TValue>): React.ReactNode;
4
- export declare namespace DataTable {
5
- var displayName: string;
6
- }
7
4
  //# sourceMappingURL=TableView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableView.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/data-table/TableView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAiB/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AA0L9C,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,EACvC,OAAO,EACP,IAAI,EACJ,OAAe,EACf,cAAc,EACd,YAAY,EACZ,OAAO,EACP,OAAO,EACP,UAAU,EACV,eAAe,EACf,gBAAwB,EACxB,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,oBAAoB,GACrB,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,mBAsK/B;yBA5Le,SAAS"}
1
+ {"version":3,"file":"TableView.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/data-table/TableView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAiB/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AA0L9C,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,EACvC,OAAO,EACP,IAAI,EACJ,OAAe,EACf,cAAc,EACd,YAAY,EACZ,OAAO,EACP,OAAO,EACP,UAAU,EACV,eAAe,EACf,gBAAwB,EACxB,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,oBAAoB,GACrB,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,mBAsK/B"}
@@ -7,7 +7,4 @@ export interface ResponsiveTableProps<TData, TValue> extends DataTableProps<TDat
7
7
  toolbarOptions?: DataTableToolbarOptions;
8
8
  }
9
9
  export declare function ResponsiveTable<TData, TValue>({ columns, data, loading, columnRegistry, initialState, breakpoint, enableMobileVirtualization, virtualizeAt, overscan, tableId, toolbarOptions, emptyState, forceEmptyState, manualPagination, pageCount, totalRowCount, onRowSelectionChange, onSortingChange, onPaginationChange, onColumnVisibilityChange, onColumnOrderChange, onBatchAction, onRowClick, onExportComplete, customGlobalFilterFn, }: Readonly<ResponsiveTableProps<TData, TValue>>): import("react/jsx-runtime").JSX.Element;
10
- export declare namespace ResponsiveTable {
11
- var displayName: string;
12
- }
13
10
  //# sourceMappingURL=ResponsiveTable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResponsiveTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/data-table/cards/ResponsiveTable.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASxE,MAAM,WAAW,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAE,SAAQ,cAAc,CACzE,KAAK,EACL,MAAM,CACP;IACC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,uBAAuB,CAAC;CAC1C;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,EAC7C,OAAO,EACP,IAAI,EACJ,OAAO,EACP,cAAc,EACd,YAAY,EACZ,UAAiC,EACjC,0BAAiC,EACjC,YAAkB,EAClB,QAAY,EACZ,OAAO,EACP,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,oBAAoB,GACrB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,2CA0D/C;yBApFe,eAAe"}
1
+ {"version":3,"file":"ResponsiveTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/data-table/cards/ResponsiveTable.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AASxE,MAAM,WAAW,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAE,SAAQ,cAAc,CACzE,KAAK,EACL,MAAM,CACP;IACC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,uBAAuB,CAAC;CAC1C;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,EAC7C,OAAO,EACP,IAAI,EACJ,OAAO,EACP,cAAc,EACd,YAAY,EACZ,UAAiC,EACjC,0BAAiC,EACjC,YAAkB,EAClB,QAAY,EACZ,OAAO,EACP,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,oBAAoB,GACrB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,2CA0D/C"}
@@ -19,7 +19,4 @@ export interface DataTablePaginationProps<TData> {
19
19
  readonly totalRowCount?: number;
20
20
  }
21
21
  export declare function DataTablePagination<TData>({ table, pageSizeOptions, className, compact, onPageChange, onPageSizeChange, manualPagination, totalRowCount, }: DataTablePaginationProps<TData>): import("react/jsx-runtime").JSX.Element;
22
- export declare namespace DataTablePagination {
23
- var displayName: string;
24
- }
25
22
  //# sourceMappingURL=pagination.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/data-table/pagination.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAUpE,MAAM,WAAW,wBAAwB,CAAC,KAAK;IAC7C,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IACrC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,EACzC,KAAK,EACL,eAAoC,EACpC,SAAS,EACT,OAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAwB,EACxB,aAAa,GACd,EAAE,wBAAwB,CAAC,KAAK,CAAC,2CAkKjC;yBA3Ke,mBAAmB"}
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/data-table/pagination.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAUpE,MAAM,WAAW,wBAAwB,CAAC,KAAK;IAC7C,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IACrC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,EACzC,KAAK,EACL,eAAoC,EACpC,SAAS,EACT,OAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAwB,EACxB,aAAa,GACd,EAAE,wBAAwB,CAAC,KAAK,CAAC,2CAkKjC"}
@@ -13,7 +13,4 @@ export interface DataTableToolbarProps<TData> {
13
13
  options?: DataTableToolbarOptions;
14
14
  }
15
15
  export declare function DataTableToolbar<TData>({ table, loading, globalFilter, onGlobalFilterChange, columnRegistry, onResetColumns, onExport, onExportComplete, options, }: DataTableToolbarProps<TData>): import("react/jsx-runtime").JSX.Element;
16
- export declare namespace DataTableToolbar {
17
- var displayName: string;
18
- }
19
16
  //# sourceMappingURL=DataTableToolbar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableToolbar.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/data-table/toolbar/DataTableToolbar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGpE,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAEV,uBAAuB,EACxB,MAAM,UAAU,CAAC;AAKlB,MAAM,WAAW,qBAAqB,CAAC,KAAK;IAC1C,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,cAAc,CAAC,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,OAAO,CAAC,EAAE,uBAAuB,CAAC;CACnC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,EACtC,KAAK,EACL,OAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,QAAQ,EACR,gBAAgB,EAChB,OAAO,GACR,EAAE,qBAAqB,CAAC,KAAK,CAAC,2CA4K9B;yBAtLe,gBAAgB"}
1
+ {"version":3,"file":"DataTableToolbar.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/data-table/toolbar/DataTableToolbar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGpE,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAEV,uBAAuB,EACxB,MAAM,UAAU,CAAC;AAKlB,MAAM,WAAW,qBAAqB,CAAC,KAAK;IAC1C,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,cAAc,CAAC,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,OAAO,CAAC,EAAE,uBAAuB,CAAC;CACnC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,EACtC,KAAK,EACL,OAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,QAAQ,EACR,gBAAgB,EAChB,OAAO,GACR,EAAE,qBAAqB,CAAC,KAAK,CAAC,2CA4K9B"}
@@ -35,9 +35,13 @@ export interface DatePickerProps {
35
35
  * Initial month to display when no date is selected (e.g. for stable visual tests).
36
36
  */
37
37
  readonly defaultMonth?: Date;
38
+ /**
39
+ * Classes merged onto the trigger button (e.g. compact width for toolbars).
40
+ */
41
+ readonly triggerClassName?: string;
42
+ /** For form validation (e.g. ticket form field errors). */
43
+ readonly 'aria-invalid'?: boolean;
44
+ readonly 'aria-describedby'?: string;
38
45
  }
39
- export declare function DatePicker({ label, placeholder, value, onValueChange, disabled, className, id, showDropdowns, defaultMonth, }: DatePickerProps): import("react/jsx-runtime").JSX.Element;
40
- export declare namespace DatePicker {
41
- var displayName: string;
42
- }
46
+ export declare function DatePicker({ label, placeholder, value, onValueChange, disabled, className, id, showDropdowns, defaultMonth, triggerClassName, 'aria-invalid': ariaInvalid, 'aria-describedby': ariaDescribedBy, }: DatePickerProps): import("react/jsx-runtime").JSX.Element;
43
47
  //# sourceMappingURL=date-picker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["../../../src/components/ui/date-picker.tsx"],"names":[],"mappings":"AAcA,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;IAC1D;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC;;OAEG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC;CAC9B;AAED,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,WAA2B,EAC3B,KAAK,EACL,aAAa,EACb,QAAgB,EAChB,SAAS,EACT,EAAE,EACF,aAAqB,EACrB,YAAY,GACb,EAAE,eAAe,2CAgDjB;yBA1De,UAAU"}
1
+ {"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["../../../src/components/ui/date-picker.tsx"],"names":[],"mappings":"AAeA,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;IAC1D;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC;;OAEG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC;IAC7B;;OAEG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,2DAA2D;IAC3D,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,WAA2B,EAC3B,KAAK,EACL,aAAa,EACb,QAAgB,EAChB,SAAS,EACT,EAAE,EACF,aAAqB,EACrB,YAAY,EACZ,gBAAgB,EAChB,cAAc,EAAE,WAAW,EAC3B,kBAAkB,EAAE,eAAe,GACpC,EAAE,eAAe,2CA4DjB"}
@@ -6,7 +6,4 @@ export interface DateRangePickerProps {
6
6
  className?: string;
7
7
  }
8
8
  export declare function DateRangePicker({ value, onValueChange, allowSingleDate, placeholder, className, }: DateRangePickerProps): import("react/jsx-runtime").JSX.Element;
9
- export declare namespace DateRangePicker {
10
- var displayName: string;
11
- }
12
9
  //# sourceMappingURL=date-range-picker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-picker.d.ts","sourceRoot":"","sources":["../../../src/components/ui/date-range-picker.tsx"],"names":[],"mappings":"AAqCA,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9C,aAAa,EAAE,CAAC,KAAK,EAAE,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,SAAS,KAAK,IAAI,CAAC;IAC3E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,aAAa,EACb,eAAuB,EACvB,WAAiC,EACjC,SAAS,GACV,EAAE,oBAAoB,2CAoItB;yBA1Ie,eAAe"}
1
+ {"version":3,"file":"date-range-picker.d.ts","sourceRoot":"","sources":["../../../src/components/ui/date-range-picker.tsx"],"names":[],"mappings":"AAqCA,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9C,aAAa,EAAE,CAAC,KAAK,EAAE,CAAC,MAAM,GAAG,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,SAAS,KAAK,IAAI,CAAC;IAC3E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,aAAa,EACb,eAAuB,EACvB,WAAiC,EACjC,SAAS,GACV,EAAE,oBAAoB,2CAoItB"}
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAa1D,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,4BAA4B,CAAC;AAGpC,QAAA,MAAM,aAAa,8JAgBjB,CAAC;AAIH,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACxD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,2CAyBA;AAGD,QAAA,MAAM,iBAAiB,sKAYrB,CAAC;AAGH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAa1D,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,GACZ,MAAM,4BAA4B,CAAC;AAGpC,QAAA,MAAM,aAAa,8JAgBjB,CAAC;AAGH,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACxD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,2CAyBA;AAGD,QAAA,MAAM,iBAAiB,sKAYrB,CAAC;AAEH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.d.ts","sourceRoot":"","sources":["../../../src/components/ui/drawer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,MAAM,CAAC;AAK5C,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AAMpC,QAAA,MAAM,aAAa,kOAejB,CAAC;AAIH,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,UAAU,CAAC,OAAO,CAAC,2CAgBjD;AAGD,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,UAAU,CAAC,MAAM,CAAC,2CAQhD;AAED,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"drawer.d.ts","sourceRoot":"","sources":["../../../src/components/ui/drawer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,MAAM,CAAC;AAK5C,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AAMpC,QAAA,MAAM,aAAa,kOAejB,CAAC;AAGH,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,UAAU,CAAC,OAAO,CAAC,2CAgBjD;AAGD,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,UAAU,CAAC,MAAM,CAAC,2CAQhD;AAED,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dropdown-menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,qBAAqB,MAAM,+BAA+B,CAAC;AAKvE,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EACL,YAAY,IAAI,gBAAgB,EAKjC,MAAM,mCAAmC,CAAC;AAG3C,iBAAS,YAAY,CAAC,EACpB,YAAY,EACZ,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,GAAG;IACjD,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC,2CAQA;AAGD,QAAA,MAAM,mBAAmB,gLAWvB,CAAC;AAIH,QAAA,MAAM,mBAAmB;iBAGR,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC;gDA4B3C,CAAC;AAIH,QAAA,MAAM,gBAAgB;;;;cAGR,SAAS,GAAG,aAAa;gDAgBrC,CAAC;AAIH,QAAA,MAAM,sBAAsB,6KAe1B,CAAC;AAGH,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,GACvB,CAAC"}
1
+ {"version":3,"file":"dropdown-menu.d.ts","sourceRoot":"","sources":["../../../src/components/ui/dropdown-menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,qBAAqB,MAAM,+BAA+B,CAAC;AAKvE,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EACL,YAAY,IAAI,gBAAgB,EAKjC,MAAM,mCAAmC,CAAC;AAG3C,iBAAS,YAAY,CAAC,EACpB,YAAY,EACZ,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,GAAG;IACjD,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC,2CAQA;AAGD,QAAA,MAAM,mBAAmB,gLAWvB,CAAC;AAGH,QAAA,MAAM,mBAAmB;iBAGR,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC;gDA+B3C,CAAC;AAGH,QAAA,MAAM,gBAAgB;;;;cAGR,SAAS,GAAG,aAAa;gDAmBrC,CAAC;AAGH,QAAA,MAAM,sBAAsB,6KAe1B,CAAC;AAEH,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,GACvB,CAAC"}
@@ -10,25 +10,16 @@ export type DropzoneProps = Omit<DropzoneOptions, 'onDrop'> & {
10
10
  onDrop?: (acceptedFiles: File[], fileRejections: FileRejection[], event: DropEvent) => void;
11
11
  children?: ReactNode;
12
12
  };
13
- export declare const Dropzone: {
14
- ({ accept, maxFiles, maxSize, minSize, onDrop, onError, disabled, src, className, children, debugForceDragActive, ...props }: DropzoneProps): import("react/jsx-runtime").JSX.Element;
15
- displayName: string;
16
- };
13
+ export declare const Dropzone: ({ accept, maxFiles, maxSize, minSize, onDrop, onError, disabled, src, className, children, debugForceDragActive, ...props }: DropzoneProps) => import("react/jsx-runtime").JSX.Element;
17
14
  export type DropzoneContentProps = {
18
15
  children?: ReactNode;
19
16
  className?: string;
20
17
  };
21
- export declare const DropzoneContent: {
22
- ({ children, className, }: DropzoneContentProps): import("react/jsx-runtime").JSX.Element | null;
23
- displayName: string;
24
- };
18
+ export declare const DropzoneContent: ({ children, className, }: DropzoneContentProps) => import("react/jsx-runtime").JSX.Element | null;
25
19
  export type DropzoneEmptyStateProps = {
26
20
  children?: ReactNode;
27
21
  className?: string;
28
22
  };
29
- export declare const DropzoneEmptyState: {
30
- ({ children, className, }: DropzoneEmptyStateProps): import("react/jsx-runtime").JSX.Element | null;
31
- displayName: string;
32
- };
23
+ export declare const DropzoneEmptyState: ({ children, className, }: DropzoneEmptyStateProps) => import("react/jsx-runtime").JSX.Element | null;
33
24
  export default Dropzone;
34
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/dropzone/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AA2BhF,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG;IAC5D,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,MAAM,CAAC,EAAE,CACP,aAAa,EAAE,IAAI,EAAE,EACrB,cAAc,EAAE,aAAa,EAAE,EAC/B,KAAK,EAAE,SAAS,KACb,IAAI,CAAC;IACV,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,QAAQ;kIAalB,aAAa;;CAmDf,CAAC;AAYF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAWF,eAAO,MAAM,eAAe;+BAGzB,oBAAoB;;CAgCtB,CAAC;AAIF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAeF,eAAO,MAAM,kBAAkB;+BAG5B,uBAAuB;;CAyFzB,CAAC;AAIF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/dropzone/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AA2BhF,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG;IAC5D,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,MAAM,CAAC,EAAE,CACP,aAAa,EAAE,IAAI,EAAE,EACrB,cAAc,EAAE,aAAa,EAAE,EAC/B,KAAK,EAAE,SAAS,KACb,IAAI,CAAC;IACV,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,6HAatB,aAAa,4CAmDf,CAAC;AAUF,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAWF,eAAO,MAAM,eAAe,GAAI,0BAG7B,oBAAoB,mDAgCtB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAeF,eAAO,MAAM,kBAAkB,GAAI,0BAGhC,uBAAuB,mDAyFzB,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"HeroMetricCard.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/hero-metric-card/HeroMetricCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EACV,mBAAmB,EAGpB,MAAM,SAAS,CAAC;AAyCjB,eAAO,MAAM,cAAc,4FA4J1B,CAAC"}
1
+ {"version":3,"file":"HeroMetricCard.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/hero-metric-card/HeroMetricCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EACV,mBAAmB,EAGpB,MAAM,SAAS,CAAC;AAyCjB,eAAO,MAAM,cAAc,4FA0JzB,CAAC"}