@crewlethq/ui 0.32.0 → 0.34.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 (292) hide show
  1. package/README.md +149 -5
  2. package/dist/AccessDeniedCard/AccessDeniedCard.d.ts +5 -0
  3. package/dist/AccessDeniedCard/index.js +1 -5
  4. package/dist/AccessDeniedCard-QVNDMT46.css +8 -0
  5. package/dist/AppShell/index.js +4 -4
  6. package/dist/{AppShell-GCM4TDVY.css → AppShell-JTSEOA57.css} +3 -1
  7. package/dist/ArrangeGroup/ArrangeGroup.d.ts +16 -1
  8. package/dist/ArrangeGroup/index.d.ts +1 -1
  9. package/dist/ArrangeGroup/index.js +1 -1
  10. package/dist/{ArrangeGroup-GY5YMP6E.css → ArrangeGroup-KRWWOJKR.css} +43 -0
  11. package/dist/ArrangeList/index.js +2 -2
  12. package/dist/ArtifactBar/index.js +14 -12
  13. package/dist/{ArtifactBar-MLMJHWY6.css → ArtifactBar-C462VD4C.css} +8 -3
  14. package/dist/ArtifactCard/ArtifactCard.d.ts +64 -6
  15. package/dist/ArtifactCard/index.d.ts +2 -2
  16. package/dist/ArtifactCard/index.js +6 -4
  17. package/dist/ArtifactCard-XHRLAL7C.css +289 -0
  18. package/dist/ArtifactCover/index.js +8 -6
  19. package/dist/ArtifactIcon/index.js +7 -5
  20. package/dist/ArtifactKindIllustration/ArtifactKindIllustration.d.ts +53 -0
  21. package/dist/ArtifactKindIllustration/index.d.ts +3 -0
  22. package/dist/ArtifactKindIllustration/index.js +3 -0
  23. package/dist/ArtifactKindIllustration-4NG6IE3C.css +211 -0
  24. package/dist/ArtifactPanel/ArtifactPanel.d.ts +6 -2
  25. package/dist/ArtifactPanel/index.js +1 -1
  26. package/dist/{ArtifactPanel-YFXT5O77.css → ArtifactPanel-HW3SU7CP.css} +25 -7
  27. package/dist/Avatar/Avatar.d.ts +6 -4
  28. package/dist/Avatar/index.js +2 -2
  29. package/dist/AvatarPicker/index.js +8 -8
  30. package/dist/Callout/index.js +1 -1
  31. package/dist/{Callout-SXXK4B5R.css → Callout-ZAVG3P66.css} +46 -6
  32. package/dist/Canvas/Canvas.d.ts +33 -2
  33. package/dist/Canvas/index.d.ts +1 -1
  34. package/dist/Canvas/index.js +4 -4
  35. package/dist/{Canvas-LRVNW7XN.css → Canvas-VUG2HLZK.css} +23 -0
  36. package/dist/CanvasBoard/CanvasBoard.d.ts +38 -3
  37. package/dist/CanvasBoard/budget.d.ts +9 -3
  38. package/dist/CanvasBoard/index.d.ts +2 -2
  39. package/dist/CanvasBoard/index.js +7 -7
  40. package/dist/{CanvasBoard-MBZVBWDO.css → CanvasBoard-5NNSKY6A.css} +127 -6
  41. package/dist/CanvasToolbar/index.js +5 -5
  42. package/dist/{CanvasToolbar-AE5MXH7T.css → CanvasToolbar-EM5EVZED.css} +4 -2
  43. package/dist/ChangeMark/index.js +4 -4
  44. package/dist/CharacterPicker/index.js +2 -2
  45. package/dist/Charts/ActivityStrip.d.ts +16 -1
  46. package/dist/Charts/BarList.d.ts +6 -0
  47. package/dist/Charts/ChartEmpty.d.ts +33 -0
  48. package/dist/Charts/Legend.d.ts +6 -0
  49. package/dist/Charts/StackedBar.d.ts +4 -1
  50. package/dist/Charts/StackedColumns.d.ts +14 -3
  51. package/dist/Charts/TimeSeries.d.ts +11 -1
  52. package/dist/Charts/index.d.ts +2 -0
  53. package/dist/Charts/index.js +1 -1
  54. package/dist/{Charts-RY4JN5FC.css → Charts-MBJG72BS.css} +140 -16
  55. package/dist/Checkbox/index.js +1 -1
  56. package/dist/{Checkbox-5UORUG3F.css → Checkbox-ALWG3WV2.css} +11 -0
  57. package/dist/CommandPalette/index.js +3 -3
  58. package/dist/{CommandPalette-HBTNKHZQ.css → CommandPalette-7CFGVBND.css} +4 -0
  59. package/dist/CommentThread/index.js +5 -5
  60. package/dist/Container/index.js +1 -1
  61. package/dist/{Container-3TSKMGNI.css → Container-34BAKG7B.css} +3 -1
  62. package/dist/{DashboardCover-RMINBODB.css → DashboardCover-KYGYMRKW.css} +42 -9
  63. package/dist/DataTable/index.js +5 -5
  64. package/dist/{DataTable-WZK3V62B.css → DataTable-NL2YWAIA.css} +4 -1
  65. package/dist/DataView/index.js +8 -8
  66. package/dist/DateTimePicker/index.js +3 -3
  67. package/dist/DocTabsEditor/DocTabsEditor.d.ts +34 -21
  68. package/dist/DocTabsEditor/index.js +4 -1
  69. package/dist/DocTabsEditor-4M452LNS.css +189 -0
  70. package/dist/Document/Document.d.ts +18 -1
  71. package/dist/Document/index.d.ts +2 -2
  72. package/dist/Document/index.js +1 -1
  73. package/dist/{Document-G3YTZIUL.css → Document-JUGCSQ4L.css} +78 -5
  74. package/dist/EditingStatus/index.js +1 -1
  75. package/dist/{EditingStatus-L6THUAN7.css → EditingStatus-NNA2CKIL.css} +17 -4
  76. package/dist/{Editor-YWBUJAQU.js → Editor-UUZ7XKCU.js} +5 -5
  77. package/dist/EntityChip/index.js +3 -3
  78. package/dist/FactList/index.js +3 -3
  79. package/dist/FollowBanner/index.js +3 -3
  80. package/dist/Fullscreen/index.d.ts +1 -0
  81. package/dist/Fullscreen/index.js +1 -1
  82. package/dist/Fullscreen/useIdle.d.ts +16 -0
  83. package/dist/HuePicker/index.js +3 -3
  84. package/dist/ImageUpload/index.js +3 -3
  85. package/dist/Layer/index.d.ts +1 -1
  86. package/dist/Layer/index.js +1 -1
  87. package/dist/Layer/place.d.ts +18 -0
  88. package/dist/LayersList/LayersList.d.ts +57 -0
  89. package/dist/LayersList/index.d.ts +3 -0
  90. package/dist/LayersList/index.js +3 -0
  91. package/dist/LayersList-NQZEIPZB.css +82 -0
  92. package/dist/LinkInterstitial/index.js +4 -4
  93. package/dist/ListInput/index.js +1 -1
  94. package/dist/LivePreview/LivePreview.d.ts +83 -0
  95. package/dist/LivePreview/budget.d.ts +50 -0
  96. package/dist/LivePreview/index.d.ts +5 -0
  97. package/dist/LivePreview/index.js +2 -0
  98. package/dist/LivePreview-SRO7KHO4.css +65 -0
  99. package/dist/Markdown/index.js +1 -1
  100. package/dist/MarkdownEditor/index.js +5 -5
  101. package/dist/MediaMatch/index.d.ts +1 -0
  102. package/dist/MediaMatch/index.js +1 -0
  103. package/dist/MediaMatch/useMediaMatch.d.ts +19 -0
  104. package/dist/Menu/index.js +2 -2
  105. package/dist/MergeConflicts/index.js +4 -4
  106. package/dist/Modal/index.js +2 -2
  107. package/dist/{Modal-XOSV6FAH.css → Modal-7MWRCWAI.css} +30 -0
  108. package/dist/Note/index.js +1 -1
  109. package/dist/{Note-ONSKKTOA.css → Note-WI5MLZOO.css} +13 -0
  110. package/dist/OrgLabel/index.js +3 -3
  111. package/dist/OrgNode/index.js +4 -4
  112. package/dist/OrgTable/index.js +7 -7
  113. package/dist/PeopleRail/index.js +3 -3
  114. package/dist/Popover/index.js +2 -2
  115. package/dist/PresenceStack/index.js +3 -3
  116. package/dist/{PresenceStack-QSXQJND5.css → PresenceStack-FJJQVH74.css} +11 -3
  117. package/dist/PresenterView/PresenterView.d.ts +3 -0
  118. package/dist/PresenterView/index.js +5 -3
  119. package/dist/PresenterView-T3EXIQ5S.css +147 -0
  120. package/dist/Principal/index.js +3 -3
  121. package/dist/PrincipalPicker/index.js +4 -4
  122. package/dist/RichEditor/index.js +5 -5
  123. package/dist/RichEditor/schema.d.ts +1 -1
  124. package/dist/RichEditorMarkdown/index.js +3 -3
  125. package/dist/SandboxedFrame/SandboxedFrame.d.ts +44 -2
  126. package/dist/SandboxedFrame/index.d.ts +2 -2
  127. package/dist/SandboxedFrame/index.js +3 -3
  128. package/dist/SandboxedFrame-P5NASXB7.css +72 -0
  129. package/dist/Section/index.js +1 -1
  130. package/dist/{Section-QR3ILQVK.css → Section-O5AHGSOG.css} +28 -5
  131. package/dist/SegmentedControl/index.js +3 -3
  132. package/dist/Select/Select.d.ts +10 -0
  133. package/dist/Select/index.d.ts +1 -1
  134. package/dist/Select/index.js +2 -2
  135. package/dist/{Select-2P7AWUE4.css → Select-A54YS5EP.css} +29 -0
  136. package/dist/ShareDialog/ShareDialog.d.ts +10 -0
  137. package/dist/ShareDialog/index.js +9 -9
  138. package/dist/{ShareDialog-YZ4F37MW.css → ShareDialog-4QDCBWMH.css} +12 -0
  139. package/dist/SheetGrid/SheetGrid.d.ts +7 -3
  140. package/dist/SheetGrid/index.js +8 -8
  141. package/dist/{SheetGrid-J3TKKXZL.css → SheetGrid-GDPCCZ4V.css} +154 -14
  142. package/dist/SheetModel/fit.d.ts +34 -0
  143. package/dist/SheetModel/index.d.ts +1 -0
  144. package/dist/SheetModel/index.js +1 -1
  145. package/dist/SheetModel/labels.d.ts +1 -1
  146. package/dist/Shortcut/index.js +1 -1
  147. package/dist/Skeleton/Skeleton.d.ts +2 -1
  148. package/dist/Skeleton/index.js +1 -1
  149. package/dist/SlideCompare/SlideCompare.d.ts +6 -1
  150. package/dist/SlideCompare/index.js +3 -3
  151. package/dist/{SlideCompare-MGM3U2ME.css → SlideCompare-HTCMPQFY.css} +36 -3
  152. package/dist/SlideFilmstrip/SlideFilmstrip.d.ts +14 -3
  153. package/dist/SlideFilmstrip/index.js +3 -3
  154. package/dist/{SlideFilmstrip-BCLNAHFX.css → SlideFilmstrip-5U6Z55GS.css} +63 -2
  155. package/dist/SlideGrid/index.js +3 -3
  156. package/dist/{SlideGrid-RT6QEQEE.css → SlideGrid-S4LTJ4UU.css} +9 -5
  157. package/dist/SlideNav/SlideNav.d.ts +49 -0
  158. package/dist/SlideNav/index.d.ts +3 -0
  159. package/dist/SlideNav/index.js +4 -0
  160. package/dist/SlideNav-BLFJF6AH.css +53 -0
  161. package/dist/SlideStage/SlideStage.d.ts +9 -1
  162. package/dist/SlideStage/index.js +2 -2
  163. package/dist/{SlideStage-KGRRALXR.css → SlideStage-S2FISF4C.css} +23 -0
  164. package/dist/StatCard/StatCard.d.ts +16 -1
  165. package/dist/StatCard/index.js +1 -1
  166. package/dist/{StatCard-KPAFD4E2.css → StatCard-4T7TMWMN.css} +40 -13
  167. package/dist/Switcher/index.js +6 -6
  168. package/dist/TableCells/index.js +3 -3
  169. package/dist/Tabs/Tabs.d.ts +21 -4
  170. package/dist/Tabs/index.js +1 -1
  171. package/dist/{Tabs-CJGO35BH.css → Tabs-MMZXV5EF.css} +9 -8
  172. package/dist/TagsInput/index.js +1 -1
  173. package/dist/ThemeSwitcher/index.js +4 -4
  174. package/dist/TimeWindowPicker/index.js +4 -4
  175. package/dist/Toaster/index.js +2 -2
  176. package/dist/{Toaster-EOOOTSJT.css → Toaster-C6BQ7L6I.css} +10 -1
  177. package/dist/Toolbar/index.js +1 -1
  178. package/dist/Tooltip/Tooltip.d.ts +12 -1
  179. package/dist/Tooltip/index.d.ts +1 -1
  180. package/dist/Tooltip/index.js +2 -2
  181. package/dist/TreeCanvas/index.js +5 -5
  182. package/dist/TreeGrid/index.js +3 -3
  183. package/dist/VersionCompare/index.js +4 -4
  184. package/dist/VersionTimeline/index.js +4 -4
  185. package/dist/WidgetFrame/WidgetFrame.d.ts +8 -1
  186. package/dist/WidgetFrame/index.js +2 -2
  187. package/dist/{WidgetFrame-LRZIL62O.css → WidgetFrame-BTFW3CRK.css} +49 -5
  188. package/dist/{chunk-WJDQ7XQA.js → chunk-2QEDJSJC.js} +1 -1
  189. package/dist/{chunk-VYDFB6PJ.js → chunk-356JNSER.js} +50 -17
  190. package/dist/{chunk-2HIOJ4YZ.js → chunk-3EB2AV3H.js} +2 -3
  191. package/dist/{chunk-ODT5H4MN.js → chunk-3LYWD3BO.js} +2 -2
  192. package/dist/{chunk-OTN35CI4.js → chunk-3P4Y5RX6.js} +18 -6
  193. package/dist/{chunk-FAQGGX2Z.js → chunk-3TFDQLW3.js} +1 -1
  194. package/dist/{chunk-E6EWK5YY.js → chunk-3Y56GQPM.js} +3 -3
  195. package/dist/{chunk-A4E5YLXO.js → chunk-4B6LSFDS.js} +1 -1
  196. package/dist/{chunk-UAN5NE7M.js → chunk-5AQBPHZD.js} +1 -1
  197. package/dist/{chunk-CJKMURZO.js → chunk-5SZGKSGL.js} +1 -1
  198. package/dist/chunk-6VOS2GMB.js +54 -0
  199. package/dist/{chunk-QWOPX2MN.js → chunk-6ZJ3N7QI.js} +7 -5
  200. package/dist/{chunk-3ZAFJ4GK.js → chunk-7Q7WDXHG.js} +4 -4
  201. package/dist/{chunk-QH3AKP2N.js → chunk-AC22RZKC.js} +2 -2
  202. package/dist/{chunk-UZ6MA2V6.js → chunk-AORVEG5V.js} +2 -2
  203. package/dist/{chunk-ZITJKF6Z.js → chunk-AYB6AYNH.js} +1 -1
  204. package/dist/{chunk-FC4YTTFJ.js → chunk-BQ7AKL2N.js} +5 -5
  205. package/dist/{chunk-Y5NQ2LMS.js → chunk-BY4N65PM.js} +1 -1
  206. package/dist/{chunk-YFW4MTK4.js → chunk-C7DKX453.js} +1 -1
  207. package/dist/{chunk-RCQXUT5K.js → chunk-CCAXYHQS.js} +1 -1
  208. package/dist/{chunk-JQLTG4KH.js → chunk-CCLNGVCM.js} +62 -51
  209. package/dist/{chunk-6AH2XJ3Q.js → chunk-CFAJP777.js} +3 -3
  210. package/dist/{chunk-4KP4RC3O.js → chunk-CI3VPIJN.js} +1 -1
  211. package/dist/{chunk-7T42VQQT.js → chunk-CPEPST4S.js} +1 -1
  212. package/dist/{chunk-AAOH2P6Y.js → chunk-DFK5EQTU.js} +5 -3
  213. package/dist/{chunk-V5IGUXMZ.js → chunk-E4NNGC6X.js} +4 -4
  214. package/dist/{chunk-TGYDROIB.js → chunk-EBCHVFCS.js} +4 -4
  215. package/dist/{chunk-LWXRD6L6.js → chunk-EWAFN2IU.js} +118 -27
  216. package/dist/{chunk-YDBC4DNW.js → chunk-FWYHRU7M.js} +1 -1
  217. package/dist/{chunk-HVNTQ36V.js → chunk-GMU6SQ6B.js} +4 -4
  218. package/dist/{chunk-LIXSV5YI.js → chunk-GPHWCK7M.js} +1 -1
  219. package/dist/{chunk-UQHKFF2N.js → chunk-GPWJCP3U.js} +1 -1
  220. package/dist/{chunk-77DRMDXR.js → chunk-HG5VF3TZ.js} +192 -67
  221. package/dist/{chunk-QVE4GJAT.js → chunk-HJO4WCH6.js} +1 -1
  222. package/dist/{chunk-JI5AVQLA.js → chunk-HOIZ6MIS.js} +1 -1
  223. package/dist/{chunk-I3BSQUKN.js → chunk-HUVG2FFT.js} +1 -1
  224. package/dist/{chunk-VS3KOOOL.js → chunk-ILAEBSLJ.js} +3 -3
  225. package/dist/{chunk-P4BOXB6E.js → chunk-IUD5VA2Z.js} +6 -7
  226. package/dist/{chunk-GR55WT4R.js → chunk-IYO2N5ZH.js} +2 -2
  227. package/dist/{chunk-RWA4H2TV.js → chunk-J6ON5SYE.js} +1 -1
  228. package/dist/{chunk-AMNN4WDX.js → chunk-JBUMD6DS.js} +2 -2
  229. package/dist/{chunk-BWRGFKJP.js → chunk-K3IJQNB7.js} +2 -3
  230. package/dist/{chunk-LFNUH4GY.js → chunk-K4VP6ZKE.js} +1 -1
  231. package/dist/{chunk-ZR5VN5IV.js → chunk-KD2IRYCT.js} +2 -2
  232. package/dist/chunk-KF6YGL4B.js +160 -0
  233. package/dist/{chunk-SKOYC2CF.js → chunk-KK5OYNAF.js} +2 -1
  234. package/dist/{chunk-UB7TJEKZ.js → chunk-KV3ODJXH.js} +6 -7
  235. package/dist/chunk-LL5AFXU7.js +96 -0
  236. package/dist/{chunk-VYOKRN2I.js → chunk-LM3ISVJA.js} +1 -1
  237. package/dist/{chunk-E6CR5PEV.js → chunk-LV4APO72.js} +8 -2
  238. package/dist/{chunk-B4EBHPK3.js → chunk-M5KZX5JE.js} +9 -2
  239. package/dist/{chunk-HMPFGIWM.js → chunk-OMV5W53A.js} +10 -1
  240. package/dist/chunk-ONL54WMH.js +55 -0
  241. package/dist/{chunk-AKEZ3G5V.js → chunk-ONQKKHON.js} +1 -1
  242. package/dist/{chunk-LZHLSQYK.js → chunk-OOWPSBIS.js} +2 -2
  243. package/dist/{chunk-4KWOKX2B.js → chunk-OSKJZNBT.js} +1 -1
  244. package/dist/{chunk-4JUKWWUD.js → chunk-PLDUNXAO.js} +1 -1
  245. package/dist/{chunk-EHQTPVV4.js → chunk-PLTCDSTU.js} +1 -1
  246. package/dist/{chunk-5OM447RW.js → chunk-PZKHBB7D.js} +1 -1
  247. package/dist/{chunk-VEB5ERRE.js → chunk-QWNVSR6G.js} +2 -2
  248. package/dist/{chunk-IG75YMUN.js → chunk-RTPQDNW3.js} +1 -1
  249. package/dist/{chunk-YEKYVJQR.js → chunk-SGHIAGPR.js} +2 -2
  250. package/dist/{chunk-SVSCLHHI.js → chunk-SZZRIHGT.js} +1 -1
  251. package/dist/{chunk-EBNI36UQ.js → chunk-T46NR3WP.js} +3 -3
  252. package/dist/{chunk-FPS3JIPQ.js → chunk-TC7DJTXI.js} +1 -1
  253. package/dist/{chunk-W5J7R5EB.js → chunk-TEUQWOWZ.js} +1 -1
  254. package/dist/chunk-THROPJZC.js +115 -0
  255. package/dist/{chunk-IDBHX5SR.js → chunk-TRQCHF2F.js} +1 -1
  256. package/dist/{chunk-M3LUNN7F.js → chunk-TYKQ33CL.js} +13 -2
  257. package/dist/chunk-UDQW6UK7.js +129 -0
  258. package/dist/{chunk-WTNUVQVI.js → chunk-UHJQDFKQ.js} +1 -1
  259. package/dist/{chunk-VVRL27HM.js → chunk-ULPL26BU.js} +2 -2
  260. package/dist/{chunk-EBJREOKS.js → chunk-UXXJDIYE.js} +4 -4
  261. package/dist/{chunk-5LUI3WQP.js → chunk-V43UVX4H.js} +1 -1
  262. package/dist/{chunk-W4XYY73O.js → chunk-VHZ3AXJD.js} +1 -1
  263. package/dist/{chunk-NHBP2XS5.js → chunk-VI5FWDZW.js} +51 -3
  264. package/dist/{chunk-HJEVSQN6.js → chunk-VL6CUNSX.js} +11 -5
  265. package/dist/{chunk-XDTYBF2F.js → chunk-W5XCNEZC.js} +39 -1
  266. package/dist/{chunk-LDJ3J4TQ.js → chunk-WGD2HX2A.js} +1 -1
  267. package/dist/{chunk-FQCLKD7U.js → chunk-WKEPORNM.js} +1 -1
  268. package/dist/{chunk-PJD2KFHX.js → chunk-WPX6A5BV.js} +38 -13
  269. package/dist/{chunk-I3KKZ2O3.js → chunk-XEGZHHRH.js} +45 -36
  270. package/dist/{chunk-IKB6HFGK.js → chunk-XO7PUL4F.js} +6 -4
  271. package/dist/chunk-XTOVADJU.js +170 -0
  272. package/dist/chunk-XV32RKQZ.js +142 -0
  273. package/dist/{chunk-TBMDMXEX.js → chunk-YA3AWELW.js} +1 -1
  274. package/dist/{chunk-HVIX5ECM.js → chunk-YEVG2X5R.js} +1 -1
  275. package/dist/chunk-YZFLH463.js +215 -0
  276. package/dist/generated/index.d.ts +5 -0
  277. package/dist/generated/index.js +112 -108
  278. package/dist/index.js +112 -108
  279. package/dist/styles.css +1982 -228
  280. package/package.json +3 -3
  281. package/dist/AccessDeniedCard-WXM5DBDZ.css +0 -8
  282. package/dist/ArtifactCard-EXVAEBV6.css +0 -109
  283. package/dist/DocTabsEditor-RCOWHX5J.css +0 -78
  284. package/dist/PresenterView-T2C6ZZ3N.css +0 -103
  285. package/dist/SandboxedFrame-L6HBQZCD.css +0 -50
  286. package/dist/chunk-CRKFL423.js +0 -74
  287. package/dist/chunk-GOSQXEZU.js +0 -102
  288. package/dist/chunk-MBNFJSZS.js +0 -107
  289. package/dist/chunk-RV7SZAHR.js +0 -105
  290. package/dist/chunk-UZ7ZUSLH.js +0 -179
  291. package/dist/utils/useMediaMatch.d.ts +0 -12
  292. /package/dist/{chunk-TF2P3OPS.js → chunk-YCARLYI6.js} +0 -0
@@ -0,0 +1,49 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface SlideNavLabels {
3
+ /** The group's name. */
4
+ nav: string;
5
+ previous: string;
6
+ next: string;
7
+ /** Why Previous is off on the first slide. */
8
+ start: string;
9
+ /** Why Next is off on the last slide. */
10
+ end: string;
11
+ position: (position: number, total: number) => string;
12
+ }
13
+ export declare const SLIDE_NAV_LABELS: SlideNavLabels;
14
+ /**
15
+ * Where the controls sit: `page` on the interface's own ground, `projection`
16
+ * floating over a slide shown full screen, on a scrim in its own light ink
17
+ * whatever the theme, since the letterbox under it is black in every theme.
18
+ */
19
+ export type SlideNavTone = 'page' | 'projection';
20
+ export interface SlideNavProps {
21
+ /** One-based. */
22
+ position: number;
23
+ total: number;
24
+ onPrevious: () => void;
25
+ onNext: () => void;
26
+ tone?: SlideNavTone | undefined;
27
+ /**
28
+ * Controls after Next, set apart by a rule: Full screen. IconButtons take
29
+ * the tone; give them `size="sm"`, the step Previous and Next are drawn at.
30
+ */
31
+ children?: ReactNode;
32
+ className?: string | undefined;
33
+ labels?: Partial<SlideNavLabels> | undefined;
34
+ }
35
+ /**
36
+ * Previous, where the show is, and Next: the one set of controls every way of
37
+ * presenting a deck moves by, in the page, full screen and at the lectern.
38
+ *
39
+ * A TOOLBAR'S STEP: Previous and Next are the small control step, as tall as
40
+ * the buttons a toolbar or a panel sets beside them (the presenter's Pause).
41
+ *
42
+ * STOPS AT THE ENDS, SAYING WHY. Previous on the first slide and Next on the
43
+ * last are off, with the reason on the control, rather than pressable and
44
+ * doing nothing. The position is tabular in a fixed width, so the controls
45
+ * either side of it do not move as the count changes. It is not a live region:
46
+ * the host announces each slide as it arrives, by its number and its title,
47
+ * and a second announcement of the number alone would repeat it.
48
+ */
49
+ export declare function SlideNav({ position, total, onPrevious, onNext, tone, children, className, labels, }: SlideNavProps): import("react").JSX.Element;
@@ -0,0 +1,3 @@
1
+ import './SlideNav.css';
2
+ export { SlideNav, SLIDE_NAV_LABELS } from './SlideNav.js';
3
+ export type { SlideNavLabels, SlideNavProps } from './SlideNav.js';
@@ -0,0 +1,4 @@
1
+ export { SLIDE_NAV_LABELS, SlideNav } from '../chunk-6VOS2GMB.js';
2
+ import '../chunk-4FQT6ZAY.js';
3
+ import '../chunk-BZFWDIV6.js';
4
+ import '../chunk-ODEQTPFM.js';
@@ -0,0 +1,53 @@
1
+ /*
2
+ * SlideNav: Previous, the position and Next, and whatever follows them.
3
+ */
4
+
5
+ .crewlet-slide-nav {
6
+ display: inline-flex;
7
+ align-items: center;
8
+ gap: var(--spacing-1);
9
+ }
10
+
11
+ .crewlet-slide-nav__position {
12
+ min-width: 5em;
13
+ color: var(--color-text-secondary);
14
+ font-size: var(--font-size-sm);
15
+ font-variant-numeric: tabular-nums;
16
+ text-align: center;
17
+ white-space: nowrap;
18
+ }
19
+
20
+ .crewlet-slide-nav__more {
21
+ display: inline-flex;
22
+ align-items: center;
23
+ gap: var(--spacing-1);
24
+ margin-left: var(--spacing-2);
25
+ padding-left: var(--spacing-3);
26
+ border-left: 1px solid var(--color-border-default);
27
+ }
28
+
29
+ /* OVER A PROJECTED SLIDE: a pill in the projection's own fixed colours, so it
30
+ reads over black bars and over a slide of any colour, in every theme. */
31
+ .crewlet-slide-nav--projection {
32
+ padding: var(--spacing-1) var(--spacing-2);
33
+ border-radius: var(--radius-pill);
34
+ background: var(--color-projection-ground);
35
+ color: var(--color-projection-ink);
36
+ }
37
+
38
+ .crewlet-slide-nav--projection .crewlet-slide-nav__position {
39
+ color: inherit;
40
+ }
41
+
42
+ .crewlet-slide-nav--projection .crewlet-slide-nav__more {
43
+ border-left-color: var(--color-projection-rule);
44
+ }
45
+
46
+ .crewlet-slide-nav--projection .crewlet-icon-btn--ghost {
47
+ color: inherit;
48
+ }
49
+
50
+ .crewlet-slide-nav--projection .crewlet-icon-btn--ghost:hover:not(:disabled):not([aria-disabled='true']) {
51
+ background: var(--color-projection-hover);
52
+ color: inherit;
53
+ }
@@ -33,6 +33,14 @@ export interface SlideStageProps {
33
33
  * "artboard" for a design's board shown at its own layout.
34
34
  */
35
35
  roleDescription?: string | undefined;
36
+ /**
37
+ * The slide's own edge, a hairline on a small radius, so a slide whose
38
+ * ground is the page's own colour still reads as a slide: a thumbnail, a
39
+ * card, the editor's stage, a show in the page. Not for `fit="contain"`,
40
+ * whose box is letterboxed by design, nor in full screen, where the screen's
41
+ * own edge is the slide's.
42
+ */
43
+ framed?: boolean | undefined;
36
44
  className?: string | undefined;
37
45
  }
38
46
  /**
@@ -60,4 +68,4 @@ export interface SlideStageProps {
60
68
  * A GROUP NAMED AS A SLIDE, so a screen reader announces "slide" with its
61
69
  * name and reads its text in source order, which is the slide's reading order.
62
70
  */
63
- export declare function SlideStage({ children, label, fit, scale, width, height, roleDescription, className, }: SlideStageProps): import("react").JSX.Element;
71
+ export declare function SlideStage({ children, label, fit, scale, width, height, roleDescription, framed, className, }: SlideStageProps): import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
- export { SLIDE_HEIGHT, SLIDE_WIDTH, SlideStage, useSlideKeys } from '../chunk-E6CR5PEV.js';
2
- import '../chunk-HMPFGIWM.js';
1
+ export { SLIDE_HEIGHT, SLIDE_WIDTH, SlideStage, useSlideKeys } from '../chunk-LV4APO72.js';
2
+ import '../chunk-OMV5W53A.js';
3
3
  import '../chunk-R25RGPUB.js';
4
4
  import '../chunk-ODEQTPFM.js';
@@ -16,6 +16,29 @@
16
16
  height: 100%;
17
17
  }
18
18
 
19
+ /* THE SLIDE'S OWN EDGE: the box is the slide (or, for a show in the page,
20
+ the room it was measured into), so its outline is the slide's edge, drawn over the slide's corners rather than outside them. A host that
21
+ marks a stage (selected, current) recolours this outline rather than adding
22
+ a second line. */
23
+ .crewlet-slide-stage--framed {
24
+ border-radius: var(--radius-sm);
25
+ outline: 1px solid var(--color-border-default);
26
+ }
27
+
28
+ :fullscreen .crewlet-slide-stage--framed,
29
+ .crewlet-slide-stage--framed:fullscreen {
30
+ border-radius: 0;
31
+ outline: 0;
32
+ }
33
+
34
+ /* FULL SCREEN IS A PROJECTOR: the bars round a slide whose shape is not the
35
+ screen's are black, whatever the theme, so the room sees the slide alone. */
36
+ :fullscreen .crewlet-slide-stage--contain,
37
+ :fullscreen .crewlet-slide-stage--view,
38
+ .crewlet-slide-stage:fullscreen {
39
+ background: var(--color-projection-letterbox);
40
+ }
41
+
19
42
  /* Until it is measured, and wherever it is not (no layout), a view stage is
20
43
  its slide's shape at its width. In full screen it fills the box, sharing a
21
44
  flex column with the show's controls. */
@@ -34,6 +34,13 @@ export interface StatCardDelta {
34
34
  export interface StatCardProps extends HTMLAttributes<HTMLDivElement> {
35
35
  /** What is being counted, in sentence case: "Tasks in progress". */
36
36
  label: ReactNode;
37
+ /**
38
+ * Keep the label out of the picture. It stays in the accessibility tree.
39
+ * For a tile whose container already names it, such as a dashboard
40
+ * widget's frame, where the frame's title above the label said the same
41
+ * thing twice. A Meter's `hideLabel`, for the same reason.
42
+ */
43
+ hideLabel?: boolean;
37
44
  /** The headline value, already formatted by the caller. */
38
45
  value: ReactNode;
39
46
  /** A unit after the value, at a quieter weight: "ms", "/ 7", "per turn". */
@@ -61,6 +68,14 @@ export interface StatCardProps extends HTMLAttributes<HTMLDivElement> {
61
68
  * says otherwise.
62
69
  */
63
70
  trend?: ReactNode;
71
+ /**
72
+ * Where `trend` stands: at the END of the value's line (the default), or
73
+ * BELOW it at the tile's full width. Below is a quota's tile, a number of a
74
+ * known ceiling whose bar is the reading and not a sparkline beside it; a
75
+ * row of them keeps one shape at every width, where three end slots wrapped
76
+ * one by one as each number's width decided.
77
+ */
78
+ trendPlacement?: 'end' | 'below' | undefined;
64
79
  /** A glyph before the label. A component, not a name. */
65
80
  icon?: ReactNode;
66
81
  /** Colours the VALUE's ink. See the type for when that is right. */
@@ -100,4 +115,4 @@ export interface StatCardProps extends HTMLAttributes<HTMLDivElement> {
100
115
  * being zero. The trend and the delta wait with it: both are readings of the
101
116
  * number that has not arrived.
102
117
  */
103
- export declare const StatCard: ({ label, value, unit, sub, subTone, delta, trend, icon, tone, loading, loadingLabel, flush, className, ...rest }: StatCardProps) => import("react").JSX.Element;
118
+ export declare const StatCard: ({ label, hideLabel, value, unit, sub, subTone, delta, trend, trendPlacement, icon, tone, loading, loadingLabel, flush, className, ...rest }: StatCardProps) => import("react").JSX.Element;
@@ -1,3 +1,3 @@
1
- export { StatCard } from '../chunk-IKB6HFGK.js';
1
+ export { StatCard } from '../chunk-XO7PUL4F.js';
2
2
  import '../chunk-BZFWDIV6.js';
3
3
  import '../chunk-ODEQTPFM.js';
@@ -72,12 +72,18 @@
72
72
  * The value's line: the number at its start, the figure at its end, both on
73
73
  * the line's FOOT, so a 28px number and a 28px sparkline share a baseline
74
74
  * rather than centring on each other.
75
+ *
76
+ * THE FIGURE GIVES WAY BEFORE THE NUMBER. Where a tile is too narrow for
77
+ * both (a row of tiles on a phone, two to a line), the figure moves under the
78
+ * number rather than the number being cut to its first digit: "2…" beside a
79
+ * meter said nothing, and the meter alone says less than the number.
75
80
  */
76
81
  .crewlet-statcard__reading {
77
82
  display: flex;
83
+ flex-wrap: wrap;
78
84
  align-items: flex-end;
79
85
  justify-content: space-between;
80
- gap: calc(var(--spacing-2) + var(--spacing-1) / 2);
86
+ gap: var(--spacing-2) calc(var(--spacing-2) + var(--spacing-1) / 2);
81
87
  min-width: 0;
82
88
  }
83
89
 
@@ -86,40 +92,51 @@
86
92
  * track, with tabular figures so a number that ticks up moves nothing beside
87
93
  * it.
88
94
  *
89
- * ITS LINE IS THE GLYPH'S OWN HEIGHT (a leading of 1). The value is one line
95
+ * ITS LINE IS THE GLYPH'S OWN HEIGHT (a leading of 1). The number is one line
90
96
  * that never wraps, and any leading over it is air under the digits that
91
97
  * opens between the number and the line below it and stands the number
92
98
  * higher than the figure it shares a foot with.
93
99
  *
94
- * A BLOCK, NOT A FLEX ROW, because it is one line of text that has to END
95
- * rather than stop: `text-overflow` acts on a block container only, and as a
96
- * flex row the number and its unit were anonymous flex items no rule could
97
- * reach, so a value too long for its tile was cut mid-digit with nothing to
98
- * say a digit was lost. The unit sits on the same line as inline text, on
99
- * the number's baseline.
100
+ * THE NUMBER ENDS, THE UNIT MOVES. The number and its unit are a wrapping
101
+ * row on one baseline: where the tile is too narrow for both, the unit moves
102
+ * under the number whole ("of 10 GB"), rather than being cut to "of 1…"; and
103
+ * the number, alone on its line and still too long, ends in an ellipsis
104
+ * rather than stopping mid-digit with nothing to say a digit was lost. The
105
+ * ellipsis is the number's own box's, since `text-overflow` acts on a block
106
+ * container only.
100
107
  */
101
108
  .crewlet-statcard__value {
102
- display: block;
103
- flex: 1 1 auto;
109
+ display: flex;
110
+ flex-wrap: wrap;
111
+ align-items: baseline;
112
+ gap: var(--spacing-1);
113
+ /* Never narrower than the number, so the figure wraps first; never wider
114
+ than the tile, so a number too long for the tile alone still ends. */
115
+ flex: 1 0 auto;
104
116
  min-width: 0;
117
+ max-width: 100%;
105
118
  font-size: var(--font-size-display);
106
119
  font-weight: var(--font-weight-semibold);
107
120
  letter-spacing: var(--font-letter-spacing-tight);
108
121
  line-height: 1;
109
122
  font-variant-numeric: tabular-nums;
123
+ }
124
+
125
+ .crewlet-statcard__number {
126
+ min-width: 0;
110
127
  overflow: hidden;
111
128
  text-overflow: ellipsis;
112
129
  white-space: nowrap;
113
130
  }
114
131
 
115
- /* The unit, "/ 7" after the 4: the quiet ink at a text step, medium, so it
116
- reads as part of the figure rather than as a second one. */
132
+ /* The unit, on the number's baseline at a quieter weight, kept whole. */
117
133
  .crewlet-statcard__unit {
118
- margin-inline-start: var(--spacing-1);
134
+ flex: none;
119
135
  font-size: var(--font-size-sm);
120
136
  font-weight: var(--font-weight-medium);
121
137
  letter-spacing: var(--font-letter-spacing-normal);
122
138
  color: var(--color-text-tertiary);
139
+ white-space: nowrap;
123
140
  }
124
141
 
125
142
  /*
@@ -137,6 +154,16 @@
137
154
  min-width: 0;
138
155
  }
139
156
 
157
+ /* BELOW: the figure under the number, as wide as the tile. */
158
+ .crewlet-statcard__reading--below {
159
+ flex-direction: column;
160
+ align-items: stretch;
161
+ }
162
+
163
+ .crewlet-statcard__reading--below > .crewlet-statcard__trend {
164
+ width: auto;
165
+ }
166
+
140
167
  .crewlet-statcard__trend > :where(button, a) {
141
168
  align-self: flex-end;
142
169
  }
@@ -1,13 +1,13 @@
1
- export { Switcher } from '../chunk-HVNTQ36V.js';
2
- import '../chunk-W5J7R5EB.js';
3
- import '../chunk-I3KKZ2O3.js';
1
+ export { Switcher } from '../chunk-GMU6SQ6B.js';
2
+ import '../chunk-XEGZHHRH.js';
4
3
  import '../chunk-F73MC7EZ.js';
5
- import '../chunk-BWRGFKJP.js';
4
+ import '../chunk-K3IJQNB7.js';
6
5
  import '../chunk-FYTIJM2T.js';
7
6
  import '../chunk-6QFAK2WV.js';
7
+ import '../chunk-TEUQWOWZ.js';
8
8
  import '../chunk-PQADV6P6.js';
9
- import '../chunk-IG75YMUN.js';
10
- import '../chunk-HMPFGIWM.js';
9
+ import '../chunk-RTPQDNW3.js';
10
+ import '../chunk-OMV5W53A.js';
11
11
  import '../chunk-R25RGPUB.js';
12
12
  import '../chunk-OG6CL3EB.js';
13
13
  import '../chunk-RSAQOKH3.js';
@@ -1,10 +1,10 @@
1
- export { TABLE_TAGS_CELL_LABELS, TableDateCell, TableEntityCell, TableKeyCell, TableNumberCell, TableStatusCell, TableTagsCell, TableTextCell } from '../chunk-LFNUH4GY.js';
1
+ export { TABLE_TAGS_CELL_LABELS, TableDateCell, TableEntityCell, TableKeyCell, TableNumberCell, TableStatusCell, TableTagsCell, TableTextCell } from '../chunk-K4VP6ZKE.js';
2
2
  import '../chunk-FBSEJO2C.js';
3
3
  import '../chunk-GFV4LJHH.js';
4
4
  import '../chunk-WIATRXEJ.js';
5
5
  import '../chunk-3CZ7XAVY.js';
6
6
  import '../chunk-EUCC37WY.js';
7
- import '../chunk-UAN5NE7M.js';
8
- import '../chunk-5OM447RW.js';
7
+ import '../chunk-5AQBPHZD.js';
8
+ import '../chunk-PZKHBB7D.js';
9
9
  import '../chunk-BZFWDIV6.js';
10
10
  import '../chunk-ODEQTPFM.js';
@@ -1,4 +1,4 @@
1
- import React, { type ReactNode } from 'react';
1
+ import React, { type ReactNode, type Ref } from 'react';
2
2
  /**
3
3
  * How the row is drawn. `pill` is a segmented well with a raised chip for the
4
4
  * one that is on; `underline` is a strip with a sliding bar, for a screen's
@@ -14,8 +14,12 @@ export interface TabsItem {
14
14
  label: ReactNode;
15
15
  /** A glyph drawn before the label. A component, not a name. */
16
16
  icon?: ReactNode;
17
- /** How many things are behind this tab. Drawn as a Count beside the label. */
18
- count?: number | null;
17
+ /**
18
+ * How many things are behind this tab. Drawn as a Count beside the label,
19
+ * as it is given: a string is a figure the caller has already formatted
20
+ * ("1.2k", "50+").
21
+ */
22
+ count?: number | string | null;
19
23
  /**
20
24
  * What needs the reader behind this tab, drawn after the label: problems
21
25
  * as a danger count, a warning or an unsaved change as a 6px dot. It
@@ -77,6 +81,19 @@ export interface TabsProps {
77
81
  * and a screen reader told otherwise looks for a panel that never arrives.
78
82
  */
79
83
  renderItem?: (props: TabsRenderItemProps) => ReactNode;
84
+ /**
85
+ * Drawn inside the row after the last item, ROUTER MODE ONLY: the menu a
86
+ * navigation row folds its overflow into ("More"), or a note about every
87
+ * section. It is part of the navigation landmark, so a screen reader meets
88
+ * it with the links it continues. A tab list holds tabs alone, so a row
89
+ * without `renderItem` ignores it.
90
+ */
91
+ trailing?: ReactNode;
92
+ /**
93
+ * The row's root element, for a consumer that measures the row: which of
94
+ * its items fit, and what folds into its trailing menu.
95
+ */
96
+ ref?: Ref<HTMLElement> | undefined;
80
97
  }
81
98
  /**
82
99
  * The id of the tab that labels a tab panel, so a panel and the row that
@@ -103,7 +120,7 @@ export declare function tabId(panelId: string, value: string): string;
103
120
  * says. In router mode that IS what the items are, so the root becomes a
104
121
  * `nav`, the tab roles go, and the consumer's own link carries the state.
105
122
  */
106
- export declare function Tabs({ items, variant, size, ariaLabel, className, value, onValueChange, panelId, renderItem, }: TabsProps): React.JSX.Element;
123
+ export declare function Tabs({ items, variant, size, ariaLabel, className, value, onValueChange, panelId, renderItem, trailing, ref, }: TabsProps): React.JSX.Element;
107
124
  export interface TabPanelProps {
108
125
  /** The same id the row was given as `panelId`. */
109
126
  id: string;
@@ -1,4 +1,4 @@
1
- export { TabPanel, Tabs, tabId } from '../chunk-HJEVSQN6.js';
1
+ export { TabPanel, Tabs, tabId } from '../chunk-VL6CUNSX.js';
2
2
  import '../chunk-RKKO7QHH.js';
3
3
  import '../chunk-BHHIIK3M.js';
4
4
  import '../chunk-BZFWDIV6.js';
@@ -95,13 +95,14 @@
95
95
  * chips floated; the raised rung is held a visible step above the card by the
96
96
  * palette suite, and the hairline finds it on any other ground.
97
97
  *
98
- * The inset is 2px, which is smaller than the scale's first step on purpose:
99
- * it is the gap a chip needs to read as sitting IN the well. With the 1px
100
- * boundary it is three pixels a side, and a 24px chip makes a 30px row: the
101
- * medium control step, the height of the button beside it.
98
+ * The inset is 1px, a hairline of the well's own ground round each chip:
99
+ * with the 1px boundary it is two pixels a side, and a 24px chip makes a 28px
100
+ * row, the tab step. Tabs sit between the 26px controls of a toolbar or a
101
+ * panel and the 32px actions of a page, so a row of them reads as the place's
102
+ * navigation rather than as one more button beside them.
102
103
  */
103
104
  .crewlet-tabs--pill {
104
- --crewlet-tabs-pill-inset: 2px;
105
+ --crewlet-tabs-pill-inset: 1px;
105
106
 
106
107
  gap: var(--crewlet-tabs-pill-inset);
107
108
  padding: var(--crewlet-tabs-pill-inset);
@@ -205,8 +206,8 @@
205
206
  * can hit. max() against --size-target-min holds every density at 24px or
206
207
  * more, and at density 1 the two agree.
207
208
  *
208
- * The corner is the small radius, the design's: the well's 8px less its 1px
209
- * boundary and 2px inset is 5px, and a chip a pixel rounder than that
209
+ * The corner is the chip radius (--radius-chip): the well's 8px less its 1px
210
+ * boundary and 1px inset is 6px, and a chip a pixel rounder than that
210
211
  * concentric curve is what reads as a chip sitting IN the well rather than a
211
212
  * second well inside it. The side pad is the design's 10px, two steps and a
212
213
  * half.
@@ -224,7 +225,7 @@
224
225
  .crewlet-tabs--pill .crewlet-tabs__tab {
225
226
  min-height: max(var(--size-target-min), calc(var(--size-control-md) - 6px));
226
227
  padding: 0 calc(var(--spacing-2) + var(--spacing-1) / 2);
227
- border-radius: var(--radius-sm);
228
+ border-radius: var(--radius-chip);
228
229
  color: var(--color-text-secondary);
229
230
  font-size: var(--font-size-xs);
230
231
  }
@@ -2,7 +2,7 @@ export { TagsInput } from '../chunk-2CQLNML5.js';
2
2
  import '../chunk-GFV4LJHH.js';
3
3
  import '../chunk-WIATRXEJ.js';
4
4
  import '../chunk-F73MC7EZ.js';
5
- import '../chunk-HMPFGIWM.js';
5
+ import '../chunk-OMV5W53A.js';
6
6
  import '../chunk-R25RGPUB.js';
7
7
  import '../chunk-RSAQOKH3.js';
8
8
  import '../chunk-4FQT6ZAY.js';
@@ -1,9 +1,9 @@
1
- export { DensitySwitcher, ThemeSwitcher } from '../chunk-WJDQ7XQA.js';
1
+ export { DensitySwitcher, ThemeSwitcher } from '../chunk-2QEDJSJC.js';
2
2
  export { applyStoredPreferences, resolveTheme, useDensityPreference, useSystemTheme, useThemePreference } from '../chunk-Z24ZUSTX.js';
3
3
  export { DENSITY_PREFERENCES, PALETTE_ID, THEME_PREFERENCES, applyDensity, applyPalette, applyTheme, isDensityPreference, isPaletteId, isThemePreference } from '../chunk-ZXXDZJQN.js';
4
- import '../chunk-FQCLKD7U.js';
5
- import '../chunk-RCQXUT5K.js';
6
- import '../chunk-HJEVSQN6.js';
4
+ import '../chunk-WKEPORNM.js';
5
+ import '../chunk-CCAXYHQS.js';
6
+ import '../chunk-VL6CUNSX.js';
7
7
  import '../chunk-RKKO7QHH.js';
8
8
  import '../chunk-BHHIIK3M.js';
9
9
  import '../chunk-BZFWDIV6.js';
@@ -1,11 +1,11 @@
1
- export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-UZ6MA2V6.js';
2
- import '../chunk-FC4YTTFJ.js';
1
+ export { DEFAULT_TIME_WINDOW_LABELS, TIME_WINDOW_SPANS, TimeWindowPicker, describeTimeWindow, isTimeWindowSet, parseTimeWindowDuration, resolveTimeWindow, timeWindowMatchesPreset } from '../chunk-AORVEG5V.js';
2
+ import '../chunk-BQ7AKL2N.js';
3
3
  import '../chunk-F73MC7EZ.js';
4
- import '../chunk-BWRGFKJP.js';
4
+ import '../chunk-K3IJQNB7.js';
5
5
  import '../chunk-GXQ3B46I.js';
6
6
  import '../chunk-6QFAK2WV.js';
7
7
  import '../chunk-PQADV6P6.js';
8
- import '../chunk-HMPFGIWM.js';
8
+ import '../chunk-OMV5W53A.js';
9
9
  import '../chunk-R25RGPUB.js';
10
10
  import '../chunk-OG6CL3EB.js';
11
11
  import '../chunk-4FQT6ZAY.js';
@@ -1,5 +1,5 @@
1
- export { ToastProvider, Toaster, useToast } from '../chunk-QH3AKP2N.js';
2
- import '../chunk-HMPFGIWM.js';
1
+ export { ToastProvider, Toaster, useToast } from '../chunk-AC22RZKC.js';
2
+ import '../chunk-OMV5W53A.js';
3
3
  import '../chunk-R25RGPUB.js';
4
4
  import '../chunk-BZFWDIV6.js';
5
5
  import '../chunk-ODEQTPFM.js';
@@ -234,13 +234,22 @@
234
234
  * THE COUNTDOWN IS A WASH BEHIND THE WORDS, the variant's soft step over the
235
235
  * whole strip, draining from the right as the time runs out. It sits under
236
236
  * every raised child, and it is the timer's picture, not the timer.
237
+ *
238
+ * ITS LEADING EDGE FADES OUT rather than stopping. Cut square, the wash read
239
+ * as a strip painted in two tones whenever it stood still: in a still frame,
240
+ * and under the pointer, which pauses it, which is when a reader is looking.
241
+ * Feathered, a stopped wash still reads as a tint running out.
237
242
  */
238
243
  .crewlet-toast__progress {
239
244
  position: absolute;
240
245
  inset: 0;
241
246
  z-index: var(--z-index-base);
242
247
  transform-origin: left center;
243
- background: var(--crewlet-toast-wash);
248
+ background: linear-gradient(
249
+ to right,
250
+ var(--crewlet-toast-wash) calc(100% - var(--spacing-7)),
251
+ transparent
252
+ );
244
253
  pointer-events: none;
245
254
  animation-name: crewlet-toast-drain;
246
255
  animation-timing-function: linear;
@@ -1,4 +1,4 @@
1
1
  export { Toolbar, ToolbarOverflow, ToolbarWide } from '../chunk-PGRPNDWM.js';
2
- import '../chunk-HMPFGIWM.js';
2
+ import '../chunk-OMV5W53A.js';
3
3
  import '../chunk-R25RGPUB.js';
4
4
  import '../chunk-ODEQTPFM.js';
@@ -1,10 +1,21 @@
1
1
  import { type ReactElement, type ReactNode } from 'react';
2
2
  export type TooltipPlacement = 'top' | 'bottom';
3
+ /**
4
+ * Where along the trigger the panel lines up: `center` on its middle, or
5
+ * `start` on its leading edge, running toward the inline end.
6
+ */
7
+ export type TooltipAlign = 'center' | 'start';
3
8
  export interface TooltipProps {
4
9
  /** One short line. A tooltip is not a place to put a list or a paragraph. */
5
10
  content: ReactNode;
6
11
  /** The preferred side. It flips when there is not room and there is more room the other way. */
7
12
  placement?: TooltipPlacement | undefined;
13
+ /**
14
+ * `start` for a trigger at the leading edge of what it belongs to, such as a
15
+ * grid's row gutter: a centred tip there hangs past that edge, and at the
16
+ * page's edge is pushed off its trigger by the clamp.
17
+ */
18
+ align?: TooltipAlign | undefined;
8
19
  /** Nothing opens: for a trigger whose tip is only worth showing sometimes. */
9
20
  disabled?: boolean | undefined;
10
21
  /** Milliseconds a pointer rests on the trigger before the panel appears. Focus never waits. */
@@ -48,4 +59,4 @@ export interface TooltipProps {
48
59
  * control has a name already, and replacing it with the hint is how a Close
49
60
  * button came to be announced as "Closing is unavailable until this finishes".
50
61
  */
51
- export declare function Tooltip({ content, placement, disabled, openDelay, closeDelay, className, children, }: TooltipProps): import("react").JSX.Element;
62
+ export declare function Tooltip({ content, placement, align, disabled, openDelay, closeDelay, className, children, }: TooltipProps): import("react").JSX.Element;
@@ -1,3 +1,3 @@
1
1
  import './Tooltip.css';
2
2
  export { Tooltip } from './Tooltip.js';
3
- export type { TooltipPlacement, TooltipProps } from './Tooltip.js';
3
+ export type { TooltipAlign, TooltipPlacement, TooltipProps } from './Tooltip.js';
@@ -1,4 +1,4 @@
1
- export { Tooltip } from '../chunk-QWOPX2MN.js';
2
- import '../chunk-HMPFGIWM.js';
1
+ export { Tooltip } from '../chunk-6ZJ3N7QI.js';
2
+ import '../chunk-OMV5W53A.js';
3
3
  import '../chunk-R25RGPUB.js';
4
4
  import '../chunk-ODEQTPFM.js';
@@ -1,10 +1,10 @@
1
- export { TreeCanvas } from '../chunk-WTNUVQVI.js';
1
+ export { TreeCanvas } from '../chunk-UHJQDFKQ.js';
2
2
  import '../chunk-MY374UUD.js';
3
- import '../chunk-OTN35CI4.js';
4
- import '../chunk-VYOKRN2I.js';
3
+ import '../chunk-3P4Y5RX6.js';
4
+ import '../chunk-LM3ISVJA.js';
5
5
  import '../chunk-SMBKXWML.js';
6
- import '../chunk-QWOPX2MN.js';
7
- import '../chunk-HMPFGIWM.js';
6
+ import '../chunk-6ZJ3N7QI.js';
7
+ import '../chunk-OMV5W53A.js';
8
8
  import '../chunk-R25RGPUB.js';
9
9
  import '../chunk-OG6CL3EB.js';
10
10
  import '../chunk-4FQT6ZAY.js';
@@ -1,7 +1,7 @@
1
- export { TreeGrid } from '../chunk-VEB5ERRE.js';
1
+ export { TreeGrid } from '../chunk-QWNVSR6G.js';
2
2
  import '../chunk-MY374UUD.js';
3
- import '../chunk-VYOKRN2I.js';
4
- import '../chunk-HMPFGIWM.js';
3
+ import '../chunk-LM3ISVJA.js';
4
+ import '../chunk-OMV5W53A.js';
5
5
  import '../chunk-R25RGPUB.js';
6
6
  import '../chunk-4FQT6ZAY.js';
7
7
  import '../chunk-BZFWDIV6.js';
@@ -1,8 +1,8 @@
1
- export { VERSION_COMPARE_LABELS, VERSION_COMPARE_LENSES, VersionCompare } from '../chunk-EHQTPVV4.js';
1
+ export { VERSION_COMPARE_LABELS, VERSION_COMPARE_LENSES, VersionCompare } from '../chunk-PLTCDSTU.js';
2
2
  import '../chunk-BVWSLXTY.js';
3
- import '../chunk-FQCLKD7U.js';
4
- import '../chunk-RCQXUT5K.js';
5
- import '../chunk-HJEVSQN6.js';
3
+ import '../chunk-WKEPORNM.js';
4
+ import '../chunk-CCAXYHQS.js';
5
+ import '../chunk-VL6CUNSX.js';
6
6
  import '../chunk-RKKO7QHH.js';
7
7
  import '../chunk-RA2ULG6H.js';
8
8
  import '../chunk-BHHIIK3M.js';
@@ -1,10 +1,10 @@
1
- export { VersionTimeline } from '../chunk-W4XYY73O.js';
1
+ export { VersionTimeline } from '../chunk-VHZ3AXJD.js';
2
2
  import '../chunk-AUQPBL4O.js';
3
- import '../chunk-4KP4RC3O.js';
3
+ import '../chunk-CI3VPIJN.js';
4
4
  import '../chunk-3CZ7XAVY.js';
5
5
  import '../chunk-EUCC37WY.js';
6
- import '../chunk-UAN5NE7M.js';
7
- import '../chunk-5OM447RW.js';
6
+ import '../chunk-5AQBPHZD.js';
7
+ import '../chunk-PZKHBB7D.js';
8
8
  import '../chunk-OG6CL3EB.js';
9
9
  import '../chunk-BZFWDIV6.js';
10
10
  import '../chunk-ODEQTPFM.js';