@crewlethq/ui 0.64.1 → 0.65.1

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 (44) hide show
  1. package/dist/AppShell/index.d.ts +1 -0
  2. package/dist/AppShell/index.js +1 -1
  3. package/dist/AppShell/screenWidth.d.ts +66 -0
  4. package/dist/ArtifactCard/index.js +3 -3
  5. package/dist/AuthLayout/index.js +2 -2
  6. package/dist/Card/index.js +1 -1
  7. package/dist/DataGrid/DataGrid.d.ts +35 -3
  8. package/dist/DataGrid/index.js +1 -1
  9. package/dist/{DataGrid-QYORTTHI.css → DataGrid-NHIN2I42.css} +96 -93
  10. package/dist/DeepWorkCard/index.js +3 -3
  11. package/dist/EntityList/index.js +3 -3
  12. package/dist/FolderTile/index.js +2 -2
  13. package/dist/ListDetail/ListDetail.d.ts +10 -5
  14. package/dist/ListDetail/index.js +1 -1
  15. package/dist/{ListDetail-5NXERLRJ.css → ListDetail-N3L7PB46.css} +38 -9
  16. package/dist/OpenInAppCard/index.js +3 -3
  17. package/dist/ProposalCard/index.js +3 -3
  18. package/dist/RefusalCard/index.js +3 -3
  19. package/dist/RelatedRow/index.js +2 -2
  20. package/dist/ResultTableCard/index.js +3 -3
  21. package/dist/RichEditor/index.js +1 -1
  22. package/dist/StatusCard/index.js +2 -2
  23. package/dist/{StatusCard-FCJN7SXJ.css → StatusCard-72STCSWY.css} +6 -6
  24. package/dist/{chunk-7XKDPTZ5.js → chunk-4AUTALJA.js} +5 -6
  25. package/dist/{chunk-ZFN4IBVC.js → chunk-5K7GGQNX.js} +1 -1
  26. package/dist/{chunk-ISBKJOLI.js → chunk-7IW3P6FH.js} +1 -1
  27. package/dist/{chunk-RPX3WICJ.js → chunk-7QTJO3PV.js} +1 -1
  28. package/dist/{chunk-OGRMOWMO.js → chunk-CNEHFH2A.js} +1 -1
  29. package/dist/{chunk-BVNFNFA6.js → chunk-DS5NBENV.js} +1 -1
  30. package/dist/{chunk-AJLMINJU.js → chunk-E55DKVY7.js} +61 -3
  31. package/dist/{chunk-4W7F3JEK.js → chunk-ELLRZ5XR.js} +20 -9
  32. package/dist/{chunk-4WKOLL7C.js → chunk-FZUDUNCK.js} +1 -1
  33. package/dist/{chunk-G4234OIG.js → chunk-NTQPJJAN.js} +4 -4
  34. package/dist/{chunk-YBKZJBKM.js → chunk-RQHN4J5P.js} +1 -1
  35. package/dist/{chunk-N7PXGOZP.js → chunk-UBIPDEFV.js} +2 -2
  36. package/dist/{chunk-RHL4OMQ3.js → chunk-UWOYDHVW.js} +1 -1
  37. package/dist/{chunk-JAFWGVX2.js → chunk-WKKWF277.js} +1 -1
  38. package/dist/{chunk-6MTJWQ3V.js → chunk-WTXCK46H.js} +1 -1
  39. package/dist/{chunk-RXG543EB.js → chunk-YBC2CYPD.js} +4 -4
  40. package/dist/generated/index.js +28 -28
  41. package/dist/index.js +28 -28
  42. package/dist/styles.css +142 -110
  43. package/package.json +3 -3
  44. package/dist/{Editor-URGZOK2S.js → Editor-NZRUKWB4.js} +1 -1
package/dist/index.js CHANGED
@@ -13,8 +13,8 @@ export { ThemeSwatch } from './chunk-3XQUEF5C.js';
13
13
  export { DensitySwitcher, ThemeSwitcher } from './chunk-7EOUVWGQ.js';
14
14
  export { ThemeToggle } from './chunk-IPMJGK2Q.js';
15
15
  export { applyStoredPreferences, resolveTheme, useDensityPreference, useSystemTheme, useThemePreference } from './chunk-Z24ZUSTX.js';
16
- export { TileGrid } from './chunk-Q6CQMS6R.js';
17
16
  export { ThinkingIndicator } from './chunk-E2MIUNUU.js';
17
+ export { TileGrid } from './chunk-Q6CQMS6R.js';
18
18
  export { TIME_RANGE_CUSTOM, TIME_RANGE_PICKER_LABELS, TimeRangePicker, timeRangeFieldKey, timeRangeProblem } from './chunk-PQWNK3N7.js';
19
19
  export { Switcher } from './chunk-GDDVI4US.js';
20
20
  export { TABLE_TAGS_CELL_LABELS, TableDateCell, TableEntityCell, TableKeyCell, TableNumberCell, TableStatusCell, TableTagsCell, TableTextCell } from './chunk-NWTHGZBH.js';
@@ -27,37 +27,37 @@ export { SLIDE_COMPARE_LABELS, SlideCompare } from './chunk-2SU735S3.js';
27
27
  export { SlideFilmstrip } from './chunk-U7J52N67.js';
28
28
  export { SlideGrid } from './chunk-7MGXHCVK.js';
29
29
  export { SOURCE_EDITOR_KEYS, SourceEditor, lineStart } from './chunk-4TMBAOXK.js';
30
- export { SetupWizard } from './chunk-R2YHKVWN.js';
31
30
  export { SettingsTable, SettingsTableRow } from './chunk-4RKTZSEW.js';
31
+ export { SetupWizard } from './chunk-R2YHKVWN.js';
32
32
  export { ARTIFACT_ROLES, SHAREABLE_ROLES, ShareDialog, roleAtLeast } from './chunk-WWXIGN4O.js';
33
33
  export { SHEET_COLUMN_EDITOR_LABELS, SheetColumnEditor, SheetColumnTypeGlyph } from './chunk-SBOUVASH.js';
34
34
  export { CellDisplay, CellEditor, CheckboxCell, DateCell, LongTextCell, MultiSelectCell, NumberCell, PersonCell, RatingCell, SelectCell, SheetCell, SheetGrid, StatusCell, TextCell, UrlCell } from './chunk-OOC6KXNL.js';
35
35
  export { TagGroup } from './chunk-UEOEBOBR.js';
36
36
  export { matchesShortcut, useShortcut } from './chunk-AYHIF6DH.js';
37
37
  import './chunk-73GUXYYE.js';
38
- export { SearchTrigger } from './chunk-ERNT3UTB.js';
39
38
  export { SectionFrame, SectionFrameBody, SectionFrameNav } from './chunk-G4CGDUCP.js';
40
39
  export { NavGroup, NavItem, SidebarNav } from './chunk-WCDPFTJZ.js';
40
+ export { SearchTrigger } from './chunk-ERNT3UTB.js';
41
41
  export { SegmentedMeter, segmentedMeterLabel } from './chunk-4AK52VHB.js';
42
42
  export { Select } from './chunk-VK45YJLH.js';
43
43
  export { SelectionBar } from './chunk-WU5JDEEY.js';
44
44
  export { SEND_BUTTON_LABELS, SendButton } from './chunk-T2GC7UAP.js';
45
- export { ReviewList } from './chunk-DO4J4TBZ.js';
46
- export { RESULT_TABLE_CARD_LABELS, RESULT_TABLE_COLLAPSED_ROWS, RESULT_TABLE_MAX_ROWS, ResultTableCard } from './chunk-RPX3WICJ.js';
45
+ export { RESULT_TABLE_CARD_LABELS, RESULT_TABLE_COLLAPSED_ROWS, RESULT_TABLE_MAX_ROWS, ResultTableCard } from './chunk-7QTJO3PV.js';
47
46
  export { Table } from './chunk-5DJMFRSZ.js';
48
- export { RichEditor, preloadRichEditor } from './chunk-BVNFNFA6.js';
49
- export { RICH_EDITOR_LABELS, richEditorLabels } from './chunk-CSQTDGTS.js';
47
+ export { ReviewList } from './chunk-DO4J4TBZ.js';
50
48
  export { canonicalMarkdown, roundTripMarkdown } from './chunk-SWD4QBL6.js';
51
49
  import './chunk-QH6VYJ3X.js';
52
50
  export { RUN_STATES, RunChip } from './chunk-PIAGTZY3.js';
53
51
  export { FRAME_HELLO_TIMEOUT_MS, FRAME_LOAD_GRACE_MS, SandboxedFrame, SandboxedFrameNotice, SandboxedFramePlaceholder } from './chunk-OJGI4XJH.js';
52
+ export { RichEditor, preloadRichEditor } from './chunk-DS5NBENV.js';
53
+ export { RICH_EDITOR_LABELS, richEditorLabels } from './chunk-CSQTDGTS.js';
54
54
  export { PropertyList } from './chunk-HIWPPWNY.js';
55
- export { PROPOSAL_CARD_LABELS, PROPOSAL_FAILURE_OUTCOMES, PROPOSAL_STATES, ProposalCard } from './chunk-4WKOLL7C.js';
56
- export { Prose } from './chunk-DVVP27OD.js';
55
+ export { PROPOSAL_CARD_LABELS, PROPOSAL_FAILURE_OUTCOMES, PROPOSAL_STATES, ProposalCard } from './chunk-FZUDUNCK.js';
57
56
  export { QR_DARK, QR_LIGHT, QR_QUIET_ZONE, QrCode, qrModulePath, qrModules } from './chunk-Y56FM3K4.js';
57
+ export { Prose } from './chunk-DVVP27OD.js';
58
58
  export { ReadingPane, ReadingPaneByline, ReadingPaneLead, ReadingPaneOutcome, ReadingPaneQuote, ReadingPaneReasoning, ReadingPaneSection, ReadingPaneTitle } from './chunk-ZAJHGDAW.js';
59
- export { REFUSAL_CARD_LABELS, RefusalCard } from './chunk-YBKZJBKM.js';
60
- export { RelatedRow } from './chunk-OGRMOWMO.js';
59
+ export { REFUSAL_CARD_LABELS, RefusalCard } from './chunk-RQHN4J5P.js';
60
+ export { RelatedRow } from './chunk-CNEHFH2A.js';
61
61
  export { Text } from './chunk-QP2P6GDQ.js';
62
62
  export { PresenceStack } from './chunk-EVXXY75R.js';
63
63
  export { PresenterView, formatStopwatch } from './chunk-KHHDCNYM.js';
@@ -78,7 +78,7 @@ export { PinTile } from './chunk-LJ3KWQLP.js';
78
78
  export { MessageBubble } from './chunk-KAQ2L74F.js';
79
79
  export { NewItemsNotice } from './chunk-463DNZXI.js';
80
80
  export { FactLine, ObjectHeader, SetByLine } from './chunk-S7WG53JB.js';
81
- export { OPEN_IN_APP_CARD_LABELS, OpenInAppCard } from './chunk-ZFN4IBVC.js';
81
+ export { OPEN_IN_APP_CARD_LABELS, OpenInAppCard } from './chunk-5K7GGQNX.js';
82
82
  export { OrgLabel } from './chunk-ONQKKHON.js';
83
83
  export { LIVE_PREVIEW_DWELL_MS, LIVE_PREVIEW_MARGIN, LIVE_PREVIEW_MAX, LIVE_PREVIEW_MAX_FRAMES, LIVE_PREVIEW_RENDER_MS, LIVE_PREVIEW_STILLS_KEPT, LivePreview, LivePreviewBudgetProvider, PREVIEW_FILL_MAX_CUT, PreviewScale, createLivePreviewBudget, createLivePreviewStills, immediately, perFrame, useLivePreview } from './chunk-CQFQGAZI.js';
84
84
  export { LockedLabel } from './chunk-TEV5REGB.js';
@@ -90,7 +90,7 @@ export { AutoGrid, Inline, Spacer, Stack } from './chunk-ZAC7SKUN.js';
90
90
  export { Link } from './chunk-QF5UNP4T.js';
91
91
  export { LinkInterstitial, openExternal } from './chunk-KQGOVBGF.js';
92
92
  export { List, ListItem } from './chunk-PS5ZYIA6.js';
93
- export { ListDetail } from './chunk-RXG543EB.js';
93
+ export { ListDetail } from './chunk-YBC2CYPD.js';
94
94
  export { ListInput, withDraft } from './chunk-MNTUIAQT.js';
95
95
  export { LIVE_CURSOR_HIDE_MS, LIVE_CURSOR_REST_MS, LiveCursor } from './chunk-DPNVKWJX.js';
96
96
  export { IndicatorAnchor } from './chunk-27MJPU7G.js';
@@ -108,7 +108,7 @@ export { FileDrop, FilePickButton, droppedFiles, pickedFiles } from './chunk-2JH
108
108
  export { FileList } from './chunk-5WRWBDML.js';
109
109
  export { FILTER_CHIP_ATTRIBUTE, FilterChip, FilterChipGroup } from './chunk-IWZG7NPV.js';
110
110
  export { FindingList } from './chunk-LSRQ2A6B.js';
111
- export { FolderTile, describeFolderContents, folderContentsParts } from './chunk-6MTJWQ3V.js';
111
+ export { FolderTile, describeFolderContents, folderContentsParts } from './chunk-WTXCK46H.js';
112
112
  export { FollowBanner } from './chunk-K4IVKHKU.js';
113
113
  export { DEFAULT_FRAME_THEME, EXTERNAL_URL_MAX, FRAME_BRIDGE, FRAME_MESSAGE, FRAME_ORIGIN_MODES, FRAME_SANDBOX_TOKENS, applyFrameTheme, checkFrameSandbox, externalUrl, frameFragment, frameOriginMatches, frameThemeMessage, httpOrigin, isFocusExit, isFrameNonce, negotiateBridge, parseFrameFragment, portTargetOrigin, readFrameHello, readFramePortMessage, readFrameTheme, readOpenLink } from './chunk-F6V2PTN6.js';
114
114
  export { DENSITY_PREFERENCES, PALETTE_ID, THEME_PREFERENCES, applyDensity, applyPalette, applyTheme, isDensityPreference, isPaletteId, isThemePreference } from './chunk-ZXXDZJQN.js';
@@ -116,9 +116,9 @@ export { DownloadButton } from './chunk-NSCYGUDG.js';
116
116
  export { downloadBlob, downloadText, safeFilename, useDownload } from './chunk-YNRKVY7X.js';
117
117
  export { EditingStatus } from './chunk-B76OKJMX.js';
118
118
  export { EntityChip } from './chunk-OSKJZNBT.js';
119
- export { EntityList } from './chunk-ISBKJOLI.js';
120
- export { Eyebrow } from './chunk-RK4XPHVG.js';
119
+ export { EntityList } from './chunk-7IW3P6FH.js';
121
120
  export { ErrorBoundary } from './chunk-ZEPUKRO7.js';
121
+ export { Eyebrow } from './chunk-RK4XPHVG.js';
122
122
  export { DescriptionList, DescriptionListItem } from './chunk-MFS6F2P7.js';
123
123
  export { DIFF_SUMMARY_LABELS, DIFF_VIEW_LABELS, DiffSummary, DiffView, MAX_DIFF_LINES, collapseDiff, diffLines, diffStat, firstChangedLines, splitLines } from './chunk-AOFVXE6V.js';
124
124
  export { DirectoryList } from './chunk-SRDNGGZE.js';
@@ -126,17 +126,17 @@ export { Divider } from './chunk-6KWNXIDE.js';
126
126
  export { DOC_TABS_EDITOR_LABELS, DocTabsEditor } from './chunk-CX6QT4CH.js';
127
127
  export { CursorFlag } from './chunk-MMCYH5LB.js';
128
128
  export { PresenceRing, presenceHueClass } from './chunk-EFX2YC5T.js';
129
- export { ChooserList, ColumnChooser, DataGrid, columnChoicesOf, countDataGridRows, fitGridColumns, parseGridSort, useAnyDataGridDriving, useDataGridDriving } from './chunk-4W7F3JEK.js';
129
+ export { ChooserList, ColumnChooser, DataGrid, columnChoicesOf, countDataGridRows, fitGridColumns, parseGridSort, useAnyDataGridDriving, useDataGridDriving } from './chunk-ELLRZ5XR.js';
130
130
  export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from './chunk-XGBGEI6V.js';
131
131
  export { PageHeader } from './chunk-FPDIHEM4.js';
132
132
  export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from './chunk-CFY257ND.js';
133
133
  export { DATASET_SOURCE_KINDS, DatasetSource, DatasetSourceList } from './chunk-VRG2ZXNK.js';
134
134
  export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from './chunk-PX54PALQ.js';
135
- export { DEEP_WORK_CARD_LABELS, DEEP_WORK_STATES, DEEP_WORK_STATE_LABELS, DeepWorkCard } from './chunk-RHL4OMQ3.js';
135
+ export { DEEP_WORK_CARD_LABELS, DEEP_WORK_STATES, DEEP_WORK_STATE_LABELS, DeepWorkCard } from './chunk-UWOYDHVW.js';
136
136
  export { STEP_STATES, STEP_STATE_LABELS, StepList, StepStateMark, Stepper, stepDetailPieces } from './chunk-HJBHP66O.js';
137
137
  export { DEFAULT_METER_THRESHOLDS, METER_STATES, Meter, meterState, meterStateTone, meterTone, progressTone } from './chunk-RQFRRPV6.js';
138
138
  export { REFUSAL_STRIP_LABELS, ReceiptStrip, RefusalStrip } from './chunk-M25IV5MH.js';
139
- export { StatusCard } from './chunk-G4234OIG.js';
139
+ export { StatusCard } from './chunk-NTQPJJAN.js';
140
140
  export { COMMENT_THREAD_LABELS, CommentThread } from './chunk-DKJJ434E.js';
141
141
  export { ConfirmField, confirmMatches } from './chunk-JVII5264.js';
142
142
  export { InlineCode } from './chunk-PLL7ZJHY.js';
@@ -144,6 +144,7 @@ export { CONFLICT_NOTE_LABELS, ConflictNote } from './chunk-SUJO3AHN.js';
144
144
  export { Container } from './chunk-HJO4WCH6.js';
145
145
  export { ContrastHelp } from './chunk-IO374IX6.js';
146
146
  export { ContrastBadge, ContrastLevelTag, contrastLevel, contrastRatio, formatContrastRatio } from './chunk-KWLH45YC.js';
147
+ export { ChoiceButtons } from './chunk-7SYEOJLP.js';
147
148
  export { ChoiceList } from './chunk-NQABJAUY.js';
148
149
  export { CodeBlock } from './chunk-DMK2A4IK.js';
149
150
  export { ColorChip } from './chunk-6GTTRJWJ.js';
@@ -163,9 +164,8 @@ export { ChangeMark } from './chunk-Z2MZTI3H.js';
163
164
  export { LONGTEXT_MAX_DEFAULT, RATING_MAX_CEILING, RATING_MAX_DEFAULT, SHEET_COLUMN_BOUNDS, SHEET_COLUMN_TYPES, SHEET_COLUMN_WIDTHS, SHEET_FIT_SAMPLES, SHEET_LABELS, SHEET_ROW_HEIGHT, SHEET_ROW_NUMBER_WIDTH, SheetPendingEdits, TEXT_MAX_DEFAULT, URL_MAX, cellDescription, cellKey, cellSpeech, changeText, changeTime, checkValue, columnOffsets, columnWidth, compareValues, displayText, drawnColumns, editText, editorSide, findOption, findPerson, fitSamples, fittedWidth, flagText, hasPrevious, inRange, isEmptyValue, isMod, isMultiCell, isSheetColumnType, isTypingKey, liveOptions, moveFrom, nextSort, normalizeValue, optionHue, parseOptionList, parseTSV, parseText, planClear, planPaste, presenceByCell, presenceByColumn, presenceByRow, rangeOf, ratingMax, refusalText, retypeColumn, rowName, sameValue, scrollToRow, sheetLabels, sortRows, spokenText, statusTone, textMax, toTSV, visibleRows } from './chunk-LFSIKGRQ.js';
164
165
  export { PRESENCE_ACTIVITIES, PRESENCE_HUES, PRESENCE_LABELS, assignPresenceHues, collapseSessions, joinNames, presenceLabels, presenceOrder } from './chunk-Z7JYG5TF.js';
165
166
  import './chunk-3L5NHASN.js';
166
- export { CHAT_THREAD_FOLLOW_WITHIN, CHAT_THREAD_LABELS, ChatThread } from './chunk-F2IYVVA3.js';
167
167
  export { ActivityStrip, BarList, ChartEmpty, ChartTooltip, DATA_COLORS, DATA_COLOR_OTHER, Histogram, Legend, Sparkline, StackedBar, StackedColumns, TimeSeries, dataColor, histogramTicks, niceScale, useChartHover } from './chunk-YWVT7B6N.js';
168
- export { ChoiceButtons } from './chunk-7SYEOJLP.js';
168
+ export { CHAT_THREAD_FOLLOW_WITHIN, CHAT_THREAD_LABELS, ChatThread } from './chunk-F2IYVVA3.js';
169
169
  export { CalendarGrid, compareDays, daysInMonth, sameDay, shiftDay, shiftMonth, today } from './chunk-EE3DJMSQ.js';
170
170
  export { Callout } from './chunk-BPCY7ZID.js';
171
171
  export { BOARD_NAME_MIN_CHARS, CANVAS_BOARD_MAX_LIVE, CANVAS_BOARD_MIN_LIVE_WIDTH, CANVAS_BOARD_MIN_ZOOM, CANVAS_NOTE_COLORS, CanvasBoard, TITLE_GLYPH_EM, boardName, boardRoom, liveBoards, titleSize } from './chunk-JEA5OX54.js';
@@ -175,7 +175,7 @@ export { CanvasToolbar, toolForKey } from './chunk-WDNURPXU.js';
175
175
  export { Toolbar, ToolbarOverflow, ToolbarWide } from './chunk-NR4CPM4T.js';
176
176
  export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, ShortcutTip, anchorView, beyondSlop, clampPan, clampZoom, fitView, gridOf, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from './chunk-F32FFE6I.js';
177
177
  import './chunk-LM3ISVJA.js';
178
- export { AuthLayout } from './chunk-JAFWGVX2.js';
178
+ export { AuthLayout } from './chunk-WKKWF277.js';
179
179
  export { AvatarPicker } from './chunk-5OVTWY3I.js';
180
180
  export { HuePicker, HueSwatch } from './chunk-2EA2GSA2.js';
181
181
  export { Popover } from './chunk-KHJIEPZV.js';
@@ -184,11 +184,11 @@ export { CHARACTER_PICKER_COLUMNS, CharacterPicker } from './chunk-SNQRGH4A.js';
184
184
  export { BrandChip } from './chunk-UH44L7OJ.js';
185
185
  export { BrandLockup } from './chunk-7KBNFFM3.js';
186
186
  export { BrandSample } from './chunk-AVMQMY66.js';
187
+ export { Breadcrumb } from './chunk-M52HLPOG.js';
188
+ export { KeyChip } from './chunk-HBDA76EZ.js';
187
189
  export { BrandScope, brandScopeInputs } from './chunk-X7WEE3EK.js';
188
190
  import './chunk-5SGHW42B.js';
189
191
  import './chunk-7W3LYIOC.js';
190
- export { Breadcrumb } from './chunk-M52HLPOG.js';
191
- export { KeyChip } from './chunk-HBDA76EZ.js';
192
192
  export { ArtifactMakeRow } from './chunk-37U3Z65B.js';
193
193
  export { ArtifactNameCell } from './chunk-4MRFLHJC.js';
194
194
  export { AsideLayout } from './chunk-QOXLP5PE.js';
@@ -208,18 +208,18 @@ export { TabPanel, Tabs, tabId } from './chunk-PVZOP3QK.js';
208
208
  import './chunk-EGMQURBR.js';
209
209
  export { ARTIFACT_ICON_WORDS, ArtifactIcon, artifactIconGlyph } from './chunk-AVL52EME.js';
210
210
  export { StatusDot } from './chunk-WIATRXEJ.js';
211
- export { ArtifactCard, ArtifactCardSkeleton, ArtifactPreviewGlyph } from './chunk-N7PXGOZP.js';
211
+ export { ArtifactCard, ArtifactCardSkeleton, ArtifactPreviewGlyph } from './chunk-UBIPDEFV.js';
212
212
  export { Skeleton } from './chunk-BRLZXYPA.js';
213
213
  export { PRINCIPAL_KINDS, PrincipalAvatar } from './chunk-CI3VPIJN.js';
214
214
  export { RelativeTime, currentNow, formatElapsed, formatExact, formatRelative, formatUntil, toISO, toInstant, useNow } from './chunk-L6NG7CUA.js';
215
215
  export { EMPTY_VALUE, EmptyValue } from './chunk-RE3FBGQQ.js';
216
- export { Card } from './chunk-7XKDPTZ5.js';
216
+ export { Card } from './chunk-4AUTALJA.js';
217
217
  export { useCardHeaderSlot } from './chunk-AV2DXAEL.js';
218
218
  export { AvatarStack, avatarStackLabel } from './chunk-BKP6XCAJ.js';
219
219
  export { AVATAR_CHARACTER_FULL_DETAIL, AVATAR_CORNER_RATIO, AVATAR_SIZES, AVATAR_STATUSES, AVATAR_STATUS_LABELS, Avatar, avatarCorner, avatarInitialsName, avatarPixels, avatarTint, getInitials } from './chunk-PZKHBB7D.js';
220
220
  export { ArtifactKindGround, ArtifactKindIllustration, ArtifactKindTile } from './chunk-NHLNHH4J.js';
221
- export { Checkbox, CheckboxGroup } from './chunk-PBCNINMB.js';
222
221
  export { ARTIFACT_ACCESSES, ARTIFACT_ACCESS_LABELS, ArtifactAccessGlyph, ArtifactAccessLabel } from './chunk-DOY3KC6I.js';
222
+ export { Checkbox, CheckboxGroup } from './chunk-PBCNINMB.js';
223
223
  export { DashboardCover, DocCover, SHEET_COVER_COLUMNS, SHEET_COVER_ROWS, SheetCover } from './chunk-R45VM5EX.js';
224
224
  export { Document, DocumentTitle, DocumentTitleField } from './chunk-BXCL6P5Z.js';
225
225
  export { ARTIFACT_KINDS, ArtifactKindGlyph } from './chunk-RSKW25Y5.js';
@@ -241,7 +241,7 @@ export { DisclosureAnatomy } from './chunk-IVTQWOXV.js';
241
241
  export { Count } from './chunk-MLDTLZAO.js';
242
242
  export { HeadingLevelProvider, headingTag, nextHeadingLevel, useHeadingLevel } from './chunk-PQADV6P6.js';
243
243
  export { Announcer, announce, useAnnouncer } from './chunk-2G355KDJ.js';
244
- export { APP_SHELL_ASIDE_WIDTH, AccountRow, AppShell, AppShellRail, AppShellRailRow, AppShellRailStatus, AppShellToggle, AppShellTopbar, readStoredWidth, useAppShell, useStoredWidth } from './chunk-AJLMINJU.js';
244
+ export { APP_SHELL_ASIDE_WIDTH, AccountRow, AppShell, AppShellRail, AppShellRailRow, AppShellRailStatus, AppShellToggle, AppShellTopbar, readStoredWidth, useAppShell, useScreenBelow, useScreenWidth, useStoredWidth } from './chunk-E55DKVY7.js';
245
245
  export { useMediaMatch } from './chunk-RTPQDNW3.js';
246
246
  export { Menu } from './chunk-T73DMDU4.js';
247
247
  export { RESIZE_HANDLE_LARGE_STEP, RESIZE_HANDLE_STEP, ResizeHandle, clampSize, useAppShellAside, useAppShellPeek } from './chunk-PIYJNCN7.js';
package/dist/styles.css CHANGED
@@ -12206,7 +12206,7 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
12206
12206
  }
12207
12207
 
12208
12208
 
12209
- /* DataGrid-QYORTTHI.css */
12209
+ /* DataGrid-NHIN2I42.css */
12210
12210
  /*
12211
12211
  * DataGrid: a list as columns, one track list on the grid.
12212
12212
  *
@@ -12676,7 +12676,7 @@ button.crewlet-data-grid__row-link {
12676
12676
  }
12677
12677
  }
12678
12678
 
12679
- /* ---- A ROW IS A CARD ON A PHONE -----------------------------------------
12679
+ /* ---- A ROW IS A CARD ON A PHONE, OR WHERE COLUMNS DO NOT FIT -----------------------------------------
12680
12680
  A GRID IS COLUMNS, AND A PHONE DOES NOT HAVE THEM: the grid clips (for its
12681
12681
  sticky head), so the columns past the edge were cut off with nothing to
12682
12682
  scroll to, and a sideways scroller resolves every flexible track to zero. So
@@ -12686,113 +12686,116 @@ button.crewlet-data-grid__row-link {
12686
12686
  (`:empty`), and a cell that draws a marked absence has content and stays.
12687
12687
  The sort is in the application's state, so a sorted list still arrives
12688
12688
  sorted. */
12689
- @media (width < 640px) {
12690
- .crewlet-data-grid {
12691
- /* No ghost control is pulled out here (see above): every line of a card
12692
- starts at the grid's edge, and a compact row's marks run on one line,
12693
- where the hover ground swallowed the gap before it. */
12694
- --crewlet-data-grid-control-outdent: 0px;
12689
+ /* Card rows are the grid's own decision (`data-stacked`, DataGrid.tsx): set
12690
+ on a phone, and wherever the grid's own width cannot hold its columns once
12691
+ every give-way column has gone. `:where()` keeps each rule's weight what it
12692
+ was when this block was a media query, so a rule written against the card
12693
+ shape still wins where it did. */
12694
+ .crewlet-data-grid:where([data-stacked]) {
12695
+ /* No ghost control is pulled out here (see above): every line of a card
12696
+ starts at the grid's edge, and a compact row's marks run on one line,
12697
+ where the hover ground swallowed the gap before it. */
12698
+ --crewlet-data-grid-control-outdent: 0px;
12695
12699
 
12696
- display: block;
12697
- }
12700
+ display: block;
12701
+ }
12698
12702
 
12699
- .crewlet-data-grid__head {
12700
- display: none;
12701
- }
12703
+ :where(.crewlet-data-grid[data-stacked]) .crewlet-data-grid__head {
12704
+ display: none;
12705
+ }
12702
12706
 
12703
- .crewlet-data-grid__body,
12704
- .crewlet-data-grid__band {
12705
- display: block;
12706
- }
12707
+ :where(.crewlet-data-grid[data-stacked]) .crewlet-data-grid__body,
12708
+ :where(.crewlet-data-grid[data-stacked]) .crewlet-data-grid__band {
12709
+ display: block;
12710
+ }
12707
12711
 
12708
- .crewlet-data-grid__row {
12709
- display: block;
12710
- padding: var(--spacing-2) var(--crewlet-data-grid-edge);
12711
- min-height: 0;
12712
- }
12712
+ :where(.crewlet-data-grid[data-stacked]) .crewlet-data-grid__row {
12713
+ display: block;
12714
+ padding: var(--spacing-2) var(--crewlet-data-grid-edge);
12715
+ min-height: 0;
12716
+ }
12713
12717
 
12714
- /* A FIXED BASIS lines the names up without a track, and the name wraps
12715
- inside it rather than pushing its value past every other card line. */
12716
- .crewlet-data-grid__cell {
12717
- display: flex;
12718
- align-items: baseline;
12719
- gap: var(--spacing-3);
12720
- padding: 1px 0;
12721
- min-width: 0;
12722
- }
12718
+ /* A FIXED BASIS lines the names up without a track, and the name wraps
12719
+ inside it rather than pushing its value past every other card line. */
12720
+ :where(.crewlet-data-grid[data-stacked]) .crewlet-data-grid__cell {
12721
+ display: flex;
12722
+ align-items: baseline;
12723
+ gap: var(--spacing-3);
12724
+ padding: 1px 0;
12725
+ min-width: 0;
12726
+ }
12723
12727
 
12724
- .crewlet-data-grid__cell:empty {
12725
- display: none;
12726
- }
12728
+ :where(.crewlet-data-grid[data-stacked]) .crewlet-data-grid__cell:empty {
12729
+ display: none;
12730
+ }
12727
12731
 
12728
- .crewlet-data-grid__cell[data-label]::before {
12729
- content: attr(data-label);
12730
- flex: 0 0 7rem;
12731
- overflow-wrap: anywhere;
12732
- font-size: var(--font-size-2xs);
12733
- text-transform: uppercase;
12734
- letter-spacing: var(--font-letter-spacing-wide);
12735
- color: var(--color-text-tertiary);
12736
- }
12732
+ :where(.crewlet-data-grid[data-stacked]) .crewlet-data-grid__cell[data-label]::before {
12733
+ content: attr(data-label);
12734
+ flex: 0 0 7rem;
12735
+ overflow-wrap: anywhere;
12736
+ font-size: var(--font-size-2xs);
12737
+ text-transform: uppercase;
12738
+ letter-spacing: var(--font-letter-spacing-wide);
12739
+ color: var(--color-text-tertiary);
12740
+ }
12737
12741
 
12738
- /* `shrink` and `right` are column shapes, and there are no columns here. */
12739
- .crewlet-data-grid__cell--shrink,
12740
- .crewlet-data-grid__cell--right {
12741
- white-space: normal;
12742
- justify-content: flex-start;
12743
- }
12742
+ /* `shrink` and `right` are column shapes, and there are no columns here. */
12743
+ :where(.crewlet-data-grid[data-stacked]) .crewlet-data-grid__cell--shrink,
12744
+ :where(.crewlet-data-grid[data-stacked]) .crewlet-data-grid__cell--right {
12745
+ white-space: normal;
12746
+ justify-content: flex-start;
12747
+ }
12744
12748
 
12745
- .crewlet-data-grid__cell .crewlet-data-grid__truncate {
12746
- white-space: normal;
12747
- overflow: visible;
12748
- text-overflow: clip;
12749
- overflow-wrap: anywhere;
12750
- }
12749
+ :where(.crewlet-data-grid[data-stacked]) .crewlet-data-grid__cell .crewlet-data-grid__truncate {
12750
+ white-space: normal;
12751
+ overflow: visible;
12752
+ text-overflow: clip;
12753
+ overflow-wrap: anywhere;
12754
+ }
12751
12755
 
12752
- /* ---- THE COMPACT ROW (`phoneRows="compact"`) ---------------------------
12753
- TWO LINES, NO LABELS: what the row is, then its marks. One flex run that
12754
- breaks once: the lead cells first, a zero-height full-width `::after`
12755
- between them and the rest, then every other cell in column order. */
12756
- .crewlet-data-grid[data-phone-rows='compact'] .crewlet-data-grid__row {
12757
- display: flex;
12758
- flex-wrap: wrap;
12759
- align-items: center;
12760
- gap: var(--spacing-1) var(--spacing-2);
12761
- }
12756
+ /* ---- THE COMPACT ROW (`phoneRows="compact"`) ---------------------------
12757
+ TWO LINES, NO LABELS: what the row is, then its marks. One flex run that
12758
+ breaks once: the lead cells first, a zero-height full-width `::after`
12759
+ between them and the rest, then every other cell in column order. */
12760
+ .crewlet-data-grid[data-phone-rows='compact']:where([data-stacked]) .crewlet-data-grid__row {
12761
+ display: flex;
12762
+ flex-wrap: wrap;
12763
+ align-items: center;
12764
+ gap: var(--spacing-1) var(--spacing-2);
12765
+ }
12762
12766
 
12763
- .crewlet-data-grid[data-phone-rows='compact'] .crewlet-data-grid__row::after {
12764
- content: '';
12765
- order: 1;
12766
- flex-basis: 100%;
12767
- height: 0;
12768
- }
12767
+ .crewlet-data-grid[data-phone-rows='compact']:where([data-stacked]) .crewlet-data-grid__row::after {
12768
+ content: '';
12769
+ order: 1;
12770
+ flex-basis: 100%;
12771
+ height: 0;
12772
+ }
12769
12773
 
12770
- .crewlet-data-grid[data-phone-rows='compact'] .crewlet-data-grid__cell {
12771
- order: 2;
12772
- padding: 0;
12773
- align-items: center;
12774
- gap: var(--spacing-1);
12775
- }
12774
+ .crewlet-data-grid[data-phone-rows='compact']:where([data-stacked]) .crewlet-data-grid__cell {
12775
+ order: 2;
12776
+ padding: 0;
12777
+ align-items: center;
12778
+ gap: var(--spacing-1);
12779
+ }
12776
12780
 
12777
- .crewlet-data-grid[data-phone-rows='compact'] .crewlet-data-grid__cell[data-lead] {
12778
- order: 0;
12779
- }
12781
+ .crewlet-data-grid[data-phone-rows='compact']:where([data-stacked]) .crewlet-data-grid__cell[data-lead] {
12782
+ order: 0;
12783
+ }
12780
12784
 
12781
- /* The title takes the rest of the first line, beside the key. */
12782
- .crewlet-data-grid[data-phone-rows='compact']
12783
- .crewlet-data-grid__cell[data-lead]:not(.crewlet-data-grid__cell--shrink) {
12784
- flex: 1 1 0;
12785
- min-width: 0;
12786
- font-weight: var(--font-weight-medium);
12787
- }
12785
+ /* The title takes the rest of the first line, beside the key. */
12786
+ .crewlet-data-grid[data-phone-rows='compact']
12787
+ .crewlet-data-grid__cell[data-lead]:not(.crewlet-data-grid__cell--shrink) {
12788
+ flex: 1 1 0;
12789
+ min-width: 0;
12790
+ font-weight: var(--font-weight-medium);
12791
+ }
12788
12792
 
12789
- .crewlet-data-grid[data-phone-rows='compact'] .crewlet-data-grid__cell[data-label]::before {
12790
- content: none;
12791
- }
12793
+ .crewlet-data-grid[data-phone-rows='compact']:where([data-stacked]) .crewlet-data-grid__cell[data-label]::before {
12794
+ content: none;
12795
+ }
12792
12796
 
12793
- .crewlet-data-grid[data-phone-rows='compact'] .crewlet-data-grid__cell[data-phone-omit] {
12794
- display: none;
12795
- }
12797
+ .crewlet-data-grid[data-phone-rows='compact']:where([data-stacked]) .crewlet-data-grid__cell[data-phone-omit] {
12798
+ display: none;
12796
12799
  }
12797
12800
 
12798
12801
 
@@ -21577,10 +21580,19 @@ a.crewlet-icon-btn {
21577
21580
  }
21578
21581
 
21579
21582
 
21580
- /* ListDetail-5NXERLRJ.css */
21583
+ /* ListDetail-N3L7PB46.css */
21581
21584
  /*
21582
21585
  * ListDetail: a list beside the detail of what is chosen in it, each scrolling
21583
- * on its own in the height it is given, one pane on a phone (ListDetail.tsx).
21586
+ * on its own in the height it is given, one pane where it is narrow
21587
+ * (ListDetail.tsx).
21588
+ *
21589
+ * IT FOLDS BY ITS OWN WIDTH, NOT THE WINDOW'S. The root is an inline-size
21590
+ * container and the panes are its child, so the fold answers how wide THIS
21591
+ * list and detail are: beside an aside the reader opened (the assistant) a
21592
+ * 1375px window can leave the screen 443px, and a fold that asked the window
21593
+ * drew the detail 130px wide beside a 17rem list. The phone rule below is the
21594
+ * one decision that stays the window's: on a phone the page scrolls as a
21595
+ * whole rather than each pane on its own.
21584
21596
  */
21585
21597
 
21586
21598
  /* THE HAIRLINE STANDS MIDWAY between the two panes: the list's inset before it
@@ -21589,11 +21601,20 @@ a.crewlet-icon-btn {
21589
21601
  .crewlet-list-detail {
21590
21602
  --crewlet-list-detail-gutter: var(--spacing-7);
21591
21603
 
21604
+ container: crewlet-list-detail / inline-size;
21605
+ display: flex;
21606
+ flex: 1 1 auto;
21607
+ flex-direction: column;
21608
+ height: 100%;
21609
+ min-width: 0;
21610
+ min-height: 0;
21611
+ }
21612
+
21613
+ .crewlet-list-detail__panes {
21592
21614
  display: grid;
21593
21615
  flex: 1 1 auto;
21594
21616
  grid-template-columns: var(--crewlet-list-detail-list, 17rem) minmax(0, 1fr);
21595
21617
  gap: var(--crewlet-list-detail-gutter);
21596
- height: 100%;
21597
21618
  min-width: 0;
21598
21619
  min-height: 0;
21599
21620
  }
@@ -21616,19 +21637,18 @@ a.crewlet-icon-btn {
21616
21637
  overflow-y: auto;
21617
21638
  }
21618
21639
 
21619
- @media (width < 640px) {
21620
- .crewlet-list-detail {
21640
+ /* ONE PANE UNDER 640px OF ITS OWN WIDTH: the list and a reading detail do not
21641
+ both fit, so the pane `showing` names takes the whole width and keeps its
21642
+ own scroller, which is what lets it sit in a screen that fills the window. */
21643
+ @container crewlet-list-detail (width < 640px) {
21644
+ .crewlet-list-detail__panes {
21621
21645
  grid-template-columns: minmax(0, 1fr);
21622
- height: auto;
21623
21646
  }
21624
21647
 
21625
21648
  .crewlet-list-detail__list {
21626
21649
  padding-right: 0;
21627
21650
  border-right: 0;
21628
- }
21629
-
21630
- .crewlet-list-detail__detail {
21631
- overflow: visible;
21651
+ overflow-y: auto;
21632
21652
  }
21633
21653
 
21634
21654
  .crewlet-list-detail--showing-list .crewlet-list-detail__detail,
@@ -21637,6 +21657,18 @@ a.crewlet-icon-btn {
21637
21657
  }
21638
21658
  }
21639
21659
 
21660
+ /* ON A PHONE THE PAGE SCROLLS AS A WHOLE, as tall as its content. */
21661
+ @media (width < 640px) {
21662
+ .crewlet-list-detail {
21663
+ height: auto;
21664
+ }
21665
+
21666
+ .crewlet-list-detail__list,
21667
+ .crewlet-list-detail__detail {
21668
+ overflow: visible;
21669
+ }
21670
+ }
21671
+
21640
21672
 
21641
21673
  /* ListInput-4ISMGZDQ.css */
21642
21674
  /*
@@ -34213,7 +34245,7 @@ svg.crewlet-select__chevron {
34213
34245
  }
34214
34246
 
34215
34247
 
34216
- /* StatusCard-FCJN7SXJ.css */
34248
+ /* StatusCard-72STCSWY.css */
34217
34249
  /*
34218
34250
  * A record with a state. The card, its head, its body and its foot are
34219
34251
  * Card's; only what a status card adds is said here.
@@ -34278,12 +34310,12 @@ svg.crewlet-select__chevron {
34278
34310
  }
34279
34311
 
34280
34312
  /*
34281
- * A RESULT FOLDED TO ITS HEAD. The title is the button that opens it, with
34313
+ * A RESULT THAT FOLDS TO ITS HEAD. The title is the button that opens it, with
34282
34314
  * the one chevron every disclosure here draws, turned the same way. The head
34283
- * may wrap: on a narrow card the utilities a folded card keeps go under the
34284
- * title rather than cutting it to nothing.
34315
+ * may wrap, folded or open: on a narrow card the utilities it keeps go under
34316
+ * the title rather than cutting it to nothing.
34285
34317
  */
34286
- .crewlet-status-card--folded > .crewlet-card__header {
34318
+ .crewlet-status-card--collapsible > .crewlet-card__header {
34287
34319
  flex-wrap: wrap;
34288
34320
  row-gap: var(--spacing-1);
34289
34321
  }
@@ -34295,7 +34327,7 @@ svg.crewlet-select__chevron {
34295
34327
  * whole of their own line: the pull took their inset and their gap under the
34296
34328
  * title, and the last line sat closer to the edge than the first did.
34297
34329
  */
34298
- .crewlet-status-card--folded > .crewlet-card__header > .crewlet-card__header-actions {
34330
+ .crewlet-status-card--collapsible > .crewlet-card__header > .crewlet-card__header-actions {
34299
34331
  margin-block: 0;
34300
34332
  }
34301
34333
 
@@ -34402,7 +34434,7 @@ svg.crewlet-select__chevron {
34402
34434
  }
34403
34435
 
34404
34436
  /*
34405
- * A folded card's utilities, at the end of its head. THE FOOT'S OWN GAP: they
34437
+ * A collapsible card's utilities, at the end of its head. THE FOOT'S OWN GAP: they
34406
34438
  * are the same buttons the open card draws in its foot, and at half its gap
34407
34439
  * the row tightened by 4px the moment the card folded. One gap, so folding a
34408
34440
  * card moves its utilities without respacing them.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crewlethq/ui",
3
- "version": "0.64.1",
3
+ "version": "0.65.1",
4
4
  "description": "Crewlet shared React components built on @crewlethq/tokens and @crewlethq/icons.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -42,8 +42,8 @@
42
42
  "clean": "rm -rf dist src/generated"
43
43
  },
44
44
  "dependencies": {
45
- "@crewlethq/icons": "0.64.1",
46
- "@crewlethq/tokens": "0.64.1",
45
+ "@crewlethq/icons": "0.65.1",
46
+ "@crewlethq/tokens": "0.65.1",
47
47
  "prosemirror-commands": "1.7.2",
48
48
  "prosemirror-gapcursor": "1.4.1",
49
49
  "prosemirror-history": "1.5.1",
@@ -1,5 +1,5 @@
1
- import { richEditorLabels } from './chunk-CSQTDGTS.js';
2
1
  import { schema, readMarkdown, writeMarkdown } from './chunk-QH6VYJ3X.js';
2
+ import { richEditorLabels } from './chunk-CSQTDGTS.js';
3
3
  import { safeHref, MARKDOWN_CALLOUT_TONES } from './chunk-BAKPMH3S.js';
4
4
  import { Toolbar } from './chunk-NR4CPM4T.js';
5
5
  import { FormField, Input } from './chunk-ETSF7SU6.js';