@mieweb/ui 0.6.1 → 0.7.0-dev.179

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 (450) hide show
  1. package/README.md +90 -53
  2. package/dist/CsvBlock-2A5VEDD3.cjs +15 -0
  3. package/dist/CsvBlock-2A5VEDD3.cjs.map +1 -0
  4. package/dist/CsvBlock-D6PWAJ5X.js +6 -0
  5. package/dist/CsvBlock-D6PWAJ5X.js.map +1 -0
  6. package/dist/HtmlPreviewBlock-PEHTJ6C3.js +6 -0
  7. package/dist/HtmlPreviewBlock-PEHTJ6C3.js.map +1 -0
  8. package/dist/HtmlPreviewBlock-SYXCV5RH.cjs +15 -0
  9. package/dist/HtmlPreviewBlock-SYXCV5RH.cjs.map +1 -0
  10. package/dist/MedicationEditor-Bp4NLy7y.d.cts +352 -0
  11. package/dist/MedicationEditor-Bp4NLy7y.d.ts +352 -0
  12. package/dist/MermaidBlock-7NK3AVK2.js +6 -0
  13. package/dist/MermaidBlock-7NK3AVK2.js.map +1 -0
  14. package/dist/MermaidBlock-AFXNP5NK.cjs +15 -0
  15. package/dist/MermaidBlock-AFXNP5NK.cjs.map +1 -0
  16. package/dist/SurveyBlock-6KRNKFH5.cjs +15 -0
  17. package/dist/SurveyBlock-6KRNKFH5.cjs.map +1 -0
  18. package/dist/SurveyBlock-NNDGXGG4.js +6 -0
  19. package/dist/SurveyBlock-NNDGXGG4.js.map +1 -0
  20. package/dist/ag-grid.cjs +6 -6
  21. package/dist/ag-grid.cjs.map +1 -1
  22. package/dist/ag-grid.js +2 -2
  23. package/dist/ag-grid.js.map +1 -1
  24. package/dist/brands/index.cjs +17 -17
  25. package/dist/brands/index.js +4 -4
  26. package/dist/chunk-372IIHUA.cjs +2017 -0
  27. package/dist/chunk-372IIHUA.cjs.map +1 -0
  28. package/dist/{chunk-2DS3RJ2D.js → chunk-3TERETXH.js} +112 -3
  29. package/dist/chunk-3TERETXH.js.map +1 -0
  30. package/dist/chunk-44CK4CT2.cjs +336 -0
  31. package/dist/chunk-44CK4CT2.cjs.map +1 -0
  32. package/dist/{chunk-FSBFQBNE.cjs → chunk-4GXECTPS.cjs} +2 -2
  33. package/dist/{chunk-FSBFQBNE.cjs.map → chunk-4GXECTPS.cjs.map} +1 -1
  34. package/dist/chunk-4LVPQ44A.js +228 -0
  35. package/dist/chunk-4LVPQ44A.js.map +1 -0
  36. package/dist/{chunk-6555OYRU.js → chunk-5BQE6BEL.js} +2 -2
  37. package/dist/{chunk-6555OYRU.js.map → chunk-5BQE6BEL.js.map} +1 -1
  38. package/dist/chunk-62ZOA6PX.js +31 -0
  39. package/dist/chunk-62ZOA6PX.js.map +1 -0
  40. package/dist/chunk-63KVQHGQ.cjs +1802 -0
  41. package/dist/chunk-63KVQHGQ.cjs.map +1 -0
  42. package/dist/chunk-6AHYYWVB.js +78 -0
  43. package/dist/chunk-6AHYYWVB.js.map +1 -0
  44. package/dist/chunk-6I7IDZ4A.js +51 -0
  45. package/dist/chunk-6I7IDZ4A.js.map +1 -0
  46. package/dist/chunk-6ZYE6JUK.cjs +80 -0
  47. package/dist/chunk-6ZYE6JUK.cjs.map +1 -0
  48. package/dist/chunk-7QXG5BBB.cjs +164 -0
  49. package/dist/chunk-7QXG5BBB.cjs.map +1 -0
  50. package/dist/chunk-7WMSUXOQ.js +182 -0
  51. package/dist/chunk-7WMSUXOQ.js.map +1 -0
  52. package/dist/chunk-7XUN3OQT.js +3 -0
  53. package/dist/{chunk-V2DF2GUE.js.map → chunk-7XUN3OQT.js.map} +1 -1
  54. package/dist/chunk-7ZVTLTJF.js +109 -0
  55. package/dist/chunk-7ZVTLTJF.js.map +1 -0
  56. package/dist/chunk-AES2BKEW.cjs +229 -0
  57. package/dist/chunk-AES2BKEW.cjs.map +1 -0
  58. package/dist/chunk-AFKKJEV5.cjs +72 -0
  59. package/dist/chunk-AFKKJEV5.cjs.map +1 -0
  60. package/dist/chunk-AT732HC6.cjs +4 -0
  61. package/dist/{chunk-74K3RRU7.cjs.map → chunk-AT732HC6.cjs.map} +1 -1
  62. package/dist/chunk-BB4WQ4LV.cjs +137 -0
  63. package/dist/chunk-BB4WQ4LV.cjs.map +1 -0
  64. package/dist/chunk-BIT27PPD.js +49 -0
  65. package/dist/chunk-BIT27PPD.js.map +1 -0
  66. package/dist/chunk-BLPCYP4D.cjs +537 -0
  67. package/dist/chunk-BLPCYP4D.cjs.map +1 -0
  68. package/dist/chunk-BT3ZQJGT.cjs +130 -0
  69. package/dist/chunk-BT3ZQJGT.cjs.map +1 -0
  70. package/dist/chunk-BX6BTDTR.js +34 -0
  71. package/dist/chunk-BX6BTDTR.js.map +1 -0
  72. package/dist/chunk-C2544GKZ.js +313 -0
  73. package/dist/chunk-C2544GKZ.js.map +1 -0
  74. package/dist/chunk-C7RVKV25.cjs +25 -0
  75. package/dist/chunk-C7RVKV25.cjs.map +1 -0
  76. package/dist/chunk-CKD554XR.cjs +100 -0
  77. package/dist/chunk-CKD554XR.cjs.map +1 -0
  78. package/dist/chunk-CVC4NWFA.cjs +154 -0
  79. package/dist/chunk-CVC4NWFA.cjs.map +1 -0
  80. package/dist/{chunk-K3IVCUPP.js → chunk-CYMZ2QS5.js} +2 -2
  81. package/dist/{chunk-K3IVCUPP.js.map → chunk-CYMZ2QS5.js.map} +1 -1
  82. package/dist/{chunk-FRT6RQND.cjs → chunk-DAPZPT5N.cjs} +92 -56
  83. package/dist/chunk-DAPZPT5N.cjs.map +1 -0
  84. package/dist/chunk-DHKYGVP7.js +3 -0
  85. package/dist/{chunk-LEMY57MI.js.map → chunk-DHKYGVP7.js.map} +1 -1
  86. package/dist/chunk-DLNJLCNO.cjs +101 -0
  87. package/dist/chunk-DLNJLCNO.cjs.map +1 -0
  88. package/dist/chunk-DUPR6FEL.js +43 -0
  89. package/dist/chunk-DUPR6FEL.js.map +1 -0
  90. package/dist/{chunk-4FALCEJI.cjs → chunk-EL2RSQTJ.cjs} +2 -2
  91. package/dist/{chunk-4FALCEJI.cjs.map → chunk-EL2RSQTJ.cjs.map} +1 -1
  92. package/dist/chunk-ERLPVXOV.js +22 -0
  93. package/dist/chunk-ERLPVXOV.js.map +1 -0
  94. package/dist/chunk-FIWKHLWY.js +197 -0
  95. package/dist/chunk-FIWKHLWY.js.map +1 -0
  96. package/dist/chunk-FJH7P5WG.js +513 -0
  97. package/dist/chunk-FJH7P5WG.js.map +1 -0
  98. package/dist/chunk-FSGEDDF2.cjs +33 -0
  99. package/dist/chunk-FSGEDDF2.cjs.map +1 -0
  100. package/dist/chunk-GLXTVCHN.cjs +4 -0
  101. package/dist/{chunk-4ZU53GNR.cjs.map → chunk-GLXTVCHN.cjs.map} +1 -1
  102. package/dist/chunk-HRS6W74P.js +1568 -0
  103. package/dist/chunk-HRS6W74P.js.map +1 -0
  104. package/dist/chunk-I2W24RHW.js +196 -0
  105. package/dist/chunk-I2W24RHW.js.map +1 -0
  106. package/dist/chunk-I6CY5C6A.js +12 -0
  107. package/dist/chunk-I6CY5C6A.js.map +1 -0
  108. package/dist/chunk-IQ4KQJAO.js +3 -0
  109. package/dist/chunk-IQ4KQJAO.js.map +1 -0
  110. package/dist/chunk-IWDQPSJN.cjs +1452 -0
  111. package/dist/chunk-IWDQPSJN.cjs.map +1 -0
  112. package/dist/chunk-J7KWQJOB.js +14 -0
  113. package/dist/chunk-J7KWQJOB.js.map +1 -0
  114. package/dist/{chunk-R25H4N4Z.js → chunk-J7Z7467B.js} +92 -56
  115. package/dist/chunk-J7Z7467B.js.map +1 -0
  116. package/dist/{chunk-NINI4WVS.cjs → chunk-JC6Y3LGF.cjs} +297 -84
  117. package/dist/chunk-JC6Y3LGF.cjs.map +1 -0
  118. package/dist/chunk-JCNPVK74.cjs +347 -0
  119. package/dist/chunk-JCNPVK74.cjs.map +1 -0
  120. package/dist/chunk-JFLC7SHM.cjs +35 -0
  121. package/dist/chunk-JFLC7SHM.cjs.map +1 -0
  122. package/dist/chunk-JHYFHEHS.js +1967 -0
  123. package/dist/chunk-JHYFHEHS.js.map +1 -0
  124. package/dist/{chunk-IBZXDX4L.cjs → chunk-JQEY53SH.cjs} +112 -3
  125. package/dist/chunk-JQEY53SH.cjs.map +1 -0
  126. package/dist/chunk-JTBQNOSL.cjs +1605 -0
  127. package/dist/chunk-JTBQNOSL.cjs.map +1 -0
  128. package/dist/chunk-JYZW2PZS.cjs +166 -0
  129. package/dist/chunk-JYZW2PZS.cjs.map +1 -0
  130. package/dist/chunk-KBEKQMVY.cjs +198 -0
  131. package/dist/chunk-KBEKQMVY.cjs.map +1 -0
  132. package/dist/chunk-KJ5BSGEO.cjs +258 -0
  133. package/dist/chunk-KJ5BSGEO.cjs.map +1 -0
  134. package/dist/{chunk-DNPRRYPQ.js → chunk-KL2S36FM.js} +2 -2
  135. package/dist/chunk-KL2S36FM.js.map +1 -0
  136. package/dist/chunk-LIH3IZYK.js +689 -0
  137. package/dist/chunk-LIH3IZYK.js.map +1 -0
  138. package/dist/chunk-MAMY5HTT.cjs +1177 -0
  139. package/dist/chunk-MAMY5HTT.cjs.map +1 -0
  140. package/dist/{chunk-WFS6R2F5.js → chunk-MKWGKASO.js} +114 -101
  141. package/dist/chunk-MKWGKASO.js.map +1 -0
  142. package/dist/{chunk-CV4CVGLO.cjs → chunk-MZPF2QGM.cjs} +95 -74
  143. package/dist/chunk-MZPF2QGM.cjs.map +1 -0
  144. package/dist/chunk-NQME7MCK.js +1416 -0
  145. package/dist/chunk-NQME7MCK.js.map +1 -0
  146. package/dist/chunk-NTYGCBCL.js +543 -0
  147. package/dist/chunk-NTYGCBCL.js.map +1 -0
  148. package/dist/chunk-OF7NTZ2I.js +3 -0
  149. package/dist/chunk-OF7NTZ2I.js.map +1 -0
  150. package/dist/chunk-OXYFTCRW.cjs +57 -0
  151. package/dist/chunk-OXYFTCRW.cjs.map +1 -0
  152. package/dist/chunk-QA6ZDHFP.js +117 -0
  153. package/dist/chunk-QA6ZDHFP.js.map +1 -0
  154. package/dist/chunk-RHNPILZQ.cjs +4 -0
  155. package/dist/chunk-RHNPILZQ.cjs.map +1 -0
  156. package/dist/chunk-RHYIFIT5.js +98 -0
  157. package/dist/chunk-RHYIFIT5.js.map +1 -0
  158. package/dist/chunk-RI56YPED.cjs +201 -0
  159. package/dist/chunk-RI56YPED.cjs.map +1 -0
  160. package/dist/chunk-RISZWWEQ.js +3 -0
  161. package/dist/chunk-RISZWWEQ.js.map +1 -0
  162. package/dist/chunk-S6Z3KDEM.js +140 -0
  163. package/dist/chunk-S6Z3KDEM.js.map +1 -0
  164. package/dist/chunk-S7JQ3FV5.cjs +16 -0
  165. package/dist/chunk-S7JQ3FV5.cjs.map +1 -0
  166. package/dist/{chunk-OXGUG57G.cjs → chunk-SNEQXSC5.cjs} +2 -2
  167. package/dist/{chunk-OXGUG57G.cjs.map → chunk-SNEQXSC5.cjs.map} +1 -1
  168. package/dist/chunk-SQHMGT4W.js +164 -0
  169. package/dist/chunk-SQHMGT4W.js.map +1 -0
  170. package/dist/{chunk-JHPFOG2N.cjs → chunk-ST2RE5UB.cjs} +30 -18
  171. package/dist/chunk-ST2RE5UB.cjs.map +1 -0
  172. package/dist/{chunk-QVJBUWJQ.js → chunk-STPK44AU.js} +46 -12
  173. package/dist/chunk-STPK44AU.js.map +1 -0
  174. package/dist/chunk-T3C4RNJ4.js +106 -0
  175. package/dist/chunk-T3C4RNJ4.js.map +1 -0
  176. package/dist/chunk-T3RWXOCM.js +148 -0
  177. package/dist/chunk-T3RWXOCM.js.map +1 -0
  178. package/dist/{chunk-DCER2QQB.js → chunk-T42BCIUA.js} +2 -2
  179. package/dist/{chunk-DCER2QQB.js.map → chunk-T42BCIUA.js.map} +1 -1
  180. package/dist/{chunk-OYKS2JBB.cjs → chunk-TN33E2VN.cjs} +2 -2
  181. package/dist/chunk-TN33E2VN.cjs.map +1 -0
  182. package/dist/{chunk-K7IGBNZA.cjs → chunk-TR2OJKQ4.cjs} +46 -12
  183. package/dist/chunk-TR2OJKQ4.cjs.map +1 -0
  184. package/dist/chunk-UFYXU7KV.js +135 -0
  185. package/dist/chunk-UFYXU7KV.js.map +1 -0
  186. package/dist/chunk-UM6NA7HL.js +1145 -0
  187. package/dist/chunk-UM6NA7HL.js.map +1 -0
  188. package/dist/chunk-UO3KEUYK.cjs +220 -0
  189. package/dist/chunk-UO3KEUYK.cjs.map +1 -0
  190. package/dist/chunk-UOOH356R.cjs +66 -0
  191. package/dist/chunk-UOOH356R.cjs.map +1 -0
  192. package/dist/{chunk-4ZU53GNR.cjs → chunk-UTYUT5YY.cjs} +62 -2
  193. package/dist/chunk-UTYUT5YY.cjs.map +1 -0
  194. package/dist/chunk-UVSODK6V.cjs +53 -0
  195. package/dist/chunk-UVSODK6V.cjs.map +1 -0
  196. package/dist/chunk-V25Z5GR6.cjs +184 -0
  197. package/dist/chunk-V25Z5GR6.cjs.map +1 -0
  198. package/dist/chunk-VBWRH4UW.cjs +4 -0
  199. package/dist/chunk-VBWRH4UW.cjs.map +1 -0
  200. package/dist/chunk-VJOVJTFP.cjs +370 -0
  201. package/dist/chunk-VJOVJTFP.cjs.map +1 -0
  202. package/dist/{chunk-7BARESXI.cjs → chunk-VPNURIAY.cjs} +114 -101
  203. package/dist/chunk-VPNURIAY.cjs.map +1 -0
  204. package/dist/{chunk-I56VBDSC.js → chunk-XDFDVF2O.js} +30 -18
  205. package/dist/chunk-XDFDVF2O.js.map +1 -0
  206. package/dist/chunk-XL7TTKHP.js +327 -0
  207. package/dist/chunk-XL7TTKHP.js.map +1 -0
  208. package/dist/chunk-Y2S6QMKU.js +78 -0
  209. package/dist/chunk-Y2S6QMKU.js.map +1 -0
  210. package/dist/chunk-Y4ESBDQ5.cjs +552 -0
  211. package/dist/chunk-Y4ESBDQ5.cjs.map +1 -0
  212. package/dist/chunk-Y5KEFV5O.js +192 -0
  213. package/dist/chunk-Y5KEFV5O.js.map +1 -0
  214. package/dist/chunk-YBLIDESO.js +365 -0
  215. package/dist/chunk-YBLIDESO.js.map +1 -0
  216. package/dist/chunk-YVLP3ATI.js +1776 -0
  217. package/dist/chunk-YVLP3ATI.js.map +1 -0
  218. package/dist/chunk-YVPC65ZJ.cjs +134 -0
  219. package/dist/chunk-YVPC65ZJ.cjs.map +1 -0
  220. package/dist/{chunk-MPOWJVV4.js → chunk-YZT62IMX.js} +95 -74
  221. package/dist/chunk-YZT62IMX.js.map +1 -0
  222. package/dist/chunk-ZAIEQWRA.js +207 -0
  223. package/dist/chunk-ZAIEQWRA.js.map +1 -0
  224. package/dist/chunk-ZDEYV373.cjs +139 -0
  225. package/dist/chunk-ZDEYV373.cjs.map +1 -0
  226. package/dist/{chunk-Q7NBJFEB.js → chunk-ZGSC2CB2.js} +2 -2
  227. package/dist/{chunk-Q7NBJFEB.js.map → chunk-ZGSC2CB2.js.map} +1 -1
  228. package/dist/{chunk-3M4P2KMG.cjs → chunk-ZHBANUBI.cjs} +2 -2
  229. package/dist/{chunk-3M4P2KMG.cjs.map → chunk-ZHBANUBI.cjs.map} +1 -1
  230. package/dist/components/AlertDialog/index.cjs +18 -0
  231. package/dist/components/AlertDialog/index.cjs.map +1 -0
  232. package/dist/components/AlertDialog/index.d.cts +56 -0
  233. package/dist/components/AlertDialog/index.d.ts +56 -0
  234. package/dist/components/AlertDialog/index.js +9 -0
  235. package/dist/components/AlertDialog/index.js.map +1 -0
  236. package/dist/components/AudioRecorder/index.d.cts +1 -1
  237. package/dist/components/AudioRecorder/index.d.ts +1 -1
  238. package/dist/components/Autocomplete/index.cjs +16 -0
  239. package/dist/components/Autocomplete/index.cjs.map +1 -0
  240. package/dist/components/Autocomplete/index.d.cts +77 -0
  241. package/dist/components/Autocomplete/index.d.ts +77 -0
  242. package/dist/components/Autocomplete/index.js +7 -0
  243. package/dist/components/Autocomplete/index.js.map +1 -0
  244. package/dist/components/Badge/index.cjs +4 -3
  245. package/dist/components/Badge/index.js +2 -1
  246. package/dist/components/Card/index.cjs +16 -15
  247. package/dist/components/Card/index.js +2 -1
  248. package/dist/components/Collapsible/index.cjs +21 -0
  249. package/dist/components/Collapsible/index.cjs.map +1 -0
  250. package/dist/components/Collapsible/index.d.cts +33 -0
  251. package/dist/components/Collapsible/index.d.ts +33 -0
  252. package/dist/components/Collapsible/index.js +4 -0
  253. package/dist/components/Collapsible/index.js.map +1 -0
  254. package/dist/components/CountryCodeDropdown/index.cjs +6 -5
  255. package/dist/components/CountryCodeDropdown/index.js +3 -2
  256. package/dist/components/DateInput/index.cjs +2 -2
  257. package/dist/components/DateInput/index.d.cts +8 -2
  258. package/dist/components/DateInput/index.d.ts +8 -2
  259. package/dist/components/DateInput/index.js +1 -1
  260. package/dist/components/Dropdown/index.cjs +9 -8
  261. package/dist/components/Dropdown/index.d.cts +2 -1
  262. package/dist/components/Dropdown/index.d.ts +2 -1
  263. package/dist/components/Dropdown/index.js +3 -2
  264. package/dist/components/FloatingWindow/index.cjs +18 -0
  265. package/dist/components/FloatingWindow/index.cjs.map +1 -0
  266. package/dist/components/FloatingWindow/index.d.cts +64 -0
  267. package/dist/components/FloatingWindow/index.d.ts +64 -0
  268. package/dist/components/FloatingWindow/index.js +5 -0
  269. package/dist/components/FloatingWindow/index.js.map +1 -0
  270. package/dist/components/Label/index.cjs +17 -0
  271. package/dist/components/Label/index.cjs.map +1 -0
  272. package/dist/components/Label/index.d.cts +23 -0
  273. package/dist/components/Label/index.d.ts +23 -0
  274. package/dist/components/Label/index.js +4 -0
  275. package/dist/components/Label/index.js.map +1 -0
  276. package/dist/components/Markdown/index.cjs +51 -0
  277. package/dist/components/Markdown/index.cjs.map +1 -0
  278. package/dist/components/Markdown/index.css +331 -0
  279. package/dist/components/Markdown/index.css.map +1 -0
  280. package/dist/components/Markdown/index.d.cts +82 -0
  281. package/dist/components/Markdown/index.d.ts +82 -0
  282. package/dist/components/Markdown/index.js +10 -0
  283. package/dist/components/Markdown/index.js.map +1 -0
  284. package/dist/components/Markdown/styles.css +354 -0
  285. package/dist/components/MediaEditor/index.cjs +44 -0
  286. package/dist/components/MediaEditor/index.cjs.map +1 -0
  287. package/dist/components/MediaEditor/index.d.cts +151 -0
  288. package/dist/components/MediaEditor/index.d.ts +151 -0
  289. package/dist/components/MediaEditor/index.js +19 -0
  290. package/dist/components/MediaEditor/index.js.map +1 -0
  291. package/dist/components/MediaPlayer/index.cjs +24 -0
  292. package/dist/components/MediaPlayer/index.cjs.map +1 -0
  293. package/dist/components/MediaPlayer/index.d.cts +71 -0
  294. package/dist/components/MediaPlayer/index.d.ts +71 -0
  295. package/dist/components/MediaPlayer/index.js +7 -0
  296. package/dist/components/MediaPlayer/index.js.map +1 -0
  297. package/dist/components/RecordButton/index.cjs +4 -4
  298. package/dist/components/RecordButton/index.js +1 -1
  299. package/dist/components/RichTextEditor/index.cjs +33 -0
  300. package/dist/components/RichTextEditor/index.cjs.map +1 -0
  301. package/dist/components/RichTextEditor/index.d.cts +62 -0
  302. package/dist/components/RichTextEditor/index.d.ts +62 -0
  303. package/dist/components/RichTextEditor/index.js +12 -0
  304. package/dist/components/RichTextEditor/index.js.map +1 -0
  305. package/dist/components/ScrollArea/index.cjs +17 -0
  306. package/dist/components/ScrollArea/index.cjs.map +1 -0
  307. package/dist/components/ScrollArea/index.d.cts +22 -0
  308. package/dist/components/ScrollArea/index.d.ts +22 -0
  309. package/dist/components/ScrollArea/index.js +4 -0
  310. package/dist/components/ScrollArea/index.js.map +1 -0
  311. package/dist/components/Select/index.cjs +5 -3
  312. package/dist/components/Select/index.js +3 -1
  313. package/dist/components/Separator/index.cjs +17 -0
  314. package/dist/components/Separator/index.cjs.map +1 -0
  315. package/dist/components/Separator/index.d.cts +27 -0
  316. package/dist/components/Separator/index.d.ts +27 -0
  317. package/dist/components/Separator/index.js +4 -0
  318. package/dist/components/Separator/index.js.map +1 -0
  319. package/dist/components/Sheet/index.cjs +48 -0
  320. package/dist/components/Sheet/index.cjs.map +1 -0
  321. package/dist/components/Sheet/index.d.cts +62 -0
  322. package/dist/components/Sheet/index.d.ts +62 -0
  323. package/dist/components/Sheet/index.js +7 -0
  324. package/dist/components/Sheet/index.js.map +1 -0
  325. package/dist/components/SuperChat/index.cjs +1373 -0
  326. package/dist/components/SuperChat/index.cjs.map +1 -0
  327. package/dist/components/SuperChat/index.d.cts +189 -0
  328. package/dist/components/SuperChat/index.d.ts +189 -0
  329. package/dist/components/SuperChat/index.js +1336 -0
  330. package/dist/components/SuperChat/index.js.map +1 -0
  331. package/dist/components/SuperChat/plugins/index.cjs +1292 -0
  332. package/dist/components/SuperChat/plugins/index.cjs.map +1 -0
  333. package/dist/components/SuperChat/plugins/index.d.cts +233 -0
  334. package/dist/components/SuperChat/plugins/index.d.ts +233 -0
  335. package/dist/components/SuperChat/plugins/index.js +1252 -0
  336. package/dist/components/SuperChat/plugins/index.js.map +1 -0
  337. package/dist/components/Table/index.cjs +9 -9
  338. package/dist/components/Table/index.d.cts +4 -0
  339. package/dist/components/Table/index.d.ts +4 -0
  340. package/dist/components/Table/index.js +1 -1
  341. package/dist/components/ThemeProvider/index.cjs +7 -7
  342. package/dist/components/ThemeProvider/index.js +1 -1
  343. package/dist/components/Toggle/index.cjs +17 -0
  344. package/dist/components/Toggle/index.cjs.map +1 -0
  345. package/dist/components/Toggle/index.d.cts +28 -0
  346. package/dist/components/Toggle/index.d.ts +28 -0
  347. package/dist/components/Toggle/index.js +4 -0
  348. package/dist/components/Toggle/index.js.map +1 -0
  349. package/dist/components/TranscriptView/index.cjs +21 -0
  350. package/dist/components/TranscriptView/index.cjs.map +1 -0
  351. package/dist/components/TranscriptView/index.d.cts +55 -0
  352. package/dist/components/TranscriptView/index.d.ts +55 -0
  353. package/dist/components/TranscriptView/index.js +4 -0
  354. package/dist/components/TranscriptView/index.js.map +1 -0
  355. package/dist/datavis.cjs +268 -227
  356. package/dist/datavis.cjs.map +1 -1
  357. package/dist/datavis.d.cts +83 -9
  358. package/dist/datavis.d.ts +83 -9
  359. package/dist/datavis.js +235 -229
  360. package/dist/datavis.js.map +1 -1
  361. package/dist/esheet.cjs +184 -0
  362. package/dist/esheet.cjs.map +1 -1
  363. package/dist/esheet.d.cts +117 -0
  364. package/dist/esheet.d.ts +117 -0
  365. package/dist/esheet.js +163 -0
  366. package/dist/esheet.js.map +1 -1
  367. package/dist/hey-buddy-CLUVAY2X.cjs +1133 -0
  368. package/dist/hey-buddy-CLUVAY2X.cjs.map +1 -0
  369. package/dist/hey-buddy-NMSWZ4TN.js +1131 -0
  370. package/dist/hey-buddy-NMSWZ4TN.js.map +1 -0
  371. package/dist/hooks/index.cjs +76 -16
  372. package/dist/hooks/index.d.cts +151 -2
  373. package/dist/hooks/index.d.ts +151 -2
  374. package/dist/hooks/index.js +6 -2
  375. package/dist/html-MdxqSzjD.d.cts +13 -0
  376. package/dist/html-MdxqSzjD.d.ts +13 -0
  377. package/dist/index.cjs +10394 -6565
  378. package/dist/index.cjs.map +1 -1
  379. package/dist/index.css +331 -0
  380. package/dist/index.css.map +1 -0
  381. package/dist/index.d.cts +2022 -249
  382. package/dist/index.d.ts +2022 -249
  383. package/dist/index.js +9223 -5969
  384. package/dist/index.js.map +1 -1
  385. package/dist/kerebron.cjs +119 -0
  386. package/dist/kerebron.cjs.map +1 -0
  387. package/dist/kerebron.css +11 -0
  388. package/dist/kerebron.d.cts +23 -0
  389. package/dist/kerebron.d.ts +23 -0
  390. package/dist/kerebron.js +116 -0
  391. package/dist/kerebron.js.map +1 -0
  392. package/dist/nitroTableGrid-3J2GY6CK.cjs +47 -0
  393. package/dist/nitroTableGrid-3J2GY6CK.cjs.map +1 -0
  394. package/dist/nitroTableGrid-SIMT7635.js +25 -0
  395. package/dist/nitroTableGrid-SIMT7635.js.map +1 -0
  396. package/dist/orderRows-BUJYgSc7.d.cts +221 -0
  397. package/dist/orderRows-BUJYgSc7.d.ts +221 -0
  398. package/dist/speaker-verify-5GTWAN5Y.cjs +357 -0
  399. package/dist/speaker-verify-5GTWAN5Y.cjs.map +1 -0
  400. package/dist/speaker-verify-R67P433H.js +355 -0
  401. package/dist/speaker-verify-R67P433H.js.map +1 -0
  402. package/dist/styles/init.css +5 -0
  403. package/dist/styles.css +1 -1
  404. package/dist/tailwind-preset.cjs +4 -4
  405. package/dist/tailwind-preset.js +1 -1
  406. package/dist/transcript-oaWqY3yr.d.cts +81 -0
  407. package/dist/transcript-oaWqY3yr.d.ts +81 -0
  408. package/dist/types-BYnLjEFg.d.cts +248 -0
  409. package/dist/types-BYnLjEFg.d.ts +248 -0
  410. package/dist/types-CBh8Zlje.d.cts +240 -0
  411. package/dist/types-CyCwYBlr.d.ts +240 -0
  412. package/dist/useAnchoredPosition-nXdSFKHf.d.cts +65 -0
  413. package/dist/useAnchoredPosition-nXdSFKHf.d.ts +65 -0
  414. package/dist/useTranscriptEdits-BUylQFg0.d.cts +168 -0
  415. package/dist/useTranscriptEdits-CWYnjbGP.d.ts +168 -0
  416. package/dist/utils/index.cjs +27 -18
  417. package/dist/utils/index.d.cts +1 -0
  418. package/dist/utils/index.d.ts +1 -0
  419. package/dist/utils/index.js +3 -2
  420. package/package.json +180 -55
  421. package/dist/chunk-2DS3RJ2D.js.map +0 -1
  422. package/dist/chunk-74K3RRU7.cjs +0 -4
  423. package/dist/chunk-7BARESXI.cjs.map +0 -1
  424. package/dist/chunk-CV4CVGLO.cjs.map +0 -1
  425. package/dist/chunk-DNPRRYPQ.js.map +0 -1
  426. package/dist/chunk-FRT6RQND.cjs.map +0 -1
  427. package/dist/chunk-HYEJLKXI.js +0 -476
  428. package/dist/chunk-HYEJLKXI.js.map +0 -1
  429. package/dist/chunk-I56VBDSC.js.map +0 -1
  430. package/dist/chunk-IBZXDX4L.cjs.map +0 -1
  431. package/dist/chunk-IKMR2ADM.cjs +0 -25
  432. package/dist/chunk-IKMR2ADM.cjs.map +0 -1
  433. package/dist/chunk-JHPFOG2N.cjs.map +0 -1
  434. package/dist/chunk-K7IGBNZA.cjs.map +0 -1
  435. package/dist/chunk-LEMY57MI.js +0 -3
  436. package/dist/chunk-MPOWJVV4.js.map +0 -1
  437. package/dist/chunk-NINI4WVS.cjs.map +0 -1
  438. package/dist/chunk-OKBR6PX4.js +0 -23
  439. package/dist/chunk-OKBR6PX4.js.map +0 -1
  440. package/dist/chunk-OYKS2JBB.cjs.map +0 -1
  441. package/dist/chunk-QVJBUWJQ.js.map +0 -1
  442. package/dist/chunk-R25H4N4Z.js.map +0 -1
  443. package/dist/chunk-V2DF2GUE.js +0 -3
  444. package/dist/chunk-WFS6R2F5.js.map +0 -1
  445. package/dist/ozwell.cjs +0 -385
  446. package/dist/ozwell.cjs.map +0 -1
  447. package/dist/ozwell.d.cts +0 -15
  448. package/dist/ozwell.d.ts +0 -15
  449. package/dist/ozwell.js +0 -360
  450. package/dist/ozwell.js.map +0 -1
package/dist/datavis.js CHANGED
@@ -1,247 +1,253 @@
1
- import { createContext, useRef, useContext, useMemo } from 'react';
2
- import { Source, ComputedView } from 'datavis-ace';
3
- import { DataGrid } from 'datavis/src/components/DataGrid';
4
- import { determineColumns } from 'datavis/src/adapters/colconfig-adapter';
5
- import { getBuiltinGroupFunctions } from 'datavis/src/adapters/group-adapter';
6
- import { buildAggregateFunctions } from 'datavis/src/adapters/wcdatavis-interop';
7
- import { useView } from 'datavis/src/adapters/use-data';
8
- import { TableRenderer } from 'datavis/src/components/table/TableRenderer';
9
- import { jsx } from 'react/jsx-runtime';
1
+ import { DataVisNitroContext, DataVisNitroSource, DataVisNitroGrid } from './chunk-YBLIDESO.js';
2
+ export { DataVisNitroContext, DataVisNitroGraph, DataVisNitroGrid, DataVisNitroSource } from './chunk-YBLIDESO.js';
3
+ import { buildChartOrderRows, buildEncounterOrderRows } from './chunk-Y5KEFV5O.js';
4
+ import { Button } from './chunk-ZVSW2KS6.js';
5
+ import { Badge } from './chunk-T42BCIUA.js';
6
+ import { cn } from './chunk-F3SOEIN2.js';
7
+ import * as React from 'react';
8
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
10
9
 
11
- // src/components/DataVisNITRO/DataVisNITRO.tsx
12
- var DataVisNitroContext = createContext(null);
13
- function isObject(value) {
14
- return typeof value === "object" && value !== null;
15
- }
16
- function normalizeTypeInfo(typeInfo) {
17
- if (Array.isArray(typeInfo)) {
18
- return Object.fromEntries(
19
- typeInfo.filter(isObject).map((entry) => [entry.field, entry])
20
- );
21
- }
22
- if (!isObject(typeInfo)) {
23
- return {};
24
- }
25
- const maybeOrdMap = typeInfo;
26
- if (typeof maybeOrdMap.keys === "function" && typeof maybeOrdMap.get === "function") {
27
- return Object.fromEntries(
28
- maybeOrdMap.keys().map((field) => [field, maybeOrdMap.get?.(field) ?? {}])
29
- );
30
- }
31
- return Object.fromEntries(
32
- Object.entries(typeInfo).filter(([, value]) => isObject(value))
33
- );
34
- }
35
- function normalizeFieldType(type) {
36
- if (!type) return void 0;
37
- if (type === "integer") return "number";
38
- if (type === "boolean") return "string";
39
- return type;
40
- }
41
- function buildColumnFromField(field, typeInfo) {
42
- const info = typeInfo[field];
43
- const normalizedType = normalizeFieldType(info?.type);
44
- return {
45
- field,
46
- header: info?.displayText ?? field,
47
- sortable: true,
48
- filterable: true,
49
- resizable: true,
50
- reorderable: true,
51
- ...normalizedType ? {
52
- typeInfo: {
53
- type: normalizedType,
54
- ...info?.format !== void 0 ? { format: info.format } : {},
55
- ...info?.internalType !== void 0 ? { internalType: info.internalType } : {}
56
- }
57
- } : {}
58
- };
59
- }
60
- function mergeColumnWithTypeInfo(column, typeInfo) {
61
- const fallbackColumn = buildColumnFromField(column.field, typeInfo);
62
- return {
63
- ...fallbackColumn,
64
- ...column,
65
- header: column.header ?? fallbackColumn.header,
66
- typeInfo: column.typeInfo ?? fallbackColumn.typeInfo
67
- };
68
- }
69
- function buildResolvedColumns(columns, fallbackFields, typeInfo) {
70
- if (columns && columns.length > 0) {
71
- return columns.map((column) => {
72
- if (typeof column === "string") {
73
- return buildColumnFromField(column, typeInfo);
74
- }
75
- return mergeColumnWithTypeInfo(column, typeInfo);
10
+ var ORDER_COLUMNS = [
11
+ { field: "status", header: "Status", type: "string" },
12
+ { field: "order", header: "Order", type: "string" },
13
+ { field: "reason", header: "Reason", type: "string" },
14
+ { field: "kind", header: "Kind", type: "string" },
15
+ { field: "date", header: "Date", type: "date" },
16
+ { field: "dueDate", header: "Due", type: "date" },
17
+ { field: "provider", header: "Provider", type: "string" },
18
+ { field: "requisitionId", header: "Requisition", type: "string" },
19
+ { field: "encounterId", header: "Encounter", type: "string" },
20
+ { field: "blockedBy", header: "Blocked by", type: "string" }
21
+ ];
22
+ var ORDER_CONTROL_FIELDS = ORDER_COLUMNS.filter(
23
+ (c) => c.field !== "blockedBy"
24
+ ).map((c) => ({ field: c.field, displayName: c.header, type: c.type }));
25
+ function useOrderRowsUrl(rows) {
26
+ const url = React.useMemo(() => {
27
+ const payload = {
28
+ typeInfo: ORDER_COLUMNS.map(({ field, type }) => ({ field, type })),
29
+ data: rows
30
+ };
31
+ const blob = new Blob([JSON.stringify(payload)], {
32
+ type: "application/json"
76
33
  });
77
- }
78
- return fallbackFields.map((field) => buildColumnFromField(field, typeInfo));
79
- }
80
- function buildFallbackFieldOrder(typeInfo, data) {
81
- const rows = Array.isArray(data) ? data.filter((row) => isObject(row)) : null;
82
- const normalizedEntries = Object.fromEntries(
83
- Object.entries(typeInfo).map(([field, info]) => [
84
- field,
85
- {
86
- type: normalizeFieldType(info.type) ?? "string",
87
- ...info.displayText !== void 0 ? { displayText: info.displayText } : {}
88
- }
89
- ])
90
- );
91
- return determineColumns(null, normalizedEntries, rows);
34
+ return URL.createObjectURL(blob);
35
+ }, [rows]);
36
+ React.useEffect(() => () => URL.revokeObjectURL(url), [url]);
37
+ return url;
92
38
  }
93
- function buildControlFields(columns) {
94
- return columns.map((column) => ({
95
- field: column.field,
96
- displayName: column.header,
97
- type: column.typeInfo?.type
98
- }));
39
+ var STATUS_VARIANT = {
40
+ completed: { label: "Completed", variant: "success" },
41
+ pending: { label: "Pending", variant: "secondary" },
42
+ available: { label: "Available", variant: "warning" },
43
+ blocked: { label: "Blocked", variant: "default" }
44
+ };
45
+ function OrderStatusBadge({ status }) {
46
+ const meta = STATUS_VARIANT[status];
47
+ if (!meta) return /* @__PURE__ */ jsx(Fragment, { children: status });
48
+ return /* @__PURE__ */ jsx(Badge, { variant: meta.variant, children: meta.label });
99
49
  }
100
- function buildAggregateFields(columns) {
101
- return columns.map((column) => ({
102
- field: column.field,
103
- displayName: column.header
104
- }));
105
- }
106
- function mergeTableDef(tableDef, features) {
107
- if (!tableDef && !features) {
108
- return void 0;
50
+ function formatOrderCell(value, _row, column) {
51
+ if (column.field === "status" && typeof value === "string") {
52
+ return /* @__PURE__ */ jsx(OrderStatusBadge, { status: value });
109
53
  }
110
- const { rowMode, ...featureFlags } = features ?? {};
111
- return {
112
- ...tableDef,
113
- ...rowMode !== void 0 ? { rowMode } : {},
114
- ...Object.keys(featureFlags).length > 0 ? {
115
- features: {
116
- ...tableDef?.features ?? {},
117
- ...featureFlags
118
- }
119
- } : {}
120
- };
54
+ return value;
121
55
  }
122
- function DataVisNitroSource(props) {
123
- const { type, children } = props;
124
- const url = props.type === "http" ? props.url : void 0;
125
- const viewRef = useRef(null);
126
- if (viewRef.current === null || viewRef.current._dvType !== type || viewRef.current._dvUrl !== url) {
127
- const source = props.type === "http" ? new Source({ type, url: props.url }) : new Source({ type });
128
- viewRef.current = Object.assign(
129
- new ComputedView(source),
130
- { _dvType: type, _dvUrl: url }
131
- );
132
- }
133
- return /* @__PURE__ */ jsx(DataVisNitroContext.Provider, { value: viewRef.current, children });
134
- }
135
- function DataVisNitroGridInner({
136
- computedView,
137
- columns,
138
- allColumns,
139
- features,
140
- filterColumns,
141
- controlFields,
142
- aggregateFields,
143
- aggregateFunctions,
144
- groupFunctionDefs,
145
- tableDef,
146
- formatCell,
147
- onColumnReorder,
148
- onColumnResize,
149
- onHeaderContextMenu,
150
- onRowClick,
151
- onRowDoubleClick,
152
- onSelectionChange,
153
- style,
154
- trans,
155
- ...dataGridProps
56
+ var DEFAULT_GROUP_PRESETS = [
57
+ { key: "none", label: "Flat" },
58
+ { key: "reason", label: "By reason", field: "reason" },
59
+ { key: "provider", label: "By provider", field: "provider" },
60
+ { key: "requisition", label: "By requisition", field: "requisitionId" },
61
+ { key: "status", label: "By status", field: "status" },
62
+ { key: "date", label: "By date", field: "date" }
63
+ ];
64
+ function OrdersGroupPresets({
65
+ presets = DEFAULT_GROUP_PRESETS,
66
+ className
156
67
  }) {
157
- const viewState = useView(computedView, false);
158
- const normalizedTypeInfo = useMemo(
159
- () => normalizeTypeInfo(viewState.typeInfo ?? computedView?.typeInfo ?? null),
160
- [computedView, viewState.typeInfo]
161
- );
162
- const fallbackFields = useMemo(
163
- () => buildFallbackFieldOrder(normalizedTypeInfo, viewState.data?.data ?? null),
164
- [normalizedTypeInfo, viewState.data?.data]
165
- );
166
- const resolvedAllColumns = useMemo(() => {
167
- if (allColumns && allColumns.length > 0) {
168
- return allColumns.map(
169
- (column) => mergeColumnWithTypeInfo(column, normalizedTypeInfo)
170
- );
68
+ const view = React.useContext(DataVisNitroContext);
69
+ const [active, setActive] = React.useState("none");
70
+ const apply = (preset) => {
71
+ if (!view) return;
72
+ setActive(preset.key);
73
+ if (preset.field) {
74
+ view.setGroup({ fieldNames: [{ field: preset.field }] });
75
+ } else {
76
+ view.clearGroup();
171
77
  }
172
- return buildResolvedColumns(columns, fallbackFields, normalizedTypeInfo);
173
- }, [allColumns, columns, fallbackFields, normalizedTypeInfo]);
174
- const resolvedColumns = useMemo(() => {
175
- if (columns && columns.length > 0) {
176
- return buildResolvedColumns(
177
- columns,
178
- fallbackFields,
179
- normalizedTypeInfo
180
- ).filter((column) => column.visible !== false);
78
+ };
79
+ return /* @__PURE__ */ jsxs(
80
+ "div",
81
+ {
82
+ "data-slot": "orders-group-presets",
83
+ role: "group",
84
+ "aria-label": "Group orders by",
85
+ className: cn("flex flex-wrap items-center gap-1.5", className),
86
+ children: [
87
+ /* @__PURE__ */ jsx("span", { className: "text-muted-foreground text-xs font-medium", children: "Group:" }),
88
+ presets.map((p) => /* @__PURE__ */ jsx(
89
+ Button,
90
+ {
91
+ type: "button",
92
+ size: "sm",
93
+ variant: active === p.key ? "primary" : "outline",
94
+ "aria-pressed": active === p.key,
95
+ onClick: () => apply(p),
96
+ children: p.label
97
+ },
98
+ p.key
99
+ ))
100
+ ]
181
101
  }
182
- return resolvedAllColumns.filter((column) => column.visible !== false);
183
- }, [columns, fallbackFields, normalizedTypeInfo, resolvedAllColumns]);
184
- const effectiveAggregateFunctions = useMemo(
185
- () => aggregateFunctions ?? buildAggregateFunctions(),
186
- [aggregateFunctions]
187
- );
188
- const effectiveGroupFunctionDefs = useMemo(
189
- () => groupFunctionDefs ?? getBuiltinGroupFunctions(trans),
190
- [groupFunctionDefs, trans]
191
- );
192
- const effectiveTableDef = useMemo(
193
- () => mergeTableDef(tableDef, features),
194
- [tableDef, features]
195
102
  );
196
- const aggFnLabels = useMemo(
197
- () => Object.fromEntries(
198
- effectiveAggregateFunctions.map((fn) => [fn.name, fn.label])
199
- ),
200
- [effectiveAggregateFunctions]
103
+ }
104
+ function OrdersGridInner({
105
+ rows,
106
+ title,
107
+ height = "480px",
108
+ onOrderRows,
109
+ onRequisition,
110
+ onCancel,
111
+ className,
112
+ "data-testid": dataTestId
113
+ }) {
114
+ const url = useOrderRowsUrl(rows);
115
+ const operations = React.useMemo(() => {
116
+ const asOrderRows = (sel) => sel;
117
+ const ops = [];
118
+ if (onOrderRows) {
119
+ ops.push({
120
+ label: "Order",
121
+ callback: ({ rows: sel }) => {
122
+ const eligible = asOrderRows(sel).filter(
123
+ (r) => r.status === "available"
124
+ );
125
+ if (eligible.length > 0) onOrderRows(eligible);
126
+ }
127
+ });
128
+ }
129
+ if (onRequisition) {
130
+ ops.push({
131
+ label: "Create requisition",
132
+ callback: ({ rows: sel }) => {
133
+ const eligible = asOrderRows(sel).filter(
134
+ (r) => r.status === "pending" && !r.requisitionId
135
+ );
136
+ if (eligible.length > 0) onRequisition(eligible);
137
+ }
138
+ });
139
+ }
140
+ if (onCancel) {
141
+ ops.push({
142
+ label: "Cancel",
143
+ callback: ({ rows: sel }) => {
144
+ const eligible = asOrderRows(sel).filter(
145
+ (r) => r.status === "pending" && !r.requisitionId
146
+ );
147
+ if (eligible.length > 0) onCancel(eligible);
148
+ }
149
+ });
150
+ }
151
+ return ops;
152
+ }, [onOrderRows, onRequisition, onCancel]);
153
+ const columns = React.useMemo(
154
+ () => ORDER_COLUMNS.map(({ field, header }) => ({
155
+ field,
156
+ header
157
+ })),
158
+ []
201
159
  );
202
- return /* @__PURE__ */ jsx("div", { style, children: /* @__PURE__ */ jsx(
203
- DataGrid,
160
+ return /* @__PURE__ */ jsx(
161
+ "div",
204
162
  {
205
- ...dataGridProps,
206
- view: computedView,
207
- tableDef: effectiveTableDef,
208
- allColumns: resolvedAllColumns,
209
- filterColumns: filterColumns ?? [],
210
- controlFields: controlFields ?? buildControlFields(resolvedAllColumns),
211
- aggregateFields: aggregateFields ?? buildAggregateFields(resolvedAllColumns),
212
- aggregateFunctions: effectiveAggregateFunctions,
213
- groupFunctionDefs: effectiveGroupFunctionDefs,
214
- children: /* @__PURE__ */ jsx(
215
- TableRenderer,
216
- {
217
- viewData: viewState.data,
218
- columns: resolvedColumns,
219
- features: effectiveTableDef?.features ?? features,
220
- totalRows: viewState.totalRowCount ?? viewState.rowCount,
221
- loading: viewState.loading || !viewState.ready,
222
- formatCell,
223
- aggFnLabels,
224
- onColumnReorder,
225
- onColumnResize,
226
- onHeaderContextMenu,
227
- onRowClick,
228
- onRowDoubleClick,
229
- onSelectionChange
230
- }
231
- )
163
+ "data-slot": "orders-grid",
164
+ "data-testid": dataTestId,
165
+ className: cn("flex flex-col gap-2", className),
166
+ children: /* @__PURE__ */ jsxs(DataVisNitroSource, { type: "http", url, children: [
167
+ /* @__PURE__ */ jsx(OrdersGroupPresets, {}),
168
+ /* @__PURE__ */ jsx(
169
+ DataVisNitroGrid,
170
+ {
171
+ title,
172
+ height,
173
+ columns,
174
+ controlFields: ORDER_CONTROL_FIELDS,
175
+ operations,
176
+ features: {
177
+ rowSelection: "checkbox",
178
+ stickyHeaders: true
179
+ },
180
+ formatCell: formatOrderCell
181
+ }
182
+ )
183
+ ] })
232
184
  }
233
- ) });
185
+ );
234
186
  }
235
- function DataVisNitroGrid(props) {
236
- const computedView = useContext(DataVisNitroContext);
237
- if (computedView === null) {
238
- return null;
239
- }
240
- return /* @__PURE__ */ jsx(DataVisNitroGridInner, { ...props, computedView });
187
+ function ChartOrdersGrid({
188
+ history,
189
+ programs,
190
+ enrolledKeys,
191
+ programLabels,
192
+ orderLabels,
193
+ now,
194
+ includeDue,
195
+ title = "Orders \u2014 chart",
196
+ ...rest
197
+ }) {
198
+ const rows = React.useMemo(() => {
199
+ const opts = {
200
+ enrolledKeys,
201
+ now,
202
+ programLabels,
203
+ orderLabels,
204
+ includeDue
205
+ };
206
+ return buildChartOrderRows(history, programs, opts);
207
+ }, [
208
+ history,
209
+ programs,
210
+ enrolledKeys,
211
+ now,
212
+ programLabels,
213
+ orderLabels,
214
+ includeDue
215
+ ]);
216
+ return /* @__PURE__ */ jsx(OrdersGridInner, { rows, title, ...rest });
217
+ }
218
+ ChartOrdersGrid.displayName = "ChartOrdersGrid";
219
+ function EncounterOrdersGrid({
220
+ history,
221
+ programs,
222
+ encounterId,
223
+ enrolledKeys,
224
+ programLabels,
225
+ orderLabels,
226
+ now,
227
+ title = "Encounter orders",
228
+ ...rest
229
+ }) {
230
+ const rows = React.useMemo(() => {
231
+ const opts = {
232
+ enrolledKeys,
233
+ now,
234
+ programLabels,
235
+ orderLabels
236
+ };
237
+ return buildEncounterOrderRows(history, programs, encounterId, opts);
238
+ }, [
239
+ history,
240
+ programs,
241
+ encounterId,
242
+ enrolledKeys,
243
+ now,
244
+ programLabels,
245
+ orderLabels
246
+ ]);
247
+ return /* @__PURE__ */ jsx(OrdersGridInner, { rows, title, ...rest });
241
248
  }
242
- DataVisNitroSource.displayName = "DataVisNitroSource";
243
- DataVisNitroGrid.displayName = "DataVisNitroGrid";
249
+ EncounterOrdersGrid.displayName = "EncounterOrdersGrid";
244
250
 
245
- export { DataVisNitroContext, DataVisNitroGrid, DataVisNitroSource };
251
+ export { ChartOrdersGrid, EncounterOrdersGrid, OrdersGroupPresets };
246
252
  //# sourceMappingURL=datavis.js.map
247
253
  //# sourceMappingURL=datavis.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/DataVisNITRO/DataVisNITRO.tsx"],"names":[],"mappings":"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","file":"datavis.js","sourcesContent":["import React, { createContext, useContext, useMemo, useRef } from 'react';\nimport { ComputedView, Source } from 'datavis-ace';\n\nimport {\n DataGrid,\n type DataGridProps,\n type GridTableDef,\n} from 'datavis/src/components/DataGrid';\nimport { determineColumns } from 'datavis/src/adapters/colconfig-adapter';\nimport { getBuiltinGroupFunctions } from 'datavis/src/adapters/group-adapter';\nimport { buildAggregateFunctions } from 'datavis/src/adapters/wcdatavis-interop';\nimport { useView, type ViewInstance } from 'datavis/src/adapters/use-data';\nimport {\n TableRenderer,\n type TableRendererProps,\n} from 'datavis/src/components/table/TableRenderer';\nimport type {\n TableColumn,\n TableFeatures,\n} from 'datavis/src/components/table/types';\nimport type { ColumnFilterConfig } from 'datavis/src/components/filters/types';\nimport type { AggregateFunction } from 'datavis/src/components/controls/AggregateSection';\nimport type { GroupFunction as GroupFunctionDef } from 'datavis/src/components/dialogs/GroupFunctionDialog';\n\ntype TranslateFn = (key: string, ...args: unknown[]) => string;\n\ntype DataVisNitroSourceType = 'http' | 'local' | 'file';\n\ninterface HttpDataVisNitroSourceProps {\n type: 'http';\n url: string;\n children?: React.ReactNode;\n}\n\ninterface LocalDataVisNitroSourceProps {\n type: 'local';\n children?: React.ReactNode;\n}\n\ninterface FileDataVisNitroSourceProps {\n type: 'file';\n children?: React.ReactNode;\n}\n\nexport type DataVisNitroSourceProps =\n | HttpDataVisNitroSourceProps\n | LocalDataVisNitroSourceProps\n | FileDataVisNitroSourceProps;\n\ntype TrackedViewInstance = ViewInstance & {\n _dvType: DataVisNitroSourceType;\n _dvUrl: string | undefined;\n};\n\ntype DataVisTypeInfoEntry = {\n type?: string;\n displayText?: string;\n format?: string | Record<string, unknown>;\n internalType?: string;\n};\n\ntype DataVisTypeInfoMap = Record<string, DataVisTypeInfoEntry>;\n\ntype DataVisTypeInfoOrdMap = {\n keys?: () => string[];\n get?: (key: string) => DataVisTypeInfoEntry | undefined;\n};\n\nexport type DataVisNitroColumn = string | TableColumn;\n\nexport interface DataVisNitroGridProps\n extends\n Omit<DataGridProps, 'view' | 'children' | 'allColumns'>,\n Pick<\n TableRendererProps,\n | 'formatCell'\n | 'onColumnReorder'\n | 'onColumnResize'\n | 'onHeaderContextMenu'\n | 'onRowClick'\n | 'onRowDoubleClick'\n | 'onSelectionChange'\n > {\n columns?: DataVisNitroColumn[];\n allColumns?: TableColumn[];\n features?: TableFeatures;\n filterColumns?: ColumnFilterConfig[];\n aggregateFunctions?: AggregateFunction[];\n groupFunctionDefs?: GroupFunctionDef[];\n style?: React.CSSProperties;\n trans?: TranslateFn;\n}\n\nexport const DataVisNitroContext = createContext<ViewInstance | null>(null);\n\nfunction isObject(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null;\n}\n\nfunction normalizeTypeInfo(typeInfo: unknown): DataVisTypeInfoMap {\n if (Array.isArray(typeInfo)) {\n return Object.fromEntries(\n typeInfo.filter(isObject).map((entry) => [entry.field, entry])\n ) as DataVisTypeInfoMap;\n }\n\n if (!isObject(typeInfo)) {\n return {};\n }\n\n const maybeOrdMap = typeInfo as DataVisTypeInfoOrdMap;\n if (\n typeof maybeOrdMap.keys === 'function' &&\n typeof maybeOrdMap.get === 'function'\n ) {\n return Object.fromEntries(\n maybeOrdMap.keys().map((field) => [field, maybeOrdMap.get?.(field) ?? {}])\n );\n }\n\n return Object.fromEntries(\n Object.entries(typeInfo).filter(([, value]) => isObject(value))\n ) as DataVisTypeInfoMap;\n}\n\nfunction normalizeFieldType(type: string | undefined): string | undefined {\n if (!type) return undefined;\n if (type === 'integer') return 'number';\n if (type === 'boolean') return 'string';\n return type;\n}\n\nfunction buildColumnFromField(\n field: string,\n typeInfo: DataVisTypeInfoMap\n): TableColumn {\n const info = typeInfo[field];\n const normalizedType = normalizeFieldType(info?.type);\n\n return {\n field,\n header: info?.displayText ?? field,\n sortable: true,\n filterable: true,\n resizable: true,\n reorderable: true,\n ...(normalizedType\n ? {\n typeInfo: {\n type: normalizedType,\n ...(info?.format !== undefined ? { format: info.format } : {}),\n ...(info?.internalType !== undefined\n ? { internalType: info.internalType }\n : {}),\n },\n }\n : {}),\n };\n}\n\nfunction mergeColumnWithTypeInfo(\n column: TableColumn,\n typeInfo: DataVisTypeInfoMap\n): TableColumn {\n const fallbackColumn = buildColumnFromField(column.field, typeInfo);\n return {\n ...fallbackColumn,\n ...column,\n header: column.header ?? fallbackColumn.header,\n typeInfo: column.typeInfo ?? fallbackColumn.typeInfo,\n };\n}\n\nfunction buildResolvedColumns(\n columns: DataVisNitroColumn[] | undefined,\n fallbackFields: string[],\n typeInfo: DataVisTypeInfoMap\n): TableColumn[] {\n if (columns && columns.length > 0) {\n return columns.map((column) => {\n if (typeof column === 'string') {\n return buildColumnFromField(column, typeInfo);\n }\n\n return mergeColumnWithTypeInfo(column, typeInfo);\n });\n }\n\n return fallbackFields.map((field) => buildColumnFromField(field, typeInfo));\n}\n\nfunction buildFallbackFieldOrder(\n typeInfo: DataVisTypeInfoMap,\n data: unknown[] | null\n): string[] {\n const rows = Array.isArray(data)\n ? data.filter((row): row is Record<string, unknown> => isObject(row))\n : null;\n\n const normalizedEntries = Object.fromEntries(\n Object.entries(typeInfo).map(([field, info]) => [\n field,\n {\n type: normalizeFieldType(info.type) ?? 'string',\n ...(info.displayText !== undefined\n ? { displayText: info.displayText }\n : {}),\n },\n ])\n );\n\n return determineColumns(null, normalizedEntries, rows);\n}\n\nfunction buildControlFields(\n columns: TableColumn[]\n): NonNullable<DataGridProps['controlFields']> {\n return columns.map((column) => ({\n field: column.field,\n displayName: column.header,\n type: column.typeInfo?.type,\n }));\n}\n\nfunction buildAggregateFields(\n columns: TableColumn[]\n): NonNullable<DataGridProps['aggregateFields']> {\n return columns.map((column) => ({\n field: column.field,\n displayName: column.header,\n }));\n}\n\nfunction mergeTableDef(\n tableDef: GridTableDef | undefined,\n features: TableFeatures | undefined\n): GridTableDef | undefined {\n if (!tableDef && !features) {\n return undefined;\n }\n\n const { rowMode, ...featureFlags } = features ?? {};\n\n return {\n ...tableDef,\n ...(rowMode !== undefined ? { rowMode } : {}),\n ...(Object.keys(featureFlags).length > 0\n ? {\n features: {\n ...(tableDef?.features ?? {}),\n ...featureFlags,\n },\n }\n : {}),\n };\n}\n\nfunction DataVisNitroSource(props: DataVisNitroSourceProps) {\n const { type, children } = props;\n const url = props.type === 'http' ? props.url : undefined;\n const viewRef = useRef<TrackedViewInstance | null>(null);\n\n if (\n viewRef.current === null ||\n viewRef.current._dvType !== type ||\n viewRef.current._dvUrl !== url\n ) {\n const source =\n props.type === 'http'\n ? new Source({ type, url: props.url })\n : new Source({ type });\n\n viewRef.current = Object.assign(\n new ComputedView(source) as unknown as ViewInstance,\n { _dvType: type, _dvUrl: url }\n );\n }\n\n return (\n <DataVisNitroContext.Provider value={viewRef.current}>\n {children}\n </DataVisNitroContext.Provider>\n );\n}\n\nfunction DataVisNitroGridInner({\n computedView,\n columns,\n allColumns,\n features,\n filterColumns,\n controlFields,\n aggregateFields,\n aggregateFunctions,\n groupFunctionDefs,\n tableDef,\n formatCell,\n onColumnReorder,\n onColumnResize,\n onHeaderContextMenu,\n onRowClick,\n onRowDoubleClick,\n onSelectionChange,\n style,\n trans,\n ...dataGridProps\n}: DataVisNitroGridProps & { computedView: ViewInstance }) {\n const viewState = useView(computedView, false);\n\n const normalizedTypeInfo = useMemo(\n () =>\n normalizeTypeInfo(viewState.typeInfo ?? computedView?.typeInfo ?? null),\n [computedView, viewState.typeInfo]\n );\n\n const fallbackFields = useMemo(\n () =>\n buildFallbackFieldOrder(normalizedTypeInfo, viewState.data?.data ?? null),\n [normalizedTypeInfo, viewState.data?.data]\n );\n\n const resolvedAllColumns = useMemo(() => {\n if (allColumns && allColumns.length > 0) {\n return allColumns.map((column) =>\n mergeColumnWithTypeInfo(column, normalizedTypeInfo)\n );\n }\n\n return buildResolvedColumns(columns, fallbackFields, normalizedTypeInfo);\n }, [allColumns, columns, fallbackFields, normalizedTypeInfo]);\n\n const resolvedColumns = useMemo(() => {\n if (columns && columns.length > 0) {\n return buildResolvedColumns(\n columns,\n fallbackFields,\n normalizedTypeInfo\n ).filter((column) => column.visible !== false);\n }\n\n return resolvedAllColumns.filter((column) => column.visible !== false);\n }, [columns, fallbackFields, normalizedTypeInfo, resolvedAllColumns]);\n\n const effectiveAggregateFunctions = useMemo(\n () => aggregateFunctions ?? buildAggregateFunctions(),\n [aggregateFunctions]\n );\n\n const effectiveGroupFunctionDefs = useMemo(\n () =>\n groupFunctionDefs ??\n getBuiltinGroupFunctions(trans as TranslateFn | undefined),\n [groupFunctionDefs, trans]\n );\n\n const effectiveTableDef = useMemo(\n () => mergeTableDef(tableDef, features),\n [tableDef, features]\n );\n\n const aggFnLabels = useMemo(\n () =>\n Object.fromEntries(\n effectiveAggregateFunctions.map((fn) => [fn.name, fn.label])\n ),\n [effectiveAggregateFunctions]\n );\n\n return (\n <div style={style}>\n <DataGrid\n {...dataGridProps}\n view={computedView}\n tableDef={effectiveTableDef}\n allColumns={resolvedAllColumns}\n filterColumns={filterColumns ?? []}\n controlFields={controlFields ?? buildControlFields(resolvedAllColumns)}\n aggregateFields={\n aggregateFields ?? buildAggregateFields(resolvedAllColumns)\n }\n aggregateFunctions={effectiveAggregateFunctions}\n groupFunctionDefs={effectiveGroupFunctionDefs}\n >\n <TableRenderer\n viewData={viewState.data}\n columns={resolvedColumns}\n features={\n (effectiveTableDef?.features as TableFeatures | undefined) ??\n features\n }\n totalRows={viewState.totalRowCount ?? viewState.rowCount}\n loading={viewState.loading || !viewState.ready}\n formatCell={formatCell}\n aggFnLabels={aggFnLabels}\n onColumnReorder={onColumnReorder}\n onColumnResize={onColumnResize}\n onHeaderContextMenu={onHeaderContextMenu}\n onRowClick={onRowClick}\n onRowDoubleClick={onRowDoubleClick}\n onSelectionChange={onSelectionChange}\n />\n </DataGrid>\n </div>\n );\n}\n\nfunction DataVisNitroGrid(props: DataVisNitroGridProps) {\n const computedView = useContext(DataVisNitroContext);\n\n if (computedView === null) {\n return null;\n }\n\n return <DataVisNitroGridInner {...props} computedView={computedView} />;\n}\n\nDataVisNitroSource.displayName = 'DataVisNitroSource';\nDataVisNitroGrid.displayName = 'DataVisNitroGrid';\n\nexport { DataVisNitroGrid, DataVisNitroSource };\n"]}
1
+ {"version":3,"sources":["../src/components/HealthSurveillance/ordersGridShared.tsx","../src/components/HealthSurveillance/OrdersGrid.tsx"],"names":["React2","jsx","jsxs"],"mappings":"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","file":"datavis.js","sourcesContent":["'use client';\n\n/**\n * Shared internals for the NITRO-backed orders grids\n * (ChartOrdersGrid / EncounterOrdersGrid).\n *\n * - {@link useOrderRowsUrl} — feeds in-memory {@link OrderRow}s to\n * `DataVisNitroSource` through a short-lived object-URL carrying the\n * `{ typeInfo, data }` payload the engine expects (its `local` source type\n * is not implemented yet; same pattern as SuperChat's NITRO table plugin).\n * - {@link OrderStatusBadge} / {@link formatOrderCell} — status chips in grid\n * cells.\n * - {@link OrdersGroupPresets} — one-click \"group by\" chips driving\n * `view.setGroup()` through {@link DataVisNitroContext}.\n *\n * Row selection and mass operations are native NITRO features:\n * `features.rowSelection: 'checkbox'` + the `operations` palette.\n */\n\nimport * as React from 'react';\nimport { cn } from '../../utils/cn';\nimport { Badge } from '../Badge/Badge';\nimport { Button } from '../Button';\nimport { DataVisNitroContext } from '../DataVisNITRO';\nimport type { OrderRow, OrderRowStatus } from './orderRows';\n\n// =============================================================================\n// Column + typeInfo metadata\n// =============================================================================\n\n/** Grid columns, in display order, with control-panel display names. */\nexport const ORDER_COLUMNS: {\n field: keyof OrderRow;\n header: string;\n type: 'string' | 'date';\n}[] = [\n { field: 'status', header: 'Status', type: 'string' },\n { field: 'order', header: 'Order', type: 'string' },\n { field: 'reason', header: 'Reason', type: 'string' },\n { field: 'kind', header: 'Kind', type: 'string' },\n { field: 'date', header: 'Date', type: 'date' },\n { field: 'dueDate', header: 'Due', type: 'date' },\n { field: 'provider', header: 'Provider', type: 'string' },\n { field: 'requisitionId', header: 'Requisition', type: 'string' },\n { field: 'encounterId', header: 'Encounter', type: 'string' },\n { field: 'blockedBy', header: 'Blocked by', type: 'string' },\n];\n\n/** Fields offered in the grid's Group/Filter control panel. */\nexport const ORDER_CONTROL_FIELDS = ORDER_COLUMNS.filter(\n (c) => c.field !== 'blockedBy'\n).map((c) => ({ field: c.field, displayName: c.header, type: c.type }));\n\n// =============================================================================\n// useOrderRowsUrl\n// =============================================================================\n\n/** Serialize rows into an object-URL `{ typeInfo, data }` source. */\nexport function useOrderRowsUrl(rows: OrderRow[]): string {\n const url = React.useMemo(() => {\n const payload = {\n typeInfo: ORDER_COLUMNS.map(({ field, type }) => ({ field, type })),\n data: rows,\n };\n const blob = new Blob([JSON.stringify(payload)], {\n type: 'application/json',\n });\n return URL.createObjectURL(blob);\n }, [rows]);\n\n React.useEffect(() => () => URL.revokeObjectURL(url), [url]);\n return url;\n}\n\n// =============================================================================\n// Status badge\n// =============================================================================\n\nconst STATUS_VARIANT: Record<\n OrderRowStatus,\n { label: string; variant: 'success' | 'secondary' | 'warning' | 'default' }\n> = {\n completed: { label: 'Completed', variant: 'success' },\n pending: { label: 'Pending', variant: 'secondary' },\n available: { label: 'Available', variant: 'warning' },\n blocked: { label: 'Blocked', variant: 'default' },\n};\n\nexport function OrderStatusBadge({ status }: { status: OrderRowStatus }) {\n const meta = STATUS_VARIANT[status];\n if (!meta) return <>{status}</>;\n return <Badge variant={meta.variant}>{meta.label}</Badge>;\n}\n\n/** `formatCell` for DataVisNitroGrid — renders the status column as a badge. */\nexport function formatOrderCell(\n value: unknown,\n _row: unknown,\n column: { field: string }\n): React.ReactNode {\n if (column.field === 'status' && typeof value === 'string') {\n return <OrderStatusBadge status={value as OrderRowStatus} />;\n }\n return value as React.ReactNode;\n}\n\n// =============================================================================\n// Group presets\n// =============================================================================\n\nexport interface GroupPreset {\n key: string;\n label: string;\n /** Field to group by; undefined = clear grouping */\n field?: keyof OrderRow;\n}\n\nexport const DEFAULT_GROUP_PRESETS: GroupPreset[] = [\n { key: 'none', label: 'Flat' },\n { key: 'reason', label: 'By reason', field: 'reason' },\n { key: 'provider', label: 'By provider', field: 'provider' },\n { key: 'requisition', label: 'By requisition', field: 'requisitionId' },\n { key: 'status', label: 'By status', field: 'status' },\n { key: 'date', label: 'By date', field: 'date' },\n];\n\n/**\n * One-click group-by chips. Must render inside `DataVisNitroSource` — drives\n * the shared view via `setGroup({ fieldNames: [{ field }] })`.\n */\nexport function OrdersGroupPresets({\n presets = DEFAULT_GROUP_PRESETS,\n className,\n}: {\n presets?: GroupPreset[];\n className?: string;\n}) {\n const view = React.useContext(DataVisNitroContext);\n const [active, setActive] = React.useState('none');\n\n const apply = (preset: GroupPreset) => {\n if (!view) return;\n setActive(preset.key);\n if (preset.field) {\n view.setGroup({ fieldNames: [{ field: preset.field }] });\n } else {\n view.clearGroup();\n }\n };\n\n return (\n <div\n data-slot=\"orders-group-presets\"\n role=\"group\"\n aria-label=\"Group orders by\"\n className={cn('flex flex-wrap items-center gap-1.5', className)}\n >\n <span className=\"text-muted-foreground text-xs font-medium\">Group:</span>\n {presets.map((p) => (\n <Button\n key={p.key}\n type=\"button\"\n size=\"sm\"\n variant={active === p.key ? 'primary' : 'outline'}\n aria-pressed={active === p.key}\n onClick={() => apply(p)}\n >\n {p.label}\n </Button>\n ))}\n </div>\n );\n}\n","'use client';\n\n/**\n * NITRO-backed orders grids.\n *\n * - {@link ChartOrdersGrid} — chart-wide: every pending and past **encounter\n * order** across all encounters, plus the actionable due-list orders. Group\n * and filter by reason (program), provider, requisition, status, kind, and\n * date — via the one-click presets or the grid's own control panel.\n * - {@link EncounterOrdersGrid} — the current encounter's orders (its pending\n * unprocessed items are the mass-operation targets) plus the due-list\n * orders available to place this visit.\n *\n * Encounter orders get bundled into **requisitions** — documents routing a\n * batch of orders to a provider/referral. The grids only emit callbacks\n * (`onOrderRows`, `onRequisition`, `onCancel`); document generation is the\n * host application's job.\n *\n * Rendering is `@mieweb/ui/datavis` (`DataVisNitroSource` + `DataVisNitroGrid`)\n * fed through an object-URL source — see ordersGridShared.tsx.\n */\n\nimport * as React from 'react';\nimport { cn } from '../../utils/cn';\nimport { DataVisNitroGrid, DataVisNitroSource } from '../DataVisNITRO';\nimport {\n buildChartOrderRows,\n buildEncounterOrderRows,\n type OrderRow,\n type OrderRowsOptions,\n} from './orderRows';\nimport {\n ORDER_COLUMNS,\n ORDER_CONTROL_FIELDS,\n formatOrderCell,\n useOrderRowsUrl,\n OrdersGroupPresets,\n} from './ordersGridShared';\nimport type { PatientHistory } from './history';\nimport type { ProgramsMap } from './evaluate';\n\n// =============================================================================\n// Shared props + inner grid\n// =============================================================================\n\ninterface OrdersGridBaseProps {\n history: PatientHistory;\n /** Program metadata — programs.json contents (`programs` field) */\n programs: ProgramsMap;\n /** Occupational enrollments; quality measures apply to everyone in-gate */\n enrolledKeys?: string[];\n /** Display labels for program keys (falls back to the key) */\n programLabels?: Record<string, string>;\n /** Display labels for order keys (falls back to history labels, then key) */\n orderLabels?: Record<string, string>;\n /** Evaluation clock (defaults to today; inject for deterministic stories) */\n now?: Date;\n /** Place the selected available orders */\n onOrderRows?: (rows: OrderRow[]) => void;\n /** Bundle selected pending unprocessed orders into a requisition */\n onRequisition?: (rows: OrderRow[]) => void;\n /** Cancel selected pending unprocessed orders */\n onCancel?: (rows: OrderRow[]) => void;\n /** Grid height (CSS value) */\n height?: string;\n /** Grid title */\n title?: string;\n className?: string;\n 'data-testid'?: string;\n}\n\nfunction OrdersGridInner({\n rows,\n title,\n height = '480px',\n onOrderRows,\n onRequisition,\n onCancel,\n className,\n 'data-testid': dataTestId,\n}: {\n rows: OrderRow[];\n title: string;\n height?: string;\n onOrderRows?: (rows: OrderRow[]) => void;\n onRequisition?: (rows: OrderRow[]) => void;\n onCancel?: (rows: OrderRow[]) => void;\n className?: string;\n 'data-testid'?: string;\n}) {\n const url = useOrderRowsUrl(rows);\n\n // Mass operations over the native checkbox selection. The palette hands\n // each callback the selected rows' data (OrderRow-shaped after the\n // object-URL round trip); each operation applies only to eligible rows:\n // 'available' can be ordered, pending unprocessed (no requisition yet)\n // can be bundled into a requisition or cancelled.\n const operations = React.useMemo(() => {\n const asOrderRows = (sel: unknown[]) => sel as OrderRow[];\n const ops: {\n label: string;\n callback: (ctx: { rows: unknown[] }) => void;\n }[] = [];\n if (onOrderRows) {\n ops.push({\n label: 'Order',\n callback: ({ rows: sel }) => {\n const eligible = asOrderRows(sel).filter(\n (r) => r.status === 'available'\n );\n if (eligible.length > 0) onOrderRows(eligible);\n },\n });\n }\n if (onRequisition) {\n ops.push({\n label: 'Create requisition',\n callback: ({ rows: sel }) => {\n const eligible = asOrderRows(sel).filter(\n (r) => r.status === 'pending' && !r.requisitionId\n );\n if (eligible.length > 0) onRequisition(eligible);\n },\n });\n }\n if (onCancel) {\n ops.push({\n label: 'Cancel',\n callback: ({ rows: sel }) => {\n const eligible = asOrderRows(sel).filter(\n (r) => r.status === 'pending' && !r.requisitionId\n );\n if (eligible.length > 0) onCancel(eligible);\n },\n });\n }\n return ops;\n }, [onOrderRows, onRequisition, onCancel]);\n\n const columns = React.useMemo(\n () =>\n ORDER_COLUMNS.map(({ field, header }) => ({\n field: field as string,\n header,\n })),\n []\n );\n\n return (\n <div\n data-slot=\"orders-grid\"\n data-testid={dataTestId}\n className={cn('flex flex-col gap-2', className)}\n >\n <DataVisNitroSource type=\"http\" url={url}>\n <OrdersGroupPresets />\n <DataVisNitroGrid\n title={title}\n height={height}\n columns={columns}\n controlFields={ORDER_CONTROL_FIELDS}\n operations={operations}\n // 'checkbox' selection ships in @mieweb/datavis > 1.1.0 (native\n // leading checkbox column + tri-state select-all header); the\n // published typings still say `boolean`, hence the cast.\n features={\n {\n rowSelection: 'checkbox',\n stickyHeaders: true,\n } as unknown as React.ComponentProps<\n typeof DataVisNitroGrid\n >['features']\n }\n formatCell={formatOrderCell}\n />\n </DataVisNitroSource>\n </div>\n );\n}\n\n// =============================================================================\n// ChartOrdersGrid\n// =============================================================================\n\nexport interface ChartOrdersGridProps extends OrdersGridBaseProps {\n /** Include not-yet-placed due-list orders as available/blocked rows */\n includeDue?: boolean;\n}\n\n/** Chart-wide order history across all encounters. */\nexport function ChartOrdersGrid({\n history,\n programs,\n enrolledKeys,\n programLabels,\n orderLabels,\n now,\n includeDue,\n title = 'Orders — chart',\n ...rest\n}: ChartOrdersGridProps) {\n const rows = React.useMemo(() => {\n const opts: OrderRowsOptions = {\n enrolledKeys,\n now,\n programLabels,\n orderLabels,\n includeDue,\n };\n return buildChartOrderRows(history, programs, opts);\n }, [\n history,\n programs,\n enrolledKeys,\n now,\n programLabels,\n orderLabels,\n includeDue,\n ]);\n\n return <OrdersGridInner rows={rows} title={title} {...rest} />;\n}\n\nChartOrdersGrid.displayName = 'ChartOrdersGrid';\n\n// =============================================================================\n// EncounterOrdersGrid\n// =============================================================================\n\nexport interface EncounterOrdersGridProps extends OrdersGridBaseProps {\n /** The current encounter (visit) ID */\n encounterId: string;\n}\n\n/** The current encounter's orders + due-list orders placeable this visit. */\nexport function EncounterOrdersGrid({\n history,\n programs,\n encounterId,\n enrolledKeys,\n programLabels,\n orderLabels,\n now,\n title = 'Encounter orders',\n ...rest\n}: EncounterOrdersGridProps) {\n const rows = React.useMemo(() => {\n const opts: OrderRowsOptions = {\n enrolledKeys,\n now,\n programLabels,\n orderLabels,\n };\n return buildEncounterOrderRows(history, programs, encounterId, opts);\n }, [\n history,\n programs,\n encounterId,\n enrolledKeys,\n now,\n programLabels,\n orderLabels,\n ]);\n\n return <OrdersGridInner rows={rows} title={title} {...rest} />;\n}\n\nEncounterOrdersGrid.displayName = 'EncounterOrdersGrid';\n"]}