@mieweb/ui 0.7.2 → 0.7.3

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 (144) hide show
  1. package/dist/CsvBlock-OTFG3PYZ.cjs +15 -0
  2. package/dist/{CsvBlock-LVJARITD.cjs.map → CsvBlock-OTFG3PYZ.cjs.map} +1 -1
  3. package/dist/CsvBlock-PUSTBQ5B.js +6 -0
  4. package/dist/{CsvBlock-VTYNQ75L.js.map → CsvBlock-PUSTBQ5B.js.map} +1 -1
  5. package/dist/HtmlPreviewBlock-QHLSIMWJ.cjs +15 -0
  6. package/dist/{HtmlPreviewBlock-F33P37UD.cjs.map → HtmlPreviewBlock-QHLSIMWJ.cjs.map} +1 -1
  7. package/dist/HtmlPreviewBlock-YF2YVKKX.js +6 -0
  8. package/dist/{HtmlPreviewBlock-N4PPVJLJ.js.map → HtmlPreviewBlock-YF2YVKKX.js.map} +1 -1
  9. package/dist/MermaidBlock-H3TWNC4D.js +6 -0
  10. package/dist/{MermaidBlock-HUT53CRG.js.map → MermaidBlock-H3TWNC4D.js.map} +1 -1
  11. package/dist/MermaidBlock-ZLLBO3VY.cjs +15 -0
  12. package/dist/{MermaidBlock-G5X4FPUN.cjs.map → MermaidBlock-ZLLBO3VY.cjs.map} +1 -1
  13. package/dist/SurveyBlock-JLHS3YQD.js +6 -0
  14. package/dist/{SurveyBlock-PM3ZMWWR.js.map → SurveyBlock-JLHS3YQD.js.map} +1 -1
  15. package/dist/SurveyBlock-M2ZRTGVJ.cjs +15 -0
  16. package/dist/{SurveyBlock-ORTPGA5T.cjs.map → SurveyBlock-M2ZRTGVJ.cjs.map} +1 -1
  17. package/dist/brands/index.cjs +17 -17
  18. package/dist/brands/index.js +4 -4
  19. package/dist/{chunk-6QVI6DAO.cjs → chunk-4CUFXCC5.cjs} +5 -5
  20. package/dist/{chunk-6QVI6DAO.cjs.map → chunk-4CUFXCC5.cjs.map} +1 -1
  21. package/dist/{chunk-BMRQ4VME.js → chunk-4PIW3Y5M.js} +15 -8
  22. package/dist/chunk-4PIW3Y5M.js.map +1 -0
  23. package/dist/{chunk-6OCYG6J2.js → chunk-5J5PEUUA.js} +4 -4
  24. package/dist/{chunk-6OCYG6J2.js.map → chunk-5J5PEUUA.js.map} +1 -1
  25. package/dist/{chunk-DWIF6VXZ.js → chunk-6MMIWE7H.js} +13 -2
  26. package/dist/chunk-6MMIWE7H.js.map +1 -0
  27. package/dist/chunk-7C226TQI.js +76 -0
  28. package/dist/chunk-7C226TQI.js.map +1 -0
  29. package/dist/{chunk-WRYZ2752.js → chunk-D2GID3YK.js} +29 -6
  30. package/dist/chunk-D2GID3YK.js.map +1 -0
  31. package/dist/{chunk-VE6OUO7X.js → chunk-DWCYEPTT.js} +3 -3
  32. package/dist/{chunk-VE6OUO7X.js.map → chunk-DWCYEPTT.js.map} +1 -1
  33. package/dist/{chunk-NU6QKULE.js → chunk-EHQ77LL5.js} +3 -3
  34. package/dist/{chunk-NU6QKULE.js.map → chunk-EHQ77LL5.js.map} +1 -1
  35. package/dist/{chunk-PS5INHGC.js → chunk-EMMYFHOT.js} +3 -3
  36. package/dist/{chunk-PS5INHGC.js.map → chunk-EMMYFHOT.js.map} +1 -1
  37. package/dist/{chunk-ABAOZASX.cjs → chunk-FN6VHMLM.cjs} +8 -8
  38. package/dist/{chunk-ABAOZASX.cjs.map → chunk-FN6VHMLM.cjs.map} +1 -1
  39. package/dist/{chunk-H3HF36ZL.js → chunk-FPVRQCCL.js} +3 -3
  40. package/dist/{chunk-H3HF36ZL.js.map → chunk-FPVRQCCL.js.map} +1 -1
  41. package/dist/{chunk-5BDCQBYW.js → chunk-FTRGZOVJ.js} +3 -3
  42. package/dist/{chunk-5BDCQBYW.js.map → chunk-FTRGZOVJ.js.map} +1 -1
  43. package/dist/{chunk-7EB7665B.cjs → chunk-H7QSGFMZ.cjs} +8 -8
  44. package/dist/{chunk-7EB7665B.cjs.map → chunk-H7QSGFMZ.cjs.map} +1 -1
  45. package/dist/{chunk-VA7QN4DX.cjs → chunk-JDHIBJ5K.cjs} +2 -2
  46. package/dist/{chunk-VA7QN4DX.cjs.map → chunk-JDHIBJ5K.cjs.map} +1 -1
  47. package/dist/{chunk-OGPJ3LRF.cjs → chunk-JP5SGIXA.cjs} +4 -4
  48. package/dist/{chunk-OGPJ3LRF.cjs.map → chunk-JP5SGIXA.cjs.map} +1 -1
  49. package/dist/{chunk-TU36DBH2.cjs → chunk-K4S4FAYX.cjs} +9 -9
  50. package/dist/{chunk-TU36DBH2.cjs.map → chunk-K4S4FAYX.cjs.map} +1 -1
  51. package/dist/{chunk-3SRBIXQX.js → chunk-KRGKPUJH.js} +3 -3
  52. package/dist/{chunk-3SRBIXQX.js.map → chunk-KRGKPUJH.js.map} +1 -1
  53. package/dist/{chunk-NGLI2MSM.js → chunk-LC7YHZXM.js} +4 -4
  54. package/dist/{chunk-NGLI2MSM.js.map → chunk-LC7YHZXM.js.map} +1 -1
  55. package/dist/{chunk-6OQE4ZMG.cjs → chunk-LJBWCUKP.cjs} +8 -8
  56. package/dist/{chunk-6OQE4ZMG.cjs.map → chunk-LJBWCUKP.cjs.map} +1 -1
  57. package/dist/{chunk-54OW6ZPL.cjs → chunk-LJDBD2DD.cjs} +13 -2
  58. package/dist/chunk-LJDBD2DD.cjs.map +1 -0
  59. package/dist/{chunk-BCJFOSZX.js → chunk-MO65V64I.js} +2 -2
  60. package/dist/{chunk-BCJFOSZX.js.map → chunk-MO65V64I.js.map} +1 -1
  61. package/dist/{chunk-BX5ZODPF.js → chunk-N3Y43KOB.js} +3 -3
  62. package/dist/{chunk-BX5ZODPF.js.map → chunk-N3Y43KOB.js.map} +1 -1
  63. package/dist/{chunk-RZFSJD67.js → chunk-NLBT5O2X.js} +3 -3
  64. package/dist/{chunk-RZFSJD67.js.map → chunk-NLBT5O2X.js.map} +1 -1
  65. package/dist/{chunk-VWCMOWGH.cjs → chunk-NQ2D2V6O.cjs} +16 -16
  66. package/dist/{chunk-VWCMOWGH.cjs.map → chunk-NQ2D2V6O.cjs.map} +1 -1
  67. package/dist/{chunk-7AMOKHTW.cjs → chunk-P3JEMF6E.cjs} +4 -4
  68. package/dist/{chunk-7AMOKHTW.cjs.map → chunk-P3JEMF6E.cjs.map} +1 -1
  69. package/dist/{chunk-M26KJKZG.cjs → chunk-RDGRKYQ5.cjs} +29 -6
  70. package/dist/chunk-RDGRKYQ5.cjs.map +1 -0
  71. package/dist/chunk-SEN7FIF3.cjs +158 -0
  72. package/dist/chunk-SEN7FIF3.cjs.map +1 -0
  73. package/dist/{chunk-VVI32P7L.cjs → chunk-SPWVKDGC.cjs} +15 -7
  74. package/dist/chunk-SPWVKDGC.cjs.map +1 -0
  75. package/dist/{chunk-Q5VBO3I5.cjs → chunk-SYIFEJSF.cjs} +26 -26
  76. package/dist/{chunk-Q5VBO3I5.cjs.map → chunk-SYIFEJSF.cjs.map} +1 -1
  77. package/dist/{chunk-CKRRJO7T.cjs → chunk-TVLZZI5Q.cjs} +5 -5
  78. package/dist/{chunk-CKRRJO7T.cjs.map → chunk-TVLZZI5Q.cjs.map} +1 -1
  79. package/dist/{chunk-QI2SB6U3.cjs → chunk-URHXR5SC.cjs} +14 -14
  80. package/dist/{chunk-QI2SB6U3.cjs.map → chunk-URHXR5SC.cjs.map} +1 -1
  81. package/dist/{chunk-MWPPOX6F.js → chunk-UZ5NGGMI.js} +4 -4
  82. package/dist/{chunk-MWPPOX6F.js.map → chunk-UZ5NGGMI.js.map} +1 -1
  83. package/dist/{chunk-RUEEDOE3.cjs → chunk-YIXTGWT4.cjs} +5 -5
  84. package/dist/{chunk-RUEEDOE3.cjs.map → chunk-YIXTGWT4.cjs.map} +1 -1
  85. package/dist/{chunk-OLFTGCGD.js → chunk-Z4PECE5S.js} +7 -7
  86. package/dist/{chunk-OLFTGCGD.js.map → chunk-Z4PECE5S.js.map} +1 -1
  87. package/dist/components/AlertDialog/index.cjs +3 -3
  88. package/dist/components/AlertDialog/index.js +2 -2
  89. package/dist/components/Button/index.cjs +3 -3
  90. package/dist/components/Button/index.js +1 -1
  91. package/dist/components/CountryCodeDropdown/index.cjs +4 -4
  92. package/dist/components/CountryCodeDropdown/index.d.cts +5 -1
  93. package/dist/components/CountryCodeDropdown/index.d.ts +5 -1
  94. package/dist/components/CountryCodeDropdown/index.js +1 -1
  95. package/dist/components/FloatingWindow/index.cjs +4 -4
  96. package/dist/components/FloatingWindow/index.js +2 -2
  97. package/dist/components/Markdown/index.cjs +16 -16
  98. package/dist/components/Markdown/index.js +7 -7
  99. package/dist/components/MediaEditor/index.cjs +8 -8
  100. package/dist/components/MediaEditor/index.js +3 -3
  101. package/dist/components/MediaPlayer/index.cjs +5 -5
  102. package/dist/components/MediaPlayer/index.js +2 -2
  103. package/dist/components/Q/index.cjs +109 -0
  104. package/dist/components/Q/index.cjs.map +1 -0
  105. package/dist/components/Q/index.d.cts +27 -0
  106. package/dist/components/Q/index.d.ts +27 -0
  107. package/dist/components/Q/index.js +4 -0
  108. package/dist/components/Q/index.js.map +1 -0
  109. package/dist/components/RichTextEditor/index.cjs +5 -5
  110. package/dist/components/RichTextEditor/index.js +2 -2
  111. package/dist/datavis.cjs +2 -2
  112. package/dist/datavis.js +1 -1
  113. package/dist/esheet.cjs +5 -5
  114. package/dist/esheet.js +2 -2
  115. package/dist/index.cjs +967 -594
  116. package/dist/index.cjs.map +1 -1
  117. package/dist/index.d.cts +219 -3
  118. package/dist/index.d.ts +219 -3
  119. package/dist/index.js +408 -39
  120. package/dist/index.js.map +1 -1
  121. package/dist/q.cjs +109 -0
  122. package/dist/q.cjs.map +1 -0
  123. package/dist/q.d.cts +5 -0
  124. package/dist/q.d.ts +5 -0
  125. package/dist/q.js +4 -0
  126. package/dist/q.js.map +1 -0
  127. package/dist/styles.css +1 -1
  128. package/dist/tailwind-preset.cjs +4 -4
  129. package/dist/tailwind-preset.js +1 -1
  130. package/package.json +19 -4
  131. package/dist/CsvBlock-LVJARITD.cjs +0 -15
  132. package/dist/CsvBlock-VTYNQ75L.js +0 -6
  133. package/dist/HtmlPreviewBlock-F33P37UD.cjs +0 -15
  134. package/dist/HtmlPreviewBlock-N4PPVJLJ.js +0 -6
  135. package/dist/MermaidBlock-G5X4FPUN.cjs +0 -15
  136. package/dist/MermaidBlock-HUT53CRG.js +0 -6
  137. package/dist/SurveyBlock-ORTPGA5T.cjs +0 -15
  138. package/dist/SurveyBlock-PM3ZMWWR.js +0 -6
  139. package/dist/chunk-54OW6ZPL.cjs.map +0 -1
  140. package/dist/chunk-BMRQ4VME.js.map +0 -1
  141. package/dist/chunk-DWIF6VXZ.js.map +0 -1
  142. package/dist/chunk-M26KJKZG.cjs.map +0 -1
  143. package/dist/chunk-VVI32P7L.cjs.map +0 -1
  144. package/dist/chunk-WRYZ2752.js.map +0 -1
package/dist/index.js CHANGED
@@ -1,16 +1,23 @@
1
+ import { getModelBytes } from './chunk-6I7IDZ4A.js';
2
+ export { Toggle, toggleVariants } from './chunk-PTZB2GKL.js';
1
3
  export { TranscriptView, formatTimestampMs } from './chunk-SEPYBAML.js';
2
4
  export { VisuallyHidden } from './chunk-H2CIKJQI.js';
3
- export { brands } from './chunk-BCJFOSZX.js';
5
+ export { brands } from './chunk-MO65V64I.js';
6
+ export { enterpriseHealthBrand } from './chunk-MTZPVOP6.js';
7
+ export { miewebBrand } from './chunk-NERS5ZT6.js';
4
8
  export { wagglelineBrand } from './chunk-2NTYAALC.js';
5
9
  export { webchartBrand } from './chunk-CW66SO5O.js';
10
+ export { ozwellBrand } from './chunk-5YUBQIC7.js';
6
11
  export { defaultBrand } from './chunk-PSTGFXQG.js';
7
- export { enterpriseHealthBrand } from './chunk-MTZPVOP6.js';
8
- export { miewebBrand } from './chunk-NERS5ZT6.js';
9
12
  export { createBrandPreset, generateBrandCSS, generateTailwindTheme } from './chunk-WOYUQ4AT.js';
10
13
  export { bluehiveBrand } from './chunk-3T7QGLNB.js';
11
14
  export { ccmeBrand } from './chunk-SCQRJPSV.js';
12
- export { ozwellBrand } from './chunk-5YUBQIC7.js';
13
- import { getModelBytes } from './chunk-6I7IDZ4A.js';
15
+ import { SparklesIcon, RefreshIcon, CloseIcon, AIMessageDisplay } from './chunk-RZJXCI53.js';
16
+ export { AILogoIcon, AIMessageDisplay, AITypingIndicator, ChatBubble, ChevronIcon, CloseIcon, CollapsiblePill, MCPToolCallDisplay, MessageAvatar, RefreshIcon, ResourceLink, SendIcon, SparklesIcon, SpinnerIcon, ToolStatusIcon, getToolIcon } from './chunk-RZJXCI53.js';
17
+ import { EmptyState } from './chunk-FDV7EQWH.js';
18
+ export { AttachmentPreview, ConversationHeader, ConversationListItem, ConversationListSkeleton, DateSeparator, EmptyState, LightboxModal, LoadMoreButton, MessageBubble, MessageList, MessageStatusIcon, MessageThread, MessagingSplitView, ReadReceiptIndicator, SkeletonMessage, TypingIndicator, bubbleVariants, formatDateLabel, formatFileSize, formatLastSeen, getConversationSubtitle, getConversationTitle, groupMessagesByDate, headerVariants, isSameSenderGroup, useMessageScroll, useMessages, useReadReceipts, useTypingIndicator } from './chunk-FDV7EQWH.js';
19
+ import { MessageComposer } from './chunk-EKRT7K2K.js';
20
+ export { AttachmentPicker, AttachmentPreviewItem, CameraButton, CharacterCounter, DragDropZone, MessageComposer, SendButton, generateAttachmentId, getFileType, sendButtonVariants, validateFile } from './chunk-EKRT7K2K.js';
14
21
  import { Switch, switchThumbVariants, switchTrackVariants } from './chunk-AQ564XO7.js';
15
22
  export { Switch, switchThumbVariants, switchTrackVariants } from './chunk-AQ564XO7.js';
16
23
  import { Table, TableHeader, TableRow, TableHead, TableBody, TableCell } from './chunk-TNUL4LGG.js';
@@ -20,63 +27,58 @@ export { Tabs, TabsContent, TabsList, TabsTrigger, tabsListVariants, tabsTrigger
20
27
  import { Text } from './chunk-3YSIZ2CK.js';
21
28
  export { SmallMuted, Text, textVariants } from './chunk-3YSIZ2CK.js';
22
29
  export { ThemeProvider, ThemeProviderContext, ThemeToggle, themeToggleIconVariants, themeToggleVariants, useThemeContext } from './chunk-SH6B4MG5.js';
23
- export { Toggle, toggleVariants } from './chunk-PTZB2GKL.js';
30
+ export { DateButton, DatePicker, RadioOption, SchedulePicker, TimeButton, TimePicker, dateButtonVariants, radioOptionVariants, timeButtonVariants } from './chunk-23AYDOCH.js';
31
+ export { ScrollArea, scrollAreaVariants } from './chunk-HS25RPDW.js';
24
32
  export { Sheet, SheetBody, SheetClose, SheetDescription, SheetFooter, SheetHeader, SheetTitle, sheetContentVariants, sheetOverlayVariants } from './chunk-LMBXJZLG.js';
25
33
  import { Skeleton } from './chunk-ZIUADGAR.js';
26
34
  export { Skeleton, SkeletonCard, SkeletonTable, SkeletonText, skeletonVariants } from './chunk-ZIUADGAR.js';
27
35
  import { Spinner, SpinnerWithLabel } from './chunk-UA7E7PDS.js';
28
36
  export { FullPageSpinner, Spinner, SpinnerWithLabel, spinnerVariants } from './chunk-UA7E7PDS.js';
29
- import { SparklesIcon, RefreshIcon, CloseIcon, AIMessageDisplay } from './chunk-RZJXCI53.js';
30
- export { AILogoIcon, AIMessageDisplay, AITypingIndicator, ChatBubble, ChevronIcon, CloseIcon, CollapsiblePill, MCPToolCallDisplay, MessageAvatar, RefreshIcon, ResourceLink, SendIcon, SparklesIcon, SpinnerIcon, ToolStatusIcon, getToolIcon } from './chunk-RZJXCI53.js';
31
- import { EmptyState } from './chunk-FDV7EQWH.js';
32
- export { AttachmentPreview, ConversationHeader, ConversationListItem, ConversationListSkeleton, DateSeparator, EmptyState, LightboxModal, LoadMoreButton, MessageBubble, MessageList, MessageStatusIcon, MessageThread, MessagingSplitView, ReadReceiptIndicator, SkeletonMessage, TypingIndicator, bubbleVariants, formatDateLabel, formatFileSize, formatLastSeen, getConversationSubtitle, getConversationTitle, groupMessagesByDate, headerVariants, isSameSenderGroup, useMessageScroll, useMessages, useReadReceipts, useTypingIndicator } from './chunk-FDV7EQWH.js';
33
- import { MessageComposer } from './chunk-EKRT7K2K.js';
34
- export { AttachmentPicker, AttachmentPreviewItem, CameraButton, CharacterCounter, DragDropZone, MessageComposer, SendButton, generateAttachmentId, getFileType, sendButtonVariants, validateFile } from './chunk-EKRT7K2K.js';
37
+ export { Pagination, SimplePagination, paginationButtonVariants } from './chunk-FDUA6OGN.js';
35
38
  export { PhoneInput, PhoneInputGroup } from './chunk-3D4ITDLO.js';
36
39
  import { Progress } from './chunk-CEQJGUAS.js';
37
40
  export { CircularProgress, Progress, circularProgressVariants, progressBarFillVariants, progressBarTrackVariants } from './chunk-CEQJGUAS.js';
38
41
  export { QuickAction, QuickActionGroup, QuickActionIcons, quickActionIconVariants, quickActionVariants } from './chunk-5U6GETAW.js';
39
42
  import { RecordButton } from './chunk-VNWJTCBQ.js';
40
43
  export { RecordButton, formatDuration, recordButtonVariants } from './chunk-VNWJTCBQ.js';
41
- export { RichTextEditor, convertAngleBracketsToMustache, processDictation } from './chunk-5BDCQBYW.js';
44
+ export { RichTextEditor, convertAngleBracketsToMustache, processDictation } from './chunk-FTRGZOVJ.js';
42
45
  export { Separator, separatorVariants } from './chunk-OQWZYKJM.js';
43
- export { DateButton, DatePicker, RadioOption, SchedulePicker, TimeButton, TimePicker, dateButtonVariants, radioOptionVariants, timeButtonVariants } from './chunk-23AYDOCH.js';
44
- export { ScrollArea, scrollAreaVariants } from './chunk-HS25RPDW.js';
45
- export { FloatingWindow, MinimizedWindow } from './chunk-BX5ZODPF.js';
46
- export { CodeBlock, MarkdownRenderer, highlightCode, useMarkdown } from './chunk-OLFTGCGD.js';
47
- export { CsvBlock } from './chunk-6OCYG6J2.js';
48
- export { HtmlPreviewBlock } from './chunk-MWPPOX6F.js';
49
- export { MermaidBlock } from './chunk-NU6QKULE.js';
50
- export { SurveyBlock } from './chunk-VE6OUO7X.js';
51
- export { FenceBlock } from './chunk-RZFSJD67.js';
52
- export { FillerWordsModal, MediaEditor, SilenceSettingsModal, SpeedMarkerMenu, WordEditorModal } from './chunk-NGLI2MSM.js';
46
+ import { Dropdown, DropdownItem, DropdownSeparator, DropdownHeader } from './chunk-HIDV32ZX.js';
47
+ export { Dropdown, DropdownContent, DropdownHeader, DropdownItem, DropdownLabel, DropdownSeparator } from './chunk-HIDV32ZX.js';
48
+ export { FloatingWindow, MinimizedWindow } from './chunk-N3Y43KOB.js';
49
+ export { CodeBlock, MarkdownRenderer, highlightCode, useMarkdown } from './chunk-Z4PECE5S.js';
50
+ export { CsvBlock } from './chunk-5J5PEUUA.js';
51
+ export { HtmlPreviewBlock } from './chunk-UZ5NGGMI.js';
52
+ export { MermaidBlock } from './chunk-EHQ77LL5.js';
53
+ export { SurveyBlock } from './chunk-DWCYEPTT.js';
54
+ export { FenceBlock } from './chunk-NLBT5O2X.js';
55
+ export { FillerWordsModal, MediaEditor, SilenceSettingsModal, SpeedMarkerMenu, WordEditorModal } from './chunk-LC7YHZXM.js';
53
56
  export { Slider, sliderRangeVariants, sliderThumbVariants, sliderTrackVariants } from './chunk-OTQ72WX3.js';
54
57
  import './chunk-RISZWWEQ.js';
55
- export { MediaPlayer, inferMediaKind, mediaPlayerVariants } from './chunk-PS5INHGC.js';
56
- export { Pagination, SimplePagination, paginationButtonVariants } from './chunk-FDUA6OGN.js';
58
+ export { MediaPlayer, inferMediaKind, mediaPlayerVariants } from './chunk-EMMYFHOT.js';
59
+ export { Breadcrumb, BreadcrumbSlash } from './chunk-5Y5FSR4N.js';
57
60
  import './chunk-OF7NTZ2I.js';
58
61
  import { Checkbox } from './chunk-KFLDXJEE.js';
59
62
  export { Checkbox, CheckboxGroup, checkboxVariants } from './chunk-KFLDXJEE.js';
60
63
  export { CollabStatus, defaultCollabStatusLabels, useYjsCollabStatus } from './chunk-SVSHA7XV.js';
61
64
  export { Collapsible, CollapsibleContent, CollapsibleTrigger } from './chunk-BJKAVWED.js';
62
- export { CountryCodeDropdown, formatE164, validatePhoneNumber } from './chunk-BMRQ4VME.js';
63
- import { Dropdown, DropdownItem, DropdownSeparator, DropdownHeader } from './chunk-HIDV32ZX.js';
64
- export { Dropdown, DropdownContent, DropdownHeader, DropdownItem, DropdownLabel, DropdownSeparator } from './chunk-HIDV32ZX.js';
65
+ import { CountryDropdownBase } from './chunk-4PIW3Y5M.js';
66
+ export { CountryCodeDropdown, formatE164, validatePhoneNumber } from './chunk-4PIW3Y5M.js';
67
+ export { miewebUIPreset, miewebUISafelist } from './chunk-6MMIWE7H.js';
65
68
  import { Alert, AlertTitle, AlertDescription } from './chunk-6EWJGRC3.js';
66
69
  export { Alert, AlertDescription, AlertTitle, alertVariants } from './chunk-6EWJGRC3.js';
67
- import { AlertDialog } from './chunk-H3HF36ZL.js';
68
- export { AlertDialog } from './chunk-H3HF36ZL.js';
70
+ import { AlertDialog } from './chunk-FPVRQCCL.js';
71
+ export { AlertDialog } from './chunk-FPVRQCCL.js';
69
72
  export { AudioPlayer, ProgressBar, audioPlayerVariants, formatTime as formatAudioTime, playButtonVariants } from './chunk-XO3WLK65.js';
70
73
  export { AudioRecorder, audioRecorderVariants, controlButtonVariants, formatTime, waveformContainerVariants } from './chunk-2DW4PUJD.js';
71
74
  export { Autocomplete } from './chunk-P6L74SKG.js';
72
75
  import { Avatar } from './chunk-DCBMTFLE.js';
73
76
  export { Avatar, AvatarGroup, avatarVariants, getInitials } from './chunk-DCBMTFLE.js';
74
77
  import './chunk-IQ4KQJAO.js';
75
- export { Breadcrumb, BreadcrumbSlash } from './chunk-5Y5FSR4N.js';
76
78
  import { evaluateDue, completedKeys, normalizeOrders } from './chunk-Y5KEFV5O.js';
77
79
  export { buildChartOrderRows, buildEncounterOrderRows, dueForOrder, evaluateDue, evaluateProgram, isApplicable } from './chunk-Y5KEFV5O.js';
78
- import { useCodeLookupConfig, RowActionToolbar, RowIconButton, toolbarKeyNav, parseSig, labelToMedicationFields, MedicationEditor } from './chunk-3SRBIXQX.js';
79
- export { ALLERGY_TYPE_LABELS, AllergyList, AllergyManager, CodeLookupProvider, MEDICATION_STATUS_LABELS, MedicationEditor, MedicationList, MedicationReconciliation, RowActionToolbar, RowIconButton, labelToMedicationFields, lookupToMedicationFields, parseMedicationLabel, parseSig, toolbarKeyNav, useCodeLookupConfig } from './chunk-3SRBIXQX.js';
80
+ import { useCodeLookupConfig, RowActionToolbar, RowIconButton, toolbarKeyNav, parseSig, labelToMedicationFields, MedicationEditor } from './chunk-KRGKPUJH.js';
81
+ export { ALLERGY_TYPE_LABELS, AllergyList, AllergyManager, CodeLookupProvider, MEDICATION_STATUS_LABELS, MedicationEditor, MedicationList, MedicationReconciliation, RowActionToolbar, RowIconButton, labelToMedicationFields, lookupToMedicationFields, parseMedicationLabel, parseSig, toolbarKeyNav, useCodeLookupConfig } from './chunk-KRGKPUJH.js';
80
82
  import { Textarea } from './chunk-AFGADE3B.js';
81
83
  export { Textarea, textareaVariants } from './chunk-AFGADE3B.js';
82
84
  import { Tooltip } from './chunk-FJ7YPVKV.js';
@@ -95,10 +97,10 @@ import { Modal, ModalHeader, ModalTitle, ModalClose, ModalBody, ModalFooter } fr
95
97
  export { Modal, ModalBody, ModalClose, ModalFooter, ModalHeader, ModalTitle, modalContentVariants, modalOverlayVariants } from './chunk-XMCIXHGH.js';
96
98
  import { Input, inputVariants } from './chunk-YXCE2HSK.js';
97
99
  export { Input, inputVariants } from './chunk-YXCE2HSK.js';
98
- import { Plus, GripVertical, RefreshCw, Pencil, AlertCircle, Clock, FileText, ClipboardList, ArrowLeft, Stethoscope, Users, Mail, Phone, ClipboardCheck, Eye, Info, Link, ChevronUp, ChevronDown, History, CheckCircle, StickyNote, ExternalLink, MoreVertical, Trash2, Send, Scan, TestTube2, Pill, Share, User, Download, ChevronRight, Calendar, Printer, ClipboardPlus, FilePlus, FileCheck, Wheat, Bell, FileHeart, HeartPulse, Paperclip, HelpCircle, MoreHorizontal, AlertTriangle, Upload as Upload$1, Camera, ScanLine, Image, X as X$1, Check as Check$1 } from './chunk-3PXOIAF6.js';
100
+ import { Plus, GripVertical, RefreshCw, Pencil, AlertCircle, ArrowLeft, Users, FilePlus, CheckCircle, ChevronDown, Clock, FileText, ClipboardList, Stethoscope, Mail, Phone, ClipboardCheck, Eye, Info, Link, ChevronUp, History, StickyNote, ExternalLink, MoreVertical, Trash2, Send, Scan, TestTube2, Pill, Share, User, Download, ChevronRight, Calendar, Printer, ClipboardPlus, FileCheck, Wheat, Bell, FileHeart, HeartPulse, Paperclip, HelpCircle, MoreHorizontal, AlertTriangle, Upload as Upload$1, Camera, ScanLine, Image, X as X$1, Check as Check$1 } from './chunk-3PXOIAF6.js';
99
101
  export { Accessibility as AccessibilityIcon, Activity as ActivityIcon, AlertCircle as AlertCircleIcon, AlertTriangle as AlertTriangleIcon, Wheat as AllergyIcon, WheatOff as AllergyOffIcon, Ambulance as AmbulanceIcon, ArrowLeft as ArrowLeftIcon, ArrowRight as ArrowRightIcon, ArrowUpDown as ArrowUpDownIcon, AtSign as AtSignIcon, Baby as BabyIcon, BadgeAlert as BadgeAlertIcon, BadgeCheck as BadgeCheckIcon, BadgeMinus as BadgeMinusIcon, BadgePlus as BadgePlusIcon, BadgeX as BadgeXIcon, Ban as BanIcon, Bandage as BandageIcon, BedDouble as BedDoubleIcon, Bed as BedIcon, BedSingle as BedSingleIcon, Bell as BellIcon, BellOff as BellOffIcon, Biohazard as BiohazardIcon, Bone as BoneIcon, BookOpenCheck as BookOpenCheckIcon, BookOpen as BookOpenIcon, Bookmark as BookmarkIcon, Brain as BrainIcon, Briefcase as BriefcaseIcon, BriefcaseMedical as BriefcaseMedicalIcon, Building as BuildingIcon, CalendarCheck as CalendarCheckIcon, Calendar as CalendarIcon, Camera as CameraIcon, Cannabis as CannabisIcon, BarChart3 as ChartIcon, CheckCircle as CheckCircleIcon, Check as CheckIcon, ChevronDown as ChevronDownIcon, ChevronLeft as ChevronLeftIcon, ChevronRight as ChevronRightIcon, ChevronUp as ChevronUpIcon, Cigarette as CigaretteIcon, CigaretteOff as CigaretteOffIcon, CircleDotDashed as CircleDotDashedIcon, CircleDot as CircleDotIcon, CircleUser as CircleUserIcon, ClipboardCheck as ClipboardCheckIcon, Clipboard as ClipboardIcon, ClipboardList as ClipboardListIcon, ClipboardPlus as ClipboardPlusIcon, Clock as ClockIcon, Cog as CogIcon, Columns as ColumnsIcon, Copy as CopyIcon, CreditCard as CreditCardIcon, Cross as CrossIcon, Dna as DnaIcon, DollarSign as DollarSignIcon, Download as DownloadIcon, Droplet as DropletIcon, Droplets as DropletsIcon, Ear as EarIcon, ExternalLink as ExternalLinkIcon, Eye as EyeIcon, EyeOff as EyeOffIcon, FileCheck2 as FileCheck2Icon, FileCheck as FileCheckIcon, FileHeart as FileHeartIcon, File as FileIcon, FilePlus2 as FilePlus2Icon, FilePlus as FilePlusIcon, FileText as FileTextIcon, Filter as FilterIcon, Fingerprint as FingerprintIcon, Flag as FlagIcon, FlaskConical as FlaskIcon, FlaskRound as FlaskRoundIcon, Folder as FolderIcon, FolderOpen as FolderOpenIcon, Footprints as FootprintsIcon, Glasses as GlassesIcon, Globe as GlobeIcon, LayoutGrid as GridIcon, GripVertical as GripVerticalIcon, Hand as HandIcon, HandMetal as HandMetalIcon, Hash as HashIcon, Heart as HeartIcon, HeartOff as HeartOffIcon, HeartPulse as HeartPulseIcon, HelpCircle as HelpCircleIcon, History as HistoryIcon, Home as HomeIcon, Hospital as HospitalIcon, Image as ImageIcon, Info as InfoIcon, Key as KeyIcon, Link as LinkIcon, List as ListIcon, Loader2 as LoaderIcon, Lock as LockIcon, LogIn as LogInIcon, LogOut as LogOutIcon, Mail as MailIcon, MapPin as MapPinIcon, Maximize as MaximizeIcon, Menu as MenuIcon, MessageSquare as MessageIcon, Microscope as MicroscopeIcon, Minimize as MinimizeIcon, Minus as MinusIcon, Monitor as MonitorIcon, Moon as MoonIcon, MoreHorizontal as MoreHorizontalIcon, MoreVertical as MoreVerticalIcon, NotebookPen as NotebookPenIcon, Palette as PaletteIcon, Paperclip as PaperclipIcon, CircleUserRound as PatientIcon, Pencil as PencilIcon, UserRound as PersonIcon, Phone as PhoneIcon, PieChart as PieChartIcon, Pill as PillIcon, Plus as PlusIcon, Printer as PrinterIcon, Radiation as RadiationIcon, Ruler as RulerIcon, Save as SaveIcon, Scale as ScaleIcon, Scaling as ScalingIcon, ScanEye as ScanEyeIcon, Scan as ScanIcon, ScanLine as ScanLineIcon, Search as SearchIcon, Settings as SettingsIcon, Share as ShareIcon, ShieldCheck as ShieldCheckIcon, Shield as ShieldIcon, ShieldPlus as ShieldPlusIcon, Sliders as SlidersIcon, Sparkle as SparkleIcon, Star as StarIcon, Stethoscope as StethoscopeIcon, StickyNote as StickyNoteIcon, Sun as SunIcon, Syringe as SyringeIcon, Table as TableIcon, Tablets as TabletsIcon, Tag as TagIcon, TestTube2 as TestTubeIcon, TestTubes as TestTubesIcon, Thermometer as ThermometerIcon, ThermometerSun as ThermometerSunIcon, ThumbsDown as ThumbsDownIcon, ThumbsUp as ThumbsUpIcon, Timer as TimerIcon, Trash2 as TrashIcon, TrendingDown as TrendingDownIcon, TrendingUp as TrendingUpIcon, Truck as TruckIcon, Unlock as UnlockIcon, Upload as UploadIcon, UserCheck as UserCheckIcon, User as UserIcon, UserMinus as UserMinusIcon, UserPlus as UserPlusIcon, UserRoundCheck as UserRoundCheckIcon, UserRoundMinus as UserRoundMinusIcon, UserRoundPlus as UserRoundPlusIcon, UserRoundX as UserRoundXIcon, Users as UsersIcon, Weight as WeightIcon, Wrench as WrenchIcon, XCircle as XCircleIcon, X2 as XIcon, Zap as ZapIcon } from './chunk-3PXOIAF6.js';
100
- import { Button, buttonVariants } from './chunk-WRYZ2752.js';
101
- export { Button, buttonVariants } from './chunk-WRYZ2752.js';
102
+ import { Button, buttonVariants } from './chunk-D2GID3YK.js';
103
+ export { Button, buttonVariants } from './chunk-D2GID3YK.js';
102
104
  import { Badge } from './chunk-BMSG4NBH.js';
103
105
  export { Badge, badgeVariants } from './chunk-BMSG4NBH.js';
104
106
  import { useCommandK, useIsMobile, useMediaQuery, useScrollSpy } from './chunk-GTHNWP4P.js';
@@ -127,7 +129,6 @@ import { cn } from './chunk-TQONQSJO.js';
127
129
  export { cn, miewebUITwMergeConflicts } from './chunk-TQONQSJO.js';
128
130
  import { isStorybookDocsMode } from './chunk-VSQF22GL.js';
129
131
  export { isStorybookDocsMode } from './chunk-VSQF22GL.js';
130
- export { miewebUIPreset, miewebUISafelist } from './chunk-DWIF6VXZ.js';
131
132
  import * as React10 from 'react';
132
133
  import React10__default, { createContext, useState, useEffect, useCallback, useMemo, useContext, useRef } from 'react';
133
134
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
@@ -11231,6 +11232,350 @@ function CopyIcon({ className }) {
11231
11232
  }
11232
11233
  );
11233
11234
  }
11235
+ var ButtonGroup = React10.forwardRef(
11236
+ ({ orientation = "auto", split, className, children, ...props }, ref) => {
11237
+ const innerRef = React10.useRef(null);
11238
+ React10.useImperativeHandle(ref, () => innerRef.current);
11239
+ const [stacked, setStacked] = React10.useState(false);
11240
+ const requiredWidth = React10.useRef(0);
11241
+ React10.useLayoutEffect(() => {
11242
+ if (orientation !== "auto") return;
11243
+ const el = innerRef.current;
11244
+ if (!el) return;
11245
+ const measure = () => {
11246
+ if (!stacked) {
11247
+ const overflow = Array.from(
11248
+ el.querySelectorAll('[data-slot="button-label"]')
11249
+ ).reduce(
11250
+ (sum, label) => sum + Math.max(0, label.scrollWidth - label.clientWidth),
11251
+ 0
11252
+ );
11253
+ if (overflow > 0) {
11254
+ requiredWidth.current = el.clientWidth + overflow;
11255
+ setStacked(true);
11256
+ }
11257
+ } else if (el.clientWidth >= requiredWidth.current) {
11258
+ setStacked(false);
11259
+ }
11260
+ };
11261
+ measure();
11262
+ if (typeof globalThis.ResizeObserver === "undefined") return;
11263
+ const observer = new globalThis.ResizeObserver(measure);
11264
+ observer.observe(el);
11265
+ return () => observer.disconnect();
11266
+ }, [orientation, stacked, children]);
11267
+ const isStacked = orientation === "vertical" || orientation === "auto" && stacked;
11268
+ const items = React10.Children.toArray(children);
11269
+ const splitCount = split === true ? 1 : typeof split === "number" ? split : 0;
11270
+ const splitIndex = !isStacked && splitCount > 0 && splitCount < items.length ? splitCount : 0;
11271
+ return /* @__PURE__ */ jsx(
11272
+ "div",
11273
+ {
11274
+ ref: innerRef,
11275
+ "data-slot": "button-group",
11276
+ "data-orientation": isStacked ? "vertical" : "horizontal",
11277
+ className: cn(
11278
+ "flex gap-3",
11279
+ isStacked ? "flex-col items-stretch" : "flex-row items-center justify-end",
11280
+ className
11281
+ ),
11282
+ ...props,
11283
+ children: splitIndex > 0 ? /* @__PURE__ */ jsxs(Fragment, { children: [
11284
+ items.slice(0, splitIndex),
11285
+ /* @__PURE__ */ jsx("div", { className: "flex-1", "aria-hidden": "true" }),
11286
+ items.slice(splitIndex)
11287
+ ] }) : children
11288
+ }
11289
+ );
11290
+ }
11291
+ );
11292
+ ButtonGroup.displayName = "ButtonGroup";
11293
+ var defaultCaseManagementHeaderLabels = {
11294
+ caseNumberTooltip: (caseNumber) => `Case# ${caseNumber}`,
11295
+ daysOpenTerm: "Days Open",
11296
+ mrn: "MRN",
11297
+ dob: "DOB",
11298
+ formatAge: (age) => `(${age} y.o.)`,
11299
+ addCaseNote: "Add Case Note",
11300
+ closeCase: "Close Case",
11301
+ back: "Go back",
11302
+ expandDetails: "Show case details",
11303
+ collapseDetails: "Hide case details",
11304
+ editing: (names) => `${names.join(", ")} ${names.length === 1 ? "is" : "are"} editing`,
11305
+ emptyValue: "\u2014"
11306
+ };
11307
+ var MS_PER_DAY = 864e5;
11308
+ function computeDaysOpen(openedDate) {
11309
+ if (!openedDate) return null;
11310
+ const opened = Date.parse(openedDate);
11311
+ if (Number.isNaN(opened)) return null;
11312
+ return Math.max(0, Math.floor((Date.now() - opened) / MS_PER_DAY));
11313
+ }
11314
+ function BarDivider() {
11315
+ return /* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: "bg-border h-4 w-px shrink-0" });
11316
+ }
11317
+ function HeaderActionButton({
11318
+ label,
11319
+ mobileIcon,
11320
+ desktopLeftIcon,
11321
+ onClick
11322
+ }) {
11323
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
11324
+ /* @__PURE__ */ jsx(
11325
+ Button,
11326
+ {
11327
+ variant: "ghost",
11328
+ size: "icon",
11329
+ onClick,
11330
+ "aria-label": label,
11331
+ className: "h-8 w-8 md:hidden",
11332
+ children: mobileIcon
11333
+ }
11334
+ ),
11335
+ /* @__PURE__ */ jsx(
11336
+ Button,
11337
+ {
11338
+ variant: "ghost",
11339
+ size: "sm",
11340
+ onClick,
11341
+ leftIcon: desktopLeftIcon,
11342
+ className: "hidden md:inline-flex",
11343
+ children: label
11344
+ }
11345
+ )
11346
+ ] });
11347
+ }
11348
+ var CaseContextBar = React10.forwardRef(
11349
+ ({
11350
+ caseInfo,
11351
+ showBackButton = false,
11352
+ onBack,
11353
+ editingUsers,
11354
+ collabStatus,
11355
+ labels,
11356
+ className,
11357
+ "data-testid": testId = "case-context-bar",
11358
+ ...props
11359
+ }, ref) => {
11360
+ const l = { ...defaultCaseManagementHeaderLabels, ...labels };
11361
+ return /* @__PURE__ */ jsxs(
11362
+ "div",
11363
+ {
11364
+ ref,
11365
+ "data-testid": testId,
11366
+ "data-slot": "case-context-bar",
11367
+ className: cn(
11368
+ "bg-primary-50 dark:bg-primary-950",
11369
+ "flex flex-wrap items-center gap-x-3 gap-y-1 px-4 py-1.5",
11370
+ className
11371
+ ),
11372
+ ...props,
11373
+ children: [
11374
+ showBackButton && /* @__PURE__ */ jsx(
11375
+ Button,
11376
+ {
11377
+ variant: "ghost",
11378
+ size: "icon",
11379
+ onClick: onBack,
11380
+ disabled: !onBack,
11381
+ "aria-label": l.back,
11382
+ className: "-ms-2 h-6 w-6 shrink-0",
11383
+ children: /* @__PURE__ */ jsx(ArrowLeft, { size: 16 })
11384
+ }
11385
+ ),
11386
+ /* @__PURE__ */ jsxs(
11387
+ "span",
11388
+ {
11389
+ title: l.caseNumberTooltip(caseInfo.caseNumber),
11390
+ className: "text-foreground text-sm font-bold whitespace-nowrap",
11391
+ children: [
11392
+ "#",
11393
+ caseInfo.caseNumber
11394
+ ]
11395
+ }
11396
+ ),
11397
+ /* @__PURE__ */ jsx(Badge, { variant: caseInfo.statusVariant ?? "success", size: "sm", children: caseInfo.status }),
11398
+ caseInfo.caseType && /* @__PURE__ */ jsxs(Fragment, { children: [
11399
+ /* @__PURE__ */ jsx(BarDivider, {}),
11400
+ /* @__PURE__ */ jsx("span", { className: "text-foreground text-sm", children: caseInfo.caseType })
11401
+ ] }),
11402
+ /* @__PURE__ */ jsxs("div", { className: "ms-auto flex items-center gap-4", children: [
11403
+ editingUsers && editingUsers.length > 0 && /* @__PURE__ */ jsxs("span", { className: "text-muted-foreground flex items-center gap-1.5 text-xs", children: [
11404
+ /* @__PURE__ */ jsx(Users, { size: 14, "aria-hidden": "true", className: "shrink-0" }),
11405
+ l.editing(editingUsers)
11406
+ ] }),
11407
+ collabStatus
11408
+ ] })
11409
+ ]
11410
+ }
11411
+ );
11412
+ }
11413
+ );
11414
+ CaseContextBar.displayName = "CaseContextBar";
11415
+ var CaseManagementHeader = React10.forwardRef(
11416
+ ({
11417
+ caseInfo,
11418
+ patient,
11419
+ details = [],
11420
+ sticky = false,
11421
+ showBackButton = false,
11422
+ onBack,
11423
+ onAddCaseNote,
11424
+ onCloseCase,
11425
+ actions,
11426
+ editingUsers,
11427
+ collabStatus,
11428
+ alert,
11429
+ showContextBar = true,
11430
+ defaultExpanded = false,
11431
+ expanded,
11432
+ onExpandedChange,
11433
+ labels,
11434
+ className,
11435
+ "data-testid": testId = "case-management-header",
11436
+ ...props
11437
+ }, ref) => {
11438
+ const l = { ...defaultCaseManagementHeaderLabels, ...labels };
11439
+ const [internalExpanded, setInternalExpanded] = React10.useState(defaultExpanded);
11440
+ const isExpanded = expanded ?? internalExpanded;
11441
+ const detailsId = React10.useId();
11442
+ const days = caseInfo.daysOpen ?? computeDaysOpen(caseInfo.openedDate);
11443
+ const allDetails = days != null ? [...details, { label: l.daysOpenTerm, value: days }] : details;
11444
+ const hasDetails = allDetails.length > 0;
11445
+ const toggleExpanded = () => {
11446
+ const next = !isExpanded;
11447
+ if (expanded === void 0) setInternalExpanded(next);
11448
+ onExpandedChange?.(next);
11449
+ };
11450
+ return /* @__PURE__ */ jsxs(
11451
+ "div",
11452
+ {
11453
+ ref,
11454
+ "data-testid": testId,
11455
+ "data-slot": "case-management-header",
11456
+ className: cn("w-full", sticky && "sticky top-0 z-40", className),
11457
+ ...props,
11458
+ children: [
11459
+ /* @__PURE__ */ jsxs(
11460
+ "div",
11461
+ {
11462
+ className: cn(
11463
+ "border-border bg-card text-card-foreground border-b",
11464
+ "transition-colors duration-200"
11465
+ ),
11466
+ children: [
11467
+ showContextBar && /* @__PURE__ */ jsx(
11468
+ CaseContextBar,
11469
+ {
11470
+ caseInfo,
11471
+ showBackButton,
11472
+ onBack,
11473
+ editingUsers,
11474
+ collabStatus,
11475
+ labels
11476
+ }
11477
+ ),
11478
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3 px-5 py-3", children: [
11479
+ !showContextBar && showBackButton && /* @__PURE__ */ jsx(
11480
+ Button,
11481
+ {
11482
+ variant: "ghost",
11483
+ size: "icon",
11484
+ onClick: onBack,
11485
+ disabled: !onBack,
11486
+ "aria-label": l.back,
11487
+ className: "-ms-2 h-8 w-8 shrink-0",
11488
+ children: /* @__PURE__ */ jsx(ArrowLeft, { size: 18 })
11489
+ }
11490
+ ),
11491
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-wrap items-baseline gap-x-4 gap-y-0.5", children: [
11492
+ /* @__PURE__ */ jsx("h2", { className: "text-foreground min-w-0 truncate text-xl font-bold", children: patient.name }),
11493
+ /* @__PURE__ */ jsxs("span", { className: "text-muted-foreground text-sm whitespace-nowrap", children: [
11494
+ l.mrn,
11495
+ ": ",
11496
+ patient.mrn ?? l.emptyValue
11497
+ ] }),
11498
+ /* @__PURE__ */ jsxs("span", { className: "text-muted-foreground text-sm whitespace-nowrap", children: [
11499
+ l.dob,
11500
+ ": ",
11501
+ patient.dob ?? l.emptyValue,
11502
+ patient.age != null && ` ${l.formatAge(patient.age)}`
11503
+ ] })
11504
+ ] }),
11505
+ (onAddCaseNote || onCloseCase || actions) && // Horizontal always: long labels truncate (Button's built-in
11506
+ // ellipsis) instead of stacking or starving the identity block.
11507
+ /* @__PURE__ */ jsxs(
11508
+ ButtonGroup,
11509
+ {
11510
+ orientation: "horizontal",
11511
+ className: "max-w-[60%] min-w-0 gap-2",
11512
+ children: [
11513
+ onAddCaseNote && /* @__PURE__ */ jsx(
11514
+ HeaderActionButton,
11515
+ {
11516
+ label: l.addCaseNote,
11517
+ mobileIcon: /* @__PURE__ */ jsx(FilePlus, { size: 16 }),
11518
+ desktopLeftIcon: /* @__PURE__ */ jsx(Plus, { size: 16 }),
11519
+ onClick: onAddCaseNote
11520
+ }
11521
+ ),
11522
+ onCloseCase && /* @__PURE__ */ jsx(
11523
+ HeaderActionButton,
11524
+ {
11525
+ label: l.closeCase,
11526
+ mobileIcon: /* @__PURE__ */ jsx(CheckCircle, { size: 16 }),
11527
+ onClick: onCloseCase
11528
+ }
11529
+ ),
11530
+ actions
11531
+ ]
11532
+ }
11533
+ ),
11534
+ hasDetails && /* @__PURE__ */ jsx(
11535
+ Button,
11536
+ {
11537
+ variant: "ghost",
11538
+ size: "icon",
11539
+ onClick: toggleExpanded,
11540
+ "aria-label": isExpanded ? l.collapseDetails : l.expandDetails,
11541
+ "aria-expanded": isExpanded,
11542
+ "aria-controls": detailsId,
11543
+ className: "text-primary-600 dark:text-primary-400 h-8 w-8 shrink-0",
11544
+ children: /* @__PURE__ */ jsx(
11545
+ ChevronDown,
11546
+ {
11547
+ size: 18,
11548
+ className: cn(
11549
+ "transition-transform duration-200",
11550
+ isExpanded && "rotate-180"
11551
+ )
11552
+ }
11553
+ )
11554
+ }
11555
+ )
11556
+ ] }),
11557
+ hasDetails && isExpanded && /* @__PURE__ */ jsx(
11558
+ "dl",
11559
+ {
11560
+ id: detailsId,
11561
+ "data-slot": "case-details",
11562
+ className: "flex flex-wrap gap-x-10 gap-y-3 px-5 pb-4",
11563
+ children: allDetails.map((item) => /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
11564
+ /* @__PURE__ */ jsx("dt", { className: "text-foreground/70 text-[11px] font-medium", children: item.label }),
11565
+ /* @__PURE__ */ jsx("dd", { className: "text-foreground text-sm", children: item.value })
11566
+ ] }, item.label))
11567
+ }
11568
+ )
11569
+ ]
11570
+ }
11571
+ ),
11572
+ alert && /* @__PURE__ */ jsx("div", { "data-slot": "case-header-alert", children: alert })
11573
+ ]
11574
+ }
11575
+ );
11576
+ }
11577
+ );
11578
+ CaseManagementHeader.displayName = "CaseManagementHeader";
11234
11579
  var MODE_META = {
11235
11580
  add: { title: "Add problem", changeType: void 0 },
11236
11581
  observe: { title: "Progress observation", changeType: void 0 },
@@ -13827,6 +14172,7 @@ var CountBadge = React10.forwardRef(
13827
14172
  onDelete,
13828
14173
  deleteLabel,
13829
14174
  countVariant,
14175
+ showZero = false,
13830
14176
  ...props
13831
14177
  }, ref) => {
13832
14178
  const [open, setOpen] = React10.useState(false);
@@ -13840,6 +14186,10 @@ var CountBadge = React10.forwardRef(
13840
14186
  null
13841
14187
  );
13842
14188
  const showMenu = items && items.length > 0;
14189
+ const hidden = count === 0 && !showZero;
14190
+ React10.useEffect(() => {
14191
+ if (hidden) setOpen(false);
14192
+ }, [hidden]);
13843
14193
  const {
13844
14194
  anchorRef,
13845
14195
  floatingRef,
@@ -13885,6 +14235,7 @@ var CountBadge = React10.forwardRef(
13885
14235
  onDelete ? handleDeleteRequest : void 0
13886
14236
  );
13887
14237
  const entityLabel = deleteLabel ?? "item";
14238
+ if (hidden) return null;
13888
14239
  return /* @__PURE__ */ jsxs(Fragment, { children: [
13889
14240
  /* @__PURE__ */ jsxs(
13890
14241
  "div",
@@ -13893,6 +14244,7 @@ var CountBadge = React10.forwardRef(
13893
14244
  containerRef.current = node;
13894
14245
  anchorRef.current = node;
13895
14246
  },
14247
+ "data-slot": "count-badge-root",
13896
14248
  className: "relative inline-flex",
13897
14249
  children: [
13898
14250
  /* @__PURE__ */ jsxs(
@@ -14264,6 +14616,20 @@ var CountBadge = React10.forwardRef(
14264
14616
  }
14265
14617
  );
14266
14618
  CountBadge.displayName = "CountBadge";
14619
+ function CountryDropdown({
14620
+ "aria-label": ariaLabel = "Select country",
14621
+ ...props
14622
+ }) {
14623
+ return /* @__PURE__ */ jsx(
14624
+ CountryDropdownBase,
14625
+ {
14626
+ ...props,
14627
+ "aria-label": ariaLabel,
14628
+ showDialCode: false
14629
+ }
14630
+ );
14631
+ }
14632
+ CountryDropdown.displayName = "CountryDropdown";
14267
14633
  var bannerVariants = cva(
14268
14634
  "fixed z-50 transition-all duration-300 ease-in-out",
14269
14635
  {
@@ -28001,6 +28367,7 @@ var PatientHeader = React10.forwardRef(
28001
28367
  showProviderBanner = false,
28002
28368
  showFlagBanner = false,
28003
28369
  showOverflowMenu = false,
28370
+ showCountBadges = true,
28004
28371
  onOverflowAction,
28005
28372
  onAddItem,
28006
28373
  onEditPatient,
@@ -28104,7 +28471,9 @@ var PatientHeader = React10.forwardRef(
28104
28471
  "order-4 w-full md:order-2 md:w-auto md:shrink-0",
28105
28472
  "mt-1 md:mt-0",
28106
28473
  "[&_button[data-count-badge]]:gap-1.5 [&_button[data-count-badge]]:px-2 [&_button[data-count-badge]]:py-0.5 [&_button[data-count-badge]]:text-xs",
28107
- "md:[&_button[data-count-badge]]:gap-2 md:[&_button[data-count-badge]]:px-3 md:[&_button[data-count-badge]]:py-1 md:[&_button[data-count-badge]]:text-sm"
28474
+ "md:[&_button[data-count-badge]]:gap-2 md:[&_button[data-count-badge]]:px-3 md:[&_button[data-count-badge]]:py-1 md:[&_button[data-count-badge]]:text-sm",
28475
+ // Hide count badges (but not other custom actions) when disabled
28476
+ !showCountBadges && "[&_[data-slot=count-badge-root]]:hidden"
28108
28477
  ),
28109
28478
  children: actions
28110
28479
  }
@@ -43414,6 +43783,6 @@ function WebsiteInputGroup({
43414
43783
  }
43415
43784
  WebsiteInputGroup.displayName = "WebsiteInputGroup";
43416
43785
 
43417
- export { AIChat, AIChatModal, AIChatTrigger, AIReconciliationPanel, AccessDeniedPage, ActionButton2 as ActionButton, ActionButtonsBar, ActiveFilters, AddContactModal, AddServiceCard, AdditionalFields, Address, AddressCard, AddressCompact, AddressDisplay, AddressForm, AddressInline, AppHeader, AppHeaderActions, AppHeaderBrand, AppHeaderDivider, AppHeaderIconButton, AppHeaderSearch, AppHeaderSection, AppHeaderTitle, AppHeaderUserMenu, Assessment, AuthButtons, AuthDialog, BookAppointmentButton, BookingDialog, BusinessHours, BusinessHoursEditor, CHANGE_TYPE_LABELS, CONCERN_STATUS_LABELS, CSVColumnMapper, CSVFileUpload, CardSkeleton, CheckrIntegration, ClaimListingButton, ClaimProviderForm, CodingChips, CommandPalette, CommandPaletteProvider, CommandPaletteTrigger, CompactCookieBanner, CompactFilterBar, CompactHeader, CompactHours, CompactProviderHeader, ComposerModelSelector, ConditionEditor, ConnectionStatusBadge, ConnectionStatusBar, ConnectionStatusOverlay, ConsentSwitch, CookieConsentBanner, CopyrightText, CountBadge, CreateInvoiceModal, CreateReferralModal, DEFAULT_ERROR_CONFIGS, DEFAULT_LANGUAGES, DEFAULT_RADIUS_OPTIONS, DEFAULT_SOCIAL_PROVIDERS, DOTBadge, DashboardWidget, DashboardWidgetActions, DashboardWidgetDataCards, DashboardWidgetInfo, DashboardWidgetTable, DateRangeFilter, DateRangePicker, DialogOverlay, DisclaimerText, DocumentDetectionOverlay, DocumentScanner, DropZone, DropzoneOverlay, EditUserRoleModal, EmployeeForm, EmployeeProfileCard, EmployerContactCard, EmployerList, EmployerPricingCard, EmployerServiceModal, EmployerView, ErrorPage, FileManager, FilePreview, FloatingAIChat, FloatingInput, FooterLinkSection, SocialMediaLinks2 as FooterSocialLinks, HRISProviderSelector, HandsFreeChat, HealthSurveillance, HelpSupportPanel, HeroSearchBar, HeyOzwell, HeyOzwellToggle, HoursSummary, ImagingOrderEditor, InlineBookingForm, InventoryManager, InviteUserModal, InvoiceList, InvoicePaymentPage, InvoiceView, LabOrderEditor, LanguageSelector, LanguageSelectorInline, LanguageSelectorNative, LegalLinks, LoadingBar, LoadingDots, LoadingOverlay, LoadingPage, LoadingSkeleton, MODEL_MANIFEST, MaintenancePage, MobileBackButton, MobileMenuButton, MobileMenuPanel, ModelInfoList, NavLinks, NewsletterForm, NotFoundPage, NotificationCenter, ORDER_TYPE_META, ORDER_TYPE_SEARCH_DOMAINS, OfflinePage, OnboardingCompletion, OnboardingStepQuestion, OnboardingWizard, OpenStatusBadge, OrderCard, OrderConfirmation, OrderConfirmationWizard, OrderDetailSidebar, OrderEditor, OrderList, OrderLookupForm, OrderSidebar, OrderSidebarTabs, OzwellSettingsMenu, PageHeader, PatientHeader, PaymentHistoryTable, PaymentMethodBank, PaymentMethodCard, PaymentMethodList, PendingClaimsTable, PermissionsEditor, PillSelect, PresentingProblems, ProblemList, ProcedureOrderEditor, ProductVersion, ProductVersionBadge, Breadcrumb2 as ProviderBreadcrumb, ProviderCard, ProviderCardGrid, ProviderCardSkeleton, ProviderDetailHeader, ProviderDetailHeaderSkeleton, ProviderLogo2 as ProviderLogo, ProviderOverview, ProviderSearchBar, ProviderSearchFilters, ProviderSelector, ProviderSettings, SocialMediaLinks as ProviderSocialLinks, ProviderUsersTable, QuickBookCard, QuickLinksCard, RELEVANCE_LABELS, RecurringServiceAddCard, RecurringServiceCard, RecurringServiceGrid, RecurringServiceSetupModal, ReferralEditor, RejectionModal, ReportDashboard, ReportDatePicker, ReportLink, ReportTimeRange, ResultsEntryCard, ResultsEntryForm, ResultsEntryModal, SSOConfigForm, ScheduleCalendar, SearchResultsMessage, SelectedServicesBadges, ServerErrorPage, ServiceAccordion, ServiceBadge, ServiceBadgeGroup, ServiceCard, ServiceCategoryBadge, ServiceGeneralSettings, ServiceGrid, ServiceLink, ServiceList, ServiceMultiSelect, ServicePicker, ServicePricingManager, ServiceSelect, ServiceShippingSettings, ServiceTagCloud, ServiceTagCloudBadges, SetupServiceModal, Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarMobileToggle, SidebarNav, SidebarNavGroup, SidebarNavItem, SidebarProvider, SidebarSearch, SidebarToggle, SimpleFooter, SiteFooter, SiteHeader, SiteLogo, StepIndicator, StripeBadge, StripeSecureBadge, SuggestedActions, TableOfContents, TimelineEventList, TimelineProgress, Toast, ToastContainer, ToastProvider, UncertaintyBadge, UpdateAvailableOverlay, UserMenu, VerifiedBadge2 as VerifiedBadge, VisitScribe, VoiceManager, VoiceSetup, WEBSITE_TYPES, WebChartReportViewer, WebcamModal, WebsiteInput, WebsiteInputGroup, askOzwell, askOzwellStream, attributeSegments, calculateDateRange, centroid, chime, clearVoiceprints, clearWhatPrints, clusterEmbeddings, concernGroupKey, concernHistoryContent, cosine, countBadgeVariants, countChipVariants, create24HourSchedule, createDefaultSchedule, createWeekdaySchedule, currentAssertion, decodeTo16kMono, defaultOrderTabs, defaultReconciliationIsEqual, endsWithDone, formatAddressLines, formatAddressSingleLine, formatCityState, formatCityStateZip, generateId, getDefaultPresets, getDictationLoad, getExtendedPresets, getGoogleMapsSearchUrl, getGoogleMapsUrl, getOzwellConfig, getVoiceprints, getWakeWarm, inferSpeakerRoles, isConditionCodetype, isOzwellConfigured, isValidUrl, isWhisperLoaded, labelClusters, loadWhatPrints, medicationToOrder, mergeTurns, openRollingRecorder, orderToMedication, orderTypeForCodetype, panelVariants as reconciliationPanelVariants, saveWhatPrints, setVoiceprints, stripStopPhrase, subscribeDictationLoad, subscribeWakeWarm, toOzwellMessages, transcribeBlob, transcribeGate, transcribeSamples, transcribeSegments, transcribeServer, trimTrailingStopPhrase, useCamera, useCommandPalette, useConnectionStatus, useCookieConsent, useDiarization, useDocumentDetection, useDropzone, useFileUpload, useHeyOzwell, useSidebar, useSpeakerVerify, useToast, useVisitScribe, useVoiceSetup, useWakeWord, warmStopGate, warmWakeModels, warmWhisper, widgetVariants };
43786
+ export { AIChat, AIChatModal, AIChatTrigger, AIReconciliationPanel, AccessDeniedPage, ActionButton2 as ActionButton, ActionButtonsBar, ActiveFilters, AddContactModal, AddServiceCard, AdditionalFields, Address, AddressCard, AddressCompact, AddressDisplay, AddressForm, AddressInline, AppHeader, AppHeaderActions, AppHeaderBrand, AppHeaderDivider, AppHeaderIconButton, AppHeaderSearch, AppHeaderSection, AppHeaderTitle, AppHeaderUserMenu, Assessment, AuthButtons, AuthDialog, BookAppointmentButton, BookingDialog, BusinessHours, BusinessHoursEditor, ButtonGroup, CHANGE_TYPE_LABELS, CONCERN_STATUS_LABELS, CSVColumnMapper, CSVFileUpload, CardSkeleton, CaseContextBar, CaseManagementHeader, CheckrIntegration, ClaimListingButton, ClaimProviderForm, CodingChips, CommandPalette, CommandPaletteProvider, CommandPaletteTrigger, CompactCookieBanner, CompactFilterBar, CompactHeader, CompactHours, CompactProviderHeader, ComposerModelSelector, ConditionEditor, ConnectionStatusBadge, ConnectionStatusBar, ConnectionStatusOverlay, ConsentSwitch, CookieConsentBanner, CopyrightText, CountBadge, CountryDropdown, CreateInvoiceModal, CreateReferralModal, DEFAULT_ERROR_CONFIGS, DEFAULT_LANGUAGES, DEFAULT_RADIUS_OPTIONS, DEFAULT_SOCIAL_PROVIDERS, DOTBadge, DashboardWidget, DashboardWidgetActions, DashboardWidgetDataCards, DashboardWidgetInfo, DashboardWidgetTable, DateRangeFilter, DateRangePicker, DialogOverlay, DisclaimerText, DocumentDetectionOverlay, DocumentScanner, DropZone, DropzoneOverlay, EditUserRoleModal, EmployeeForm, EmployeeProfileCard, EmployerContactCard, EmployerList, EmployerPricingCard, EmployerServiceModal, EmployerView, ErrorPage, FileManager, FilePreview, FloatingAIChat, FloatingInput, FooterLinkSection, SocialMediaLinks2 as FooterSocialLinks, HRISProviderSelector, HandsFreeChat, HealthSurveillance, HelpSupportPanel, HeroSearchBar, HeyOzwell, HeyOzwellToggle, HoursSummary, ImagingOrderEditor, InlineBookingForm, InventoryManager, InviteUserModal, InvoiceList, InvoicePaymentPage, InvoiceView, LabOrderEditor, LanguageSelector, LanguageSelectorInline, LanguageSelectorNative, LegalLinks, LoadingBar, LoadingDots, LoadingOverlay, LoadingPage, LoadingSkeleton, MODEL_MANIFEST, MaintenancePage, MobileBackButton, MobileMenuButton, MobileMenuPanel, ModelInfoList, NavLinks, NewsletterForm, NotFoundPage, NotificationCenter, ORDER_TYPE_META, ORDER_TYPE_SEARCH_DOMAINS, OfflinePage, OnboardingCompletion, OnboardingStepQuestion, OnboardingWizard, OpenStatusBadge, OrderCard, OrderConfirmation, OrderConfirmationWizard, OrderDetailSidebar, OrderEditor, OrderList, OrderLookupForm, OrderSidebar, OrderSidebarTabs, OzwellSettingsMenu, PageHeader, PatientHeader, PaymentHistoryTable, PaymentMethodBank, PaymentMethodCard, PaymentMethodList, PendingClaimsTable, PermissionsEditor, PillSelect, PresentingProblems, ProblemList, ProcedureOrderEditor, ProductVersion, ProductVersionBadge, Breadcrumb2 as ProviderBreadcrumb, ProviderCard, ProviderCardGrid, ProviderCardSkeleton, ProviderDetailHeader, ProviderDetailHeaderSkeleton, ProviderLogo2 as ProviderLogo, ProviderOverview, ProviderSearchBar, ProviderSearchFilters, ProviderSelector, ProviderSettings, SocialMediaLinks as ProviderSocialLinks, ProviderUsersTable, QuickBookCard, QuickLinksCard, RELEVANCE_LABELS, RecurringServiceAddCard, RecurringServiceCard, RecurringServiceGrid, RecurringServiceSetupModal, ReferralEditor, RejectionModal, ReportDashboard, ReportDatePicker, ReportLink, ReportTimeRange, ResultsEntryCard, ResultsEntryForm, ResultsEntryModal, SSOConfigForm, ScheduleCalendar, SearchResultsMessage, SelectedServicesBadges, ServerErrorPage, ServiceAccordion, ServiceBadge, ServiceBadgeGroup, ServiceCard, ServiceCategoryBadge, ServiceGeneralSettings, ServiceGrid, ServiceLink, ServiceList, ServiceMultiSelect, ServicePicker, ServicePricingManager, ServiceSelect, ServiceShippingSettings, ServiceTagCloud, ServiceTagCloudBadges, SetupServiceModal, Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarMobileToggle, SidebarNav, SidebarNavGroup, SidebarNavItem, SidebarProvider, SidebarSearch, SidebarToggle, SimpleFooter, SiteFooter, SiteHeader, SiteLogo, StepIndicator, StripeBadge, StripeSecureBadge, SuggestedActions, TableOfContents, TimelineEventList, TimelineProgress, Toast, ToastContainer, ToastProvider, UncertaintyBadge, UpdateAvailableOverlay, UserMenu, VerifiedBadge2 as VerifiedBadge, VisitScribe, VoiceManager, VoiceSetup, WEBSITE_TYPES, WebChartReportViewer, WebcamModal, WebsiteInput, WebsiteInputGroup, askOzwell, askOzwellStream, attributeSegments, calculateDateRange, centroid, chime, clearVoiceprints, clearWhatPrints, clusterEmbeddings, concernGroupKey, concernHistoryContent, cosine, countBadgeVariants, countChipVariants, create24HourSchedule, createDefaultSchedule, createWeekdaySchedule, currentAssertion, decodeTo16kMono, defaultCaseManagementHeaderLabels, defaultOrderTabs, defaultReconciliationIsEqual, endsWithDone, formatAddressLines, formatAddressSingleLine, formatCityState, formatCityStateZip, generateId, getDefaultPresets, getDictationLoad, getExtendedPresets, getGoogleMapsSearchUrl, getGoogleMapsUrl, getOzwellConfig, getVoiceprints, getWakeWarm, inferSpeakerRoles, isConditionCodetype, isOzwellConfigured, isValidUrl, isWhisperLoaded, labelClusters, loadWhatPrints, medicationToOrder, mergeTurns, openRollingRecorder, orderToMedication, orderTypeForCodetype, panelVariants as reconciliationPanelVariants, saveWhatPrints, setVoiceprints, stripStopPhrase, subscribeDictationLoad, subscribeWakeWarm, toOzwellMessages, transcribeBlob, transcribeGate, transcribeSamples, transcribeSegments, transcribeServer, trimTrailingStopPhrase, useCamera, useCommandPalette, useConnectionStatus, useCookieConsent, useDiarization, useDocumentDetection, useDropzone, useFileUpload, useHeyOzwell, useSidebar, useSpeakerVerify, useToast, useVisitScribe, useVoiceSetup, useWakeWord, warmStopGate, warmWakeModels, warmWhisper, widgetVariants };
43418
43787
  //# sourceMappingURL=index.js.map
43419
43788
  //# sourceMappingURL=index.js.map