@crewlethq/ui 0.55.0 → 0.57.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/README.md +97 -4
  2. package/dist/Accordion/index.js +2 -2
  3. package/dist/AgentHandoffPanel/index.js +14 -9
  4. package/dist/AppShell/AppShell.d.ts +84 -1
  5. package/dist/AppShell/ResizeHandle.d.ts +74 -0
  6. package/dist/AppShell/index.d.ts +7 -2
  7. package/dist/AppShell/index.js +6 -4
  8. package/dist/AppShell/regions.d.ts +36 -0
  9. package/dist/AppShell/storedWidth.d.ts +47 -0
  10. package/dist/{AppShell-5LPXYUV3.css → AppShell-ZVCJRGXH.css} +172 -1
  11. package/dist/ArrangeFrame/index.js +2 -2
  12. package/dist/ArrangeList/index.js +5 -5
  13. package/dist/ArtifactBar/ArtifactBar.d.ts +13 -2
  14. package/dist/ArtifactBar/index.js +9 -8
  15. package/dist/{ArtifactBar-UMZCTARR.css → ArtifactBar-LEBMR35Y.css} +19 -1
  16. package/dist/ArtifactCard/index.js +6 -6
  17. package/dist/ArtifactNameCell/ArtifactNameCell.d.ts +7 -1
  18. package/dist/ArtifactNameCell/index.js +1 -1
  19. package/dist/ArtifactPanel/ArtifactPanel.d.ts +11 -17
  20. package/dist/ArtifactPanel/index.d.ts +3 -0
  21. package/dist/ArtifactPanel/index.js +8 -2
  22. package/dist/ArtifactPanel-TN4FFK2F.css +43 -0
  23. package/dist/AvatarPicker/index.js +9 -8
  24. package/dist/Button/index.js +2 -1
  25. package/dist/{Button-UWKBTKYD.css → Button-VXJ7M5XF.css} +9 -32
  26. package/dist/Canvas/index.js +5 -4
  27. package/dist/CanvasBoard/index.js +7 -6
  28. package/dist/CanvasToolbar/index.js +6 -5
  29. package/dist/ChangeList/ChangeList.d.ts +114 -0
  30. package/dist/ChangeList/index.d.ts +3 -0
  31. package/dist/ChangeList/index.js +10 -0
  32. package/dist/ChangeList-CB2DLR5S.css +151 -0
  33. package/dist/ChatThread/ChatThread.d.ts +53 -0
  34. package/dist/ChatThread/index.d.ts +3 -0
  35. package/dist/ChatThread/index.js +6 -0
  36. package/dist/ChatThread-52KMDXHB.css +58 -0
  37. package/dist/Checkbox/index.js +4 -4
  38. package/dist/CodeBlock/index.js +5 -4
  39. package/dist/ColorField/index.js +4 -4
  40. package/dist/ColorSwatch/index.js +5 -4
  41. package/dist/Combobox/index.js +5 -5
  42. package/dist/CommandPalette/index.js +9 -8
  43. package/dist/CommentThread/index.js +9 -7
  44. package/dist/Composer/Composer.d.ts +39 -2
  45. package/dist/Composer/index.js +5 -4
  46. package/dist/Composer-JSGTOW3F.css +192 -0
  47. package/dist/ConfirmField/index.js +4 -4
  48. package/dist/ConflictNote/index.js +3 -2
  49. package/dist/ContrastHelp/index.js +2 -2
  50. package/dist/Copyable/index.js +4 -3
  51. package/dist/DataGrid/driving.d.ts +48 -0
  52. package/dist/DataGrid/index.d.ts +2 -0
  53. package/dist/DataGrid/index.js +8 -7
  54. package/dist/DataTable/index.js +10 -9
  55. package/dist/DataView/index.js +14 -13
  56. package/dist/DatasetSource/index.js +2 -2
  57. package/dist/DateTimePicker/index.js +4 -3
  58. package/dist/DiffList/DiffList.d.ts +12 -3
  59. package/dist/DiffList/index.d.ts +1 -1
  60. package/dist/DiffList/index.js +1 -1
  61. package/dist/{DiffList-3EX64AAE.css → DiffList-GE6YBRLJ.css} +53 -0
  62. package/dist/Disclosure/anatomy.d.ts +14 -1
  63. package/dist/Disclosure/index.js +2 -2
  64. package/dist/{Disclosure-P4FH3C35.css → Disclosure-FVMA4RW2.css} +36 -0
  65. package/dist/DocTabsEditor/index.js +8 -7
  66. package/dist/DownloadButton/DownloadButton.d.ts +21 -4
  67. package/dist/DownloadButton/index.d.ts +1 -1
  68. package/dist/DownloadButton/index.js +4 -3
  69. package/dist/EditingStatus/index.js +2 -2
  70. package/dist/{Editor-GNKMX3VF.js → Editor-S4HARQ7V.js} +8 -7
  71. package/dist/EntityList/EntityList.d.ts +37 -0
  72. package/dist/EntityList/index.d.ts +3 -0
  73. package/dist/EntityList/index.js +10 -0
  74. package/dist/EntityList-XIICECVC.css +55 -0
  75. package/dist/ErrorBoundary/index.js +3 -2
  76. package/dist/FileDrop/index.js +3 -2
  77. package/dist/FollowBanner/index.js +3 -2
  78. package/dist/HuePicker/index.js +8 -7
  79. package/dist/IconButton/IconButton.d.ts +6 -1
  80. package/dist/IconButton/index.js +1 -1
  81. package/dist/{IconButton-K24JQHLF.css → IconButton-6WA7UEBJ.css} +44 -21
  82. package/dist/IconTile/IconTile.d.ts +8 -2
  83. package/dist/IconTile/index.js +1 -1
  84. package/dist/{IconTile-4GNWTLAW.css → IconTile-G52XZVR4.css} +3 -0
  85. package/dist/InlineEditor/index.js +6 -5
  86. package/dist/Input/index.js +3 -3
  87. package/dist/LinkInterstitial/index.js +6 -5
  88. package/dist/ListInput/index.js +7 -6
  89. package/dist/LogoSlot/index.js +4 -3
  90. package/dist/MarkdownEditor/index.js +8 -7
  91. package/dist/Menu/index.js +4 -3
  92. package/dist/MergeConflicts/index.js +8 -7
  93. package/dist/MessageBubble/MessageBubble.d.ts +34 -0
  94. package/dist/MessageBubble/index.d.ts +3 -0
  95. package/dist/MessageBubble/index.js +2 -0
  96. package/dist/MessageBubble-GKO6X3QG.css +71 -0
  97. package/dist/Modal/index.js +5 -4
  98. package/dist/OpenInAppCard/OpenInAppCard.d.ts +44 -0
  99. package/dist/OpenInAppCard/index.d.ts +3 -0
  100. package/dist/OpenInAppCard/index.js +15 -0
  101. package/dist/OpenInAppCard-CKHCK7DO.css +24 -0
  102. package/dist/OrgTable/index.js +3 -3
  103. package/dist/PeekRail/PeekHost.d.ts +90 -0
  104. package/dist/PeekRail/PeekRail.d.ts +83 -0
  105. package/dist/PeekRail/activation.d.ts +30 -0
  106. package/dist/PeekRail/index.d.ts +8 -0
  107. package/dist/PeekRail/index.js +8 -0
  108. package/dist/PeekRail-4L5YUQMW.css +95 -0
  109. package/dist/PeopleRail/index.js +4 -3
  110. package/dist/PinTile/index.js +2 -2
  111. package/dist/PresenterView/index.js +5 -4
  112. package/dist/PrincipalPicker/index.js +6 -6
  113. package/dist/ProposalCard/ProposalCard.d.ts +183 -0
  114. package/dist/ProposalCard/index.d.ts +3 -0
  115. package/dist/ProposalCard/index.js +17 -0
  116. package/dist/ProposalCard-23575F4C.css +29 -0
  117. package/dist/ReceiptStrip/ReceiptStrip.d.ts +78 -0
  118. package/dist/ReceiptStrip/index.d.ts +3 -0
  119. package/dist/ReceiptStrip/index.js +5 -0
  120. package/dist/ReceiptStrip-IIRKRTBG.css +93 -0
  121. package/dist/RefusalCard/RefusalCard.d.ts +34 -0
  122. package/dist/RefusalCard/index.d.ts +3 -0
  123. package/dist/RefusalCard/index.js +10 -0
  124. package/dist/RefusalCard-UM67F5HB.css +8 -0
  125. package/dist/RelativeTime/clock.d.ts +0 -6
  126. package/dist/RelativeTime/index.js +1 -1
  127. package/dist/ResizeHandle-2UNSZ4ZQ.css +59 -0
  128. package/dist/ResultTableCard/ResultTableCard.d.ts +64 -0
  129. package/dist/ResultTableCard/index.d.ts +3 -0
  130. package/dist/ResultTableCard/index.js +16 -0
  131. package/dist/ResultTableCard-HZRUDNTX.css +40 -0
  132. package/dist/ReviewList/index.js +2 -2
  133. package/dist/RichEditor/index.js +3 -2
  134. package/dist/RunChip/RunChip.d.ts +53 -0
  135. package/dist/RunChip/index.d.ts +3 -0
  136. package/dist/RunChip/index.js +10 -0
  137. package/dist/RunChip-I2S4VZ3R.css +43 -0
  138. package/dist/SandboxedFrame/index.js +3 -2
  139. package/dist/SegmentedControl/index.js +7 -6
  140. package/dist/SelectionBar/index.js +4 -3
  141. package/dist/SendButton/SendButton.d.ts +38 -0
  142. package/dist/SendButton/index.d.ts +2 -0
  143. package/dist/SendButton/index.js +4 -0
  144. package/dist/SetupWizard/index.js +6 -5
  145. package/dist/ShareDialog/index.js +8 -7
  146. package/dist/SheetColumnEditor/index.js +13 -12
  147. package/dist/SheetGrid/index.js +7 -6
  148. package/dist/SidePanel/SidePanel.d.ts +137 -0
  149. package/dist/SidePanel/SidePanelBase.d.ts +59 -0
  150. package/dist/SidePanel/index.d.ts +5 -0
  151. package/dist/SidePanel/index.js +11 -0
  152. package/dist/SidePanel-ERBUIELD.css +235 -0
  153. package/dist/SlideCompare/index.js +3 -2
  154. package/dist/SlideFilmstrip/index.js +7 -6
  155. package/dist/SlideNav/index.js +2 -2
  156. package/dist/Spinner/Spinner.d.ts +35 -0
  157. package/dist/Spinner/index.d.ts +3 -0
  158. package/dist/Spinner/index.js +2 -0
  159. package/dist/Spinner-XZ2TVYE5.css +46 -0
  160. package/dist/StatusCard/StatusCard.d.ts +59 -0
  161. package/dist/StatusCard/index.d.ts +3 -0
  162. package/dist/StatusCard/index.js +9 -0
  163. package/dist/StatusCard-6RPEE6UU.css +62 -0
  164. package/dist/StepList-A4YVU4JI.css +119 -0
  165. package/dist/Stepper/StepList.d.ts +72 -0
  166. package/dist/Stepper/index.d.ts +3 -0
  167. package/dist/Stepper/index.js +2 -1
  168. package/dist/SuggestionRow/SuggestionRow.d.ts +45 -0
  169. package/dist/SuggestionRow/index.d.ts +3 -0
  170. package/dist/SuggestionRow/index.js +3 -0
  171. package/dist/SuggestionRow-OKBGNHSS.css +102 -0
  172. package/dist/Switcher/index.js +9 -8
  173. package/dist/Table/Table.d.ts +23 -2
  174. package/dist/Table/index.d.ts +1 -1
  175. package/dist/Table/index.js +1 -1
  176. package/dist/{Table-TGCS4C3F.css → Table-RUYMMWXT.css} +49 -0
  177. package/dist/TableCells/index.js +2 -2
  178. package/dist/Tabs/index.js +6 -5
  179. package/dist/TagsInput/index.js +4 -4
  180. package/dist/ThemeGallery/index.js +2 -2
  181. package/dist/ThemeSwitcher/index.js +8 -7
  182. package/dist/ThemeToggle/index.js +2 -2
  183. package/dist/TimeRangePicker/TimeRangePicker.d.ts +121 -0
  184. package/dist/TimeRangePicker/index.d.ts +2 -0
  185. package/dist/TimeRangePicker/index.js +23 -0
  186. package/dist/TimeWindowPicker/index.js +8 -7
  187. package/dist/Toaster/Toaster.d.ts +27 -3
  188. package/dist/Toaster/index.d.ts +2 -2
  189. package/dist/Toaster/index.js +1 -1
  190. package/dist/{Toaster-C6BQ7L6I.css → Toaster-MX7TBMC3.css} +32 -11
  191. package/dist/TreeCanvas/index.js +6 -5
  192. package/dist/TreeGrid/index.js +2 -2
  193. package/dist/VersionCompare/index.js +9 -8
  194. package/dist/VersionTimeline/index.js +4 -3
  195. package/dist/WidgetFrame/index.js +2 -2
  196. package/dist/{chunk-KHKZPZHO.js → chunk-272Y3YMV.js} +3 -3
  197. package/dist/{chunk-LACA4JGC.js → chunk-2BQYODY3.js} +1 -1
  198. package/dist/{chunk-CCPOLCZL.js → chunk-2TTFDRR3.js} +2 -2
  199. package/dist/{chunk-4BJK7FE5.js → chunk-3EYSYEXP.js} +1 -1
  200. package/dist/chunk-3LI4TRUR.js +22 -0
  201. package/dist/{chunk-ATCHK6LC.js → chunk-3NQS6KYG.js} +1 -1
  202. package/dist/{chunk-V2N3BMOT.js → chunk-45KMH3E3.js} +11 -4
  203. package/dist/{chunk-ZMBPEHYH.js → chunk-4CBGIRVU.js} +1 -1
  204. package/dist/{chunk-DFW5PDU5.js → chunk-4OINEWR4.js} +1 -1
  205. package/dist/{chunk-5XKI4ITH.js → chunk-56P72ZBE.js} +4 -4
  206. package/dist/{chunk-J24Q4HTD.js → chunk-5NT6OIPP.js} +13 -3
  207. package/dist/{chunk-O2KT7HBD.js → chunk-5OMV75GE.js} +3 -3
  208. package/dist/{chunk-6RMZH7P7.js → chunk-672GLRBU.js} +2 -2
  209. package/dist/{chunk-MFXN46NN.js → chunk-67F2AM4R.js} +3 -3
  210. package/dist/{chunk-NQCY44B3.js → chunk-67MW366X.js} +2 -2
  211. package/dist/{chunk-URV6MGWT.js → chunk-6KLK7E76.js} +2 -2
  212. package/dist/{chunk-ZFM5L7M4.js → chunk-6NJW5KSX.js} +2 -2
  213. package/dist/{chunk-A4GFEMVI.js → chunk-6T6V5565.js} +1 -1
  214. package/dist/{chunk-THDGBD6Y.js → chunk-AKFHMLEX.js} +1 -1
  215. package/dist/{chunk-CNGHOTHV.js → chunk-AWSFK2IK.js} +2 -2
  216. package/dist/{chunk-HQJ24WPM.js → chunk-AZ5BKSGV.js} +1 -1
  217. package/dist/chunk-BLPT6GHV.js +31 -0
  218. package/dist/chunk-C3FX7ZSU.js +30 -0
  219. package/dist/{chunk-LDGQIDIZ.js → chunk-CGT4R7LW.js} +64 -2
  220. package/dist/chunk-CIYHSTIF.js +182 -0
  221. package/dist/chunk-CZNG3V6L.js +55 -0
  222. package/dist/{chunk-DM4JG4M5.js → chunk-D5OSP3KI.js} +3 -3
  223. package/dist/{chunk-BTHQFWMG.js → chunk-DOPPU6TZ.js} +4 -4
  224. package/dist/{chunk-AC22RZKC.js → chunk-DRT4L4WC.js} +17 -5
  225. package/dist/chunk-EA23JG6R.js +9 -0
  226. package/dist/{chunk-WHL3XZCK.js → chunk-EBG3V4MK.js} +6 -6
  227. package/dist/{chunk-5JDHMDMQ.js → chunk-EDNZHW4K.js} +57 -7
  228. package/dist/{chunk-E6HXFFWO.js → chunk-EGL24VY5.js} +2 -2
  229. package/dist/{chunk-7SHAFLEX.js → chunk-ES4HR34Y.js} +2 -2
  230. package/dist/chunk-EVWTLFKI.js +102 -0
  231. package/dist/chunk-FA44M2YT.js +25 -0
  232. package/dist/{chunk-LKBZV5IT.js → chunk-FLTMDSC3.js} +1 -1
  233. package/dist/{chunk-XANKR3EP.js → chunk-FXQLNETQ.js} +2 -2
  234. package/dist/{chunk-G22NPQG4.js → chunk-GCASX3FD.js} +4 -4
  235. package/dist/{chunk-OGXHZHRX.js → chunk-GG4QZWMQ.js} +2 -2
  236. package/dist/{chunk-XP7EXNKF.js → chunk-GPW4M4OI.js} +2 -2
  237. package/dist/chunk-GZMEWWXW.js +78 -0
  238. package/dist/{chunk-OG6CL3EB.js → chunk-HD4QJ2SI.js} +3 -2
  239. package/dist/{chunk-SYY26XBX.js → chunk-HGCDJOEF.js} +2 -2
  240. package/dist/chunk-HGYHWWA5.js +54 -0
  241. package/dist/{chunk-ZS63CFDO.js → chunk-HL4CPLEK.js} +7 -7
  242. package/dist/{chunk-BEHFTRMZ.js → chunk-HNK43Z3P.js} +23 -5
  243. package/dist/{chunk-UO7JZVCO.js → chunk-HVEDVKXL.js} +1 -1
  244. package/dist/{chunk-FS4IH7VB.js → chunk-I7VG6RQE.js} +2 -2
  245. package/dist/{chunk-3RCHEFIL.js → chunk-ICJRP6QW.js} +2 -2
  246. package/dist/{chunk-YRIZAIU6.js → chunk-IDQBSMMZ.js} +2 -2
  247. package/dist/chunk-JILNCBBS.js +27 -0
  248. package/dist/{chunk-W5GM452Z.js → chunk-JJ3NOBJ6.js} +5 -5
  249. package/dist/chunk-JLRXCKTS.js +97 -0
  250. package/dist/{chunk-OJCVVCAZ.js → chunk-JMMS2PQU.js} +1 -1
  251. package/dist/{chunk-IVAR7NRW.js → chunk-JS2TRHBF.js} +3 -3
  252. package/dist/{chunk-3CZ7XAVY.js → chunk-KS7YIJ4S.js} +10 -6
  253. package/dist/{chunk-MU5KH3JF.js → chunk-LQ6AGUDL.js} +2 -2
  254. package/dist/chunk-LXYSWQNE.js +214 -0
  255. package/dist/chunk-LZXY6IMO.js +68 -0
  256. package/dist/{chunk-EKLEYNGR.js → chunk-MYX4XABB.js} +3 -3
  257. package/dist/{chunk-PM3JVNRY.js → chunk-N3ISZVLK.js} +1 -1
  258. package/dist/chunk-NEHSV55H.js +119 -0
  259. package/dist/{chunk-LLHO4FJK.js → chunk-NHJQXDHA.js} +1 -1
  260. package/dist/{chunk-F6CKQX5D.js → chunk-NK3D66PB.js} +2 -2
  261. package/dist/{chunk-RHPBTE3F.js → chunk-NQGZRMUG.js} +1 -1
  262. package/dist/chunk-NVZCANJ5.js +3 -0
  263. package/dist/{chunk-RRO7UEYU.js → chunk-OHBXOEP3.js} +1 -1
  264. package/dist/{chunk-USVUSO3S.js → chunk-OHG7762N.js} +1 -1
  265. package/dist/{chunk-OBUQVGEG.js → chunk-OJ2QULVH.js} +1 -1
  266. package/dist/{chunk-ITTECHM4.js → chunk-OOZ5AGPS.js} +5 -5
  267. package/dist/{chunk-BZXY2L2D.js → chunk-OYAXKHVW.js} +1 -1
  268. package/dist/{chunk-WQQ5T5SA.js → chunk-OZIBNFLO.js} +1 -1
  269. package/dist/{chunk-DFK5EQTU.js → chunk-PDTEPN4D.js} +1 -1
  270. package/dist/chunk-PIYJNCN7.js +124 -0
  271. package/dist/{chunk-ZVV2VERB.js → chunk-Q6R6EUQ4.js} +3 -3
  272. package/dist/chunk-QYEOGGVS.js +161 -0
  273. package/dist/{chunk-NWGGH2LN.js → chunk-QZ4B72FP.js} +3 -3
  274. package/dist/chunk-RV2FGESF.js +98 -0
  275. package/dist/{chunk-TQ3C3Q7V.js → chunk-S5C64PTT.js} +1 -1
  276. package/dist/chunk-SDSBVVLL.js +45 -0
  277. package/dist/{chunk-ZNOXQACX.js → chunk-T4D7RZNI.js} +2 -2
  278. package/dist/{chunk-TDVPYBNL.js → chunk-TA72CURM.js} +1 -1
  279. package/dist/{chunk-WXOYHVWG.js → chunk-TD3UHDFY.js} +4 -4
  280. package/dist/{chunk-H7FUQCQY.js → chunk-TDQZ4LB5.js} +8 -6
  281. package/dist/chunk-TFGCNBWP.js +64 -0
  282. package/dist/{chunk-TMM32U7D.js → chunk-TKS7FTTO.js} +2 -2
  283. package/dist/{chunk-NKHS2RQ2.js → chunk-U5PJSGHG.js} +1 -1
  284. package/dist/{chunk-7CGPPAYR.js → chunk-UV4LOQ3E.js} +1 -1
  285. package/dist/{chunk-ON2E46DX.js → chunk-VRNUKH2W.js} +1 -1
  286. package/dist/{chunk-XX2VQE55.js → chunk-WBRC3MNE.js} +1 -1
  287. package/dist/{chunk-NTZQN7OR.js → chunk-WBTCOFMZ.js} +2 -2
  288. package/dist/chunk-WDIVALLP.js +51 -0
  289. package/dist/{chunk-QMIWMLFI.js → chunk-WOW5SCEK.js} +1 -1
  290. package/dist/chunk-XODESBSR.js +250 -0
  291. package/dist/{chunk-EJWPYEG4.js → chunk-XRZGGB6I.js} +1 -1
  292. package/dist/{chunk-34C7NYIQ.js → chunk-Y73BQL74.js} +1 -1
  293. package/dist/{chunk-KIRQZG3G.js → chunk-YCGZK2E4.js} +1 -1
  294. package/dist/{chunk-5TK3C6RG.js → chunk-YCZ2FBKA.js} +1 -1
  295. package/dist/{chunk-TV2QW6GX.js → chunk-YEURM24I.js} +3 -3
  296. package/dist/{chunk-34ANLQW2.js → chunk-YGC7BFX2.js} +211 -9
  297. package/dist/{chunk-IW55G7XG.js → chunk-YNRKVY7X.js} +11 -1
  298. package/dist/{chunk-LFHCXZO5.js → chunk-Z3GDMNMU.js} +3 -3
  299. package/dist/{chunk-LQPU5O3B.js → chunk-Z7PJF6F3.js} +3 -3
  300. package/dist/{chunk-HDHL773Z.js → chunk-ZH4MJM73.js} +1 -1
  301. package/dist/generated/index.d.ts +17 -0
  302. package/dist/generated/index.js +140 -121
  303. package/dist/index.js +140 -121
  304. package/dist/styles.css +1887 -218
  305. package/dist/utils/index.js +1 -1
  306. package/dist/utils/useDownload.d.ts +6 -0
  307. package/package.json +3 -3
  308. package/dist/ArtifactPanel-KKUUIPEU.css +0 -159
  309. package/dist/Composer-TXULCPPV.css +0 -99
  310. package/dist/chunk-4E5MWUUJ.js +0 -48
  311. package/dist/chunk-FZVJDJFN.js +0 -54
  312. package/dist/chunk-IXJHTFXG.js +0 -17
  313. package/dist/chunk-NBDN5JZV.js +0 -123
  314. package/dist/{chunk-UTESMBPL.js → chunk-ESUZ27TS.js} +1 -1
  315. /package/dist/{chunk-55MPFB2U.js → chunk-EWTPXRRM.js} +0 -0
@@ -1,17 +1,18 @@
1
- export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-EKLEYNGR.js';
1
+ export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-MYX4XABB.js';
2
2
  import '../chunk-XQZ6EWOE.js';
3
3
  import '../chunk-7KHM2FZH.js';
4
4
  import '../chunk-GXQ3B46I.js';
5
5
  import '../chunk-KHJIEPZV.js';
6
- import '../chunk-OMV5W53A.js';
7
- import '../chunk-2YTOOH3A.js';
8
- import '../chunk-XANKR3EP.js';
6
+ import '../chunk-FXQLNETQ.js';
9
7
  import '../chunk-XCUUI7E7.js';
10
8
  import '../chunk-PQADV6P6.js';
11
- import '../chunk-OG6CL3EB.js';
9
+ import '../chunk-RSAQOKH3.js';
10
+ import '../chunk-HD4QJ2SI.js';
11
+ import '../chunk-EA23JG6R.js';
12
+ import '../chunk-OMV5W53A.js';
13
+ import '../chunk-2YTOOH3A.js';
12
14
  import '../chunk-H5XTJ7GJ.js';
13
- import '../chunk-LACA4JGC.js';
15
+ import '../chunk-2BQYODY3.js';
14
16
  import '../chunk-NUZHC6MM.js';
15
- import '../chunk-RSAQOKH3.js';
16
17
  import '../chunk-BZFWDIV6.js';
17
18
  import '../chunk-ODEQTPFM.js';
@@ -1,4 +1,4 @@
1
- import { type ReactNode } from 'react';
1
+ import { type CSSProperties, type ReactNode } from 'react';
2
2
  /** The four the component knows. Any other string is a variant of the caller's own. */
3
3
  export type ToastVariant = 'info' | 'success' | 'warning' | 'danger';
4
4
  export interface ToastAction {
@@ -37,6 +37,22 @@ export interface Toast<TVariant extends string = string> {
37
37
  toast: Toast<TVariant>;
38
38
  }) => ReactNode;
39
39
  }
40
+ /**
41
+ * Room the stack keeps clear on its own side and edge, in pixels, ADDED to the
42
+ * window inset it already keeps (24px, 12px on a phone). `inline` is the side
43
+ * it is anchored to (the right for a `-right` position), `block` the edge (the
44
+ * bottom for a `bottom-` position). A host sets `inline` to the width a panel
45
+ * beside the page occupies, so a toast stands beside the panel rather than
46
+ * over it, and `block` to the height of a phone sheet's foot, so it stands
47
+ * above the composer. A value that is not a finite number of zero or more is
48
+ * read as zero.
49
+ */
50
+ export interface ToasterInset {
51
+ inline?: number | undefined;
52
+ block?: number | undefined;
53
+ }
54
+ /** The inset as the two custom properties the stylesheet reads, or nothing when there is none. */
55
+ export declare function toasterInsetStyle(inset: ToasterInset | undefined): CSSProperties | undefined;
40
56
  export interface ToasterProps<TVariant extends string = string> {
41
57
  toasts: Toast<TVariant>[];
42
58
  onDismiss: (id: string | number) => void;
@@ -45,6 +61,8 @@ export interface ToasterProps<TVariant extends string = string> {
45
61
  onDismiss: () => void;
46
62
  }) => ReactNode) | undefined;
47
63
  position?: 'bottom-right' | 'top-right' | 'bottom-left' | 'top-left' | undefined;
64
+ /** Room to keep clear beside or under the stack; see `ToasterInset`. None by default. */
65
+ inset?: ToasterInset | undefined;
48
66
  /** Names the polite region for a reader browsing landmarks. */
49
67
  politeLabel?: string | undefined;
50
68
  /** Names the assertive region. */
@@ -64,7 +82,7 @@ export interface ToasterProps<TVariant extends string = string> {
64
82
  * the only English it writes into a screen by itself.
65
83
  */
66
84
  export type ToastTitles = Partial<Record<ToastVariant, string | null>>;
67
- export declare function Toaster<TVariant extends string = string>({ toasts, onDismiss, renderAction, position, politeLabel, assertiveLabel, dismissLabel, titles, className, }: ToasterProps<TVariant>): import("react").ReactPortal | null;
85
+ export declare function Toaster<TVariant extends string = string>({ toasts, onDismiss, renderAction, position, inset, politeLabel, assertiveLabel, dismissLabel, titles, className, }: ToasterProps<TVariant>): import("react").ReactPortal | null;
68
86
  export interface ToastOptions {
69
87
  title?: ReactNode;
70
88
  /** Milliseconds, or 0 for sticky. Unset takes the variant's own default. */
@@ -93,6 +111,12 @@ export interface ToastProviderProps {
93
111
  children?: ReactNode;
94
112
  position?: ToasterProps['position'];
95
113
  renderAction?: ToasterProps['renderAction'];
114
+ /**
115
+ * Room the stack keeps clear, such as the width of a panel beside the page
116
+ * or the height of a phone sheet's foot. It may change while toasts are up;
117
+ * they move with it. See `ToasterInset`.
118
+ */
119
+ inset?: ToasterInset | undefined;
96
120
  /**
97
121
  * How many to keep on screen. When one more arrives, the oldest toast that
98
122
  * would have gone by itself goes. A sticky one never does, so while every
@@ -110,4 +134,4 @@ export interface ToastProviderProps {
110
134
  * That surface mounts a provider of its own inside its `LayerHost`, and
111
135
  * `useToast` inside it finds the nearest one.
112
136
  */
113
- export declare function ToastProvider({ children, position, renderAction, max }: ToastProviderProps): import("react").JSX.Element;
137
+ export declare function ToastProvider({ children, position, inset, renderAction, max }: ToastProviderProps): import("react").JSX.Element;
@@ -1,3 +1,3 @@
1
1
  import './Toaster.css';
2
- export { ToastProvider, Toaster, useToast } from './Toaster.js';
3
- export type { Toast, ToastAction, ToastApi, ToastOptions, ToastProviderProps, ToastRequest, ToastTitles, ToastVariant, ToasterProps, } from './Toaster.js';
2
+ export { ToastProvider, Toaster, toasterInsetStyle, useToast } from './Toaster.js';
3
+ export type { Toast, ToastAction, ToastApi, ToastOptions, ToastProviderProps, ToastRequest, ToastTitles, ToastVariant, ToasterInset, ToasterProps, } from './Toaster.js';
@@ -1,4 +1,4 @@
1
- export { ToastProvider, Toaster, useToast } from '../chunk-AC22RZKC.js';
1
+ export { ToastProvider, Toaster, toasterInsetStyle, useToast } from '../chunk-DRT4L4WC.js';
2
2
  import '../chunk-OMV5W53A.js';
3
3
  import '../chunk-H5XTJ7GJ.js';
4
4
  import '../chunk-NUZHC6MM.js';
@@ -14,35 +14,45 @@
14
14
  * reduced motion gets no wash and still gets the toast taken away.
15
15
  */
16
16
  .crewlet-toaster {
17
+ /*
18
+ * THE HOST'S INSET: room on the stack's own side and edge that something
19
+ * else occupies, such as a panel beside the page or a phone sheet's foot.
20
+ * Set by `inset` on the Toaster (or by the host on these two properties)
21
+ * and added to the window inset below, so the stack stands beside the
22
+ * panel rather than over it. Zero by default.
23
+ */
24
+ --crewlet-toaster-inset-inline: 0px;
25
+ --crewlet-toaster-inset-block: 0px;
26
+
17
27
  position: fixed;
18
28
  z-index: var(--z-index-toast);
19
29
  display: flex;
20
30
  flex-direction: column;
21
31
  gap: calc(var(--spacing-2) + var(--spacing-1) / 2);
22
- width: min(380px, calc(100vw - 2 * var(--spacing-6)));
32
+ width: min(380px, calc(100vw - 2 * var(--spacing-6) - var(--crewlet-toaster-inset-inline)));
23
33
  /* The stack itself takes no presses, so the screen under it stays live
24
34
  while nothing is up; each toast takes them back for its own strip. */
25
35
  pointer-events: none;
26
36
  }
27
37
 
28
38
  .crewlet-toaster--bottom-right {
29
- bottom: var(--spacing-6);
30
- right: var(--spacing-6);
39
+ bottom: calc(var(--spacing-6) + var(--crewlet-toaster-inset-block));
40
+ right: calc(var(--spacing-6) + var(--crewlet-toaster-inset-inline));
31
41
  }
32
42
 
33
43
  .crewlet-toaster--top-right {
34
- top: var(--spacing-6);
35
- right: var(--spacing-6);
44
+ top: calc(var(--spacing-6) + var(--crewlet-toaster-inset-block));
45
+ right: calc(var(--spacing-6) + var(--crewlet-toaster-inset-inline));
36
46
  }
37
47
 
38
48
  .crewlet-toaster--bottom-left {
39
- bottom: var(--spacing-6);
40
- left: var(--spacing-6);
49
+ bottom: calc(var(--spacing-6) + var(--crewlet-toaster-inset-block));
50
+ left: calc(var(--spacing-6) + var(--crewlet-toaster-inset-inline));
41
51
  }
42
52
 
43
53
  .crewlet-toaster--top-left {
44
- top: var(--spacing-6);
45
- left: var(--spacing-6);
54
+ top: calc(var(--spacing-6) + var(--crewlet-toaster-inset-block));
55
+ left: calc(var(--spacing-6) + var(--crewlet-toaster-inset-inline));
46
56
  }
47
57
 
48
58
  .crewlet-toast {
@@ -280,12 +290,23 @@
280
290
 
281
291
  .crewlet-toaster--bottom-right,
282
292
  .crewlet-toaster--bottom-left {
283
- bottom: var(--spacing-3);
293
+ bottom: calc(var(--spacing-3) + var(--crewlet-toaster-inset-block));
284
294
  }
285
295
 
286
296
  .crewlet-toaster--top-right,
287
297
  .crewlet-toaster--top-left {
288
- top: var(--spacing-3);
298
+ top: calc(var(--spacing-3) + var(--crewlet-toaster-inset-block));
299
+ }
300
+
301
+ /* Across the width, the host's inline inset still keeps its own side clear. */
302
+ .crewlet-toaster--bottom-right,
303
+ .crewlet-toaster--top-right {
304
+ right: calc(var(--spacing-3) + var(--crewlet-toaster-inset-inline));
305
+ }
306
+
307
+ .crewlet-toaster--bottom-left,
308
+ .crewlet-toaster--top-left {
309
+ left: calc(var(--spacing-3) + var(--crewlet-toaster-inset-inline));
289
310
  }
290
311
  }
291
312
 
@@ -1,13 +1,14 @@
1
- export { TreeCanvas } from '../chunk-5TK3C6RG.js';
1
+ export { TreeCanvas } from '../chunk-YCZ2FBKA.js';
2
2
  import '../chunk-MY374UUD.js';
3
- import '../chunk-TV2QW6GX.js';
3
+ import '../chunk-YEURM24I.js';
4
4
  import '../chunk-LM3ISVJA.js';
5
5
  import '../chunk-I33UIUZD.js';
6
- import '../chunk-OMV5W53A.js';
7
6
  import '../chunk-SMBKXWML.js';
8
- import '../chunk-OG6CL3EB.js';
7
+ import '../chunk-HD4QJ2SI.js';
8
+ import '../chunk-EA23JG6R.js';
9
+ import '../chunk-OMV5W53A.js';
9
10
  import '../chunk-H5XTJ7GJ.js';
10
- import '../chunk-LACA4JGC.js';
11
+ import '../chunk-2BQYODY3.js';
11
12
  import '../chunk-NUZHC6MM.js';
12
13
  import '../chunk-BZFWDIV6.js';
13
14
  import '../chunk-ODEQTPFM.js';
@@ -1,9 +1,9 @@
1
- export { TreeGrid } from '../chunk-ON2E46DX.js';
1
+ export { TreeGrid } from '../chunk-VRNUKH2W.js';
2
2
  import '../chunk-MY374UUD.js';
3
3
  import '../chunk-LM3ISVJA.js';
4
4
  import '../chunk-OMV5W53A.js';
5
5
  import '../chunk-H5XTJ7GJ.js';
6
- import '../chunk-LACA4JGC.js';
6
+ import '../chunk-2BQYODY3.js';
7
7
  import '../chunk-NUZHC6MM.js';
8
8
  import '../chunk-BZFWDIV6.js';
9
9
  import '../chunk-ODEQTPFM.js';
@@ -1,19 +1,20 @@
1
- export { VERSION_COMPARE_LABELS, VERSION_COMPARE_LENSES, VersionCompare } from '../chunk-USVUSO3S.js';
1
+ export { VERSION_COMPARE_LABELS, VERSION_COMPARE_LENSES, VersionCompare } from '../chunk-OHG7762N.js';
2
2
  import '../chunk-BVWSLXTY.js';
3
3
  import '../chunk-OOC7Q67K.js';
4
- import '../chunk-CNGHOTHV.js';
5
- import '../chunk-FS4IH7VB.js';
4
+ import '../chunk-AWSFK2IK.js';
5
+ import '../chunk-I7VG6RQE.js';
6
6
  import '../chunk-WIATRXEJ.js';
7
7
  import '../chunk-EGMQURBR.js';
8
8
  import '../chunk-PPUR46MK.js';
9
- import '../chunk-TMM32U7D.js';
10
- import '../chunk-OMV5W53A.js';
11
- import '../chunk-2YTOOH3A.js';
12
9
  import '../chunk-BHHIIK3M.js';
13
10
  import '../chunk-PQADV6P6.js';
14
- import '../chunk-OG6CL3EB.js';
11
+ import '../chunk-TKS7FTTO.js';
12
+ import '../chunk-HD4QJ2SI.js';
13
+ import '../chunk-EA23JG6R.js';
14
+ import '../chunk-OMV5W53A.js';
15
+ import '../chunk-2YTOOH3A.js';
15
16
  import '../chunk-H5XTJ7GJ.js';
16
- import '../chunk-LACA4JGC.js';
17
+ import '../chunk-2BQYODY3.js';
17
18
  import '../chunk-NUZHC6MM.js';
18
19
  import '../chunk-BZFWDIV6.js';
19
20
  import '../chunk-ODEQTPFM.js';
@@ -1,10 +1,11 @@
1
- export { VersionTimeline } from '../chunk-NQCY44B3.js';
1
+ export { VersionTimeline } from '../chunk-67MW366X.js';
2
2
  import '../chunk-CI3VPIJN.js';
3
- import '../chunk-3CZ7XAVY.js';
3
+ import '../chunk-KS7YIJ4S.js';
4
4
  import '../chunk-EUCC37WY.js';
5
5
  import '../chunk-5AQBPHZD.js';
6
6
  import '../chunk-PZKHBB7D.js';
7
7
  import '../chunk-AUQPBL4O.js';
8
- import '../chunk-OG6CL3EB.js';
8
+ import '../chunk-HD4QJ2SI.js';
9
+ import '../chunk-EA23JG6R.js';
9
10
  import '../chunk-BZFWDIV6.js';
10
11
  import '../chunk-ODEQTPFM.js';
@@ -1,6 +1,6 @@
1
- export { WidgetFrame } from '../chunk-DFK5EQTU.js';
1
+ export { WidgetFrame } from '../chunk-PDTEPN4D.js';
2
2
  import '../chunk-TEUQWOWZ.js';
3
- import '../chunk-3CZ7XAVY.js';
3
+ import '../chunk-KS7YIJ4S.js';
4
4
  import '../chunk-EUCC37WY.js';
5
5
  import '../chunk-BZFWDIV6.js';
6
6
  import '../chunk-ODEQTPFM.js';
@@ -1,7 +1,7 @@
1
1
  import { Toolbar } from './chunk-NR4CPM4T.js';
2
- import { SegmentedControl } from './chunk-CNGHOTHV.js';
3
- import { tabId } from './chunk-FS4IH7VB.js';
4
- import { IconButton } from './chunk-LACA4JGC.js';
2
+ import { SegmentedControl } from './chunk-AWSFK2IK.js';
3
+ import { tabId } from './chunk-I7VG6RQE.js';
4
+ import { IconButton } from './chunk-2BQYODY3.js';
5
5
  import { cx } from './chunk-ODEQTPFM.js';
6
6
  import './MarkdownEditor-WOKV7CLK.css';
7
7
  import { useState, useId, useRef, useLayoutEffect, useImperativeHandle } from 'react';
@@ -1,6 +1,6 @@
1
1
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
- import './IconButton-K24JQHLF.css';
3
+ import './IconButton-6WA7UEBJ.css';
4
4
  import { forwardRef, useId, Children, isValidElement, cloneElement } from 'react';
5
5
  import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
6
6
 
@@ -1,5 +1,5 @@
1
- import { SegmentedControl } from './chunk-CNGHOTHV.js';
2
- import { Button } from './chunk-OG6CL3EB.js';
1
+ import { SegmentedControl } from './chunk-AWSFK2IK.js';
2
+ import { Button } from './chunk-HD4QJ2SI.js';
3
3
  import { cx } from './chunk-ODEQTPFM.js';
4
4
  import './MergeConflicts-O44ESH4T.css';
5
5
  import { useState, useId, useRef, useEffect } from 'react';
@@ -1,6 +1,6 @@
1
1
  import { Link } from './chunk-FBSEJO2C.js';
2
2
  import { Tag } from './chunk-KYIAFNU7.js';
3
- import { RelativeTime } from './chunk-3CZ7XAVY.js';
3
+ import { RelativeTime } from './chunk-KS7YIJ4S.js';
4
4
  import { EmptyValue } from './chunk-EUCC37WY.js';
5
5
  import { Avatar } from './chunk-PZKHBB7D.js';
6
6
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
@@ -0,0 +1,22 @@
1
+ import { cx } from './chunk-ODEQTPFM.js';
2
+ import './IconTile-G52XZVR4.css';
3
+ import { jsx } from 'react/jsx-runtime';
4
+
5
+ function IconTile({ children, hue, tone = "accent", size = "md", className, ...rest }) {
6
+ return /* @__PURE__ */ jsx(
7
+ "span",
8
+ {
9
+ "aria-hidden": "true",
10
+ ...rest,
11
+ className: cx(
12
+ "crewlet-icon-tile",
13
+ `crewlet-icon-tile--${size}`,
14
+ hue ? `crewlet-icon-tile--${hue}` : tone === "neutral" && "crewlet-icon-tile--neutral",
15
+ className
16
+ ),
17
+ children
18
+ }
19
+ );
20
+ }
21
+
22
+ export { IconTile };
@@ -1,5 +1,5 @@
1
1
  import { normalizeHex, parseColourInput } from './chunk-7W3LYIOC.js';
2
- import { FormField, Input, InputAffix } from './chunk-XANKR3EP.js';
2
+ import { FormField, Input, InputAffix } from './chunk-FXQLNETQ.js';
3
3
  import { cx } from './chunk-ODEQTPFM.js';
4
4
  import './ColorField-2OIOWT3Z.css';
5
5
  import { useId, useState } from 'react';
@@ -1,6 +1,6 @@
1
1
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
- import './Table-TGCS4C3F.css';
3
+ import './Table-RUYMMWXT.css';
4
4
  import { jsxs, jsx } from 'react/jsx-runtime';
5
5
 
6
6
  var Table = ({
@@ -11,10 +11,14 @@ var Table = ({
11
11
  emptyMessage = "No data available",
12
12
  actionButton,
13
13
  maxHeight,
14
+ align,
15
+ footer,
16
+ framed = true,
14
17
  className = ""
15
18
  }) => {
16
19
  const columnCount = Math.max(1, headers.length);
17
- return /* @__PURE__ */ jsxs("div", { className: cx("crewlet-table", className), children: [
20
+ const edge = (index) => align?.[index] === "end" ? "crewlet-table__cell--end" : void 0;
21
+ return /* @__PURE__ */ jsxs("div", { className: cx("crewlet-table", !framed && "crewlet-table--flush", className), children: [
18
22
  /* @__PURE__ */ jsx(
19
23
  "div",
20
24
  {
@@ -30,9 +34,12 @@ var Table = ({
30
34
  /* @__PURE__ */ jsx("thead", { children: /* @__PURE__ */ jsx("tr", { className: "crewlet-table__header", children: headers.map((header, index) => (
31
35
  // The index is the key because a header is a position: the
32
36
  // columns of one table do not reorder between renders.
33
- /* @__PURE__ */ jsx("th", { scope: "col", children: header }, index)
37
+ /* @__PURE__ */ jsx("th", { scope: "col", className: edge(index), children: header }, index)
34
38
  )) }) }),
35
- /* @__PURE__ */ jsx("tbody", { children: data && data.length > 0 ? data.map((row, rowIndex) => /* @__PURE__ */ jsx("tr", { className: "crewlet-table__row", children: row.map((cell, cellIndex) => /* @__PURE__ */ jsx("td", { children: cell }, cellIndex)) }, rowIndex)) : /* @__PURE__ */ jsx("tr", { children: /* @__PURE__ */ jsx("td", { className: "crewlet-table__empty", colSpan: columnCount, children: emptyMessage }) }) })
39
+ /* @__PURE__ */ jsx("tbody", { children: data && data.length > 0 ? data.map((row, rowIndex) => /* @__PURE__ */ jsx("tr", { className: "crewlet-table__row", children: row.map((cell, cellIndex) => /* @__PURE__ */ jsx("td", { className: edge(cellIndex), children: cell }, cellIndex)) }, rowIndex)) : /* @__PURE__ */ jsx("tr", { children: /* @__PURE__ */ jsx("td", { className: "crewlet-table__empty", colSpan: columnCount, children: emptyMessage }) }) }),
40
+ footer && footer.length > 0 ? /* @__PURE__ */ jsx("tfoot", { children: /* @__PURE__ */ jsx("tr", { className: "crewlet-table__footer", children: footer.map(
41
+ (cell, index) => index === 0 ? /* @__PURE__ */ jsx("th", { scope: "row", className: edge(index), children: cell }, index) : /* @__PURE__ */ jsx("td", { className: edge(index), children: cell }, index)
42
+ ) }) }) : null
36
43
  ] })
37
44
  }
38
45
  ),
@@ -1,5 +1,5 @@
1
1
  import { InlineCode } from './chunk-5CLW2CXT.js';
2
- import { FormField, Input } from './chunk-XANKR3EP.js';
2
+ import { FormField, Input } from './chunk-FXQLNETQ.js';
3
3
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
4
4
 
5
5
  function confirmMatches(typed, phrase) {
@@ -1,4 +1,4 @@
1
- import { HuePicker } from './chunk-BZXY2L2D.js';
1
+ import { HuePicker } from './chunk-OYAXKHVW.js';
2
2
  import { Popover } from './chunk-KHJIEPZV.js';
3
3
  import { NODE_HUE_NAMES } from './chunk-AYKXMIOR.js';
4
4
  import { CharacterPicker } from './chunk-SNQRGH4A.js';
@@ -1,11 +1,11 @@
1
1
  import { PrincipalAvatar } from './chunk-CI3VPIJN.js';
2
- import { toInstant, RelativeTime, formatExact, toISO } from './chunk-3CZ7XAVY.js';
2
+ import { toInstant, RelativeTime, formatExact, toISO } from './chunk-KS7YIJ4S.js';
3
3
  import { Document } from './chunk-PWG3VHRQ.js';
4
- import { Composer } from './chunk-4E5MWUUJ.js';
4
+ import { Composer } from './chunk-JLRXCKTS.js';
5
5
  import { Count } from './chunk-BHHIIK3M.js';
6
6
  import { useHeadingLevel, headingTag } from './chunk-PQADV6P6.js';
7
- import { Button } from './chunk-OG6CL3EB.js';
8
- import { IconButton } from './chunk-LACA4JGC.js';
7
+ import { Button } from './chunk-HD4QJ2SI.js';
8
+ import { IconButton } from './chunk-2BQYODY3.js';
9
9
  import { cx } from './chunk-ODEQTPFM.js';
10
10
  import './CommentThread-7VXOFTZO.css';
11
11
  import { useState, useRef, useId, useMemo } from 'react';
@@ -6,15 +6,25 @@ import './ArtifactNameCell-3AHLUSE5.css';
6
6
  import { FolderGlyph, PinGlyph } from '@crewlethq/icons/glyphs';
7
7
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
8
8
 
9
+ var KIND_WORDS = {
10
+ html: "HTML",
11
+ doc: "Doc",
12
+ slides: "Slides",
13
+ design: "Design",
14
+ dashboard: "Dashboard",
15
+ sheet: "Sheet",
16
+ brand: "Brand"
17
+ };
9
18
  var LABELS = {
10
- kinds: { html: "HTML", doc: "Doc", slides: "Slides", design: "Design", dashboard: "Dashboard", sheet: "Sheet", brand: "Brand" },
19
+ kinds: KIND_WORDS,
11
20
  pinned: "Pinned",
12
21
  folder: "Folder"
13
22
  };
14
23
  function ArtifactNameCell({ kind, title, detail, pinned = false, trashed = false, className, labels }) {
15
- const text = { ...LABELS, ...labels, kinds: { ...LABELS.kinds, ...labels?.kinds } };
24
+ const text = { ...LABELS, ...labels };
25
+ const kinds = { ...KIND_WORDS, ...labels?.kinds };
16
26
  const folder = kind === "folder";
17
- const kindWord = folder ? text.folder : text.kinds[kind];
27
+ const kindWord = folder ? text.folder : kinds[kind];
18
28
  const about = detail?.trim();
19
29
  return /* @__PURE__ */ jsxs("span", { className: cx("crewlet-artifact-name", trashed && "crewlet-artifact-name--trashed", className), children: [
20
30
  /* @__PURE__ */ jsx(
@@ -1,7 +1,7 @@
1
1
  import { useReorder } from './chunk-XJ2QEBMM.js';
2
- import { Menu } from './chunk-TMM32U7D.js';
3
- import { Input } from './chunk-XANKR3EP.js';
4
- import { IconButton } from './chunk-LACA4JGC.js';
2
+ import { Input } from './chunk-FXQLNETQ.js';
3
+ import { Menu } from './chunk-TKS7FTTO.js';
4
+ import { IconButton } from './chunk-2BQYODY3.js';
5
5
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
6
6
  import { cx } from './chunk-ODEQTPFM.js';
7
7
  import './DocTabsEditor-4M452LNS.css';
@@ -1,6 +1,6 @@
1
- import { EditingStatus } from './chunk-EJWPYEG4.js';
1
+ import { EditingStatus } from './chunk-XRZGGB6I.js';
2
2
  import { Kbd } from './chunk-SMBKXWML.js';
3
- import { Button } from './chunk-OG6CL3EB.js';
3
+ import { Button } from './chunk-HD4QJ2SI.js';
4
4
  import { isComposing } from './chunk-H5XTJ7GJ.js';
5
5
  import { cx } from './chunk-ODEQTPFM.js';
6
6
  import './InlineEditor-W55DDKML.css';
@@ -1,13 +1,13 @@
1
- import { Modal } from './chunk-NWGGH2LN.js';
1
+ import { Modal } from './chunk-QZ4B72FP.js';
2
2
  import { useListbox, useOptionKeys } from './chunk-7KHM2FZH.js';
3
3
  import { Popover } from './chunk-KHJIEPZV.js';
4
4
  import { KeyChip, highlightMatch } from './chunk-FYTIJM2T.js';
5
5
  import { Skeleton } from './chunk-TEUQWOWZ.js';
6
+ import { Input } from './chunk-FXQLNETQ.js';
7
+ import { announce } from './chunk-RSAQOKH3.js';
6
8
  import { useMediaMatch } from './chunk-RTPQDNW3.js';
7
- import { Input } from './chunk-XANKR3EP.js';
8
9
  import { focusables, isComposing } from './chunk-H5XTJ7GJ.js';
9
10
  import { returnFocus } from './chunk-NUZHC6MM.js';
10
- import { announce } from './chunk-RSAQOKH3.js';
11
11
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
12
12
  import { cx } from './chunk-ODEQTPFM.js';
13
13
  import './Switcher-K3EPA2RB.css';
@@ -1,7 +1,7 @@
1
1
  import { PrincipalAvatar } from './chunk-CI3VPIJN.js';
2
- import { RelativeTime } from './chunk-3CZ7XAVY.js';
2
+ import { RelativeTime } from './chunk-KS7YIJ4S.js';
3
3
  import { Timeline } from './chunk-AUQPBL4O.js';
4
- import { Button } from './chunk-OG6CL3EB.js';
4
+ import { Button } from './chunk-HD4QJ2SI.js';
5
5
  import { cx } from './chunk-ODEQTPFM.js';
6
6
  import './VersionTimeline-6KRXEEOO.css';
7
7
  import { RotateCcwClockGlyph, PencilGlyph, ShieldGlyph, DatabaseGlyph, UploadGlyph } from '@crewlethq/icons/glyphs';
@@ -1,7 +1,7 @@
1
1
  import { Switch } from './chunk-A722MUNR.js';
2
2
  import { useReorder } from './chunk-XJ2QEBMM.js';
3
- import { Checkbox } from './chunk-LLHO4FJK.js';
4
- import { IconButton } from './chunk-LACA4JGC.js';
3
+ import { Checkbox } from './chunk-NHJQXDHA.js';
4
+ import { IconButton } from './chunk-2BQYODY3.js';
5
5
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
6
6
  import { cx } from './chunk-ODEQTPFM.js';
7
7
  import './ArrangeList-NNRTDFI5.css';
@@ -1,7 +1,7 @@
1
1
  import { today, CalendarGrid, shiftMonth, compareDays } from './chunk-GXQ3B46I.js';
2
2
  import { Popover } from './chunk-KHJIEPZV.js';
3
- import { Button } from './chunk-OG6CL3EB.js';
4
- import { IconButton } from './chunk-LACA4JGC.js';
3
+ import { Button } from './chunk-HD4QJ2SI.js';
4
+ import { IconButton } from './chunk-2BQYODY3.js';
5
5
  import { useFocusModality } from './chunk-NUZHC6MM.js';
6
6
  import { cx } from './chunk-ODEQTPFM.js';
7
7
  import './DateTimePicker-3A7JIIVL.css';
@@ -1,4 +1,4 @@
1
- import { CopyButton } from './chunk-7SHAFLEX.js';
1
+ import { CopyButton } from './chunk-ES4HR34Y.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
3
  import './CodeBlock-N5ETJF24.css';
4
4
  import { forwardRef, useRef, useState, useLayoutEffect } from 'react';
@@ -1,4 +1,4 @@
1
- import { Button } from './chunk-OG6CL3EB.js';
1
+ import { Button } from './chunk-HD4QJ2SI.js';
2
2
  import { cx } from './chunk-ODEQTPFM.js';
3
3
  import './FileDrop-WE7BNZGV.css';
4
4
  import { forwardRef, useRef, useState } from 'react';
@@ -1,7 +1,7 @@
1
- import { tabId } from './chunk-FS4IH7VB.js';
1
+ import { tabId } from './chunk-I7VG6RQE.js';
2
2
  import { useRoving, tabStop } from './chunk-EGMQURBR.js';
3
- import { HIT_AREA_CLASS } from './chunk-2YTOOH3A.js';
4
3
  import { Count } from './chunk-BHHIIK3M.js';
4
+ import { HIT_AREA_CLASS } from './chunk-2YTOOH3A.js';
5
5
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
6
6
  import { cx } from './chunk-ODEQTPFM.js';
7
7
  import { useState, useId } from 'react';
@@ -1,5 +1,5 @@
1
1
  import { Tag } from './chunk-KYIAFNU7.js';
2
- import { RelativeTime } from './chunk-3CZ7XAVY.js';
2
+ import { RelativeTime } from './chunk-KS7YIJ4S.js';
3
3
  import { HIT_AREA_CLASS } from './chunk-2YTOOH3A.js';
4
4
  import { VisuallyHidden } from './chunk-BZFWDIV6.js';
5
5
  import { cx } from './chunk-ODEQTPFM.js';
@@ -0,0 +1,31 @@
1
+ import { StatusCard } from './chunk-WDIVALLP.js';
2
+ import { cx } from './chunk-ODEQTPFM.js';
3
+ import './RefusalCard-UM67F5HB.css';
4
+ import { LockGlyph } from '@crewlethq/icons/glyphs';
5
+ import { jsxs, jsx } from 'react/jsx-runtime';
6
+
7
+ var REFUSAL_CARD_LABELS = {
8
+ notPermitted: "Not permitted",
9
+ nothingChanged: "Nothing changed."
10
+ };
11
+ function RefusalCard({ title, heading, children, actions, labels: overrides, className, ...rest }) {
12
+ const labels = overrides ? { ...REFUSAL_CARD_LABELS, ...overrides } : REFUSAL_CARD_LABELS;
13
+ return /* @__PURE__ */ jsxs(
14
+ StatusCard,
15
+ {
16
+ ...rest,
17
+ title,
18
+ status: { label: labels.notPermitted, tone: "neutral", icon: /* @__PURE__ */ jsx(LockGlyph, { size: "xs" }) },
19
+ actions,
20
+ actionsAlign: "start",
21
+ className: cx("crewlet-refusal-card", className),
22
+ children: [
23
+ heading === void 0 || heading === null ? null : /* @__PURE__ */ jsx("p", { className: "crewlet-refusal-card__heading", children: heading }),
24
+ /* @__PURE__ */ jsx("p", { children }),
25
+ /* @__PURE__ */ jsx("p", { className: "crewlet-refusal-card__nothing", children: labels.nothingChanged })
26
+ ]
27
+ }
28
+ );
29
+ }
30
+
31
+ export { REFUSAL_CARD_LABELS, RefusalCard };
@@ -0,0 +1,30 @@
1
+ import { cx } from './chunk-ODEQTPFM.js';
2
+ import './MessageBubble-GKO6X3QG.css';
3
+ import { jsxs, jsx } from 'react/jsx-runtime';
4
+
5
+ function MessageBubble({
6
+ from,
7
+ children,
8
+ label,
9
+ attachment,
10
+ footer,
11
+ animateIn = false,
12
+ className,
13
+ ...rest
14
+ }) {
15
+ return /* @__PURE__ */ jsxs(
16
+ "article",
17
+ {
18
+ ...rest,
19
+ "aria-label": label ?? (from === "self" ? "You said" : void 0),
20
+ className: cx("crewlet-message", `crewlet-message--${from}`, animateIn && "crewlet-message--enter", className),
21
+ children: [
22
+ /* @__PURE__ */ jsx("div", { className: "crewlet-message__bubble", children }),
23
+ attachment === void 0 || attachment === null ? null : /* @__PURE__ */ jsx("div", { className: "crewlet-message__attachment", children: attachment }),
24
+ footer === void 0 || footer === null ? null : /* @__PURE__ */ jsx("div", { className: "crewlet-message__footer", children: footer })
25
+ ]
26
+ }
27
+ );
28
+ }
29
+
30
+ export { MessageBubble };