@crewlethq/ui 0.81.2 → 0.83.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.
- package/README.md +89 -4
- package/dist/Accordion/index.js +3 -3
- package/dist/ActionCard/ActionCard.d.ts +49 -0
- package/dist/ActionCard/index.d.ts +4 -0
- package/dist/ActionCard/index.js +2 -0
- package/dist/ActionCard-47WSZ2O5.css +110 -0
- package/dist/ActivityLine/ActivityLine.d.ts +27 -0
- package/dist/ActivityLine/index.d.ts +4 -0
- package/dist/ActivityLine/index.js +4 -0
- package/dist/ActivityLine-AMSERTOB.css +74 -0
- package/dist/AgentHandoffPanel/index.js +15 -15
- package/dist/AppShell/AccountRow.d.ts +19 -1
- package/dist/AppShell/AppShell.d.ts +62 -4
- package/dist/AppShell/index.d.ts +1 -1
- package/dist/AppShell/index.js +12 -6
- package/dist/AppShell/railMotion.d.ts +60 -0
- package/dist/AppShell/railShape.d.ts +22 -0
- package/dist/{AppShell-2IBUS4TH.css → AppShell-U7D2MUUF.css} +291 -20
- package/dist/ArrangeFrame/index.js +2 -2
- package/dist/ArrangeGroup/index.js +2 -2
- package/dist/ArrangeList/index.js +8 -7
- package/dist/ArtifactBar/index.js +13 -11
- package/dist/ArtifactCard/index.js +13 -13
- package/dist/ArtifactCover/index.js +3 -3
- package/dist/ArtifactKindIllustration/index.js +1 -1
- package/dist/ArtifactKinds-3EH4KR3F.css +18 -0
- package/dist/ArtifactMakeRow/index.js +1 -1
- package/dist/ArtifactNameCell/index.js +1 -1
- package/dist/ArtifactPanel/index.js +5 -5
- package/dist/AttachmentChip/index.js +2 -2
- package/dist/AuthLayout/index.js +5 -4
- package/dist/Avatar/Avatar.d.ts +30 -28
- package/dist/Avatar/AvatarStack.d.ts +2 -2
- package/dist/Avatar/index.d.ts +1 -1
- package/dist/Avatar/index.js +2 -2
- package/dist/{Avatar-VJSJGFRG.css → Avatar-MNE3WBZO.css} +56 -54
- package/dist/AvatarPicker/index.js +13 -12
- package/dist/{AvatarStack-7I3P7LCK.css → AvatarStack-KEHD3GWY.css} +16 -4
- package/dist/BrandLockup/BrandLockup.d.ts +6 -0
- package/dist/BrandLockup/index.js +2 -1
- package/dist/BriefCard/BriefCard.d.ts +23 -1
- package/dist/BriefCard/index.d.ts +2 -2
- package/dist/BriefCard/index.js +7 -7
- package/dist/{BriefCard-VKTH3BSW.css → BriefCard-QCL7MVUV.css} +26 -0
- package/dist/Canvas/index.js +8 -6
- package/dist/CanvasBoard/index.js +11 -9
- package/dist/CanvasToolbar/index.js +10 -8
- package/dist/Card/index.js +2 -2
- package/dist/ChangeList/index.js +5 -5
- package/dist/ChangeMark/index.js +6 -4
- package/dist/CharacterPicker/index.js +2 -2
- package/dist/ChatDay/ChatDay.d.ts +53 -0
- package/dist/ChatDay/index.d.ts +5 -0
- package/dist/ChatDay/index.js +3 -0
- package/dist/ChatDay-E3FF5HWF.css +116 -0
- package/dist/ChatDivider/ChatDivider.d.ts +31 -0
- package/dist/ChatDivider/index.d.ts +4 -0
- package/dist/ChatDivider/index.js +2 -0
- package/dist/ChatDivider-7ZNDL2PZ.css +76 -0
- package/dist/ChatMessage/ChatMessage.d.ts +111 -0
- package/dist/ChatMessage/index.d.ts +4 -0
- package/dist/ChatMessage/index.js +5 -0
- package/dist/ChatMessage-FH7VRVCH.css +304 -0
- package/dist/ChatScale-L4SIHSKL.css +42 -0
- package/dist/ChatThread/ChatThread.d.ts +33 -4
- package/dist/ChatThread/index.d.ts +1 -1
- package/dist/ChatThread/index.js +2 -2
- package/dist/{ChatThread-2KO3FZKQ.css → ChatThread-HAECJMP6.css} +17 -0
- package/dist/CheckGrid/index.js +6 -6
- package/dist/Checkbox/index.js +5 -5
- package/dist/ChipField/ChipField.d.ts +82 -0
- package/dist/ChipField/index.d.ts +4 -0
- package/dist/ChipField/index.js +9 -0
- package/dist/ChipField-D4CW6XFA.css +108 -0
- package/dist/ColorField/index.js +5 -5
- package/dist/Combobox/index.js +7 -7
- package/dist/CommandPalette/index.js +12 -11
- package/dist/CommentThread/index.js +14 -14
- package/dist/CompactNav/CompactNav.d.ts +175 -0
- package/dist/CompactNav/index.d.ts +4 -0
- package/dist/CompactNav/index.js +9 -0
- package/dist/CompactNav-CU2AQXBC.css +322 -0
- package/dist/Composer/Composer.d.ts +26 -2
- package/dist/Composer/index.d.ts +2 -1
- package/dist/Composer/index.js +7 -7
- package/dist/{Composer-HQIMTMRC.css → Composer-ZEGHEAFE.css} +71 -0
- package/dist/ConfirmField/index.js +5 -5
- package/dist/ContrastBadge/index.js +2 -2
- package/dist/ContrastHelp/index.js +7 -6
- package/dist/Count/Count.d.ts +24 -6
- package/dist/Count/index.d.ts +1 -1
- package/dist/Count/index.js +1 -1
- package/dist/{Count-ZJ6ID4ZU.css → Count-2HXBBYPO.css} +19 -0
- package/dist/DataGrid/index.js +8 -8
- package/dist/DataTable/index.js +11 -10
- package/dist/DataView/index.js +18 -17
- package/dist/DatasetSource/index.js +3 -3
- package/dist/DateTimePicker/index.js +6 -5
- package/dist/DeepWorkCard/index.js +9 -9
- package/dist/Disclosure/index.js +3 -3
- package/dist/DocTabsEditor/index.js +11 -9
- package/dist/DockColumn/DockColumn.d.ts +68 -0
- package/dist/DockColumn/index.d.ts +3 -0
- package/dist/DockColumn/index.js +6 -0
- package/dist/DockColumn-SMJCXHS4.css +61 -0
- package/dist/Document/index.js +2 -2
- package/dist/EditingStatus/index.js +2 -2
- package/dist/{Editor-IMYESOW7.js → Editor-5D5Z3LBQ.js} +9 -8
- package/dist/EmojiPicker/EmojiPicker.d.ts +51 -0
- package/dist/EmojiPicker/emoji.d.ts +24 -0
- package/dist/EmojiPicker/index.d.ts +5 -0
- package/dist/EmojiPicker/index.js +15 -0
- package/dist/EmojiPicker-FMWYN2WX.css +63 -0
- package/dist/EntityChip/index.js +3 -3
- package/dist/EntityList/index.js +6 -6
- package/dist/FactList/index.js +6 -4
- package/dist/FolderTile/index.js +3 -3
- package/dist/FollowBanner/index.js +4 -4
- package/dist/HuePicker/index.js +9 -8
- package/dist/ImageUpload/ImageUpload.d.ts +6 -7
- package/dist/ImageUpload/index.js +3 -3
- package/dist/{ImageUpload-OWI7CCG7.css → ImageUpload-IFXZROFZ.css} +6 -37
- package/dist/InlineEditor/index.js +7 -7
- package/dist/Input/index.js +4 -4
- package/dist/Kbd/Kbd.d.ts +9 -0
- package/dist/Kbd/index.d.ts +1 -1
- package/dist/Kbd/index.js +1 -1
- package/dist/Layer/index.js +2 -2
- package/dist/LinkCard/LinkCard.d.ts +64 -0
- package/dist/LinkCard/index.d.ts +5 -0
- package/dist/LinkCard/index.js +5 -0
- package/dist/LinkCard-5I4MYU6I.css +155 -0
- package/dist/LinkInterstitial/index.js +7 -6
- package/dist/ListInput/index.js +10 -9
- package/dist/Listbox/index.js +3 -3
- package/dist/LogoSlot/index.js +3 -3
- package/dist/MarkdownEditor/format.d.ts +9 -1
- package/dist/MarkdownEditor/index.d.ts +2 -2
- package/dist/MarkdownEditor/index.js +10 -9
- package/dist/MediaMatch/index.d.ts +1 -1
- package/dist/MediaMatch/index.js +1 -1
- package/dist/MediaMatch/useMediaMatch.d.ts +14 -0
- package/dist/MentionChip/MentionChip.d.ts +25 -0
- package/dist/MentionChip/index.d.ts +3 -0
- package/dist/MentionChip/index.js +2 -0
- package/dist/MentionChip-W7MZZVRZ.css +42 -0
- package/dist/MentionMenu/MentionMenu.d.ts +82 -0
- package/dist/MentionMenu/index.d.ts +4 -0
- package/dist/MentionMenu/index.js +3 -0
- package/dist/MentionMenu-4NAQ45S4.css +65 -0
- package/dist/Menu/index.js +5 -4
- package/dist/MergeConflicts/index.js +9 -8
- package/dist/MessageActions/MessageActions.d.ts +58 -0
- package/dist/MessageActions/index.d.ts +4 -0
- package/dist/MessageActions/index.js +18 -0
- package/dist/MessageActions-Q4F5UH3S.css +73 -0
- package/dist/Modal/Modal.d.ts +12 -0
- package/dist/Modal/index.js +6 -5
- package/dist/{Modal-FYQYEI3N.css → Modal-GKUOO7PZ.css} +26 -1
- package/dist/OpenInAppCard/index.js +8 -8
- package/dist/OrgLabel/index.js +3 -3
- package/dist/OrgNode/index.js +4 -4
- package/dist/OrgTable/index.js +7 -7
- package/dist/Outline/index.js +2 -1
- package/dist/PeekRail/index.js +1 -1
- package/dist/PeopleRail/index.js +4 -4
- package/dist/PersonRow/PersonRow.d.ts +70 -0
- package/dist/PersonRow/index.d.ts +3 -0
- package/dist/PersonRow/index.js +2 -0
- package/dist/PersonRow-V5GTPNVP.css +161 -0
- package/dist/Popover/index.js +4 -3
- package/dist/Presence/index.d.ts +2 -0
- package/dist/Presence/index.js +4 -0
- package/dist/Presence/usePresence.d.ts +109 -0
- package/dist/PresenceStack/index.js +3 -3
- package/dist/{PresenceStack-ZV67BH4V.css → PresenceStack-2DTYRADY.css} +4 -6
- package/dist/PresenterView/index.js +5 -5
- package/dist/PricingCard/index.js +2 -2
- package/dist/Principal/index.js +3 -3
- package/dist/PrincipalPicker/index.js +11 -11
- package/dist/ProposalCard/index.js +15 -15
- package/dist/ReactionBar/ReactionBar.d.ts +84 -0
- package/dist/ReactionBar/index.d.ts +4 -0
- package/dist/ReactionBar/index.js +17 -0
- package/dist/ReactionBar-XXI4V7XG.css +93 -0
- package/dist/RecordChip/index.js +5 -4
- package/dist/RefusalCard/index.js +6 -6
- package/dist/RelatedRow/index.js +3 -3
- package/dist/Reorder/index.js +2 -1
- package/dist/ResultTableCard/index.js +7 -7
- package/dist/ReviewList/index.js +2 -2
- package/dist/RichEditor/index.js +2 -2
- package/dist/RunChip/index.js +5 -5
- package/dist/SandboxedFrame/index.js +2 -2
- package/dist/SectionFrame/index.js +2 -2
- package/dist/SegmentedControl/index.js +8 -7
- package/dist/Select/index.js +4 -4
- package/dist/SelectionBar/index.js +6 -6
- package/dist/SetupWizard/index.js +6 -6
- package/dist/ShareDialog/index.js +13 -12
- package/dist/SheetColumnEditor/index.js +17 -16
- package/dist/SheetGrid/index.js +14 -12
- package/dist/Shortcut/index.js +3 -3
- package/dist/SidePanel/SidePanel.d.ts +8 -1
- package/dist/SidePanel/SidePanelBase.d.ts +3 -1
- package/dist/SidePanel/index.js +5 -5
- package/dist/{SidePanel-VXKUKLOJ.css → SidePanel-BKWT6Q6Z.css} +36 -0
- package/dist/SidebarNav/SidebarNav.d.ts +52 -3
- package/dist/SidebarNav/index.js +1 -1
- package/dist/{SidebarNav-VTQ3G4AE.css → SidebarNav-E7PZGGA6.css} +132 -7
- package/dist/Skeleton/index.js +1 -1
- package/dist/{Skeleton-7ZA5ETJM.css → Skeleton-GIXV3KK5.css} +3 -1
- package/dist/SlideCompare/index.js +5 -5
- package/dist/SlideFilmstrip/index.js +11 -9
- package/dist/SlideGrid/index.js +4 -4
- package/dist/SlideStage/index.js +3 -3
- package/dist/SourceEditor/index.js +2 -2
- package/dist/StatusCard/index.js +5 -5
- package/dist/Switcher/index.js +13 -12
- package/dist/TableCells/index.js +5 -5
- package/dist/Tabs/index.js +7 -6
- package/dist/Tag/Tag.d.ts +9 -2
- package/dist/Tag/index.js +1 -1
- package/dist/{Tag-JTJVZM2D.css → Tag-WLDOROB5.css} +24 -0
- package/dist/TagsInput/index.js +6 -6
- package/dist/ThemeGallery/index.js +5 -5
- package/dist/ThemeSwitcher/index.js +9 -8
- package/dist/ThinkingIndicator/index.js +1 -1
- package/dist/{ThinkingIndicator-JMK2TNMZ.css → ThinkingIndicator-S7ZL2C77.css} +8 -0
- package/dist/ThreadSummary/ThreadSummary.d.ts +43 -0
- package/dist/ThreadSummary/index.d.ts +4 -0
- package/dist/ThreadSummary/index.js +6 -0
- package/dist/ThreadSummary-AGR4NDMD.css +90 -0
- package/dist/TimeRangePicker/index.js +13 -12
- package/dist/TimeWindowPicker/index.js +11 -10
- package/dist/Toaster/index.js +2 -2
- package/dist/Toolbar/index.js +3 -3
- package/dist/Tooltip/Tooltip.d.ts +30 -3
- package/dist/Tooltip/index.js +5 -3
- package/dist/TreeCanvas/index.js +10 -7
- package/dist/TreeGrid/index.js +3 -3
- package/dist/ValueField/index.js +9 -9
- package/dist/VersionCompare/index.js +10 -9
- package/dist/VersionTimeline/index.js +4 -4
- package/dist/WidgetFrame/index.js +2 -2
- package/dist/{chunk-LOWQK2PB.js → chunk-22CU7V4J.js} +4 -4
- package/dist/{chunk-WCDPFTJZ.js → chunk-25JQNHTC.js} +92 -28
- package/dist/{chunk-6LXS3X7A.js → chunk-2L4WHYMT.js} +1 -1
- package/dist/{chunk-6G6WHTC7.js → chunk-2O5CMV76.js} +1 -1
- package/dist/{chunk-FQI62PIZ.js → chunk-2SVQBQAD.js} +2 -2
- package/dist/{chunk-7PJFUQMY.js → chunk-2ZSCHQOA.js} +1 -1
- package/dist/chunk-3BRXEMYT.js +46 -0
- package/dist/{chunk-H22SR76M.js → chunk-3H6OZUZ3.js} +1 -1
- package/dist/{chunk-VK45YJLH.js → chunk-3IWZVEXA.js} +2 -2
- package/dist/{chunk-2STOSJT3.js → chunk-46FIBJCV.js} +7 -7
- package/dist/chunk-4DEKONVJ.js +87 -0
- package/dist/{chunk-NUZHC6MM.js → chunk-4ITETIGZ.js} +12 -1
- package/dist/{chunk-73GUXYYE.js → chunk-5AHNW5CP.js} +1 -1
- package/dist/{chunk-FFGEJUAP.js → chunk-5ILRWUE7.js} +2 -2
- package/dist/chunk-5JPOFAVN.js +58 -0
- package/dist/{chunk-S5QJZOPL.js → chunk-5K5SZGBI.js} +1 -1
- package/dist/{chunk-YB64PWIN.js → chunk-5V6GW6HK.js} +1 -1
- package/dist/{chunk-LM6VYJTV.js → chunk-5YXMKZUA.js} +1 -1
- package/dist/{chunk-5XBNJNSO.js → chunk-65RFU7LF.js} +1 -1
- package/dist/{chunk-7MGXHCVK.js → chunk-6M2N6ETA.js} +1 -1
- package/dist/{chunk-OWHETZIU.js → chunk-6SFDL4QH.js} +1 -1
- package/dist/{chunk-WK4FQPYW.js → chunk-77VOASOY.js} +5 -5
- package/dist/{chunk-UYF2B2TH.js → chunk-7ELFH3RJ.js} +1 -1
- package/dist/{chunk-HPI5J6AR.js → chunk-7K6LVM5I.js} +2 -2
- package/dist/{chunk-YQDRJZ5J.js → chunk-7M7WKYOV.js} +8 -8
- package/dist/{chunk-A5YKNRG6.js → chunk-7QCSISHM.js} +2 -1
- package/dist/{chunk-CYYBE2MM.js → chunk-7U6PK242.js} +1 -1
- package/dist/{chunk-I33UIUZD.js → chunk-7ZSEUO5Q.js} +51 -40
- package/dist/{chunk-LCZULGMB.js → chunk-ABRWL5FJ.js} +2 -2
- package/dist/{chunk-VG3SIJ3M.js → chunk-AFLS26AC.js} +2 -2
- package/dist/{chunk-4XF7ENQA.js → chunk-AOJ6ZA77.js} +2 -2
- package/dist/{chunk-Q2T4L6ML.js → chunk-AQNP3KQU.js} +5 -5
- package/dist/{chunk-6X5PGHEX.js → chunk-AUSFKGKL.js} +2 -2
- package/dist/{chunk-6R334YT3.js → chunk-AZYE7NR4.js} +2 -2
- package/dist/{chunk-WKKWF277.js → chunk-BN5FEJL5.js} +2 -2
- package/dist/{chunk-MPVMB2DV.js → chunk-BVML4UVB.js} +3 -2
- package/dist/{chunk-EAIOXW2W.js → chunk-BXGBGYKH.js} +8 -14
- package/dist/chunk-C4256UXE.js +21 -0
- package/dist/{chunk-2FMBZCFR.js → chunk-C42XW5YP.js} +1 -1
- package/dist/{chunk-4MRFLHJC.js → chunk-C46DDVTK.js} +1 -1
- package/dist/{chunk-5BOFC5OP.js → chunk-CF4M6N6A.js} +20 -4
- package/dist/{chunk-ANTAQAR4.js → chunk-CMAZZY2I.js} +7 -1
- package/dist/{chunk-3JXX5S3Z.js → chunk-CV2LU2T2.js} +2 -2
- package/dist/{chunk-MLDTLZAO.js → chunk-D2GT3CR4.js} +3 -3
- package/dist/{chunk-57AKYFML.js → chunk-DD7RBNT4.js} +3 -3
- package/dist/{chunk-KL6A7JGH.js → chunk-DRFOTWJE.js} +2 -2
- package/dist/{chunk-MUFBHVCT.js → chunk-DWQYV5AV.js} +2 -2
- package/dist/{chunk-CNEHFH2A.js → chunk-EAHEJNVJ.js} +1 -1
- package/dist/chunk-EALRMP7N.js +69 -0
- package/dist/{chunk-E35HYQMK.js → chunk-EBVZHVPD.js} +12 -5
- package/dist/{chunk-KHJIEPZV.js → chunk-EC6EUIAD.js} +9 -6
- package/dist/{chunk-XNNY27SC.js → chunk-ED4A6Q24.js} +1 -1
- package/dist/{chunk-6LN64KGG.js → chunk-F7HZYTZT.js} +6 -3
- package/dist/{chunk-RTMNULTL.js → chunk-FLW5U7YS.js} +2 -2
- package/dist/{chunk-JQEXAH7G.js → chunk-FPU7AA3X.js} +5 -16
- package/dist/{chunk-GHQG4VZA.js → chunk-G3CACE5L.js} +3 -3
- package/dist/{chunk-JMTBK55P.js → chunk-G4EHZHKM.js} +2 -2
- package/dist/{chunk-45M73G5A.js → chunk-GLKQHN7G.js} +5 -5
- package/dist/{chunk-N2BF272H.js → chunk-HF5L56YQ.js} +1 -1
- package/dist/chunk-HTBTAIH6.js +37 -0
- package/dist/chunk-HTS5RJ7S.js +6 -0
- package/dist/{chunk-BRLZXYPA.js → chunk-I4IUX3JF.js} +1 -1
- package/dist/{chunk-BXCL6P5Z.js → chunk-I4PBFJGX.js} +1 -1
- package/dist/{chunk-ADGNISEI.js → chunk-IAP7APOX.js} +5 -5
- package/dist/chunk-ICE3D63E.js +384 -0
- package/dist/{chunk-BT3GB7HC.js → chunk-IRONPJB4.js} +3 -3
- package/dist/chunk-IUBOLGHG.js +140 -0
- package/dist/chunk-JLOESTT2.js +10 -0
- package/dist/{chunk-5EFLA6BW.js → chunk-K6RWEQ6P.js} +2 -2
- package/dist/{chunk-ZQEJSEPS.js → chunk-K6Y6CDEZ.js} +2 -2
- package/dist/chunk-K774LUN3.js +20 -0
- package/dist/{chunk-7KBNFFM3.js → chunk-KXWJJWBD.js} +6 -3
- package/dist/{chunk-53J2YNQA.js → chunk-L5VU3LZT.js} +1 -1
- package/dist/chunk-L72URIHR.js +36 -0
- package/dist/{chunk-VERJCAJ4.js → chunk-LBGKLYBY.js} +1 -1
- package/dist/{chunk-PRN5IP2R.js → chunk-LMEMH6DO.js} +1 -1
- package/dist/{chunk-I22MUEG7.js → chunk-LNQSNXGJ.js} +1 -1
- package/dist/chunk-LT44RL62.js +50 -0
- package/dist/{chunk-222VILSP.js → chunk-LVJGN5II.js} +1 -1
- package/dist/{chunk-AYHIF6DH.js → chunk-LZNPL266.js} +1 -1
- package/dist/{chunk-R45VM5EX.js → chunk-MMV7NEAC.js} +1 -1
- package/dist/{chunk-2IIHMJMZ.js → chunk-MVKUE4FI.js} +2 -2
- package/dist/{chunk-37U3Z65B.js → chunk-MVMVMHYI.js} +1 -1
- package/dist/{chunk-JD7P2GJP.js → chunk-MYAARF4Z.js} +1 -1
- package/dist/{chunk-OBPINJNO.js → chunk-NCUSI4ZU.js} +3 -3
- package/dist/{chunk-NKBKQEKS.js → chunk-NFXCJGHG.js} +1 -1
- package/dist/{chunk-OZAZHM55.js → chunk-NKBKHOMU.js} +1 -1
- package/dist/{chunk-MGQKF7GK.js → chunk-NN475NAP.js} +1 -1
- package/dist/{chunk-6EWNMSS4.js → chunk-NNZRTR5M.js} +2 -2
- package/dist/{chunk-JT7WRPZ6.js → chunk-NTRKC2JV.js} +1 -1
- package/dist/{chunk-63GBSOLU.js → chunk-NXBCAXP5.js} +2 -2
- package/dist/{chunk-NR4CPM4T.js → chunk-NXFTCPF6.js} +1 -1
- package/dist/chunk-O3MYBNRO.js +80 -0
- package/dist/{chunk-RMEBFYL7.js → chunk-O6EV6GKI.js} +1 -1
- package/dist/{chunk-YL7AR6PR.js → chunk-O7KG4CXB.js} +3 -3
- package/dist/{chunk-FB3TCNQP.js → chunk-O7N6W52M.js} +3 -3
- package/dist/chunk-ONHYFU7D.js +25 -0
- package/dist/{chunk-T24HBEU6.js → chunk-OOOVL77Y.js} +1 -1
- package/dist/{chunk-BLGBD2D2.js → chunk-P7HMY3BQ.js} +4 -4
- package/dist/chunk-PCAT2EFB.js +104 -0
- package/dist/{chunk-TPIMOGOZ.js → chunk-PEBQMX5X.js} +1 -1
- package/dist/{chunk-UY3FWQWG.js → chunk-PGBKZSSQ.js} +201 -22
- package/dist/{chunk-4TMBAOXK.js → chunk-PW57R4BN.js} +1 -1
- package/dist/chunk-PX5BOALQ.js +13 -0
- package/dist/{chunk-CFTBESST.js → chunk-Q6TCUSQA.js} +2 -2
- package/dist/{chunk-ZWXHTXZO.js → chunk-QGEDXYLB.js} +2 -2
- package/dist/{chunk-ZKLEAK7M.js → chunk-QM3432PH.js} +7 -7
- package/dist/{chunk-WTXCK46H.js → chunk-R2QBQ6NO.js} +1 -1
- package/dist/{chunk-Z6JKZI4E.js → chunk-RBQRTGXX.js} +1 -1
- package/dist/{chunk-TJIBTHWJ.js → chunk-RDIQB5ZE.js} +3 -3
- package/dist/{chunk-TPCBPGSB.js → chunk-RO5JU6SN.js} +4 -4
- package/dist/{chunk-O222F2IX.js → chunk-SGMWLUYQ.js} +6 -6
- package/dist/{chunk-HEA6TERQ.js → chunk-SHH7UD5U.js} +1 -1
- package/dist/{chunk-CLJGFOTV.js → chunk-SKGOKLJD.js} +31 -18
- package/dist/{chunk-CSXJIIO4.js → chunk-SNQ7PH3D.js} +1 -1
- package/dist/chunk-SPNTUQBV.js +244 -0
- package/dist/{chunk-RIAPCEB5.js → chunk-T3S3D4FC.js} +5 -5
- package/dist/chunk-TDFLCUBE.js +6 -0
- package/dist/{chunk-OQG4P5KU.js → chunk-TGGYSQRD.js} +5 -6
- package/dist/{chunk-7FF6CZW5.js → chunk-TQKQRS2J.js} +36 -8
- package/dist/chunk-TRXTO3WC.js +114 -0
- package/dist/{chunk-H5XTJ7GJ.js → chunk-TUEM2XIW.js} +1 -1
- package/dist/{chunk-4AUTALJA.js → chunk-U2IQNDDR.js} +1 -1
- package/dist/{chunk-IVTQWOXV.js → chunk-ULYHDP7U.js} +1 -1
- package/dist/{chunk-DGSK4LLS.js → chunk-V6WDJUYK.js} +1 -1
- package/dist/{chunk-Z2MZTI3H.js → chunk-VB3FVKNI.js} +1 -1
- package/dist/{chunk-R5OATXWU.js → chunk-VONEKR3J.js} +38 -15
- package/dist/{chunk-CZQ7UITX.js → chunk-WANKINXG.js} +3 -3
- package/dist/{chunk-HQOEAUDJ.js → chunk-WMO722J2.js} +2 -2
- package/dist/{chunk-D7G2QGET.js → chunk-X3US25XJ.js} +1 -1
- package/dist/{chunk-GPFYITOF.js → chunk-X7VZQKIW.js} +1 -1
- package/dist/{chunk-L4HHWG4V.js → chunk-XA2QKGBJ.js} +3 -3
- package/dist/{chunk-DV5L2GRY.js → chunk-XJMES7AE.js} +1 -1
- package/dist/{chunk-5NJMSYDZ.js → chunk-XNC3M4IN.js} +1 -1
- package/dist/{chunk-B2YSFWUG.js → chunk-XRWHDW6F.js} +9 -9
- package/dist/{chunk-TKUAGWNR.js → chunk-XTJHMP3W.js} +2 -2
- package/dist/{chunk-KTIQSSME.js → chunk-XZY6S3UC.js} +6 -3
- package/dist/{chunk-7KHM2FZH.js → chunk-YGRTX67J.js} +1 -1
- package/dist/{chunk-RTPQDNW3.js → chunk-YJQXESOJ.js} +5 -1
- package/dist/chunk-YP2FS6SH.js +54 -0
- package/dist/{chunk-LMQG3VPG.js → chunk-YQ7Q52XU.js} +1 -1
- package/dist/{chunk-G4CGDUCP.js → chunk-YRNNUCQP.js} +1 -1
- package/dist/{chunk-5CEQ3HLH.js → chunk-YXKSUILG.js} +6 -6
- package/dist/{chunk-NHLNHH4J.js → chunk-ZB3E2Z4Y.js} +1 -1
- package/dist/{chunk-IL3XLDW7.js → chunk-ZDWAIVWL.js} +1 -1
- package/dist/{chunk-SNIPM6K7.js → chunk-ZJVLGYE3.js} +3 -3
- package/dist/{chunk-BFM5G2Z6.js → chunk-ZPTKAYJK.js} +1 -1
- package/dist/{chunk-2PIH6JHJ.js → chunk-ZXTDWTXS.js} +1 -1
- package/dist/{chunk-C667GCU7.js → chunk-ZXXZESCD.js} +9 -7
- package/dist/generated/index.d.ts +17 -0
- package/dist/generated/index.js +184 -163
- package/dist/index.js +184 -163
- package/dist/styles.css +2769 -156
- package/dist/utils/composedRef.d.ts +39 -0
- package/dist/utils/focusModality.d.ts +14 -0
- package/dist/utils/heldHint.d.ts +6 -0
- package/dist/utils/index.d.ts +3 -1
- package/dist/utils/index.js +4 -2
- package/dist/utils/tokenMs.d.ts +6 -0
- package/package.json +5 -5
- package/dist/ArtifactKinds-O3CALPVX.css +0 -16
- package/dist/{chunk-PLNJEDGI.js → chunk-I4IO56EY.js} +1 -1
- package/dist/{chunk-FEJANUZK.js → chunk-KBSD476L.js} +0 -0
- package/dist/{chunk-624X3RVA.js → chunk-O55JQ7BE.js} +1 -1
- /package/dist/{chunk-CDFQ7MQK.js → chunk-REEZQCML.js} +0 -0
|
@@ -0,0 +1,322 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* The compact rail: each place its glyph's tile over its name, in one column.
|
|
3
|
+
*
|
|
4
|
+
* A PLACE IS 48PX TALL: a 26px tile, its name under it and a breath. Fourteen
|
|
5
|
+
* places, two rules, and the rail's head and foot stand in a 900px window, so
|
|
6
|
+
* the column a reader folded the rail to see more of the page never scrolls
|
|
7
|
+
* on a laptop.
|
|
8
|
+
*
|
|
9
|
+
* Tokens only. The tile's sizes are component variables, so a surface that
|
|
10
|
+
* draws the compact rail at another width changes them in one place.
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
.crewlet-compact-nav {
|
|
14
|
+
--crewlet-compact-nav-tile-width: 36px;
|
|
15
|
+
--crewlet-compact-nav-tile-height: var(--size-control-sm);
|
|
16
|
+
--crewlet-compact-nav-glyph: 17px;
|
|
17
|
+
width: 100%;
|
|
18
|
+
min-width: 0;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.crewlet-compact-nav__list {
|
|
22
|
+
display: flex;
|
|
23
|
+
flex-direction: column;
|
|
24
|
+
align-items: stretch;
|
|
25
|
+
margin: 0;
|
|
26
|
+
padding: 0 var(--spacing-1);
|
|
27
|
+
list-style: none;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.crewlet-compact-nav__entry {
|
|
31
|
+
display: flex;
|
|
32
|
+
min-width: 0;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/* A place is a link or a button, and a folded group is a button: one look for
|
|
36
|
+
all three. The entry itself draws nothing; the tile is what lifts. */
|
|
37
|
+
.crewlet-compact-nav__item {
|
|
38
|
+
display: flex;
|
|
39
|
+
flex-direction: column;
|
|
40
|
+
align-items: center;
|
|
41
|
+
gap: calc(var(--spacing-1) / 2);
|
|
42
|
+
width: 100%;
|
|
43
|
+
min-width: 0;
|
|
44
|
+
margin: 0;
|
|
45
|
+
padding: calc(var(--spacing-1) - 1px) 0 var(--spacing-1);
|
|
46
|
+
border: 0;
|
|
47
|
+
border-radius: var(--radius-md);
|
|
48
|
+
background: transparent;
|
|
49
|
+
color: var(--color-text-secondary);
|
|
50
|
+
font: inherit;
|
|
51
|
+
text-decoration: none;
|
|
52
|
+
cursor: pointer;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/* The ring is drawn on the tile (below), not round the whole entry. The
|
|
56
|
+
entry's own outline is transparent rather than none, so forced colours,
|
|
57
|
+
which paint a transparent outline in the system's ink, still draw one. */
|
|
58
|
+
.crewlet-compact-nav__item:focus {
|
|
59
|
+
outline: 2px solid transparent;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.crewlet-compact-nav__tile {
|
|
63
|
+
position: relative;
|
|
64
|
+
display: inline-flex;
|
|
65
|
+
align-items: center;
|
|
66
|
+
justify-content: center;
|
|
67
|
+
flex: none;
|
|
68
|
+
width: var(--crewlet-compact-nav-tile-width);
|
|
69
|
+
height: var(--crewlet-compact-nav-tile-height);
|
|
70
|
+
border-radius: var(--radius-md);
|
|
71
|
+
transition:
|
|
72
|
+
background var(--motion-duration-fast) var(--motion-easing-default),
|
|
73
|
+
color var(--motion-duration-fast) var(--motion-easing-default);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/* A step larger than the full rail's 14px glyph: in the compact rail the
|
|
77
|
+
glyph is the place's name at a glance, and the word under it is the
|
|
78
|
+
caption. */
|
|
79
|
+
.crewlet-compact-nav__tile > .crewlet-glyph {
|
|
80
|
+
width: var(--crewlet-compact-nav-glyph);
|
|
81
|
+
height: var(--crewlet-compact-nav-glyph);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.crewlet-compact-nav__item:hover .crewlet-compact-nav__tile,
|
|
85
|
+
.crewlet-compact-nav__item[data-open] .crewlet-compact-nav__tile {
|
|
86
|
+
background: var(--color-surface-hover);
|
|
87
|
+
color: var(--color-text-primary);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.crewlet-compact-nav__item:hover .crewlet-compact-nav__label,
|
|
91
|
+
.crewlet-compact-nav__item[data-open] .crewlet-compact-nav__label {
|
|
92
|
+
color: var(--color-text-primary);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/*
|
|
96
|
+
* WHERE THE READER IS: the full rail's own current row, drawn on the tile.
|
|
97
|
+
* Raised, the plain hairline as an OUTLINE (forced colours keep outlines and
|
|
98
|
+
* drop backgrounds), and the primary ink. After :hover, so the current tile
|
|
99
|
+
* shows its lift rather than the overlay. A folded group's tile is current
|
|
100
|
+
* (`aria-current="true"`) while one of its places is.
|
|
101
|
+
*/
|
|
102
|
+
.crewlet-compact-nav__item[aria-current] .crewlet-compact-nav__tile {
|
|
103
|
+
background: var(--color-surface-elevated);
|
|
104
|
+
outline: 1px solid var(--color-border-default);
|
|
105
|
+
outline-offset: -1px;
|
|
106
|
+
color: var(--color-text-primary);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.crewlet-compact-nav__item[aria-current] .crewlet-compact-nav__label {
|
|
110
|
+
color: var(--color-text-primary);
|
|
111
|
+
font-weight: var(--font-weight-semibold);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
/* The ring is the tile's, after the current rule that draws its hairline on
|
|
115
|
+
the same property, so a focused current tile draws the ring. */
|
|
116
|
+
.crewlet-compact-nav__item:focus-visible .crewlet-compact-nav__tile {
|
|
117
|
+
outline: 2px solid var(--color-focus);
|
|
118
|
+
outline-offset: 0;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.crewlet-compact-nav__label {
|
|
122
|
+
max-width: 100%;
|
|
123
|
+
box-sizing: border-box;
|
|
124
|
+
padding: 0 calc(var(--spacing-1) / 2);
|
|
125
|
+
overflow: hidden;
|
|
126
|
+
color: var(--color-text-secondary);
|
|
127
|
+
font-family: var(--font-family-sans);
|
|
128
|
+
font-size: var(--font-size-2xs);
|
|
129
|
+
font-weight: var(--font-weight-medium);
|
|
130
|
+
line-height: var(--font-line-height-tight);
|
|
131
|
+
text-align: center;
|
|
132
|
+
text-overflow: ellipsis;
|
|
133
|
+
white-space: nowrap;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/* A place the reader holds no access to keeps its name and its key, in the
|
|
137
|
+
quiet ink, as a locked group's rows do in the full rail. */
|
|
138
|
+
.crewlet-compact-nav__item--locked:not([aria-current]):not(:hover) .crewlet-compact-nav__label,
|
|
139
|
+
.crewlet-compact-nav__item--locked:not([aria-current]):not(:hover) .crewlet-compact-nav__tile {
|
|
140
|
+
color: var(--color-text-tertiary);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
/*
|
|
144
|
+
* THE FIGURE RIDES THE TILE'S TOP END CORNER, cut out of the rail by a ring of
|
|
145
|
+
* the rail's own ground, so it reads apart from the glyph under it. It is the
|
|
146
|
+
* one count badge size the whole chrome draws (`--size-badge`), the accent
|
|
147
|
+
* fill where it is waiting on the reader and the raised ground where it is
|
|
148
|
+
* only a tally.
|
|
149
|
+
*/
|
|
150
|
+
.crewlet-compact-nav__figure {
|
|
151
|
+
position: absolute;
|
|
152
|
+
top: calc(var(--spacing-1) * -1 - 1px);
|
|
153
|
+
right: calc(var(--spacing-2) * -1 + 1px);
|
|
154
|
+
display: inline-flex;
|
|
155
|
+
align-items: center;
|
|
156
|
+
justify-content: center;
|
|
157
|
+
min-width: var(--size-badge);
|
|
158
|
+
height: var(--size-badge);
|
|
159
|
+
box-sizing: border-box;
|
|
160
|
+
padding: 0 var(--size-badge-pad);
|
|
161
|
+
border: 2px solid var(--color-surface-frame);
|
|
162
|
+
border-radius: var(--radius-pill);
|
|
163
|
+
background: var(--color-surface-elevated);
|
|
164
|
+
color: var(--color-text-secondary);
|
|
165
|
+
font-family: var(--font-family-sans);
|
|
166
|
+
font-size: var(--font-size-badge);
|
|
167
|
+
font-weight: var(--font-weight-semibold);
|
|
168
|
+
font-variant-numeric: tabular-nums;
|
|
169
|
+
line-height: 1;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
.crewlet-compact-nav__figure--badge {
|
|
173
|
+
background: var(--color-brand-accent);
|
|
174
|
+
color: var(--color-text-on-accent);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
/* A short rule between two runs of tiles, centred in the column. */
|
|
178
|
+
.crewlet-compact-nav__separator {
|
|
179
|
+
display: flex;
|
|
180
|
+
justify-content: center;
|
|
181
|
+
padding: calc(var(--spacing-1) + var(--spacing-1) / 2) 0;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
.crewlet-compact-nav__rule {
|
|
185
|
+
width: var(--spacing-6);
|
|
186
|
+
height: 1px;
|
|
187
|
+
background: var(--color-border-default);
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
/*
|
|
191
|
+
* THE FLYOUT: a folded group's places beside the rail, on the popover's rung.
|
|
192
|
+
* Its rows are the full rail's rows at the menu's step: the glyph, the name,
|
|
193
|
+
* and the figure at the end, so the places read as they do unfolded.
|
|
194
|
+
*/
|
|
195
|
+
.crewlet-compact-nav__flyout {
|
|
196
|
+
position: fixed;
|
|
197
|
+
display: flex;
|
|
198
|
+
flex-direction: column;
|
|
199
|
+
gap: 1px;
|
|
200
|
+
min-width: 208px;
|
|
201
|
+
max-width: min(320px, calc(100vw - var(--spacing-4)));
|
|
202
|
+
box-sizing: border-box;
|
|
203
|
+
padding: var(--spacing-1);
|
|
204
|
+
border: 1px solid var(--color-border-default);
|
|
205
|
+
border-radius: var(--radius-lg);
|
|
206
|
+
background: var(--color-surface-elevated);
|
|
207
|
+
box-shadow: var(--shadow-lg);
|
|
208
|
+
font-family: var(--font-family-sans);
|
|
209
|
+
animation: crewlet-compact-nav-flyout-in var(--motion-duration-fast) var(--motion-easing-out);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
/* Inside a LayerHost the coordinates are the host's own, so the flyout is
|
|
213
|
+
absolute within it rather than fixed against the window. */
|
|
214
|
+
.crewlet-compact-nav__flyout--in-host {
|
|
215
|
+
position: absolute;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
@keyframes crewlet-compact-nav-flyout-in {
|
|
219
|
+
from {
|
|
220
|
+
opacity: 0;
|
|
221
|
+
transform: translateX(calc(var(--spacing-1) * -1));
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
.crewlet-compact-nav__flyout-head {
|
|
226
|
+
padding: var(--spacing-1) var(--spacing-2);
|
|
227
|
+
color: var(--color-text-secondary);
|
|
228
|
+
font-size: var(--font-size-xs);
|
|
229
|
+
font-weight: var(--font-weight-semibold);
|
|
230
|
+
line-height: var(--font-line-height-tight);
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
/* A router's link is drawn by the caller; its wrapper stays out of the box tree. */
|
|
234
|
+
.crewlet-compact-nav__link-slot {
|
|
235
|
+
display: contents;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
.crewlet-compact-nav__link {
|
|
239
|
+
display: flex;
|
|
240
|
+
align-items: center;
|
|
241
|
+
gap: var(--spacing-2);
|
|
242
|
+
min-width: 0;
|
|
243
|
+
height: var(--size-control-md);
|
|
244
|
+
padding: 0 var(--spacing-2);
|
|
245
|
+
border-radius: var(--radius-md);
|
|
246
|
+
color: var(--color-text-secondary);
|
|
247
|
+
font-size: var(--font-size-sm);
|
|
248
|
+
text-decoration: none;
|
|
249
|
+
outline: none;
|
|
250
|
+
transition:
|
|
251
|
+
background var(--motion-duration-fast) var(--motion-easing-default),
|
|
252
|
+
color var(--motion-duration-fast) var(--motion-easing-default);
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
.crewlet-compact-nav__link:hover,
|
|
256
|
+
.crewlet-compact-nav__link:focus-visible {
|
|
257
|
+
background: var(--color-surface-hover);
|
|
258
|
+
color: var(--color-text-primary);
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
/* The place the reader is on: the selected fill, the primary ink, a step
|
|
262
|
+
heavier. Declared after the hover so the selected fill holds under it. */
|
|
263
|
+
.crewlet-compact-nav__link[aria-current='page'] {
|
|
264
|
+
background: var(--color-surface-selected);
|
|
265
|
+
color: var(--color-text-primary);
|
|
266
|
+
font-weight: var(--font-weight-semibold);
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
.crewlet-compact-nav__link:focus-visible {
|
|
270
|
+
outline: 2px solid var(--color-focus);
|
|
271
|
+
outline-offset: var(--size-focus-ring-inset-offset);
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
.crewlet-compact-nav__link--locked:not([aria-current]):not(:hover):not(:focus-visible) {
|
|
275
|
+
color: var(--color-text-tertiary);
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
.crewlet-compact-nav__link-icon {
|
|
279
|
+
display: inline-flex;
|
|
280
|
+
flex: none;
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
.crewlet-compact-nav__link-label {
|
|
284
|
+
flex: 1 1 auto;
|
|
285
|
+
min-width: 0;
|
|
286
|
+
overflow: hidden;
|
|
287
|
+
text-overflow: ellipsis;
|
|
288
|
+
white-space: nowrap;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
.crewlet-compact-nav__link-figure {
|
|
292
|
+
display: inline-flex;
|
|
293
|
+
align-items: center;
|
|
294
|
+
justify-content: center;
|
|
295
|
+
flex: none;
|
|
296
|
+
min-width: var(--size-badge);
|
|
297
|
+
height: var(--size-badge);
|
|
298
|
+
box-sizing: border-box;
|
|
299
|
+
padding: 0 var(--size-badge-pad);
|
|
300
|
+
border-radius: var(--radius-pill);
|
|
301
|
+
color: var(--color-text-tertiary);
|
|
302
|
+
font-size: var(--font-size-badge);
|
|
303
|
+
font-weight: var(--font-weight-semibold);
|
|
304
|
+
font-variant-numeric: tabular-nums;
|
|
305
|
+
line-height: 1;
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
.crewlet-compact-nav__link-figure--badge {
|
|
309
|
+
background: var(--color-brand-accent);
|
|
310
|
+
color: var(--color-text-on-accent);
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
@media (prefers-reduced-motion: reduce) {
|
|
314
|
+
.crewlet-compact-nav__tile,
|
|
315
|
+
.crewlet-compact-nav__link {
|
|
316
|
+
transition: none;
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
.crewlet-compact-nav__flyout {
|
|
320
|
+
animation: none;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
@@ -8,6 +8,8 @@ export declare const COMPOSER_COUNTER_AT = 0.8;
|
|
|
8
8
|
* every chat surface sends it: Enter sends and Shift+Enter writes a line.
|
|
9
9
|
*/
|
|
10
10
|
export type ComposerSubmitKey = 'mod-enter' | 'enter';
|
|
11
|
+
/** The box's look: `default`, a form's field, or `chat`, a conversation's message box. */
|
|
12
|
+
export type ComposerAppearance = 'default' | 'chat';
|
|
11
13
|
export interface ComposerProps extends Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, 'value' | 'onChange' | 'onSubmit' | 'children'> {
|
|
12
14
|
value: string;
|
|
13
15
|
onChange: (value: string) => void;
|
|
@@ -20,8 +22,29 @@ export interface ComposerProps extends Omit<TextareaHTMLAttributes<HTMLTextAreaE
|
|
|
20
22
|
submitOn?: ComposerSubmitKey | undefined;
|
|
21
23
|
/** Names the field for a screen reader, since it carries no visible label. */
|
|
22
24
|
label: string;
|
|
25
|
+
/**
|
|
26
|
+
* `chat` is a conversation's message box, on the transcript's own type and
|
|
27
|
+
* ground (the `--crewlet-chat-*` scale): the large corner, the transcript's
|
|
28
|
+
* ground with the row wash and a small shadow, the words at the chat step, a
|
|
29
|
+
* footer with no rule of its own, a tool whose menu is open drawn pressed,
|
|
30
|
+
* and the formatting row's glyphs quiet until the box is in use.
|
|
31
|
+
*/
|
|
32
|
+
appearance?: ComposerAppearance | undefined;
|
|
23
33
|
/** The footer's controls, at its end: Cancel and Submit. */
|
|
24
34
|
actions?: ReactNode;
|
|
35
|
+
/**
|
|
36
|
+
* Tools at the footer's START, before the actions: what a chat composer
|
|
37
|
+
* offers beside sending (attach, emoji, a mention, drafting with the
|
|
38
|
+
* assistant). They stand where the eye starts, under the words, and the
|
|
39
|
+
* send control keeps the corner.
|
|
40
|
+
*/
|
|
41
|
+
tools?: ReactNode;
|
|
42
|
+
/**
|
|
43
|
+
* A row along the box's top, inside its edge and before everything else: a
|
|
44
|
+
* formatting `Toolbar` (bold, italic, a list) that acts on the words below.
|
|
45
|
+
* Pass a `Toolbar` with its own name; the row is laid out, not labelled.
|
|
46
|
+
*/
|
|
47
|
+
toolbar?: ReactNode;
|
|
25
48
|
/**
|
|
26
49
|
* A control on the field's own row, at its end: the send button of a chat
|
|
27
50
|
* composer (`SendButton`). With one, the field starts at one line and grows
|
|
@@ -49,8 +72,9 @@ export interface ComposerProps extends Omit<TextareaHTMLAttributes<HTMLTextAreaE
|
|
|
49
72
|
}
|
|
50
73
|
/**
|
|
51
74
|
* A message written in place: a borderless field that grows with its text,
|
|
52
|
-
* and a footer strip holding the send shortcut, a counter and the
|
|
53
|
-
* one box that takes the focus ring as a whole.
|
|
75
|
+
* and a footer strip holding the tools, the send shortcut, a counter and the
|
|
76
|
+
* actions, in one box that takes the focus ring as a whole. A formatting row
|
|
77
|
+
* (`toolbar`) may stand along the box's top, above the words it acts on.
|
|
54
78
|
*
|
|
55
79
|
* THE FOOTER IS DRAWN ONLY WITH SOMETHING IN IT. With no shortcut, counter or
|
|
56
80
|
* actions there is no strip at all, and one holding only the shortcut's hint
|
package/dist/Composer/index.d.ts
CHANGED
package/dist/Composer/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export { COMPOSER_COUNTER_AT, Composer } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-FB3TCNQP.js';
|
|
1
|
+
export { COMPOSER_COUNTER_AT, Composer } from '../chunk-EBVZHVPD.js';
|
|
2
|
+
import '../chunk-O7N6W52M.js';
|
|
4
3
|
import '../chunk-PGCLHYVP.js';
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-2G355KDJ.js';
|
|
4
|
+
import '../chunk-CMAZZY2I.js';
|
|
7
5
|
import '../chunk-OMV5W53A.js';
|
|
8
|
-
import '../chunk-
|
|
6
|
+
import '../chunk-TUEM2XIW.js';
|
|
7
|
+
import '../chunk-4ITETIGZ.js';
|
|
9
8
|
import '../chunk-UAUP6XGK.js';
|
|
10
|
-
import '../chunk-
|
|
9
|
+
import '../chunk-PQADV6P6.js';
|
|
10
|
+
import '../chunk-2G355KDJ.js';
|
|
11
11
|
import '../chunk-UT6CW3C7.js';
|
|
12
12
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -136,6 +136,32 @@
|
|
|
136
136
|
padding: var(--spacing-2) var(--spacing-3) 0;
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
+
/*
|
|
140
|
+
* THE FORMATTING ROW, along the box's top on the field's own inset less the
|
|
141
|
+
* small tool's own room round its glyph, so the first glyph starts on the
|
|
142
|
+
* words' line. It belongs to the field rather than to a strip of its own: no
|
|
143
|
+
* rule under it.
|
|
144
|
+
*/
|
|
145
|
+
.crewlet-composer__toolbar {
|
|
146
|
+
display: flex;
|
|
147
|
+
align-items: center;
|
|
148
|
+
min-width: 0;
|
|
149
|
+
padding: var(--spacing-1) var(--spacing-1) 0 calc(var(--spacing-3) - (var(--size-control-sm) - var(--font-size-xs)) / 2);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/*
|
|
153
|
+
* THE TOOLS AT THE FOOTER'S START, a tight row whose first glyph starts on
|
|
154
|
+
* the words' line, as the formatting row's does. The spacer after them puts
|
|
155
|
+
* the actions at the end.
|
|
156
|
+
*/
|
|
157
|
+
.crewlet-composer__tools {
|
|
158
|
+
display: flex;
|
|
159
|
+
align-items: center;
|
|
160
|
+
gap: 2px;
|
|
161
|
+
min-width: 0;
|
|
162
|
+
margin-inline-start: calc(-1 * (var(--size-control-sm) - var(--font-size-xs)) / 2);
|
|
163
|
+
}
|
|
164
|
+
|
|
139
165
|
/*
|
|
140
166
|
* DISABLED, AS A FIELD IS: the whole box at the disabled field's 0.6 and the
|
|
141
167
|
* not-allowed cursor, so it no longer reads as somewhere to type. Faded once:
|
|
@@ -212,3 +238,48 @@
|
|
|
212
238
|
transition: none;
|
|
213
239
|
}
|
|
214
240
|
}
|
|
241
|
+
|
|
242
|
+
/*
|
|
243
|
+
* A CONVERSATION'S MESSAGE BOX (`appearance="chat"`), on the transcript's own
|
|
244
|
+
* scale (ChatMessage/ChatScale.css): the large corner on the transcript's
|
|
245
|
+
* ground with the row wash laid over it, a step lighter than the list, and a
|
|
246
|
+
* small shadow, so the box sits just above the messages, inside the edge
|
|
247
|
+
* scale's strong step, the edge a field draws. The words are set at the
|
|
248
|
+
* transcript's size on one line to start. The footer belongs to the field
|
|
249
|
+
* rather than standing as a strip under it: no rule and no ground of its own.
|
|
250
|
+
*/
|
|
251
|
+
.crewlet-composer--chat {
|
|
252
|
+
border-color: var(--color-edge-strong);
|
|
253
|
+
background:
|
|
254
|
+
linear-gradient(var(--color-fill-row), var(--color-fill-row)),
|
|
255
|
+
var(--crewlet-chat-ground);
|
|
256
|
+
box-shadow: var(--shadow-xs);
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
.crewlet-composer--chat .crewlet-composer__field {
|
|
260
|
+
min-height: 0;
|
|
261
|
+
padding: var(--spacing-2) var(--spacing-3);
|
|
262
|
+
font-size: var(--crewlet-chat-text);
|
|
263
|
+
line-height: var(--crewlet-chat-line);
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
.crewlet-composer--chat .crewlet-composer__footer {
|
|
267
|
+
gap: 2px;
|
|
268
|
+
padding: var(--spacing-1);
|
|
269
|
+
padding-inline-start: var(--spacing-3);
|
|
270
|
+
border-top: 0;
|
|
271
|
+
background: transparent;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
/* A tool whose menu or picker is open reads as held down. */
|
|
275
|
+
.crewlet-composer--chat .crewlet-composer__tools [aria-expanded='true'] {
|
|
276
|
+
background: var(--color-surface-pressed);
|
|
277
|
+
color: var(--color-text-primary);
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
/* The formatting row's glyphs rest in the tertiary ink while the box is not
|
|
281
|
+
in use, so the row reads as part of the field rather than as a toolbar
|
|
282
|
+
competing with the conversation, and take their own ink once it is. */
|
|
283
|
+
.crewlet-composer--chat:not(:focus-within) .crewlet-composer__toolbar :is(button, [role='button']):not(:hover) {
|
|
284
|
+
color: var(--color-text-tertiary);
|
|
285
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export { ConfirmField, confirmMatches } from '../chunk-
|
|
1
|
+
export { ConfirmField, confirmMatches } from '../chunk-PEBQMX5X.js';
|
|
2
2
|
import '../chunk-PLL7ZJHY.js';
|
|
3
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-O7N6W52M.js';
|
|
4
4
|
import '../chunk-PGCLHYVP.js';
|
|
5
|
+
import '../chunk-TUEM2XIW.js';
|
|
6
|
+
import '../chunk-4ITETIGZ.js';
|
|
7
|
+
import '../chunk-UAUP6XGK.js';
|
|
5
8
|
import '../chunk-PQADV6P6.js';
|
|
6
9
|
import '../chunk-2G355KDJ.js';
|
|
7
|
-
import '../chunk-H5XTJ7GJ.js';
|
|
8
|
-
import '../chunk-UAUP6XGK.js';
|
|
9
|
-
import '../chunk-NUZHC6MM.js';
|
|
10
10
|
import '../chunk-UT6CW3C7.js';
|
|
11
11
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { ContrastBadge, ContrastLevelTag, contrastLevel, contrastRatio, formatContrastRatio } from '../chunk-
|
|
1
|
+
export { ContrastBadge, ContrastLevelTag, contrastLevel, contrastRatio, formatContrastRatio } from '../chunk-2ZSCHQOA.js';
|
|
2
|
+
import '../chunk-LBGKLYBY.js';
|
|
2
3
|
import '../chunk-7W3LYIOC.js';
|
|
3
|
-
import '../chunk-VERJCAJ4.js';
|
|
4
4
|
import '../chunk-CYQBDZ6M.js';
|
|
5
5
|
import '../chunk-UT6CW3C7.js';
|
|
6
6
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
export { ContrastHelp } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { ContrastHelp } from '../chunk-WMO722J2.js';
|
|
2
|
+
import '../chunk-2ZSCHQOA.js';
|
|
3
|
+
import '../chunk-LBGKLYBY.js';
|
|
4
|
+
import '../chunk-EC6EUIAD.js';
|
|
4
5
|
import '../chunk-7W3LYIOC.js';
|
|
5
|
-
import '../chunk-VERJCAJ4.js';
|
|
6
6
|
import '../chunk-CYQBDZ6M.js';
|
|
7
|
+
import '../chunk-L72URIHR.js';
|
|
7
8
|
import '../chunk-OMV5W53A.js';
|
|
8
|
-
import '../chunk-
|
|
9
|
+
import '../chunk-TUEM2XIW.js';
|
|
10
|
+
import '../chunk-4ITETIGZ.js';
|
|
9
11
|
import '../chunk-UAUP6XGK.js';
|
|
10
|
-
import '../chunk-NUZHC6MM.js';
|
|
11
12
|
import '../chunk-UT6CW3C7.js';
|
|
12
13
|
import '../chunk-ODEQTPFM.js';
|
package/dist/Count/Count.d.ts
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a count says by its colour: nothing, or that it waits on the reader.
|
|
3
|
+
*
|
|
4
|
+
* `quiet` is the default and every count of how many things a panel, a tab or
|
|
5
|
+
* a heading is about. `attention` is a count of what WAITS ON THE READER (a
|
|
6
|
+
* mention, a direct message, a new reply to them): the accent's own meaning,
|
|
7
|
+
* the same 16px pill a navigation row's badge draws, so a menu button, a
|
|
8
|
+
* switcher and a row in a list agree on what the reader has not seen.
|
|
9
|
+
*/
|
|
10
|
+
export type CountTone = 'quiet' | 'attention';
|
|
1
11
|
export interface CountProps {
|
|
2
12
|
/** How many. Rendered as it is given, so a caller decides its own formatting. */
|
|
3
13
|
value: number | string;
|
|
@@ -7,18 +17,26 @@ export interface CountProps {
|
|
|
7
17
|
* already says what it counts.
|
|
8
18
|
*/
|
|
9
19
|
label?: string | undefined;
|
|
20
|
+
/** `quiet` (the default) or `attention`, for a count that waits on the reader. */
|
|
21
|
+
tone?: CountTone | undefined;
|
|
10
22
|
className?: string | undefined;
|
|
11
23
|
}
|
|
12
24
|
/**
|
|
13
25
|
* How many of something a panel, a tab or a heading is about.
|
|
14
26
|
*
|
|
15
|
-
* IT IS NEVER TINTED, and that is the whole rule. A count coloured
|
|
16
|
-
* is a claim the number cannot support: three of something is not
|
|
17
|
-
* and a red 3 beside "Failures" says the same thing twice while a
|
|
18
|
-
* "Retries" says something nobody meant.
|
|
19
|
-
* tertiary ink, in every context.
|
|
27
|
+
* IT IS NEVER TINTED BY SEVERITY, and that is the whole rule. A count coloured
|
|
28
|
+
* by severity is a claim the number cannot support: three of something is not
|
|
29
|
+
* a warning, and a red 3 beside "Failures" says the same thing twice while a
|
|
30
|
+
* red 3 beside "Retries" says something nobody meant. A quiet count sits on
|
|
31
|
+
* the inset surface in the tertiary ink, in every context.
|
|
32
|
+
*
|
|
33
|
+
* THE ONE COLOUR IT TAKES IS THE ACCENT, and only for `tone="attention"`: a
|
|
34
|
+
* count of what waits on the reader, which is what the accent means. It is the
|
|
35
|
+
* badge pill (`--size-badge`, its figure at `--font-size-badge`), so it never
|
|
36
|
+
* reads louder than the name beside it. It is never the only carrier: its
|
|
37
|
+
* label, or the row it sits in, says what is waiting.
|
|
20
38
|
*
|
|
21
39
|
* Tabular figures, so a count that ticks up does not shift the heading beside
|
|
22
40
|
* it, and a minimum width so 1 and 10 draw the same pill.
|
|
23
41
|
*/
|
|
24
|
-
export declare function Count({ value, label, className }: CountProps): import("react").JSX.Element;
|
|
42
|
+
export declare function Count({ value, label, tone, className }: CountProps): import("react").JSX.Element;
|
package/dist/Count/index.d.ts
CHANGED
package/dist/Count/index.js
CHANGED
|
@@ -23,3 +23,22 @@
|
|
|
23
23
|
and the pill lands on 18px with its figures on its middle. */
|
|
24
24
|
line-height: round(nearest, calc(var(--font-line-height-body) * 1em), 1px);
|
|
25
25
|
}
|
|
26
|
+
|
|
27
|
+
/*
|
|
28
|
+
* WHAT WAITS ON THE READER (`tone="attention"`): the accent pill every count
|
|
29
|
+
* of that kind is drawn as, wherever it stands, at the badge's own size: 16px
|
|
30
|
+
* tall and at least as wide, its figure at the badge step in the semibold
|
|
31
|
+
* weight. At 18px with an 11px figure such a badge read louder than the name
|
|
32
|
+
* beside it.
|
|
33
|
+
*/
|
|
34
|
+
.crewlet-count--attention {
|
|
35
|
+
box-sizing: border-box;
|
|
36
|
+
min-width: var(--size-badge);
|
|
37
|
+
height: var(--size-badge);
|
|
38
|
+
padding: 0 var(--size-badge-pad);
|
|
39
|
+
background: var(--color-brand-accent);
|
|
40
|
+
color: var(--color-text-on-accent);
|
|
41
|
+
font-size: var(--font-size-badge);
|
|
42
|
+
font-weight: var(--font-weight-semibold);
|
|
43
|
+
line-height: 1;
|
|
44
|
+
}
|
package/dist/DataGrid/index.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
export { ChooserList, ColumnChooser, DATA_GRID_ICON_TRACK, DataGrid, columnChoicesOf, countDataGridRows, fitGridColumns, nextGridSort, parseGridSort, useAnyDataGridDriving, useDataGridDriving } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { ChooserList, ColumnChooser, DATA_GRID_ICON_TRACK, DataGrid, columnChoicesOf, countDataGridRows, fitGridColumns, nextGridSort, parseGridSort, useAnyDataGridDriving, useDataGridDriving } from '../chunk-ABRWL5FJ.js';
|
|
2
|
+
import '../chunk-YQ7Q52XU.js';
|
|
3
|
+
import '../chunk-YJQXESOJ.js';
|
|
3
4
|
import '../chunk-PPUR46MK.js';
|
|
4
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-O7N6W52M.js';
|
|
5
6
|
import '../chunk-PGCLHYVP.js';
|
|
6
|
-
import '../chunk-PQADV6P6.js';
|
|
7
|
-
import '../chunk-2G355KDJ.js';
|
|
8
|
-
import '../chunk-RTPQDNW3.js';
|
|
9
7
|
import '../chunk-DGXZ635L.js';
|
|
10
8
|
import '../chunk-XSPCITPN.js';
|
|
11
|
-
import '../chunk-
|
|
9
|
+
import '../chunk-TUEM2XIW.js';
|
|
10
|
+
import '../chunk-4ITETIGZ.js';
|
|
12
11
|
import '../chunk-UAUP6XGK.js';
|
|
13
|
-
import '../chunk-
|
|
12
|
+
import '../chunk-PQADV6P6.js';
|
|
13
|
+
import '../chunk-2G355KDJ.js';
|
|
14
14
|
import '../chunk-UT6CW3C7.js';
|
|
15
15
|
import '../chunk-ODEQTPFM.js';
|
package/dist/DataTable/index.js
CHANGED
|
@@ -1,20 +1,21 @@
|
|
|
1
|
-
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-WANKINXG.js';
|
|
2
|
+
import '../chunk-ZXXZESCD.js';
|
|
3
3
|
import '../chunk-STJ7QBC3.js';
|
|
4
4
|
import '../chunk-DTIW4CHZ.js';
|
|
5
5
|
import '../chunk-RE3FBGQQ.js';
|
|
6
6
|
import '../chunk-AV2DXAEL.js';
|
|
7
|
-
import '../chunk-
|
|
8
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-YQ7Q52XU.js';
|
|
8
|
+
import '../chunk-TGGYSQRD.js';
|
|
9
|
+
import '../chunk-L72URIHR.js';
|
|
10
|
+
import '../chunk-O7N6W52M.js';
|
|
9
11
|
import '../chunk-PGCLHYVP.js';
|
|
10
|
-
import '../chunk-PQADV6P6.js';
|
|
11
|
-
import '../chunk-2G355KDJ.js';
|
|
12
|
-
import '../chunk-OQG4P5KU.js';
|
|
13
12
|
import '../chunk-DGXZ635L.js';
|
|
14
|
-
import '../chunk-OMV5W53A.js';
|
|
15
13
|
import '../chunk-XSPCITPN.js';
|
|
16
|
-
import '../chunk-
|
|
14
|
+
import '../chunk-OMV5W53A.js';
|
|
15
|
+
import '../chunk-TUEM2XIW.js';
|
|
16
|
+
import '../chunk-4ITETIGZ.js';
|
|
17
17
|
import '../chunk-UAUP6XGK.js';
|
|
18
|
-
import '../chunk-
|
|
18
|
+
import '../chunk-PQADV6P6.js';
|
|
19
|
+
import '../chunk-2G355KDJ.js';
|
|
19
20
|
import '../chunk-UT6CW3C7.js';
|
|
20
21
|
import '../chunk-ODEQTPFM.js';
|