@crewlethq/ui 0.55.0 → 0.56.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 +87 -4
  2. package/dist/Accordion/index.js +2 -2
  3. package/dist/AgentHandoffPanel/index.js +14 -9
  4. package/dist/AppShell/AppShell.d.ts +74 -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 +34 -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-X2J47LPD.js} +7 -6
  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 +134 -0
  114. package/dist/ProposalCard/index.d.ts +3 -0
  115. package/dist/ProposalCard/index.js +17 -0
  116. package/dist/ProposalCard-HLB3FNLA.css +19 -0
  117. package/dist/ReceiptStrip/ReceiptStrip.d.ts +66 -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-DM4JG4M5.js → chunk-D5OSP3KI.js} +3 -3
  221. package/dist/{chunk-BTHQFWMG.js → chunk-DOPPU6TZ.js} +4 -4
  222. package/dist/{chunk-AC22RZKC.js → chunk-DRT4L4WC.js} +17 -5
  223. package/dist/chunk-E4DZOE55.js +162 -0
  224. package/dist/chunk-EA23JG6R.js +9 -0
  225. package/dist/{chunk-WHL3XZCK.js → chunk-EBG3V4MK.js} +6 -6
  226. package/dist/{chunk-5JDHMDMQ.js → chunk-EDNZHW4K.js} +57 -7
  227. package/dist/{chunk-E6HXFFWO.js → chunk-EGL24VY5.js} +2 -2
  228. package/dist/{chunk-7SHAFLEX.js → chunk-ES4HR34Y.js} +2 -2
  229. package/dist/chunk-EVWTLFKI.js +102 -0
  230. package/dist/chunk-FA44M2YT.js +25 -0
  231. package/dist/{chunk-LKBZV5IT.js → chunk-FLTMDSC3.js} +1 -1
  232. package/dist/{chunk-XANKR3EP.js → chunk-FXQLNETQ.js} +2 -2
  233. package/dist/{chunk-G22NPQG4.js → chunk-GCASX3FD.js} +4 -4
  234. package/dist/{chunk-OGXHZHRX.js → chunk-GG4QZWMQ.js} +2 -2
  235. package/dist/{chunk-XP7EXNKF.js → chunk-GPW4M4OI.js} +2 -2
  236. package/dist/chunk-GZMEWWXW.js +78 -0
  237. package/dist/{chunk-OG6CL3EB.js → chunk-HD4QJ2SI.js} +3 -2
  238. package/dist/{chunk-SYY26XBX.js → chunk-HGCDJOEF.js} +2 -2
  239. package/dist/chunk-HGYHWWA5.js +54 -0
  240. package/dist/{chunk-ZS63CFDO.js → chunk-HL4CPLEK.js} +7 -7
  241. package/dist/{chunk-BEHFTRMZ.js → chunk-HNK43Z3P.js} +23 -5
  242. package/dist/{chunk-UO7JZVCO.js → chunk-HVEDVKXL.js} +1 -1
  243. package/dist/{chunk-FS4IH7VB.js → chunk-I7VG6RQE.js} +2 -2
  244. package/dist/{chunk-3RCHEFIL.js → chunk-ICJRP6QW.js} +2 -2
  245. package/dist/{chunk-YRIZAIU6.js → chunk-IDQBSMMZ.js} +2 -2
  246. package/dist/chunk-JILNCBBS.js +27 -0
  247. package/dist/{chunk-W5GM452Z.js → chunk-JJ3NOBJ6.js} +5 -5
  248. package/dist/chunk-JLRXCKTS.js +97 -0
  249. package/dist/{chunk-OJCVVCAZ.js → chunk-JMMS2PQU.js} +1 -1
  250. package/dist/{chunk-IVAR7NRW.js → chunk-JS2TRHBF.js} +3 -3
  251. package/dist/{chunk-3CZ7XAVY.js → chunk-KS7YIJ4S.js} +10 -6
  252. package/dist/{chunk-MU5KH3JF.js → chunk-LQ6AGUDL.js} +2 -2
  253. package/dist/chunk-LXYSWQNE.js +214 -0
  254. package/dist/{chunk-EKLEYNGR.js → chunk-MYX4XABB.js} +3 -3
  255. package/dist/{chunk-PM3JVNRY.js → chunk-N3ISZVLK.js} +1 -1
  256. package/dist/chunk-NEHSV55H.js +119 -0
  257. package/dist/{chunk-LLHO4FJK.js → chunk-NHJQXDHA.js} +1 -1
  258. package/dist/{chunk-NTZQN7OR.js → chunk-NI7WUPH3.js} +2 -2
  259. package/dist/{chunk-F6CKQX5D.js → chunk-NK3D66PB.js} +2 -2
  260. package/dist/{chunk-RHPBTE3F.js → chunk-NQGZRMUG.js} +1 -1
  261. package/dist/chunk-NVZCANJ5.js +3 -0
  262. package/dist/{chunk-RRO7UEYU.js → chunk-OHBXOEP3.js} +1 -1
  263. package/dist/{chunk-USVUSO3S.js → chunk-OHG7762N.js} +1 -1
  264. package/dist/{chunk-OBUQVGEG.js → chunk-OJ2QULVH.js} +1 -1
  265. package/dist/{chunk-ITTECHM4.js → chunk-OOZ5AGPS.js} +5 -5
  266. package/dist/{chunk-BZXY2L2D.js → chunk-OYAXKHVW.js} +1 -1
  267. package/dist/{chunk-WQQ5T5SA.js → chunk-OZIBNFLO.js} +1 -1
  268. package/dist/{chunk-DFK5EQTU.js → chunk-PDTEPN4D.js} +1 -1
  269. package/dist/chunk-PIYJNCN7.js +124 -0
  270. package/dist/{chunk-ZVV2VERB.js → chunk-Q6R6EUQ4.js} +3 -3
  271. package/dist/chunk-QYEOGGVS.js +161 -0
  272. package/dist/{chunk-NWGGH2LN.js → chunk-QZ4B72FP.js} +3 -3
  273. package/dist/chunk-RV2FGESF.js +98 -0
  274. package/dist/{chunk-TQ3C3Q7V.js → chunk-S5C64PTT.js} +1 -1
  275. package/dist/chunk-SDSBVVLL.js +45 -0
  276. package/dist/{chunk-ZNOXQACX.js → chunk-T4D7RZNI.js} +2 -2
  277. package/dist/{chunk-TDVPYBNL.js → chunk-TA72CURM.js} +1 -1
  278. package/dist/{chunk-WXOYHVWG.js → chunk-TD3UHDFY.js} +4 -4
  279. package/dist/{chunk-H7FUQCQY.js → chunk-TDQZ4LB5.js} +8 -6
  280. package/dist/chunk-TFGCNBWP.js +64 -0
  281. package/dist/{chunk-TMM32U7D.js → chunk-TKS7FTTO.js} +2 -2
  282. package/dist/{chunk-NKHS2RQ2.js → chunk-U5PJSGHG.js} +1 -1
  283. package/dist/{chunk-7CGPPAYR.js → chunk-UV4LOQ3E.js} +1 -1
  284. package/dist/{chunk-34ANLQW2.js → chunk-UVYGMCJ4.js} +173 -8
  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-WDIVALLP.js +51 -0
  288. package/dist/{chunk-QMIWMLFI.js → chunk-WOW5SCEK.js} +1 -1
  289. package/dist/chunk-XODESBSR.js +250 -0
  290. package/dist/chunk-XQI2OUV4.js +59 -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-IW55G7XG.js → chunk-YNRKVY7X.js} +11 -1
  297. package/dist/chunk-YY445YFQ.js +55 -0
  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 +141 -122
  303. package/dist/index.js +141 -122
  304. package/dist/styles.css +1877 -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
@@ -0,0 +1,192 @@
1
+ /*
2
+ * A message written in place: the field and its footer strip in one box. The
3
+ * BOX takes the focus ring every field in the package draws (see Input.css):
4
+ * an outline over its boundary, 2px for the keyboard and the hairline for a
5
+ * pointer, so the field inside draws no border or outline of its own and the
6
+ * footer reads as part of what is being written. It used to recolour the
7
+ * border to the accent AND lay a 2px soft halo outside it: two highlights for
8
+ * one state, and the loudest edge on a page whose field was focused on load.
9
+ */
10
+ /*
11
+ * THE FIELD'S EDGE, as every text field draws it: `--color-border-field`, the
12
+ * step measured to 3:1 against the ground, stepping up to the control boundary
13
+ * under the pointer. It drew `--color-border-strong`, which is 1.46:1, so the
14
+ * box a person types in was the faintest edge on the panel.
15
+ */
16
+ .crewlet-composer {
17
+ /* The edge's width, named because the nested send button's corner is
18
+ derived from it (see .crewlet-composer__trailing). */
19
+ --crewlet-composer-edge: 1px;
20
+
21
+ display: grid;
22
+ overflow: hidden;
23
+ border: var(--crewlet-composer-edge) solid var(--color-border-field);
24
+ border-radius: var(--radius-md);
25
+ background: var(--color-surface-background);
26
+ transition: border-color var(--motion-duration-fast) var(--motion-easing-default);
27
+ }
28
+
29
+ .crewlet-composer:not(.is-disabled):hover {
30
+ border-color: var(--color-border-control);
31
+ }
32
+
33
+ /* The field and, in a chat composer, its send button on one row. */
34
+ .crewlet-composer__row {
35
+ display: flex;
36
+ align-items: flex-end;
37
+ min-width: 0;
38
+ }
39
+
40
+ /* Keyed on the FIELD, not :focus-within: the footer holds the send action,
41
+ and a reader tabbing onto it is shown that button's ring, not the box's. */
42
+ .crewlet-composer:has(.crewlet-composer__field:focus-visible) {
43
+ outline: 2px solid var(--color-focus);
44
+ outline-offset: -1px;
45
+ }
46
+
47
+ :where(:root[data-crewlet-focus='pointer']) .crewlet-composer:has(.crewlet-composer__field:focus-visible) {
48
+ outline-width: 1px;
49
+ outline-color: var(--color-border-selected);
50
+ }
51
+
52
+ .crewlet-composer .crewlet-composer__field {
53
+ flex: 1;
54
+ min-width: 0;
55
+ min-height: 68px;
56
+ max-height: 220px;
57
+ padding: var(--spacing-2) var(--spacing-3);
58
+ border: 0;
59
+ border-radius: 0;
60
+ background: transparent;
61
+ resize: none;
62
+ }
63
+
64
+ /* The ring is the box's, above, so the field inside never draws one: left to
65
+ the textarea's own rule it would be a second ring inside the box's, and in
66
+ forced colours the box's outline is the one the system repaints. Stated on
67
+ the field at rest, at a weight the textarea's focus rule cannot outrank. */
68
+ .crewlet-composer .crewlet-composer__field.crewlet-textarea {
69
+ outline: none;
70
+ }
71
+
72
+ /*
73
+ * A CHAT COMPOSER: the field and its send button share one row. The field
74
+ * starts as one line exactly as tall as the button and its inset (so the
75
+ * line sits centred beside it), grows to six lines and then scrolls, and the
76
+ * button stays on the last line.
77
+ */
78
+ .crewlet-composer--inline .crewlet-composer__field {
79
+ --crewlet-composer-line: calc(var(--font-line-height-normal) * var(--font-size-compact));
80
+ --crewlet-composer-row: calc(var(--size-control-md) + var(--spacing-2));
81
+
82
+ min-height: var(--crewlet-composer-row);
83
+ max-height: 140px;
84
+ padding-block: max(0px, calc((var(--crewlet-composer-row) - var(--crewlet-composer-line)) / 2));
85
+ }
86
+
87
+ /*
88
+ * A PLACEHOLDER NEVER GROWS THE FIELD. It is one line of example or one word
89
+ * of reason ("Offline"); wrapped to a second line it made the composer jump
90
+ * taller the moment the connection dropped.
91
+ */
92
+ .crewlet-composer--inline .crewlet-composer__field::placeholder {
93
+ overflow: hidden;
94
+ text-overflow: ellipsis;
95
+ white-space: nowrap;
96
+ }
97
+
98
+ /*
99
+ * THE SEND BUTTON NESTS IN THE BOX'S CORNER: inset by one spacing step, its
100
+ * radius is the box's less that inset and the box's own edge, so the two
101
+ * corners run parallel rather than a square sitting in a rounded box.
102
+ */
103
+ .crewlet-composer__trailing {
104
+ display: flex;
105
+ flex: none;
106
+ align-items: center;
107
+ gap: var(--spacing-1);
108
+ padding: var(--spacing-1);
109
+ }
110
+
111
+ .crewlet-composer__trailing .crewlet-icon-btn {
112
+ border-radius: calc(var(--radius-md) - var(--spacing-1) - var(--crewlet-composer-edge));
113
+ }
114
+
115
+ /*
116
+ * WHAT TRAVELS WITH THE MESSAGE, above the field inside the box's edge: a row
117
+ * of tags that wraps, on the field's own inset so a tag starts where the text
118
+ * does.
119
+ */
120
+ .crewlet-composer__attachments {
121
+ display: flex;
122
+ flex-wrap: wrap;
123
+ align-items: center;
124
+ gap: var(--spacing-1);
125
+ min-width: 0;
126
+ padding: var(--spacing-2) var(--spacing-3) 0;
127
+ }
128
+
129
+ /*
130
+ * DISABLED, AS A FIELD IS: the whole box at the disabled field's 0.6 and the
131
+ * not-allowed cursor, so it no longer reads as somewhere to type. Faded once:
132
+ * the field and a disabled send button inside it keep their own opacity at 1,
133
+ * or the box's fade and theirs would multiply into a control nobody can read.
134
+ */
135
+ .crewlet-composer.is-disabled {
136
+ opacity: 0.6;
137
+ cursor: not-allowed;
138
+ }
139
+
140
+ .crewlet-composer.is-disabled .crewlet-composer__field.is-disabled,
141
+ .crewlet-composer.is-disabled .crewlet-composer__trailing :disabled,
142
+ .crewlet-composer.is-disabled .crewlet-composer__trailing [aria-disabled='true'] {
143
+ opacity: 1;
144
+ }
145
+
146
+ /* Past its cap the field scrolls rather than pushing the page. */
147
+ .crewlet-composer .crewlet-composer__field.is-auto-resize {
148
+ overflow-y: auto;
149
+ }
150
+
151
+ .crewlet-composer__footer {
152
+ display: flex;
153
+ flex-wrap: wrap;
154
+ align-items: center;
155
+ gap: var(--spacing-2);
156
+ padding: var(--spacing-1) var(--spacing-1) var(--spacing-1) var(--spacing-3);
157
+ border-top: 1px solid var(--color-border-default);
158
+ background: var(--color-surface-subtle);
159
+ }
160
+
161
+ .crewlet-composer__hint {
162
+ display: inline-flex;
163
+ align-items: center;
164
+ gap: var(--spacing-1);
165
+ font-size: var(--font-size-2xs);
166
+ color: var(--color-text-tertiary);
167
+ }
168
+
169
+ .crewlet-composer__counter {
170
+ font-family: var(--font-family-mono);
171
+ font-size: var(--font-size-2xs);
172
+ font-variant-numeric: tabular-nums;
173
+ color: var(--color-feedback-warning-ink);
174
+ }
175
+
176
+ .crewlet-composer__spacer {
177
+ flex: 1;
178
+ }
179
+
180
+ /* On a phone the hint goes, and a footer that held only the hint goes with it. */
181
+ @media (width < 640px) {
182
+ .crewlet-composer__hint,
183
+ .crewlet-composer__footer[data-hint-only] {
184
+ display: none;
185
+ }
186
+ }
187
+
188
+ @media (prefers-reduced-motion: reduce) {
189
+ .crewlet-composer {
190
+ transition: none;
191
+ }
192
+ }
@@ -1,11 +1,11 @@
1
- export { ConfirmField, confirmMatches } from '../chunk-ZMBPEHYH.js';
1
+ export { ConfirmField, confirmMatches } from '../chunk-4CBGIRVU.js';
2
2
  import '../chunk-5CLW2CXT.js';
3
- import '../chunk-XANKR3EP.js';
3
+ import '../chunk-FXQLNETQ.js';
4
4
  import '../chunk-XCUUI7E7.js';
5
5
  import '../chunk-PQADV6P6.js';
6
+ import '../chunk-RSAQOKH3.js';
6
7
  import '../chunk-H5XTJ7GJ.js';
7
- import '../chunk-LACA4JGC.js';
8
+ import '../chunk-2BQYODY3.js';
8
9
  import '../chunk-NUZHC6MM.js';
9
- import '../chunk-RSAQOKH3.js';
10
10
  import '../chunk-BZFWDIV6.js';
11
11
  import '../chunk-ODEQTPFM.js';
@@ -1,4 +1,5 @@
1
- export { CONFLICT_NOTE_LABELS, ConflictNote } from '../chunk-UO7JZVCO.js';
2
- import '../chunk-OG6CL3EB.js';
1
+ export { CONFLICT_NOTE_LABELS, ConflictNote } from '../chunk-HVEDVKXL.js';
2
+ import '../chunk-HD4QJ2SI.js';
3
+ import '../chunk-EA23JG6R.js';
3
4
  import '../chunk-BZFWDIV6.js';
4
5
  import '../chunk-ODEQTPFM.js';
@@ -1,4 +1,4 @@
1
- export { ContrastHelp } from '../chunk-KIRQZG3G.js';
1
+ export { ContrastHelp } from '../chunk-YCGZK2E4.js';
2
2
  import '../chunk-WW7TU6HE.js';
3
3
  import '../chunk-KYIAFNU7.js';
4
4
  import '../chunk-KHJIEPZV.js';
@@ -6,7 +6,7 @@ import '../chunk-7W3LYIOC.js';
6
6
  import '../chunk-WIATRXEJ.js';
7
7
  import '../chunk-OMV5W53A.js';
8
8
  import '../chunk-H5XTJ7GJ.js';
9
- import '../chunk-LACA4JGC.js';
9
+ import '../chunk-2BQYODY3.js';
10
10
  import '../chunk-NUZHC6MM.js';
11
11
  import '../chunk-BZFWDIV6.js';
12
12
  import '../chunk-ODEQTPFM.js';
@@ -1,7 +1,8 @@
1
- export { CopyButton, Copyable } from '../chunk-7SHAFLEX.js';
1
+ export { CopyButton, Copyable } from '../chunk-ES4HR34Y.js';
2
2
  import '../chunk-STJ7QBC3.js';
3
3
  import '../chunk-DTIW4CHZ.js';
4
- import '../chunk-OG6CL3EB.js';
5
- import '../chunk-LACA4JGC.js';
4
+ import '../chunk-HD4QJ2SI.js';
5
+ import '../chunk-EA23JG6R.js';
6
+ import '../chunk-2BQYODY3.js';
6
7
  import '../chunk-BZFWDIV6.js';
7
8
  import '../chunk-ODEQTPFM.js';
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Which grid on screen the keyboard drives.
3
+ *
4
+ * A grid whose rows are links takes no focus of its own, so an application
5
+ * binds its row keys (step down, step up, open) on the window and hands them
6
+ * to a grid through `handleRef`. With two or three grids on one screen (and a
7
+ * grid inside a peek beside a grid on the page), exactly one of them may take
8
+ * a key: the one the reader last pointed at, and with no gesture yet, the
9
+ * first one mounted that has rows. A grid showing its empty state drives
10
+ * nothing.
11
+ *
12
+ * MODULE STATE RATHER THAN A CONTEXT, because the grids that must agree are
13
+ * often in different subtrees (the page's and the peek's), and a provider
14
+ * around both would be the application's frame, which knows nothing about
15
+ * grids. Every grid re-renders when whose keystroke it is changes, through
16
+ * one subscription.
17
+ *
18
+ * The keys themselves stay the application's: it binds them in its own
19
+ * keymap, gated on `driving`, so they are checked against every other key it
20
+ * binds rather than registered behind its back.
21
+ */
22
+ import type { DataGridBand } from './DataGrid.js';
23
+ /** How many rows a grid draws, its bands' rows included, however deeply grouped. */
24
+ export declare function countDataGridRows<T>(rows: readonly T[] | undefined, bands: readonly DataGridBand<T>[] | undefined): number;
25
+ export interface DataGridDriving {
26
+ /** Whether this grid takes the row keys now. */
27
+ driving: boolean;
28
+ /**
29
+ * Make this grid the one the keys drive: pass it as the grid's
30
+ * `onPointerDown`, so a pointer gesture on a grid is the reader saying
31
+ * which one they are in.
32
+ */
33
+ claim: () => void;
34
+ }
35
+ /**
36
+ * Take part in deciding which grid the keyboard drives.
37
+ *
38
+ * `drivable` is whether this grid has rows to step through: pass
39
+ * `countDataGridRows(rows, bands) > 0`. A grid that cannot drive registers
40
+ * nothing, and one the reader touched and then left takes nothing with it.
41
+ */
42
+ export declare function useDataGridDriving(drivableNow: boolean): DataGridDriving;
43
+ /**
44
+ * Whether ANY grid on screen holds the row keys: for a screen that binds the
45
+ * same keys to something of its own (a record page stepping through the list
46
+ * it was opened from), which must stand aside while a grid takes them.
47
+ */
48
+ export declare function useAnyDataGridDriving(): boolean;
@@ -1,3 +1,5 @@
1
1
  import './DataGrid.css';
2
2
  export { ChooserList, ColumnChooser, DataGrid, columnChoicesOf, fitGridColumns, parseGridSort } from './DataGrid.js';
3
+ export { countDataGridRows, useAnyDataGridDriving, useDataGridDriving } from './driving.js';
4
+ export type { DataGridDriving } from './driving.js';
3
5
  export type { ColumnChoice, ChooserItem, ChooserListProps, ColumnChooserProps, DataGridActivationEvent, DataGridBand, DataGridColumn, DataGridHandle, DataGridLabels, DataGridProps, GridFit, } from './DataGrid.js';
@@ -1,14 +1,15 @@
1
- export { ChooserList, ColumnChooser, DataGrid, columnChoicesOf, fitGridColumns, parseGridSort } from '../chunk-5JDHMDMQ.js';
2
- import '../chunk-LLHO4FJK.js';
1
+ export { ChooserList, ColumnChooser, DataGrid, columnChoicesOf, countDataGridRows, fitGridColumns, parseGridSort, useAnyDataGridDriving, useDataGridDriving } from '../chunk-EDNZHW4K.js';
2
+ import '../chunk-NHJQXDHA.js';
3
3
  import '../chunk-PPUR46MK.js';
4
- import '../chunk-RTPQDNW3.js';
5
- import '../chunk-XANKR3EP.js';
4
+ import '../chunk-FXQLNETQ.js';
6
5
  import '../chunk-XCUUI7E7.js';
7
6
  import '../chunk-PQADV6P6.js';
8
- import '../chunk-OG6CL3EB.js';
7
+ import '../chunk-RSAQOKH3.js';
8
+ import '../chunk-RTPQDNW3.js';
9
+ import '../chunk-HD4QJ2SI.js';
10
+ import '../chunk-EA23JG6R.js';
9
11
  import '../chunk-H5XTJ7GJ.js';
10
- import '../chunk-LACA4JGC.js';
12
+ import '../chunk-2BQYODY3.js';
11
13
  import '../chunk-NUZHC6MM.js';
12
- import '../chunk-RSAQOKH3.js';
13
14
  import '../chunk-BZFWDIV6.js';
14
15
  import '../chunk-ODEQTPFM.js';
@@ -1,19 +1,20 @@
1
- export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-W5GM452Z.js';
2
- import '../chunk-NWGGH2LN.js';
1
+ export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-JJ3NOBJ6.js';
3
2
  import '../chunk-STJ7QBC3.js';
4
3
  import '../chunk-DTIW4CHZ.js';
4
+ import '../chunk-QZ4B72FP.js';
5
5
  import '../chunk-EUCC37WY.js';
6
6
  import '../chunk-AV2DXAEL.js';
7
- import '../chunk-LLHO4FJK.js';
8
- import '../chunk-TMM32U7D.js';
9
- import '../chunk-OMV5W53A.js';
10
- import '../chunk-XANKR3EP.js';
7
+ import '../chunk-NHJQXDHA.js';
8
+ import '../chunk-FXQLNETQ.js';
11
9
  import '../chunk-XCUUI7E7.js';
12
10
  import '../chunk-PQADV6P6.js';
13
- import '../chunk-OG6CL3EB.js';
11
+ import '../chunk-RSAQOKH3.js';
12
+ import '../chunk-TKS7FTTO.js';
13
+ import '../chunk-HD4QJ2SI.js';
14
+ import '../chunk-EA23JG6R.js';
15
+ import '../chunk-OMV5W53A.js';
14
16
  import '../chunk-H5XTJ7GJ.js';
15
- import '../chunk-LACA4JGC.js';
17
+ import '../chunk-2BQYODY3.js';
16
18
  import '../chunk-NUZHC6MM.js';
17
- import '../chunk-RSAQOKH3.js';
18
19
  import '../chunk-BZFWDIV6.js';
19
20
  import '../chunk-ODEQTPFM.js';
@@ -1,29 +1,30 @@
1
- export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-ZS63CFDO.js';
1
+ export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-HL4CPLEK.js';
2
2
  import '../chunk-DKB73KZI.js';
3
- import '../chunk-W5GM452Z.js';
4
- import '../chunk-ZFM5L7M4.js';
5
- import '../chunk-NWGGH2LN.js';
6
- import '../chunk-7KHM2FZH.js';
3
+ import '../chunk-JJ3NOBJ6.js';
4
+ import '../chunk-6NJW5KSX.js';
7
5
  import '../chunk-STJ7QBC3.js';
8
6
  import '../chunk-DTIW4CHZ.js';
7
+ import '../chunk-QZ4B72FP.js';
8
+ import '../chunk-7KHM2FZH.js';
9
9
  import '../chunk-GXQ3B46I.js';
10
10
  import '../chunk-NR4CPM4T.js';
11
11
  import '../chunk-KHJIEPZV.js';
12
- import '../chunk-3CZ7XAVY.js';
12
+ import '../chunk-KS7YIJ4S.js';
13
13
  import '../chunk-EUCC37WY.js';
14
14
  import '../chunk-AV2DXAEL.js';
15
- import '../chunk-LLHO4FJK.js';
16
- import '../chunk-TMM32U7D.js';
17
- import '../chunk-OMV5W53A.js';
15
+ import '../chunk-NHJQXDHA.js';
18
16
  import '../chunk-SMBKXWML.js';
19
- import '../chunk-XANKR3EP.js';
17
+ import '../chunk-FXQLNETQ.js';
20
18
  import '../chunk-XCUUI7E7.js';
21
19
  import '../chunk-BHHIIK3M.js';
22
20
  import '../chunk-PQADV6P6.js';
23
- import '../chunk-OG6CL3EB.js';
21
+ import '../chunk-RSAQOKH3.js';
22
+ import '../chunk-TKS7FTTO.js';
23
+ import '../chunk-HD4QJ2SI.js';
24
+ import '../chunk-EA23JG6R.js';
25
+ import '../chunk-OMV5W53A.js';
24
26
  import '../chunk-H5XTJ7GJ.js';
25
- import '../chunk-LACA4JGC.js';
27
+ import '../chunk-2BQYODY3.js';
26
28
  import '../chunk-NUZHC6MM.js';
27
- import '../chunk-RSAQOKH3.js';
28
29
  import '../chunk-BZFWDIV6.js';
29
30
  import '../chunk-ODEQTPFM.js';
@@ -1,7 +1,7 @@
1
- export { DATASET_SOURCE_KINDS, DatasetSource, DatasetSourceList } from '../chunk-HQJ24WPM.js';
1
+ export { DATASET_SOURCE_KINDS, DatasetSource, DatasetSourceList } from '../chunk-AZ5BKSGV.js';
2
2
  import '../chunk-KYIAFNU7.js';
3
3
  import '../chunk-WIATRXEJ.js';
4
- import '../chunk-3CZ7XAVY.js';
4
+ import '../chunk-KS7YIJ4S.js';
5
5
  import '../chunk-EUCC37WY.js';
6
6
  import '../chunk-2YTOOH3A.js';
7
7
  import '../chunk-BZFWDIV6.js';
@@ -1,10 +1,11 @@
1
- export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-ZFM5L7M4.js';
1
+ export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-6NJW5KSX.js';
2
2
  import '../chunk-GXQ3B46I.js';
3
3
  import '../chunk-KHJIEPZV.js';
4
+ import '../chunk-HD4QJ2SI.js';
5
+ import '../chunk-EA23JG6R.js';
4
6
  import '../chunk-OMV5W53A.js';
5
- import '../chunk-OG6CL3EB.js';
6
7
  import '../chunk-H5XTJ7GJ.js';
7
- import '../chunk-LACA4JGC.js';
8
+ import '../chunk-2BQYODY3.js';
8
9
  import '../chunk-NUZHC6MM.js';
9
10
  import '../chunk-BZFWDIV6.js';
10
11
  import '../chunk-ODEQTPFM.js';
@@ -18,12 +18,21 @@ export interface DiffListLabels {
18
18
  to: string;
19
19
  }
20
20
  export declare const DIFF_LIST_LABELS: DiffListLabels;
21
+ /**
22
+ * How a row stands. `columns` (the default) puts the path in a 200px track
23
+ * beside its value, each cut with an ellipsis; `stacked` stands each path
24
+ * over its value and wraps both, so a value is read rather than cut; `auto`
25
+ * is `columns` until the list itself is narrower than 480px (a phone sheet, a
26
+ * narrow card), and `stacked` under that.
27
+ */
28
+ export type DiffListLayout = 'columns' | 'stacked' | 'auto';
21
29
  export interface DiffListProps {
22
30
  rows: DiffRow[];
31
+ layout?: DiffListLayout | undefined;
23
32
  /** What an empty diff says. Two identical documents are a fact, not a gap. */
24
33
  emptyMessage?: ReactNode;
25
- labels?: Partial<DiffListLabels>;
26
- className?: string;
34
+ labels?: Partial<DiffListLabels> | undefined;
35
+ className?: string | undefined;
27
36
  }
28
37
  /**
29
38
  * The difference between two documents, one path per row.
@@ -44,4 +53,4 @@ export interface DiffListProps {
44
53
  * configuration document, where an aligned column of characters is the whole
45
54
  * point and a proportional face makes two nearly-identical values look alike.
46
55
  */
47
- export declare function DiffList({ rows, emptyMessage, labels: overrides, className }: DiffListProps): import("react").JSX.Element;
56
+ export declare function DiffList({ rows, emptyMessage, layout, labels: overrides, className }: DiffListProps): import("react").JSX.Element;
@@ -1,3 +1,3 @@
1
1
  import './DiffList.css';
2
2
  export { DiffList, DIFF_LIST_LABELS } from './DiffList.js';
3
- export type { DiffKind, DiffListLabels, DiffListProps, DiffRow } from './DiffList.js';
3
+ export type { DiffKind, DiffListLabels, DiffListLayout, DiffListProps, DiffRow } from './DiffList.js';
@@ -1,3 +1,3 @@
1
- export { DIFF_LIST_LABELS, DiffList } from '../chunk-LFHCXZO5.js';
1
+ export { DIFF_LIST_LABELS, DiffList } from '../chunk-Z3GDMNMU.js';
2
2
  import '../chunk-BZFWDIV6.js';
3
3
  import '../chunk-ODEQTPFM.js';
@@ -92,3 +92,56 @@
92
92
  font-size: var(--font-size-compact);
93
93
  color: var(--color-text-tertiary);
94
94
  }
95
+
96
+ /*
97
+ * STACKED: each path over its value, both wrapping, so a value is read rather
98
+ * than cut by the 200px path track. `auto` is the same drawing under 480px of
99
+ * the list's own width, which a window query cannot know: a list in a 420px
100
+ * drawer on a wide screen is as narrow as one on a phone.
101
+ */
102
+ .crewlet-diff-list--auto {
103
+ container: crewlet-diff-list / inline-size;
104
+ }
105
+
106
+ .crewlet-diff-list--stacked .crewlet-diff-list__row {
107
+ grid-template-columns: auto minmax(0, 1fr);
108
+ row-gap: 0;
109
+ }
110
+
111
+ .crewlet-diff-list--stacked .crewlet-diff-list__value {
112
+ grid-column: 2;
113
+ }
114
+
115
+ .crewlet-diff-list--stacked .crewlet-diff-list__path,
116
+ .crewlet-diff-list--stacked .crewlet-diff-list__value,
117
+ .crewlet-diff-list--stacked .crewlet-diff-list__from,
118
+ .crewlet-diff-list--stacked .crewlet-diff-list__to {
119
+ overflow: visible;
120
+ white-space: normal;
121
+ overflow-wrap: anywhere;
122
+ }
123
+
124
+ .crewlet-diff-list--stacked .crewlet-diff-list__value {
125
+ flex-wrap: wrap;
126
+ }
127
+
128
+ @container crewlet-diff-list (width < 480px) {
129
+ .crewlet-diff-list--auto .crewlet-diff-list__row {
130
+ grid-template-columns: auto minmax(0, 1fr);
131
+ row-gap: 0;
132
+ }
133
+
134
+ .crewlet-diff-list--auto .crewlet-diff-list__value {
135
+ grid-column: 2;
136
+ flex-wrap: wrap;
137
+ }
138
+
139
+ .crewlet-diff-list--auto .crewlet-diff-list__path,
140
+ .crewlet-diff-list--auto .crewlet-diff-list__value,
141
+ .crewlet-diff-list--auto .crewlet-diff-list__from,
142
+ .crewlet-diff-list--auto .crewlet-diff-list__to {
143
+ overflow: visible;
144
+ white-space: normal;
145
+ overflow-wrap: anywhere;
146
+ }
147
+ }
@@ -23,6 +23,19 @@ export interface DisclosureAnatomyProps {
23
23
  */
24
24
  actions?: ReactNode;
25
25
  disabled?: boolean | undefined;
26
+ /**
27
+ * A mark after the chevron and before the title: the state of what the
28
+ * section holds (a request's spinner, its check). Decoration; the title
29
+ * says the state in words.
30
+ */
31
+ icon?: ReactNode;
32
+ /**
33
+ * There is nothing to open yet (a request with no steps so far). The bar is
34
+ * drawn as words rather than a button, with the chevron's slot kept and
35
+ * left unpainted, so nothing shifts when the section gains content and the
36
+ * trigger becomes a button. `true` by default.
37
+ */
38
+ expandable?: boolean | undefined;
26
39
  headingLevel: DisclosureHeadingLevel;
27
40
  triggerId: string;
28
41
  panelId: string;
@@ -40,4 +53,4 @@ export interface DisclosureAnatomyProps {
40
53
  * item at a time, the other stands alone. Written twice, the two came to
41
54
  * disagree about where the actions go, which is the half that matters.
42
55
  */
43
- export declare function DisclosureAnatomy({ open, onToggle, title, meta, count, mono, actions, disabled, headingLevel, triggerId, panelId, triggerClassName, onKeyDown, }: DisclosureAnatomyProps): import("react").JSX.Element;
56
+ export declare function DisclosureAnatomy({ open, onToggle, title, meta, count, mono, actions, disabled, icon, expandable, headingLevel, triggerId, panelId, triggerClassName, onKeyDown, }: DisclosureAnatomyProps): import("react").JSX.Element;
@@ -1,5 +1,5 @@
1
- export { Disclosure } from '../chunk-OGXHZHRX.js';
2
- export { DisclosureAnatomy } from '../chunk-FZVJDJFN.js';
1
+ export { Disclosure } from '../chunk-GG4QZWMQ.js';
2
+ export { DisclosureAnatomy } from '../chunk-TFGCNBWP.js';
3
3
  import '../chunk-BHHIIK3M.js';
4
4
  import '../chunk-PQADV6P6.js';
5
5
  import '../chunk-BZFWDIV6.js';
@@ -103,6 +103,32 @@
103
103
  transform: rotate(0deg);
104
104
  }
105
105
 
106
+ /*
107
+ * NOTHING TO OPEN YET: the bar is words rather than a button, and the
108
+ * chevron keeps its slot unpainted, so the mark after it does not move when
109
+ * the section gains content and the chevron appears.
110
+ */
111
+ .crewlet-disclosure__chevron--reserved {
112
+ visibility: hidden;
113
+ }
114
+
115
+ .crewlet-disclosure__trigger--static {
116
+ cursor: default;
117
+ }
118
+
119
+ /* Words, so nothing answers the pointer. */
120
+ .crewlet-disclosure__trigger--static:hover {
121
+ background: none;
122
+ color: var(--color-text-secondary);
123
+ }
124
+
125
+ /* The section's state mark, between the chevron and the title. */
126
+ .crewlet-disclosure__icon {
127
+ display: inline-flex;
128
+ flex: none;
129
+ align-items: center;
130
+ }
131
+
106
132
  .crewlet-disclosure__title {
107
133
  min-width: 0;
108
134
  overflow: hidden;
@@ -163,6 +189,16 @@
163
189
  color: var(--color-text-secondary);
164
190
  }
165
191
 
192
+ /*
193
+ * CLOSED IS HIDDEN. The panel closes with the `hidden` attribute, and the
194
+ * browser's own `[hidden] { display: none }` is a user agent rule that any
195
+ * author `display` outranks: the flex above drew every closed panel open,
196
+ * under a trigger that said it was collapsed.
197
+ */
198
+ .crewlet-disclosure__panel[hidden] {
199
+ display: none;
200
+ }
201
+
166
202
  /* ---- Sizes and variants ------------------------------------------------ */
167
203
 
168
204
  /*
@@ -1,14 +1,15 @@
1
- export { DOC_TABS_EDITOR_LABELS, DocTabsEditor } from '../chunk-O2KT7HBD.js';
1
+ export { DOC_TABS_EDITOR_LABELS, DocTabsEditor } from '../chunk-5OMV75GE.js';
2
2
  import '../chunk-XJ2QEBMM.js';
3
- import '../chunk-TMM32U7D.js';
4
- import '../chunk-OMV5W53A.js';
5
- import '../chunk-XANKR3EP.js';
3
+ import '../chunk-FXQLNETQ.js';
6
4
  import '../chunk-XCUUI7E7.js';
7
5
  import '../chunk-PQADV6P6.js';
8
- import '../chunk-OG6CL3EB.js';
6
+ import '../chunk-RSAQOKH3.js';
7
+ import '../chunk-TKS7FTTO.js';
8
+ import '../chunk-HD4QJ2SI.js';
9
+ import '../chunk-EA23JG6R.js';
10
+ import '../chunk-OMV5W53A.js';
9
11
  import '../chunk-H5XTJ7GJ.js';
10
- import '../chunk-LACA4JGC.js';
12
+ import '../chunk-2BQYODY3.js';
11
13
  import '../chunk-NUZHC6MM.js';
12
- import '../chunk-RSAQOKH3.js';
13
14
  import '../chunk-BZFWDIV6.js';
14
15
  import '../chunk-ODEQTPFM.js';