@crewlethq/ui 0.54.1 → 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 (320) hide show
  1. package/README.md +90 -7
  2. package/dist/Accordion/index.js +2 -2
  3. package/dist/AgentHandoffPanel/index.js +13 -8
  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 +4 -4
  13. package/dist/ArtifactBar/ArtifactBar.d.ts +13 -2
  14. package/dist/ArtifactBar/index.js +7 -6
  15. package/dist/{ArtifactBar-UMZCTARR.css → ArtifactBar-LEBMR35Y.css} +19 -1
  16. package/dist/ArtifactCard/index.js +5 -5
  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 +8 -7
  24. package/dist/Breadcrumb/index.js +1 -1
  25. package/dist/Button/index.js +2 -1
  26. package/dist/{Button-UWKBTKYD.css → Button-VXJ7M5XF.css} +9 -32
  27. package/dist/Canvas/index.js +4 -3
  28. package/dist/CanvasBoard/index.js +6 -5
  29. package/dist/CanvasToolbar/index.js +5 -4
  30. package/dist/ChangeList/ChangeList.d.ts +114 -0
  31. package/dist/ChangeList/index.d.ts +3 -0
  32. package/dist/ChangeList/index.js +10 -0
  33. package/dist/ChangeList-CB2DLR5S.css +151 -0
  34. package/dist/ChatThread/ChatThread.d.ts +53 -0
  35. package/dist/ChatThread/index.d.ts +3 -0
  36. package/dist/ChatThread/index.js +6 -0
  37. package/dist/ChatThread-52KMDXHB.css +58 -0
  38. package/dist/Checkbox/index.js +3 -3
  39. package/dist/CodeBlock/index.js +5 -4
  40. package/dist/ColorField/index.js +3 -3
  41. package/dist/ColorSwatch/index.js +5 -4
  42. package/dist/Combobox/index.js +3 -3
  43. package/dist/CommandPalette/index.js +6 -5
  44. package/dist/CommentThread/index.js +8 -6
  45. package/dist/Composer/Composer.d.ts +39 -2
  46. package/dist/Composer/index.js +4 -3
  47. package/dist/Composer-JSGTOW3F.css +192 -0
  48. package/dist/ConfirmField/index.js +3 -3
  49. package/dist/ConflictNote/index.js +3 -2
  50. package/dist/ContrastHelp/index.js +2 -2
  51. package/dist/Copyable/index.js +4 -3
  52. package/dist/DataGrid/driving.d.ts +48 -0
  53. package/dist/DataGrid/index.d.ts +2 -0
  54. package/dist/DataGrid/index.js +6 -5
  55. package/dist/DataTable/index.js +8 -7
  56. package/dist/DataView/index.js +12 -11
  57. package/dist/DatasetSource/index.js +2 -2
  58. package/dist/DateTimePicker/index.js +4 -3
  59. package/dist/DiffList/DiffList.d.ts +12 -3
  60. package/dist/DiffList/index.d.ts +1 -1
  61. package/dist/DiffList/index.js +1 -1
  62. package/dist/{DiffList-3EX64AAE.css → DiffList-GE6YBRLJ.css} +53 -0
  63. package/dist/Disclosure/anatomy.d.ts +14 -1
  64. package/dist/Disclosure/index.js +2 -2
  65. package/dist/{Disclosure-P4FH3C35.css → Disclosure-FVMA4RW2.css} +36 -0
  66. package/dist/DocTabsEditor/index.js +6 -5
  67. package/dist/DownloadButton/DownloadButton.d.ts +21 -4
  68. package/dist/DownloadButton/index.d.ts +1 -1
  69. package/dist/DownloadButton/index.js +4 -3
  70. package/dist/EditingStatus/index.js +2 -2
  71. package/dist/{Editor-FEKMRFBK.js → Editor-X2J47LPD.js} +5 -4
  72. package/dist/EntityList/EntityList.d.ts +37 -0
  73. package/dist/EntityList/index.d.ts +3 -0
  74. package/dist/EntityList/index.js +10 -0
  75. package/dist/EntityList-XIICECVC.css +55 -0
  76. package/dist/ErrorBoundary/index.js +3 -2
  77. package/dist/FileDrop/index.js +3 -2
  78. package/dist/FollowBanner/index.js +3 -2
  79. package/dist/HuePicker/index.js +7 -6
  80. package/dist/IconButton/IconButton.d.ts +6 -1
  81. package/dist/IconButton/index.js +1 -1
  82. package/dist/{IconButton-K24JQHLF.css → IconButton-6WA7UEBJ.css} +44 -21
  83. package/dist/IconTile/IconTile.d.ts +8 -2
  84. package/dist/IconTile/index.js +1 -1
  85. package/dist/{IconTile-4GNWTLAW.css → IconTile-G52XZVR4.css} +3 -0
  86. package/dist/InlineEditor/index.js +5 -4
  87. package/dist/Input/index.js +2 -2
  88. package/dist/LinkInterstitial/index.js +5 -4
  89. package/dist/ListInput/index.js +5 -4
  90. package/dist/LogoSlot/index.js +4 -3
  91. package/dist/Markdown/grammar.d.ts +1 -1
  92. package/dist/MarkdownEditor/index.js +7 -6
  93. package/dist/Menu/index.js +4 -3
  94. package/dist/MergeConflicts/index.js +7 -6
  95. package/dist/MessageBubble/MessageBubble.d.ts +34 -0
  96. package/dist/MessageBubble/index.d.ts +3 -0
  97. package/dist/MessageBubble/index.js +2 -0
  98. package/dist/MessageBubble-GKO6X3QG.css +71 -0
  99. package/dist/Modal/index.js +4 -3
  100. package/dist/OpenInAppCard/OpenInAppCard.d.ts +44 -0
  101. package/dist/OpenInAppCard/index.d.ts +3 -0
  102. package/dist/OpenInAppCard/index.js +15 -0
  103. package/dist/OpenInAppCard-CKHCK7DO.css +24 -0
  104. package/dist/OrgTable/index.js +3 -3
  105. package/dist/PeekRail/PeekHost.d.ts +90 -0
  106. package/dist/PeekRail/PeekRail.d.ts +83 -0
  107. package/dist/PeekRail/activation.d.ts +30 -0
  108. package/dist/PeekRail/index.d.ts +8 -0
  109. package/dist/PeekRail/index.js +8 -0
  110. package/dist/PeekRail-4L5YUQMW.css +95 -0
  111. package/dist/PeopleRail/index.js +4 -3
  112. package/dist/PinTile/index.js +2 -2
  113. package/dist/PresenterView/index.js +5 -4
  114. package/dist/PrincipalPicker/index.js +4 -4
  115. package/dist/ProposalCard/ProposalCard.d.ts +134 -0
  116. package/dist/ProposalCard/index.d.ts +3 -0
  117. package/dist/ProposalCard/index.js +17 -0
  118. package/dist/ProposalCard-HLB3FNLA.css +19 -0
  119. package/dist/ReceiptStrip/ReceiptStrip.d.ts +66 -0
  120. package/dist/ReceiptStrip/index.d.ts +3 -0
  121. package/dist/ReceiptStrip/index.js +5 -0
  122. package/dist/ReceiptStrip-IIRKRTBG.css +93 -0
  123. package/dist/RefusalCard/RefusalCard.d.ts +34 -0
  124. package/dist/RefusalCard/index.d.ts +3 -0
  125. package/dist/RefusalCard/index.js +10 -0
  126. package/dist/RefusalCard-UM67F5HB.css +8 -0
  127. package/dist/RelativeTime/clock.d.ts +0 -6
  128. package/dist/RelativeTime/index.js +1 -1
  129. package/dist/ResizeHandle-2UNSZ4ZQ.css +59 -0
  130. package/dist/ResultTableCard/ResultTableCard.d.ts +64 -0
  131. package/dist/ResultTableCard/index.d.ts +3 -0
  132. package/dist/ResultTableCard/index.js +16 -0
  133. package/dist/ResultTableCard-HZRUDNTX.css +40 -0
  134. package/dist/ReviewList/index.js +2 -2
  135. package/dist/RichEditor/codec.d.ts +1 -1
  136. package/dist/RichEditor/index.js +3 -2
  137. package/dist/RichEditor/roundtrip.d.ts +1 -1
  138. package/dist/RunChip/RunChip.d.ts +53 -0
  139. package/dist/RunChip/index.d.ts +3 -0
  140. package/dist/RunChip/index.js +10 -0
  141. package/dist/RunChip-I2S4VZ3R.css +43 -0
  142. package/dist/SandboxedFrame/index.js +3 -2
  143. package/dist/SegmentedControl/index.js +6 -5
  144. package/dist/SelectionBar/index.js +3 -2
  145. package/dist/SendButton/SendButton.d.ts +38 -0
  146. package/dist/SendButton/index.d.ts +2 -0
  147. package/dist/SendButton/index.js +4 -0
  148. package/dist/SetupWizard/index.js +5 -4
  149. package/dist/ShareDialog/index.js +7 -6
  150. package/dist/SheetColumnEditor/index.js +10 -9
  151. package/dist/SheetGrid/index.js +6 -5
  152. package/dist/SidePanel/SidePanel.d.ts +137 -0
  153. package/dist/SidePanel/SidePanelBase.d.ts +59 -0
  154. package/dist/SidePanel/index.d.ts +5 -0
  155. package/dist/SidePanel/index.js +11 -0
  156. package/dist/SidePanel-ERBUIELD.css +235 -0
  157. package/dist/SlideCompare/index.js +3 -2
  158. package/dist/SlideFilmstrip/index.js +5 -4
  159. package/dist/SlideNav/index.js +2 -2
  160. package/dist/Spinner/Spinner.d.ts +35 -0
  161. package/dist/Spinner/index.d.ts +3 -0
  162. package/dist/Spinner/index.js +2 -0
  163. package/dist/Spinner-XZ2TVYE5.css +46 -0
  164. package/dist/StatusCard/StatusCard.d.ts +59 -0
  165. package/dist/StatusCard/index.d.ts +3 -0
  166. package/dist/StatusCard/index.js +9 -0
  167. package/dist/StatusCard-6RPEE6UU.css +62 -0
  168. package/dist/StepList-A4YVU4JI.css +119 -0
  169. package/dist/Stepper/StepList.d.ts +72 -0
  170. package/dist/Stepper/index.d.ts +3 -0
  171. package/dist/Stepper/index.js +2 -1
  172. package/dist/SuggestionRow/SuggestionRow.d.ts +45 -0
  173. package/dist/SuggestionRow/index.d.ts +3 -0
  174. package/dist/SuggestionRow/index.js +3 -0
  175. package/dist/SuggestionRow-OKBGNHSS.css +102 -0
  176. package/dist/Switcher/index.js +6 -5
  177. package/dist/Table/Table.d.ts +23 -2
  178. package/dist/Table/index.d.ts +1 -1
  179. package/dist/Table/index.js +1 -1
  180. package/dist/{Table-TGCS4C3F.css → Table-RUYMMWXT.css} +49 -0
  181. package/dist/TableCells/index.js +2 -2
  182. package/dist/Tabs/index.js +5 -4
  183. package/dist/TagsInput/index.js +3 -3
  184. package/dist/ThemeGallery/index.js +2 -2
  185. package/dist/ThemeSwitcher/index.js +7 -6
  186. package/dist/ThemeToggle/index.js +2 -2
  187. package/dist/TimeRangePicker/TimeRangePicker.d.ts +121 -0
  188. package/dist/TimeRangePicker/index.d.ts +2 -0
  189. package/dist/TimeRangePicker/index.js +23 -0
  190. package/dist/TimeWindowPicker/index.js +5 -4
  191. package/dist/Toaster/Toaster.d.ts +27 -3
  192. package/dist/Toaster/index.d.ts +2 -2
  193. package/dist/Toaster/index.js +1 -1
  194. package/dist/{Toaster-C6BQ7L6I.css → Toaster-MX7TBMC3.css} +32 -11
  195. package/dist/TreeCanvas/index.js +5 -4
  196. package/dist/TreeGrid/index.js +2 -2
  197. package/dist/VersionCompare/index.js +7 -6
  198. package/dist/VersionTimeline/index.js +4 -3
  199. package/dist/WidgetFrame/index.js +2 -2
  200. package/dist/{chunk-SS4XCUUJ.js → chunk-272Y3YMV.js} +3 -3
  201. package/dist/{chunk-LACA4JGC.js → chunk-2BQYODY3.js} +1 -1
  202. package/dist/{chunk-XS2FJVMT.js → chunk-2TTFDRR3.js} +2 -2
  203. package/dist/{chunk-4BJK7FE5.js → chunk-3EYSYEXP.js} +1 -1
  204. package/dist/chunk-3LI4TRUR.js +22 -0
  205. package/dist/{chunk-5WYPSVRX.js → chunk-3NQS6KYG.js} +1 -1
  206. package/dist/{chunk-V2N3BMOT.js → chunk-45KMH3E3.js} +11 -4
  207. package/dist/{chunk-2GIWL7IS.js → chunk-4CBGIRVU.js} +1 -1
  208. package/dist/{chunk-3QSKDZR5.js → chunk-4OINEWR4.js} +1 -1
  209. package/dist/{chunk-EZ43L6T7.js → chunk-56P72ZBE.js} +4 -4
  210. package/dist/{chunk-J24Q4HTD.js → chunk-5NT6OIPP.js} +13 -3
  211. package/dist/{chunk-FNPZ3LLQ.js → chunk-5OMV75GE.js} +3 -3
  212. package/dist/{chunk-6RMZH7P7.js → chunk-672GLRBU.js} +2 -2
  213. package/dist/{chunk-GPZXBJFU.js → chunk-67F2AM4R.js} +2 -2
  214. package/dist/{chunk-NQCY44B3.js → chunk-67MW366X.js} +2 -2
  215. package/dist/{chunk-SSHDQBHR.js → chunk-6KLK7E76.js} +2 -2
  216. package/dist/{chunk-ZFM5L7M4.js → chunk-6NJW5KSX.js} +2 -2
  217. package/dist/{chunk-A4GFEMVI.js → chunk-6T6V5565.js} +1 -1
  218. package/dist/{chunk-THDGBD6Y.js → chunk-AKFHMLEX.js} +1 -1
  219. package/dist/{chunk-6FVGSWLS.js → chunk-AWSFK2IK.js} +1 -1
  220. package/dist/{chunk-HQJ24WPM.js → chunk-AZ5BKSGV.js} +1 -1
  221. package/dist/chunk-BLPT6GHV.js +31 -0
  222. package/dist/chunk-C3FX7ZSU.js +30 -0
  223. package/dist/{chunk-LDGQIDIZ.js → chunk-CGT4R7LW.js} +64 -2
  224. package/dist/{chunk-WXWMHYKW.js → chunk-D5OSP3KI.js} +2 -2
  225. package/dist/{chunk-CQEYF3UW.js → chunk-DOPPU6TZ.js} +3 -3
  226. package/dist/{chunk-AC22RZKC.js → chunk-DRT4L4WC.js} +17 -5
  227. package/dist/chunk-E4DZOE55.js +162 -0
  228. package/dist/chunk-EA23JG6R.js +9 -0
  229. package/dist/{chunk-J53T2QAH.js → chunk-EBG3V4MK.js} +6 -6
  230. package/dist/{chunk-7PE56HHD.js → chunk-EDNZHW4K.js} +57 -7
  231. package/dist/{chunk-E6HXFFWO.js → chunk-EGL24VY5.js} +2 -2
  232. package/dist/{chunk-7SHAFLEX.js → chunk-ES4HR34Y.js} +2 -2
  233. package/dist/chunk-EVWTLFKI.js +102 -0
  234. package/dist/chunk-FA44M2YT.js +25 -0
  235. package/dist/{chunk-VWYT3GVV.js → chunk-FLTMDSC3.js} +1 -1
  236. package/dist/{chunk-LJHH4WWB.js → chunk-FXQLNETQ.js} +1 -1
  237. package/dist/{chunk-3NXWH5NC.js → chunk-GCASX3FD.js} +4 -4
  238. package/dist/{chunk-OGXHZHRX.js → chunk-GG4QZWMQ.js} +2 -2
  239. package/dist/{chunk-XP7EXNKF.js → chunk-GPW4M4OI.js} +2 -2
  240. package/dist/chunk-GZMEWWXW.js +78 -0
  241. package/dist/{chunk-OG6CL3EB.js → chunk-HD4QJ2SI.js} +3 -2
  242. package/dist/{chunk-SYY26XBX.js → chunk-HGCDJOEF.js} +2 -2
  243. package/dist/chunk-HGYHWWA5.js +54 -0
  244. package/dist/{chunk-GRKGLZFM.js → chunk-HL4CPLEK.js} +7 -7
  245. package/dist/{chunk-BEHFTRMZ.js → chunk-HNK43Z3P.js} +23 -5
  246. package/dist/{chunk-UO7JZVCO.js → chunk-HVEDVKXL.js} +1 -1
  247. package/dist/{chunk-ILFEWRLG.js → chunk-I7VG6RQE.js} +1 -1
  248. package/dist/{chunk-3RCHEFIL.js → chunk-ICJRP6QW.js} +2 -2
  249. package/dist/{chunk-CUL5XV6O.js → chunk-IDQBSMMZ.js} +2 -2
  250. package/dist/chunk-JILNCBBS.js +27 -0
  251. package/dist/{chunk-5O72FSOK.js → chunk-JJ3NOBJ6.js} +5 -5
  252. package/dist/chunk-JLRXCKTS.js +97 -0
  253. package/dist/{chunk-OJCVVCAZ.js → chunk-JMMS2PQU.js} +1 -1
  254. package/dist/{chunk-SXBJMBSV.js → chunk-JS2TRHBF.js} +2 -2
  255. package/dist/{chunk-3CZ7XAVY.js → chunk-KS7YIJ4S.js} +10 -6
  256. package/dist/{chunk-VWNC2L6W.js → chunk-KW6KCVM7.js} +1 -1
  257. package/dist/{chunk-X4NIE7CI.js → chunk-LQ6AGUDL.js} +2 -2
  258. package/dist/chunk-LXYSWQNE.js +214 -0
  259. package/dist/{chunk-6VQA2LZC.js → chunk-MYX4XABB.js} +3 -3
  260. package/dist/{chunk-PM3JVNRY.js → chunk-N3ISZVLK.js} +1 -1
  261. package/dist/chunk-NEHSV55H.js +119 -0
  262. package/dist/{chunk-RQI43UJ7.js → chunk-NHJQXDHA.js} +1 -1
  263. package/dist/{chunk-VVOPDWLX.js → chunk-NI7WUPH3.js} +2 -2
  264. package/dist/{chunk-OCRVY42T.js → chunk-NK3D66PB.js} +1 -1
  265. package/dist/{chunk-RHPBTE3F.js → chunk-NQGZRMUG.js} +1 -1
  266. package/dist/chunk-NVZCANJ5.js +3 -0
  267. package/dist/{chunk-RRO7UEYU.js → chunk-OHBXOEP3.js} +1 -1
  268. package/dist/{chunk-RFPCHMSX.js → chunk-OHG7762N.js} +1 -1
  269. package/dist/{chunk-OBUQVGEG.js → chunk-OJ2QULVH.js} +1 -1
  270. package/dist/{chunk-PGYIDNGG.js → chunk-OOZ5AGPS.js} +4 -4
  271. package/dist/{chunk-34RMTXDZ.js → chunk-OYAXKHVW.js} +1 -1
  272. package/dist/{chunk-WQQ5T5SA.js → chunk-OZIBNFLO.js} +1 -1
  273. package/dist/{chunk-DFK5EQTU.js → chunk-PDTEPN4D.js} +1 -1
  274. package/dist/chunk-PIYJNCN7.js +124 -0
  275. package/dist/{chunk-VP2ODUCC.js → chunk-Q6R6EUQ4.js} +3 -3
  276. package/dist/chunk-QYEOGGVS.js +161 -0
  277. package/dist/{chunk-YCC2S7DF.js → chunk-QZ4B72FP.js} +2 -2
  278. package/dist/chunk-RV2FGESF.js +98 -0
  279. package/dist/{chunk-SEPSXOGJ.js → chunk-S5C64PTT.js} +1 -1
  280. package/dist/chunk-SDSBVVLL.js +45 -0
  281. package/dist/{chunk-ZNOXQACX.js → chunk-T4D7RZNI.js} +2 -2
  282. package/dist/{chunk-G5SUSCWL.js → chunk-TA72CURM.js} +1 -1
  283. package/dist/{chunk-WXOYHVWG.js → chunk-TD3UHDFY.js} +4 -4
  284. package/dist/{chunk-VN47PYUF.js → chunk-TDQZ4LB5.js} +8 -6
  285. package/dist/chunk-TFGCNBWP.js +64 -0
  286. package/dist/{chunk-TMM32U7D.js → chunk-TKS7FTTO.js} +2 -2
  287. package/dist/{chunk-C6Z3MLSA.js → chunk-U5PJSGHG.js} +1 -1
  288. package/dist/{chunk-7CGPPAYR.js → chunk-UV4LOQ3E.js} +1 -1
  289. package/dist/{chunk-34ANLQW2.js → chunk-UVYGMCJ4.js} +173 -8
  290. package/dist/{chunk-ON2E46DX.js → chunk-VRNUKH2W.js} +1 -1
  291. package/dist/{chunk-XX2VQE55.js → chunk-WBRC3MNE.js} +1 -1
  292. package/dist/chunk-WDIVALLP.js +51 -0
  293. package/dist/{chunk-SQ4JFHO7.js → chunk-WOW5SCEK.js} +1 -1
  294. package/dist/chunk-XODESBSR.js +250 -0
  295. package/dist/chunk-XQI2OUV4.js +59 -0
  296. package/dist/{chunk-EJWPYEG4.js → chunk-XRZGGB6I.js} +1 -1
  297. package/dist/{chunk-34C7NYIQ.js → chunk-Y73BQL74.js} +1 -1
  298. package/dist/{chunk-KIRQZG3G.js → chunk-YCGZK2E4.js} +1 -1
  299. package/dist/{chunk-CAVWDJF4.js → chunk-YCZ2FBKA.js} +1 -1
  300. package/dist/{chunk-D7Q5MQRF.js → chunk-YEURM24I.js} +2 -2
  301. package/dist/{chunk-IW55G7XG.js → chunk-YNRKVY7X.js} +11 -1
  302. package/dist/chunk-YY445YFQ.js +55 -0
  303. package/dist/{chunk-LFHCXZO5.js → chunk-Z3GDMNMU.js} +3 -3
  304. package/dist/{chunk-NMR7AJSB.js → chunk-Z7PJF6F3.js} +2 -2
  305. package/dist/{chunk-U3LNU4B2.js → chunk-ZH4MJM73.js} +1 -1
  306. package/dist/generated/index.d.ts +17 -0
  307. package/dist/generated/index.js +138 -119
  308. package/dist/index.js +138 -119
  309. package/dist/styles.css +1877 -218
  310. package/dist/utils/index.js +1 -1
  311. package/dist/utils/useDownload.d.ts +6 -0
  312. package/package.json +3 -3
  313. package/dist/ArtifactPanel-KKUUIPEU.css +0 -159
  314. package/dist/Composer-TXULCPPV.css +0 -99
  315. package/dist/chunk-FZVJDJFN.js +0 -54
  316. package/dist/chunk-IXJHTFXG.js +0 -17
  317. package/dist/chunk-NBDN5JZV.js +0 -123
  318. package/dist/chunk-UJ4VVK7R.js +0 -48
  319. package/dist/{chunk-UTESMBPL.js → chunk-ESUZ27TS.js} +1 -1
  320. /package/dist/{chunk-55MPFB2U.js → chunk-EWTPXRRM.js} +0 -0
@@ -26,6 +26,25 @@
26
26
  .crewlet-app-shell {
27
27
  --crewlet-app-shell-rail: var(--size-shell-rail);
28
28
  --crewlet-app-shell-topbar: var(--size-shell-topbar);
29
+ /* What stands on the frame to the sheet's left: the rail's column, or
30
+ nothing where there is no rail or the rail is a drawer. The aside's cap
31
+ below subtracts it, so it is one name for both. */
32
+ --crewlet-app-shell-beside: var(--crewlet-app-shell-rail);
33
+ /* THE ASIDE'S TRACK, while it is a column: the panel's width and the inset
34
+ it is held off the window's edge by, capped so the sheet keeps the
35
+ host's floor (`--crewlet-app-shell-aside-reserve`, the page's sheet with
36
+ its own inset and hairlines). The host publishes both widths on this
37
+ element; with no reserve the panel takes the width it was given. */
38
+ --crewlet-app-shell-aside-track: calc(
39
+ min(
40
+ var(--crewlet-app-shell-aside),
41
+ max(
42
+ 0px,
43
+ 100% - var(--crewlet-app-shell-beside) - var(--crewlet-app-shell-aside-reserve, 0px) - var(--size-shell-inset)
44
+ )
45
+ ) +
46
+ var(--size-shell-inset)
47
+ );
29
48
  /* Where the drawer's veil sits while it is open. The shell replaces it with
30
49
  the surface's own place in the layer band; this default only has to clear
31
50
  the page chrome for the moment before that lands. */
@@ -56,10 +75,22 @@
56
75
  * beaten the narrow block's one.
57
76
  */
58
77
  .crewlet-app-shell--no-rail {
78
+ --crewlet-app-shell-beside: 0px;
59
79
  grid-template-columns: minmax(0, 1fr);
60
80
  padding-left: var(--size-shell-inset);
61
81
  }
62
82
 
83
+ /* THE ASIDE AS A COLUMN: a third track, mirroring the rail. The page's sheet
84
+ keeps its column and is only narrower, so nothing under the bar moves but
85
+ its end edge. */
86
+ .crewlet-app-shell[data-aside='column'] {
87
+ grid-template-columns: var(--crewlet-app-shell-rail) minmax(0, 1fr) var(--crewlet-app-shell-aside-track);
88
+ }
89
+
90
+ .crewlet-app-shell--no-rail[data-aside='column'] {
91
+ grid-template-columns: minmax(0, 1fr) var(--crewlet-app-shell-aside-track);
92
+ }
93
+
63
94
  /* The skip link, drawn only while it holds focus, over everything. */
64
95
  .crewlet-app-shell__skip {
65
96
  position: fixed;
@@ -590,8 +621,22 @@
590
621
  * and a short one does not shift every element sideways by the scrollbar's
591
622
  * width, which reads as the page jumping on each move.
592
623
  */
593
- .crewlet-app-shell__main {
624
+ /*
625
+ * THE BODY: the row under the bar that the scroller and a peek column share.
626
+ * It takes the sheet's remaining height, and the scroller takes the row's
627
+ * remaining width, so a sheet with no peek draws exactly as it did before the
628
+ * row existed.
629
+ */
630
+ .crewlet-app-shell__body {
631
+ display: flex;
594
632
  flex: 1 1 auto;
633
+ min-width: 0;
634
+ min-height: 0;
635
+ }
636
+
637
+ .crewlet-app-shell__main {
638
+ flex: 1 1 0%;
639
+ min-width: 0;
595
640
  min-height: 0;
596
641
  overflow-y: auto;
597
642
  overflow-x: hidden;
@@ -690,11 +735,131 @@
690
735
  background: var(--color-surface-scrim);
691
736
  }
692
737
 
738
+ /*
739
+ * THE ASIDE: a second sheet on the frame, to the right of the page's, the
740
+ * same ground, hairline and corner, held off the window's top, right and
741
+ * bottom by the inset. The seam between the two sheets is the page sheet's
742
+ * own end inset, and the grip stands in it (`ResizeHandle`, outside the
743
+ * sheet that clips). The sheet clips what it holds to its corner, so the
744
+ * panel inside runs square to its edges.
745
+ */
746
+ .crewlet-app-shell__aside {
747
+ position: relative;
748
+ display: flex;
749
+ flex-direction: column;
750
+ grid-column: -2 / -1;
751
+ grid-row: 1;
752
+ min-width: 0;
753
+ min-height: 0;
754
+ margin: var(--size-shell-inset) var(--size-shell-inset) var(--size-shell-inset) 0;
755
+ }
756
+
757
+ /* The grip stands in the seam and over the sheet's hairline, which is the
758
+ edge it moves. */
759
+ .crewlet-app-shell__aside > .crewlet-resize-handle--left {
760
+ left: calc((var(--crewlet-resize-handle-width) + 1px) * -1);
761
+ width: calc(var(--crewlet-resize-handle-width) + 1px);
762
+ }
763
+
764
+ .crewlet-app-shell__aside-sheet {
765
+ display: flex;
766
+ flex: 1 1 auto;
767
+ flex-direction: column;
768
+ min-width: 0;
769
+ min-height: 0;
770
+ border: 1px solid var(--color-border-default);
771
+ border-radius: var(--radius-sheet);
772
+ background: var(--color-surface-background);
773
+ overflow: hidden;
774
+ }
775
+
776
+ /* A dialog takes focus on itself only as the stack's last resort, so its
777
+ own ring would draw round the whole panel; its content draws the focus.
778
+ Transparent rather than none, so forced colours still draw one. */
779
+ .crewlet-app-shell__aside:focus {
780
+ outline: 2px solid transparent;
781
+ }
782
+
783
+ /*
784
+ * THE OVERLAY: over the page's end edge, lifted off it, behind a veil. It
785
+ * keeps the column's corner and inset, so the panel is the same sheet in
786
+ * both shapes and only its ground changes, and it never takes the whole
787
+ * window: a strip of the page stays in view to say what it is over.
788
+ */
789
+ .crewlet-app-shell__aside[data-shape='overlay'] {
790
+ position: fixed;
791
+ top: 0;
792
+ right: 0;
793
+ bottom: 0;
794
+ z-index: var(--z-index-overlay);
795
+ width: min(var(--crewlet-app-shell-aside), calc(100vw - var(--spacing-10) - var(--size-shell-inset) * 2));
796
+ }
797
+
798
+ .crewlet-app-shell__aside[data-shape='overlay'] > .crewlet-app-shell__aside-sheet {
799
+ box-shadow: var(--shadow-xl);
800
+ }
801
+
802
+ /* THE SHEET: the whole window on a phone, its inset, corner and hairline
803
+ collapsed to nothing, as the page's sheet is under the shell step. */
804
+ .crewlet-app-shell__aside[data-shape='sheet'] {
805
+ position: fixed;
806
+ inset: 0;
807
+ z-index: var(--z-index-overlay);
808
+ margin: 0;
809
+ }
810
+
811
+ .crewlet-app-shell__aside[data-shape='sheet'] > .crewlet-app-shell__aside-sheet {
812
+ border-width: 0;
813
+ border-radius: 0;
814
+ }
815
+
816
+ /* What a modal aside sits on: the dialog's ground, the application faded
817
+ back into its own frame, rather than the rail drawer's darker scrim. */
818
+ .crewlet-app-shell__aside-veil {
819
+ background: var(--color-surface-veil);
820
+ }
821
+
822
+ /*
823
+ * AN ENTRANCE, never an exit: the panel arrives from the edge it stands on,
824
+ * and leaves at once when it is closed, so a close is never a wait. The page
825
+ * beside a column reflows at once, because a grid track that appears has no
826
+ * width to start from.
827
+ */
828
+ @keyframes crewlet-app-shell-aside-in {
829
+ from {
830
+ opacity: 0;
831
+ transform: translateX(var(--spacing-4));
832
+ }
833
+ }
834
+
835
+ @keyframes crewlet-app-shell-aside-slide {
836
+ from {
837
+ transform: translateX(calc(100% + var(--size-shell-inset)));
838
+ }
839
+ }
840
+
841
+ .crewlet-app-shell__aside[data-shape='column'] > .crewlet-app-shell__aside-sheet {
842
+ animation: crewlet-app-shell-aside-in var(--motion-duration-slow) var(--motion-easing-emphasized);
843
+ }
844
+
845
+ .crewlet-app-shell__aside[data-shape='overlay'],
846
+ .crewlet-app-shell__aside[data-shape='sheet'] {
847
+ animation: crewlet-app-shell-aside-slide var(--motion-duration-slow) var(--motion-easing-emphasized);
848
+ }
849
+
693
850
  @media (width < 1024px) {
694
851
  .crewlet-app-shell {
852
+ --crewlet-app-shell-beside: 0px;
695
853
  grid-template-columns: minmax(0, 1fr);
696
854
  }
697
855
 
856
+ /* The host decides the aside's shape, so a column it asks for under the
857
+ step is still a column; the rail is a drawer here and takes no track. */
858
+ .crewlet-app-shell[data-aside='column'],
859
+ .crewlet-app-shell--no-rail[data-aside='column'] {
860
+ grid-template-columns: minmax(0, 1fr) var(--crewlet-app-shell-aside-track);
861
+ }
862
+
698
863
  .crewlet-app-shell--no-rail {
699
864
  padding-left: 0;
700
865
  }
@@ -785,6 +950,12 @@
785
950
  .crewlet-app-shell__rail-status-mark--action {
786
951
  transition: none;
787
952
  }
953
+
954
+ .crewlet-app-shell__aside[data-shape='column'] > .crewlet-app-shell__aside-sheet,
955
+ .crewlet-app-shell__aside[data-shape='overlay'],
956
+ .crewlet-app-shell__aside[data-shape='sheet'] {
957
+ animation: none;
958
+ }
788
959
  }
789
960
 
790
961
  /* ── the account row ───────────────────────────────────────────────────── */
@@ -1,5 +1,5 @@
1
- export { ArrangeFrame, useGridResize } from '../chunk-VWYT3GVV.js';
1
+ export { ArrangeFrame, useGridResize } from '../chunk-FLTMDSC3.js';
2
2
  import '../chunk-RSAQOKH3.js';
3
- import '../chunk-LACA4JGC.js';
3
+ import '../chunk-2BQYODY3.js';
4
4
  import '../chunk-BZFWDIV6.js';
5
5
  import '../chunk-ODEQTPFM.js';
@@ -1,13 +1,13 @@
1
- export { ArrangeList, DEFAULT_ARRANGE_LABELS } from '../chunk-SSHDQBHR.js';
1
+ export { ArrangeList, DEFAULT_ARRANGE_LABELS } from '../chunk-6KLK7E76.js';
2
2
  import '../chunk-A722MUNR.js';
3
3
  import '../chunk-XJ2QEBMM.js';
4
- import '../chunk-RQI43UJ7.js';
5
- import '../chunk-LJHH4WWB.js';
4
+ import '../chunk-NHJQXDHA.js';
5
+ import '../chunk-FXQLNETQ.js';
6
6
  import '../chunk-XCUUI7E7.js';
7
7
  import '../chunk-PQADV6P6.js';
8
8
  import '../chunk-RSAQOKH3.js';
9
9
  import '../chunk-H5XTJ7GJ.js';
10
- import '../chunk-LACA4JGC.js';
10
+ import '../chunk-2BQYODY3.js';
11
11
  import '../chunk-NUZHC6MM.js';
12
12
  import '../chunk-BZFWDIV6.js';
13
13
  import '../chunk-ODEQTPFM.js';
@@ -111,6 +111,16 @@ export interface ArtifactBarProps {
111
111
  tools?: readonly ArtifactBarTool[] | undefined;
112
112
  /** The More menu's own rows. The tools that fold on a narrow bar are added above them. */
113
113
  menu?: readonly MenuEntry[] | undefined;
114
+ /**
115
+ * After everything, More included: a control the host ends every page head
116
+ * with, such as an assistant's Ask button, so an open artifact's own bar
117
+ * keeps it where every other page's bar does. It is the host's own element
118
+ * and is never folded into More, so it stays in reach at every width; a
119
+ * control that should draw smaller on a phone does so itself. It stands a
120
+ * step further from the bar's own tools than they stand from each other,
121
+ * never wraps, and the title gives way to it.
122
+ */
123
+ end?: ReactNode;
114
124
  /** `header` stands as the page's banner; `div` sits inside a host's own. */
115
125
  as?: 'header' | 'div' | undefined;
116
126
  /** The title's heading level: 1 where the bar is the page's own head. */
@@ -128,7 +138,8 @@ export interface ArtifactBarProps {
128
138
  * artifact is (its glyph and its title, renamed in place by whoever may), the
129
139
  * version on show, then the kind's own views in the middle, and at the end
130
140
  * who else is here, the kind's tools, the panels every artifact has, Share
131
- * and More. Everything past the title opens on demand: a panel, a menu or a
141
+ * and More, and last the host's own control (`end`), as `start` is first.
142
+ * Everything past the title opens on demand: a panel, a menu or a
132
143
  * dialog, never a second row of chrome.
133
144
  *
134
145
  * IT FOLDS BY ITS OWN WIDTH, a container query rather than the window's, since
@@ -140,7 +151,7 @@ export interface ArtifactBarProps {
140
151
  * the stylesheet shows one, so no control is ever in two places a reader can
141
152
  * see at once and nothing is measured in script.
142
153
  */
143
- export declare function ArtifactBar({ title, kind, icon, kindLabel, back, start, onRename, renaming, onRenamingChange, version, modes, presence, status, kindTools, tools, menu, as, headingLevel, pending, labels, className, }: ArtifactBarProps): import("react").JSX.Element;
154
+ export declare function ArtifactBar({ title, kind, icon, kindLabel, back, start, onRename, renaming, onRenamingChange, version, modes, presence, status, kindTools, tools, menu, end, as, headingLevel, pending, labels, className, }: ArtifactBarProps): import("react").JSX.Element;
144
155
  export interface ArtifactVersionChipProps {
145
156
  /** The version on show. */
146
157
  version: number;
@@ -1,20 +1,21 @@
1
- export { ARTIFACT_BAR_LABELS, ArtifactBar, ArtifactVersionChip } from '../chunk-VN47PYUF.js';
1
+ export { ARTIFACT_BAR_LABELS, ArtifactBar, ArtifactVersionChip } from '../chunk-TDQZ4LB5.js';
2
2
  import '../chunk-OOC7Q67K.js';
3
3
  import '../chunk-I33UIUZD.js';
4
- import '../chunk-6FVGSWLS.js';
5
- import '../chunk-ILFEWRLG.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-AVL52EME.js';
9
9
  import '../chunk-RSKW25Y5.js';
10
10
  import '../chunk-SMBKXWML.js';
11
11
  import '../chunk-BHHIIK3M.js';
12
- import '../chunk-TMM32U7D.js';
12
+ import '../chunk-TKS7FTTO.js';
13
+ import '../chunk-HD4QJ2SI.js';
14
+ import '../chunk-EA23JG6R.js';
13
15
  import '../chunk-OMV5W53A.js';
14
16
  import '../chunk-2YTOOH3A.js';
15
- import '../chunk-OG6CL3EB.js';
16
17
  import '../chunk-H5XTJ7GJ.js';
17
- import '../chunk-LACA4JGC.js';
18
+ import '../chunk-2BQYODY3.js';
18
19
  import '../chunk-NUZHC6MM.js';
19
20
  import '../chunk-BZFWDIV6.js';
20
21
  import '../chunk-ODEQTPFM.js';
@@ -10,7 +10,7 @@
10
10
  * width the presence stack goes (the People control still counts who is
11
11
  * here), then the labelled tools' words, and under a phone's two panes the
12
12
  * views, the unlabelled tools and the kind's glyph fold away, the first two
13
- * into More.
13
+ * into More. The host's own control at the end (`end`) never folds.
14
14
  */
15
15
 
16
16
  .crewlet-artifact-bar {
@@ -271,6 +271,19 @@
271
271
  display: none;
272
272
  }
273
273
 
274
+ /* THE HOST'S OWN CONTROL ENDS THE ROW (`end`), such as the Ask button every
275
+ page bar ends with: a step further from the bar's own tools than they
276
+ stand from each other, so it reads as the frame's rather than the
277
+ artifact's. It never folds and never wraps; the title gives way to it. */
278
+ .crewlet-artifact-bar__trail {
279
+ display: inline-flex;
280
+ flex: none;
281
+ align-items: center;
282
+ gap: var(--spacing-1);
283
+ margin-inline-start: var(--spacing-1);
284
+ white-space: nowrap;
285
+ }
286
+
274
287
  /* A rule between two groups of tools: the kind's, then every artifact's. */
275
288
  .crewlet-artifact-bar__rule {
276
289
  width: 1px;
@@ -357,6 +370,11 @@
357
370
  flex: none;
358
371
  }
359
372
 
373
+ /* The phone's row is tight, and so is the host's control beside More. */
374
+ .crewlet-artifact-bar__end > .crewlet-artifact-bar__trail {
375
+ margin-inline-start: 0;
376
+ }
377
+
360
378
  .crewlet-artifact-bar__end > .crewlet-artifact-bar__status {
361
379
  display: block;
362
380
  flex: 0 1 auto;
@@ -1,23 +1,23 @@
1
- export { ArtifactCard, ArtifactCardSkeleton, ArtifactPreviewGlyph } from '../chunk-CUL5XV6O.js';
1
+ export { ArtifactCard, ArtifactCardSkeleton, ArtifactPreviewGlyph } from '../chunk-IDQBSMMZ.js';
2
2
  import '../chunk-TEUQWOWZ.js';
3
3
  import '../chunk-CI3VPIJN.js';
4
- import '../chunk-3CZ7XAVY.js';
4
+ import '../chunk-KS7YIJ4S.js';
5
5
  import '../chunk-EUCC37WY.js';
6
6
  import '../chunk-5AQBPHZD.js';
7
7
  import '../chunk-PZKHBB7D.js';
8
8
  import '../chunk-RV6XB5UV.js';
9
9
  import '../chunk-INHXF2CL.js';
10
10
  import '../chunk-AV2DXAEL.js';
11
- import '../chunk-RQI43UJ7.js';
11
+ import '../chunk-NHJQXDHA.js';
12
12
  import '../chunk-BGLKLXL3.js';
13
13
  export { ARTIFACT_KINDS, ArtifactKindGlyph } from '../chunk-RSKW25Y5.js';
14
- import '../chunk-LJHH4WWB.js';
14
+ import '../chunk-FXQLNETQ.js';
15
15
  import '../chunk-XCUUI7E7.js';
16
16
  import '../chunk-BHHIIK3M.js';
17
17
  import '../chunk-PQADV6P6.js';
18
18
  import '../chunk-RSAQOKH3.js';
19
19
  import '../chunk-H5XTJ7GJ.js';
20
- import '../chunk-LACA4JGC.js';
20
+ import '../chunk-2BQYODY3.js';
21
21
  import '../chunk-NUZHC6MM.js';
22
22
  import '../chunk-BZFWDIV6.js';
23
23
  import '../chunk-ODEQTPFM.js';
@@ -1,6 +1,12 @@
1
1
  import { type ArtifactKind } from '../ArtifactKindGlyph/index.js';
2
2
  export interface ArtifactNameCellLabels {
3
- kinds: Record<ArtifactKind, string>;
3
+ /**
4
+ * The word under an artifact's name, per kind. PARTIAL, and merged over the
5
+ * kit's own words, so a consumer that words only the kinds it knows (an
6
+ * application built before a kind was added) still compiles, and a kind it
7
+ * does not word reads in the kit's own word rather than nothing.
8
+ */
9
+ kinds: Partial<Record<ArtifactKind, string>>;
4
10
  pinned: string;
5
11
  /** The word under a folder's name, where an artifact's says its kind. */
6
12
  folder: string;
@@ -1,4 +1,4 @@
1
- export { ArtifactNameCell } from '../chunk-J24Q4HTD.js';
1
+ export { ArtifactNameCell } from '../chunk-5NT6OIPP.js';
2
2
  import '../chunk-RSKW25Y5.js';
3
3
  import '../chunk-BZFWDIV6.js';
4
4
  import '../chunk-ODEQTPFM.js';
@@ -1,4 +1,4 @@
1
- import { type ReactNode, type Ref } from 'react';
1
+ import type { ReactNode, Ref } from 'react';
2
2
  /**
3
3
  * How wide a panel rests beside the artifact: text (facts, a list, a form) or
4
4
  * a table. ONE WIDTH FOR TEXT, so moving from one text panel to another never
@@ -47,21 +47,12 @@ export interface ArtifactPanelProps {
47
47
  * A panel at the artifact's side: its details, its history, its data, who is
48
48
  * here, its settings. One at a time, opened from the bar's controls.
49
49
  *
50
- * A COMPLEMENTARY REGION, NOT A DIALOG. The artifact beside it stays live and
51
- * reachable, so the panel is an `aside` named by its heading and never traps
52
- * focus; the reader moves between the two with Tab as between any two parts
53
- * of a page.
54
- *
55
- * FOCUS IS STILL MANAGED, because a panel opened from a control that is then
56
- * pressed again, or closed from inside, would otherwise leave focus on nothing.
57
- * Opening moves focus to the heading, so a screen reader announces what
58
- * opened; closing with focus inside hands it back to whatever held it before
59
- * (the bar's control, as a rule), and leaves it alone otherwise.
60
- *
61
- * ESCAPE CLOSES IT from anywhere inside, a field included, unless something
62
- * inside answered the press first: a menu or a dialog opened from the panel is
63
- * portalled out of it, and the press that closes one of them never reaches
64
- * this.
50
+ * A PRESET OF `SidePanel`, which carries the region, the focus contract and
51
+ * Escape (see there). What is the artifact's own: two resting widths, the
52
+ * expanded view, the control that toggles it, the head on the row step, and
53
+ * a heading that rings when the keyboard reaches it. It keeps the class names
54
+ * it has always published (`crewlet-artifact-panel__body` and the rest), so a
55
+ * stylesheet written against them keeps matching.
65
56
  */
66
57
  export declare function ArtifactPanel({ title, icon, onClose, size, expanded, onExpandedChange, actions, footer, focusOnOpen, labels, className, children, }: ArtifactPanelProps): import("react").JSX.Element;
67
58
  export interface ArtifactWorkspaceProps {
@@ -88,5 +79,8 @@ export interface ArtifactWorkspaceProps {
88
79
  * artifact's end edge; on a phone it covers the artifact whole. An expanded
89
80
  * panel takes the workspace at every width, with the artifact kept mounted
90
81
  * behind it so a page's state survives the look at its data.
82
+ *
83
+ * A PRESET OF `SidePanelFrame` with no `shape`, which is the frame measuring
84
+ * itself, under the names it has always published.
91
85
  */
92
- export declare function ArtifactWorkspace({ panel, expanded, bodyRef, bodyClassName, bodyLabel, className, children, }: ArtifactWorkspaceProps): import("react").JSX.Element;
86
+ export declare function ArtifactWorkspace(props: ArtifactWorkspaceProps): import("react").JSX.Element;
@@ -1,3 +1,6 @@
1
+ import '../HitArea/HitArea.css';
2
+ import '../AppShell/ResizeHandle.css';
3
+ import '../SidePanel/SidePanel.css';
1
4
  import './ArtifactPanel.css';
2
5
  export { ARTIFACT_PANEL_LABELS, ArtifactPanel, ArtifactWorkspace } from './ArtifactPanel.js';
3
6
  export type { ArtifactPanelLabels, ArtifactPanelProps, ArtifactPanelSize, ArtifactWorkspaceProps, } from './ArtifactPanel.js';
@@ -1,5 +1,11 @@
1
- export { ARTIFACT_PANEL_LABELS, ArtifactPanel, ArtifactWorkspace } from '../chunk-NBDN5JZV.js';
1
+ export { ARTIFACT_PANEL_LABELS, ArtifactPanel, ArtifactWorkspace } from '../chunk-HGYHWWA5.js';
2
+ import '../chunk-XODESBSR.js';
2
3
  import '../chunk-PQADV6P6.js';
3
- import '../chunk-LACA4JGC.js';
4
+ import '../chunk-PIYJNCN7.js';
5
+ import '../chunk-OMV5W53A.js';
6
+ import '../chunk-2YTOOH3A.js';
7
+ import '../chunk-H5XTJ7GJ.js';
8
+ import '../chunk-2BQYODY3.js';
9
+ import '../chunk-NUZHC6MM.js';
4
10
  import '../chunk-BZFWDIV6.js';
5
11
  import '../chunk-ODEQTPFM.js';
@@ -0,0 +1,43 @@
1
+ /*
2
+ * The artifact's presets of the side panel and its frame (`ArtifactPanel`,
3
+ * `ArtifactWorkspace`). SidePanel.css draws them; what is here is only what
4
+ * the artifact sets differently, and the names it has always published.
5
+ *
6
+ * Every rule names BOTH classes, so it outranks the side panel's own rule of
7
+ * one class whichever of the two stylesheets a bundle puts first.
8
+ */
9
+
10
+ /* The workspace answers to its own container name as well as the frame's,
11
+ so a page's `@container crewlet-artifact-workspace` query keeps matching. */
12
+ .crewlet-side-panel-frame.crewlet-artifact-workspace {
13
+ container-name: crewlet-side-panel-frame crewlet-artifact-workspace;
14
+ }
15
+
16
+ .crewlet-side-panel.crewlet-artifact-panel {
17
+ /* THE TEXT WIDTH, every panel of facts, a list or a form: three widths for
18
+ those moved the artifact's edge 80px between Details and History. */
19
+ --crewlet-artifact-panel-width: 22.5rem;
20
+ --crewlet-side-panel-width: var(--crewlet-artifact-panel-width);
21
+ /* The head on the row step, under the artifact's own bar. */
22
+ --crewlet-side-panel-head-height: var(--size-row-lg);
23
+ }
24
+
25
+ .crewlet-side-panel.crewlet-artifact-panel--lg {
26
+ --crewlet-artifact-panel-width: 36rem;
27
+ }
28
+
29
+ /* The heading rings when the keyboard reaches it, as it always has here. */
30
+ .crewlet-side-panel__title.crewlet-artifact-panel__title:focus-visible {
31
+ outline: 2px solid var(--color-focus);
32
+ outline-offset: var(--size-focus-ring-inset-offset);
33
+ border-radius: var(--radius-sm);
34
+ }
35
+
36
+ /* THE BODY'S INSET IS PUBLISHED under its own name too
37
+ (--crewlet-artifact-panel-inset), which a sticky foot offsets itself by,
38
+ and the body answers to its own container name. */
39
+ .crewlet-side-panel__body.crewlet-artifact-panel__body {
40
+ container-name: crewlet-side-panel crewlet-artifact-panel;
41
+ --crewlet-artifact-panel-inset: var(--spacing-4);
42
+ --crewlet-side-panel-inset: var(--crewlet-artifact-panel-inset);
43
+ }
@@ -1,20 +1,21 @@
1
- export { AvatarPicker } from '../chunk-3QSKDZR5.js';
2
- import '../chunk-34RMTXDZ.js';
1
+ export { AvatarPicker } from '../chunk-4OINEWR4.js';
2
+ import '../chunk-OYAXKHVW.js';
3
3
  import '../chunk-KHJIEPZV.js';
4
4
  import '../chunk-AYKXMIOR.js';
5
5
  import '../chunk-SNQRGH4A.js';
6
- import '../chunk-6FVGSWLS.js';
7
- import '../chunk-ILFEWRLG.js';
6
+ import '../chunk-AWSFK2IK.js';
7
+ import '../chunk-I7VG6RQE.js';
8
8
  import '../chunk-WIATRXEJ.js';
9
9
  import '../chunk-EGMQURBR.js';
10
10
  import '../chunk-PZKHBB7D.js';
11
11
  import '../chunk-BHHIIK3M.js';
12
- import '../chunk-TMM32U7D.js';
12
+ import '../chunk-TKS7FTTO.js';
13
+ import '../chunk-HD4QJ2SI.js';
14
+ import '../chunk-EA23JG6R.js';
13
15
  import '../chunk-OMV5W53A.js';
14
16
  import '../chunk-2YTOOH3A.js';
15
- import '../chunk-OG6CL3EB.js';
16
17
  import '../chunk-H5XTJ7GJ.js';
17
- import '../chunk-LACA4JGC.js';
18
+ import '../chunk-2BQYODY3.js';
18
19
  import '../chunk-NUZHC6MM.js';
19
20
  import '../chunk-BZFWDIV6.js';
20
21
  import '../chunk-ODEQTPFM.js';
@@ -1,3 +1,3 @@
1
- export { Breadcrumb } from '../chunk-VWNC2L6W.js';
1
+ export { Breadcrumb } from '../chunk-KW6KCVM7.js';
2
2
  import '../chunk-FYTIJM2T.js';
3
3
  import '../chunk-ODEQTPFM.js';
@@ -1,3 +1,4 @@
1
- export { Button, ButtonLink } from '../chunk-OG6CL3EB.js';
1
+ export { Button, ButtonLink } from '../chunk-HD4QJ2SI.js';
2
+ import '../chunk-EA23JG6R.js';
2
3
  import '../chunk-BZFWDIV6.js';
3
4
  import '../chunk-ODEQTPFM.js';
@@ -307,45 +307,22 @@
307
307
  }
308
308
 
309
309
  /*
310
- * Pending. The spinner takes the leading icon's place, so a button that has
311
- * one neither moves nor changes width mid-action, and the label stays exactly
312
- * as it was: a button whose text becomes "Saving" has stopped saying what it
313
- * does.
310
+ * Pending. The spinner (the package's one ring, `Spinner`) takes the leading
311
+ * icon's place, so a button that has one neither moves nor changes width
312
+ * mid-action, and the label stays exactly as it was: a button whose text
313
+ * becomes "Saving" has stopped saying what it does. The ring's drawing, its
314
+ * turn and its reduced-motion stop are Spinner.css's.
315
+ *
316
+ * A disabled button already reads as unavailable; a loading one should still
317
+ * read as this button, mid-action.
314
318
  */
315
- .crewlet-btn__spinner {
316
- display: inline-block;
317
- width: 1em;
318
- height: 1em;
319
- border: 2px solid currentColor;
320
- border-right-color: transparent;
321
- border-radius: var(--radius-circle);
322
- opacity: 0.7;
323
- animation: crewlet-btn-spin var(--motion-duration-slow) linear infinite;
324
- flex: none;
325
- }
326
-
327
- @keyframes crewlet-btn-spin {
328
- to {
329
- transform: rotate(360deg);
330
- }
331
- }
332
-
333
- /* A disabled button already reads as unavailable; a loading one should still
334
- read as this button, mid-action. */
335
319
  .crewlet-btn--loading {
336
320
  cursor: progress;
337
321
  }
338
322
 
339
- /*
340
- * A spinner that cannot spin should not pretend to, and a colour change that
341
- * cannot fade is still a colour change. The ring reads as pending either way.
342
- */
323
+ /* A colour change that cannot fade is still a colour change. */
343
324
  @media (prefers-reduced-motion: reduce) {
344
325
  .crewlet-btn {
345
326
  transition: none;
346
327
  }
347
-
348
- .crewlet-btn__spinner {
349
- animation: none;
350
- }
351
328
  }
@@ -1,11 +1,12 @@
1
- export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, ShortcutTip, anchorView, beyondSlop, clampPan, clampZoom, fitView, gridOf, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-D7Q5MQRF.js';
1
+ export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, ShortcutTip, anchorView, beyondSlop, clampPan, clampZoom, fitView, gridOf, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-YEURM24I.js';
2
2
  import '../chunk-LM3ISVJA.js';
3
3
  import '../chunk-I33UIUZD.js';
4
4
  import '../chunk-SMBKXWML.js';
5
+ import '../chunk-HD4QJ2SI.js';
6
+ import '../chunk-EA23JG6R.js';
5
7
  import '../chunk-OMV5W53A.js';
6
- import '../chunk-OG6CL3EB.js';
7
8
  import '../chunk-H5XTJ7GJ.js';
8
- import '../chunk-LACA4JGC.js';
9
+ import '../chunk-2BQYODY3.js';
9
10
  import '../chunk-NUZHC6MM.js';
10
11
  import '../chunk-BZFWDIV6.js';
11
12
  import '../chunk-ODEQTPFM.js';
@@ -1,15 +1,16 @@
1
- export { BOARD_NAME_MIN_CHARS, CANVAS_BOARD_MAX_LIVE, CANVAS_BOARD_MIN_LIVE_WIDTH, CANVAS_BOARD_MIN_ZOOM, CANVAS_NOTE_COLORS, CanvasBoard, TITLE_GLYPH_EM, boardName, boardRoom, liveBoards, titleSize } from '../chunk-VP2ODUCC.js';
1
+ export { BOARD_NAME_MIN_CHARS, CANVAS_BOARD_MAX_LIVE, CANVAS_BOARD_MIN_LIVE_WIDTH, CANVAS_BOARD_MIN_ZOOM, CANVAS_NOTE_COLORS, CanvasBoard, TITLE_GLYPH_EM, boardName, boardRoom, liveBoards, titleSize } from '../chunk-Q6R6EUQ4.js';
2
2
  import '../chunk-5SZGKSGL.js';
3
- import '../chunk-X4NIE7CI.js';
3
+ import '../chunk-LQ6AGUDL.js';
4
4
  import '../chunk-NR4CPM4T.js';
5
- import '../chunk-D7Q5MQRF.js';
5
+ import '../chunk-YEURM24I.js';
6
6
  import '../chunk-LM3ISVJA.js';
7
7
  import '../chunk-I33UIUZD.js';
8
8
  import '../chunk-SMBKXWML.js';
9
+ import '../chunk-HD4QJ2SI.js';
10
+ import '../chunk-EA23JG6R.js';
9
11
  import '../chunk-OMV5W53A.js';
10
- import '../chunk-OG6CL3EB.js';
11
12
  import '../chunk-H5XTJ7GJ.js';
12
- import '../chunk-LACA4JGC.js';
13
+ import '../chunk-2BQYODY3.js';
13
14
  import '../chunk-NUZHC6MM.js';
14
15
  import '../chunk-BZFWDIV6.js';
15
16
  import '../chunk-ODEQTPFM.js';