@crewlethq/ui 0.45.0 → 0.46.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 +22 -0
- package/dist/AgentHandoffPanel/index.js +6 -3
- package/dist/AppShell/index.js +3 -3
- package/dist/ArrangeList/index.js +5 -3
- package/dist/ArtifactBar/index.js +5 -5
- package/dist/AvatarPicker/index.js +6 -6
- package/dist/Canvas/index.js +1 -1
- package/dist/CanvasBoard/index.js +1 -1
- package/dist/CanvasToolbar/index.js +1 -1
- package/dist/CatalogTile/index.js +1 -1
- package/dist/{CatalogTile-VPSLCKJE.css → CatalogTile-26XN7L2A.css} +13 -7
- package/dist/CharacterCount/CharacterCount.d.ts +63 -0
- package/dist/CharacterCount/index.d.ts +3 -0
- package/dist/CharacterCount/index.js +4 -0
- package/dist/CharacterCount-S735DICR.css +29 -0
- package/dist/Checkbox/index.js +5 -2
- package/dist/Combobox/index.js +5 -3
- package/dist/CommandPalette/index.js +6 -4
- package/dist/CommentThread/index.js +6 -3
- package/dist/Composer/index.js +5 -2
- package/dist/ConfirmField/index.js +5 -2
- package/dist/DataTable/index.js +8 -6
- package/dist/DataView/index.js +9 -7
- package/dist/DateTimePicker/index.js +1 -1
- package/dist/DocTabsEditor/index.js +5 -4
- package/dist/EditingStatus/index.js +2 -1
- package/dist/{Editor-AMO2B54T.js → Editor-6FXHMW64.js} +6 -4
- package/dist/FollowBanner/index.js +2 -2
- package/dist/HuePicker/index.js +5 -5
- package/dist/InlineEditor/InlineEditor.d.ts +86 -0
- package/dist/InlineEditor/index.d.ts +3 -0
- package/dist/InlineEditor/index.js +9 -0
- package/dist/InlineEditor-W55DDKML.css +72 -0
- package/dist/Input/FormField.d.ts +18 -1
- package/dist/Input/Textarea.d.ts +16 -0
- package/dist/Input/index.d.ts +2 -2
- package/dist/Input/index.js +4 -1
- package/dist/{Input-OQZBCRX5.css → Input-VDSV7VWJ.css} +19 -0
- package/dist/LinkInterstitial/index.js +3 -3
- package/dist/List/List.d.ts +16 -1
- package/dist/List/index.js +1 -1
- package/dist/{List-YHLIZFK4.css → List-XY445TKY.css} +31 -0
- package/dist/ListInput/ListInput.d.ts +87 -2
- package/dist/ListInput/index.d.ts +2 -2
- package/dist/ListInput/index.js +5 -2
- package/dist/{ListInput-O7LJKOIG.css → ListInput-DP2CSJ22.css} +118 -2
- package/dist/MarkdownEditor/index.js +5 -5
- package/dist/Menu/index.js +2 -2
- package/dist/MergeConflicts/index.js +5 -5
- package/dist/Modal/index.js +2 -2
- package/dist/PresenterView/index.js +3 -3
- package/dist/PrincipalPicker/index.js +6 -4
- package/dist/RelatedRow/index.js +2 -2
- package/dist/RichEditor/index.js +1 -1
- package/dist/SegmentedControl/index.js +4 -4
- package/dist/Select/index.js +1 -1
- package/dist/ShareDialog/index.js +3 -3
- package/dist/SheetColumnEditor/index.js +10 -8
- package/dist/SheetGrid/index.js +4 -4
- package/dist/SlideCompare/index.js +1 -1
- package/dist/SlideFilmstrip/index.js +3 -3
- package/dist/Switcher/index.js +5 -4
- package/dist/Tabs/index.js +3 -3
- package/dist/Text/Text.d.ts +8 -0
- package/dist/Text/index.js +1 -1
- package/dist/{Text-S3Q4O3IG.css → Text-XOCOU34C.css} +9 -0
- package/dist/ThemeSwitcher/index.js +5 -5
- package/dist/TileGrid/index.js +1 -1
- package/dist/{TileGrid-I6LNYD2H.css → TileGrid-UYMVVVJK.css} +30 -0
- package/dist/TimeWindowPicker/index.js +5 -3
- package/dist/TreeCanvas/index.js +1 -1
- package/dist/VersionCompare/index.js +5 -5
- package/dist/{chunk-5AHDGYKN.js → chunk-2KQR6JKE.js} +2 -2
- package/dist/{chunk-AGNZIT3Z.js → chunk-2LPNWAN6.js} +1 -1
- package/dist/{chunk-MVGCZ655.js → chunk-2UVMIM2J.js} +1 -1
- package/dist/{chunk-NF6SWHQI.js → chunk-32MTQ6DN.js} +2 -2
- package/dist/{chunk-QOP7QYUW.js → chunk-34RMTXDZ.js} +1 -1
- package/dist/{chunk-Q7HLZH32.js → chunk-3QSKDZR5.js} +1 -1
- package/dist/{chunk-BVFMLSE3.js → chunk-5EBDOE3C.js} +1 -1
- package/dist/{chunk-BF5WV7NM.js → chunk-6FVGSWLS.js} +1 -1
- package/dist/chunk-7P336RA5.js +147 -0
- package/dist/{chunk-KKUJSMLF.js → chunk-DY4DQ7EB.js} +1 -1
- package/dist/{chunk-4DIKLY53.js → chunk-HBSR5DL6.js} +1 -1
- package/dist/{chunk-KA75QPFM.js → chunk-ILFEWRLG.js} +1 -1
- package/dist/{chunk-Y4GXCKOC.js → chunk-KOJKX3U6.js} +3 -3
- package/dist/{chunk-FG243QHY.js → chunk-KZDMAQNJ.js} +1 -1
- package/dist/{chunk-TC7DJTXI.js → chunk-MULOZYHL.js} +2 -0
- package/dist/{chunk-ZUTUI27P.js → chunk-N4GBDK4L.js} +1 -1
- package/dist/{chunk-7CXGSS7D.js → chunk-O6H5XXVK.js} +1 -1
- package/dist/{chunk-GI3S6RMM.js → chunk-PWZT6CZY.js} +3 -3
- package/dist/{chunk-NNTO3TNC.js → chunk-Q6CQMS6R.js} +1 -1
- package/dist/{chunk-IKBK4A5O.js → chunk-QP2P6GDQ.js} +1 -1
- package/dist/{chunk-W53CWWX3.js → chunk-RCKRJXFV.js} +2 -2
- package/dist/{chunk-U44WGRFW.js → chunk-RFPCHMSX.js} +1 -1
- package/dist/{chunk-X6IJ7DAX.js → chunk-RL75QTNT.js} +2 -2
- package/dist/{chunk-N3SHQ3VU.js → chunk-RRPQMMCZ.js} +1 -1
- package/dist/{chunk-EY7LACIR.js → chunk-RWET7W22.js} +1 -1
- package/dist/{chunk-JF3TJUBU.js → chunk-RWWLVDRE.js} +1 -1
- package/dist/{chunk-LSRQJDGR.js → chunk-SEPSXOGJ.js} +1 -1
- package/dist/{chunk-MCOC3KQA.js → chunk-SQ4JFHO7.js} +1 -1
- package/dist/chunk-SQZEVWVC.js +436 -0
- package/dist/{chunk-DL5ERIFF.js → chunk-SS4XCUUJ.js} +2 -2
- package/dist/{chunk-GPIRKHGS.js → chunk-T7DXSFUX.js} +1 -1
- package/dist/{chunk-NZWX27J7.js → chunk-TDQ262TB.js} +19 -3
- package/dist/{chunk-5GNA4RKP.js → chunk-TGSIVB6H.js} +1 -1
- package/dist/{chunk-UO5VJHWP.js → chunk-U4HOKU6P.js} +2 -2
- package/dist/chunk-XCUUI7E7.js +62 -0
- package/dist/{chunk-ENHLVF6Q.js → chunk-XS2FJVMT.js} +1 -1
- package/dist/{chunk-FV6H7H5I.js → chunk-YBJVIY5E.js} +4 -4
- package/dist/{chunk-6MAQ2SVP.js → chunk-YR3ZURBM.js} +3 -3
- package/dist/{chunk-ZI5G5RS7.js → chunk-Z734SV4E.js} +55 -8
- package/dist/{chunk-OWIGEE2Y.js → chunk-ZZCCNVF3.js} +3 -3
- package/dist/generated/index.d.ts +2 -0
- package/dist/generated/index.js +78 -76
- package/dist/index.js +78 -76
- package/dist/styles.css +333 -15
- package/package.json +3 -3
- package/dist/chunk-NMYGJJJK.js +0 -263
- package/dist/{chunk-6IPEPSB5.js → chunk-245IXG5P.js} +0 -0
- package/dist/{chunk-OED6LUWE.js → chunk-4A4QG6UC.js} +1 -1
- package/dist/{chunk-FYINAYAJ.js → chunk-6AKG2VLR.js} +1 -1
- package/dist/{chunk-E6HXFFWO.js → chunk-ISDEXIXH.js} +1 -1
- package/dist/{chunk-PCI7ZJ6Z.js → chunk-TMM32U7D.js} +1 -1
package/dist/styles.css
CHANGED
|
@@ -7006,7 +7006,7 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
7006
7006
|
}
|
|
7007
7007
|
|
|
7008
7008
|
|
|
7009
|
-
/* CatalogTile-
|
|
7009
|
+
/* CatalogTile-26XN7L2A.css */
|
|
7010
7010
|
/*
|
|
7011
7011
|
* CatalogTile: mark, name and state, one sentence, and a foot with a quiet
|
|
7012
7012
|
* fact and one action.
|
|
@@ -7165,20 +7165,25 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
7165
7165
|
height: var(--size-row-sm);
|
|
7166
7166
|
}
|
|
7167
7167
|
|
|
7168
|
+
/*
|
|
7169
|
+
* THE NAME IS NEVER CUT. It is what the tile is: "C…" names nothing. Where
|
|
7170
|
+
* the line is short of room the state and the fact wrap under the name rather
|
|
7171
|
+
* than squeezing it, and a name longer than the whole line wraps at a word.
|
|
7172
|
+
* The grid folds a compact tile's tracks before it comes to that (see
|
|
7173
|
+
* TileGrid.css), so the wrap is the fallback and not the layout.
|
|
7174
|
+
*/
|
|
7168
7175
|
.crewlet-catalog-tile--compact .crewlet-catalog-tile__title {
|
|
7169
7176
|
flex: 1 1 auto;
|
|
7170
7177
|
flex-direction: row;
|
|
7178
|
+
flex-wrap: wrap;
|
|
7171
7179
|
align-items: center;
|
|
7172
|
-
gap: var(--spacing-2);
|
|
7180
|
+
gap: 0 var(--spacing-2);
|
|
7173
7181
|
padding-top: 0;
|
|
7174
7182
|
}
|
|
7175
7183
|
|
|
7176
7184
|
.crewlet-catalog-tile--compact .crewlet-catalog-tile__name {
|
|
7177
|
-
flex: 0
|
|
7178
|
-
|
|
7179
|
-
overflow: hidden;
|
|
7180
|
-
text-overflow: ellipsis;
|
|
7181
|
-
white-space: nowrap;
|
|
7185
|
+
flex: 0 0 auto;
|
|
7186
|
+
max-width: 100%;
|
|
7182
7187
|
}
|
|
7183
7188
|
|
|
7184
7189
|
.crewlet-catalog-tile--compact .crewlet-catalog-tile__status {
|
|
@@ -7186,7 +7191,8 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
7186
7191
|
}
|
|
7187
7192
|
|
|
7188
7193
|
.crewlet-catalog-tile--compact .crewlet-catalog-tile__meta {
|
|
7189
|
-
flex:
|
|
7194
|
+
flex: none;
|
|
7195
|
+
max-width: 100%;
|
|
7190
7196
|
}
|
|
7191
7197
|
|
|
7192
7198
|
.crewlet-catalog-tile--compact .crewlet-catalog-tile__description {
|
|
@@ -7224,6 +7230,38 @@ a.crewlet-breadcrumb__crumb:focus-visible {
|
|
|
7224
7230
|
}
|
|
7225
7231
|
|
|
7226
7232
|
|
|
7233
|
+
/* CharacterCount-S735DICR.css */
|
|
7234
|
+
/*
|
|
7235
|
+
* The count of a limited field (CharacterCount.tsx): the help line's own small
|
|
7236
|
+
* step, in its quiet ink until the limit is close.
|
|
7237
|
+
*/
|
|
7238
|
+
|
|
7239
|
+
.crewlet-character-count {
|
|
7240
|
+
flex: none;
|
|
7241
|
+
font-size: var(--font-size-xs);
|
|
7242
|
+
line-height: var(--font-line-height-normal);
|
|
7243
|
+
/* Figures of one width, so the count does not shift as a digit changes. */
|
|
7244
|
+
font-variant-numeric: tabular-nums;
|
|
7245
|
+
color: var(--color-text-tertiary);
|
|
7246
|
+
white-space: nowrap;
|
|
7247
|
+
}
|
|
7248
|
+
|
|
7249
|
+
.crewlet-character-count__of {
|
|
7250
|
+
margin-inline: 0.15em;
|
|
7251
|
+
}
|
|
7252
|
+
|
|
7253
|
+
.crewlet-character-count--near {
|
|
7254
|
+
color: var(--color-feedback-warning-ink);
|
|
7255
|
+
}
|
|
7256
|
+
|
|
7257
|
+
/* Past the limit the count is the refusal's ink and weight, so the number
|
|
7258
|
+
that says what to fix is the loudest thing on the line. */
|
|
7259
|
+
.crewlet-character-count--over {
|
|
7260
|
+
color: var(--color-feedback-danger-ink);
|
|
7261
|
+
font-weight: var(--font-weight-medium);
|
|
7262
|
+
}
|
|
7263
|
+
|
|
7264
|
+
|
|
7227
7265
|
/* CharacterPicker-ZEYIKUNQ.css */
|
|
7228
7266
|
/*
|
|
7229
7267
|
* The grid of characters.
|
|
@@ -16487,7 +16525,82 @@ a.crewlet-icon-btn {
|
|
|
16487
16525
|
}
|
|
16488
16526
|
|
|
16489
16527
|
|
|
16490
|
-
/*
|
|
16528
|
+
/* InlineEditor-W55DDKML.css */
|
|
16529
|
+
/*
|
|
16530
|
+
* InlineEditor: one record's fields, then a bar. It draws no surface of its
|
|
16531
|
+
* own, so it reads as the card or the section it is opened in rather than as
|
|
16532
|
+
* a form dropped on top of it.
|
|
16533
|
+
*/
|
|
16534
|
+
|
|
16535
|
+
.crewlet-inline-editor {
|
|
16536
|
+
display: flex;
|
|
16537
|
+
flex-direction: column;
|
|
16538
|
+
gap: var(--spacing-3);
|
|
16539
|
+
min-width: 0;
|
|
16540
|
+
margin: 0;
|
|
16541
|
+
}
|
|
16542
|
+
|
|
16543
|
+
.crewlet-inline-editor__fields {
|
|
16544
|
+
display: flex;
|
|
16545
|
+
flex-direction: column;
|
|
16546
|
+
gap: var(--spacing-4);
|
|
16547
|
+
min-width: 0;
|
|
16548
|
+
}
|
|
16549
|
+
|
|
16550
|
+
.crewlet-inline-editor__error {
|
|
16551
|
+
font-size: var(--font-size-sm);
|
|
16552
|
+
line-height: var(--font-line-height-normal);
|
|
16553
|
+
color: var(--color-feedback-danger-ink);
|
|
16554
|
+
}
|
|
16555
|
+
|
|
16556
|
+
/*
|
|
16557
|
+
* THE BAR: the status at its start, the two controls at its end, on one line
|
|
16558
|
+
* where there is room. On a narrow card it wraps whole, the controls keeping
|
|
16559
|
+
* their order at the end, so Save is never the control that falls off.
|
|
16560
|
+
*/
|
|
16561
|
+
.crewlet-inline-editor__bar {
|
|
16562
|
+
display: flex;
|
|
16563
|
+
flex-wrap: wrap;
|
|
16564
|
+
align-items: center;
|
|
16565
|
+
justify-content: space-between;
|
|
16566
|
+
gap: var(--spacing-2) var(--spacing-3);
|
|
16567
|
+
padding-top: var(--spacing-3);
|
|
16568
|
+
border-top-width: 1px;
|
|
16569
|
+
border-top-style: solid;
|
|
16570
|
+
border-top-color: var(--color-border-default);
|
|
16571
|
+
}
|
|
16572
|
+
|
|
16573
|
+
.crewlet-inline-editor__start,
|
|
16574
|
+
.crewlet-inline-editor__end {
|
|
16575
|
+
display: inline-flex;
|
|
16576
|
+
align-items: center;
|
|
16577
|
+
gap: var(--spacing-2);
|
|
16578
|
+
min-width: 0;
|
|
16579
|
+
}
|
|
16580
|
+
|
|
16581
|
+
.crewlet-inline-editor__end {
|
|
16582
|
+
margin-inline-start: auto;
|
|
16583
|
+
}
|
|
16584
|
+
|
|
16585
|
+
.crewlet-inline-editor__hint {
|
|
16586
|
+
display: inline-flex;
|
|
16587
|
+
align-items: center;
|
|
16588
|
+
gap: var(--spacing-1);
|
|
16589
|
+
font-size: var(--font-size-xs);
|
|
16590
|
+
color: var(--color-text-tertiary);
|
|
16591
|
+
white-space: nowrap;
|
|
16592
|
+
}
|
|
16593
|
+
|
|
16594
|
+
/* A touch screen has no Mod+Enter to press: the hint goes where no keyboard
|
|
16595
|
+
is the main way in. */
|
|
16596
|
+
@media (hover: none) and (pointer: coarse) {
|
|
16597
|
+
.crewlet-inline-editor__hint {
|
|
16598
|
+
display: none;
|
|
16599
|
+
}
|
|
16600
|
+
}
|
|
16601
|
+
|
|
16602
|
+
|
|
16603
|
+
/* Input-VDSV7VWJ.css */
|
|
16491
16604
|
/*
|
|
16492
16605
|
* The form row: Input, Textarea, Label, FormField, FormRow, FormSection and
|
|
16493
16606
|
* ReadOnlyField.
|
|
@@ -17051,6 +17164,25 @@ a.crewlet-icon-btn {
|
|
|
17051
17164
|
color: var(--color-text-tertiary);
|
|
17052
17165
|
}
|
|
17053
17166
|
|
|
17167
|
+
/*
|
|
17168
|
+
* THE HELP LINE WITH A COUNT AT ITS END (`limit`). The help wraps in the room
|
|
17169
|
+
* the count leaves, and the count keeps its width and its line: it is the
|
|
17170
|
+
* figure a writer glances at, so it does not move as the sentence beside it
|
|
17171
|
+
* wraps.
|
|
17172
|
+
*/
|
|
17173
|
+
.crewlet-form-field__meta {
|
|
17174
|
+
display: flex;
|
|
17175
|
+
align-items: flex-start;
|
|
17176
|
+
justify-content: space-between;
|
|
17177
|
+
gap: var(--spacing-3);
|
|
17178
|
+
}
|
|
17179
|
+
|
|
17180
|
+
.crewlet-form-field__meta > .crewlet-form-field__helper,
|
|
17181
|
+
.crewlet-form-field__meta-spacer {
|
|
17182
|
+
flex: 1;
|
|
17183
|
+
min-width: 0;
|
|
17184
|
+
}
|
|
17185
|
+
|
|
17054
17186
|
/* SHOWN ONLY WHILE THE FIELD HAS FOCUS (`helperOnFocus`): a dense form reads as
|
|
17055
17187
|
labels and values at rest, and the sentence appears under the field the
|
|
17056
17188
|
reader is in. Still described, so a screen reader hears it on entry. */
|
|
@@ -17801,7 +17933,7 @@ a.crewlet-icon-btn {
|
|
|
17801
17933
|
}
|
|
17802
17934
|
|
|
17803
17935
|
|
|
17804
|
-
/* List-
|
|
17936
|
+
/* List-XY445TKY.css */
|
|
17805
17937
|
/*
|
|
17806
17938
|
* The non-tabular list. One row recipe, four framings.
|
|
17807
17939
|
*
|
|
@@ -17970,6 +18102,37 @@ a.crewlet-icon-btn {
|
|
|
17970
18102
|
color: var(--color-text-tertiary);
|
|
17971
18103
|
}
|
|
17972
18104
|
|
|
18105
|
+
/*
|
|
18106
|
+
* COMPACT: a row a small step tall, in the body's size at its normal leading,
|
|
18107
|
+
* so a list of statements that each run to two lines still stands on one
|
|
18108
|
+
* screen. Only the rhythm changes; the number column, the rule between rows
|
|
18109
|
+
* and the inset a card gives them stay where they were.
|
|
18110
|
+
*/
|
|
18111
|
+
.crewlet-list--compact .crewlet-list__row {
|
|
18112
|
+
min-height: 0;
|
|
18113
|
+
padding-block: var(--spacing-1);
|
|
18114
|
+
}
|
|
18115
|
+
|
|
18116
|
+
.crewlet-list--compact.crewlet-list--numbered-divided .crewlet-list__row {
|
|
18117
|
+
padding-block: var(--spacing-2);
|
|
18118
|
+
font-size: var(--font-size-sm);
|
|
18119
|
+
line-height: var(--font-line-height-normal);
|
|
18120
|
+
text-wrap: pretty;
|
|
18121
|
+
}
|
|
18122
|
+
|
|
18123
|
+
/*
|
|
18124
|
+
* THE WORDS AT A READING MEASURE (`measure`), while the row and its rule
|
|
18125
|
+
* still span the list. In a card the width of the page a policy otherwise
|
|
18126
|
+
* runs to some 150 characters a line. A maximum, never a width.
|
|
18127
|
+
*/
|
|
18128
|
+
.crewlet-list--measure-normal .crewlet-list__content {
|
|
18129
|
+
max-inline-size: var(--size-measure);
|
|
18130
|
+
}
|
|
18131
|
+
|
|
18132
|
+
.crewlet-list--measure-wide .crewlet-list__content {
|
|
18133
|
+
max-inline-size: var(--size-measure-wide);
|
|
18134
|
+
}
|
|
18135
|
+
|
|
17973
18136
|
/* ---- States ------------------------------------------------------------ */
|
|
17974
18137
|
|
|
17975
18138
|
/*
|
|
@@ -18077,7 +18240,7 @@ a.crewlet-icon-btn {
|
|
|
18077
18240
|
}
|
|
18078
18241
|
|
|
18079
18242
|
|
|
18080
|
-
/* ListInput-
|
|
18243
|
+
/* ListInput-DP2CSJ22.css */
|
|
18081
18244
|
/*
|
|
18082
18245
|
* ListInput: an ordered list of sentences, written in the box at the top and
|
|
18083
18246
|
* listed under it.
|
|
@@ -18093,6 +18256,7 @@ a.crewlet-icon-btn {
|
|
|
18093
18256
|
.crewlet-list-input__add {
|
|
18094
18257
|
display: flex;
|
|
18095
18258
|
align-items: flex-start;
|
|
18259
|
+
gap: var(--spacing-2);
|
|
18096
18260
|
}
|
|
18097
18261
|
|
|
18098
18262
|
.crewlet-list-input__add > * {
|
|
@@ -18149,10 +18313,75 @@ a.crewlet-icon-btn {
|
|
|
18149
18313
|
border-block-end-style: none;
|
|
18150
18314
|
}
|
|
18151
18315
|
|
|
18152
|
-
|
|
18153
|
-
|
|
18316
|
+
/*
|
|
18317
|
+
* THE FIELD TAKES THE ROW'S WIDTH, and holds the control with whatever is
|
|
18318
|
+
* said under it (its count, its refusal) as one column, so a note under an
|
|
18319
|
+
* item sits under the item's words and not under its number or its buttons.
|
|
18320
|
+
*/
|
|
18321
|
+
.crewlet-list-input__field {
|
|
18322
|
+
display: flex;
|
|
18323
|
+
flex: 1;
|
|
18324
|
+
flex-direction: column;
|
|
18325
|
+
min-width: 0;
|
|
18326
|
+
}
|
|
18327
|
+
|
|
18328
|
+
.crewlet-list-input__field > .crewlet-input,
|
|
18329
|
+
.crewlet-list-input__field > .crewlet-textarea,
|
|
18330
|
+
.crewlet-list-input__field > .crewlet-textarea-shell {
|
|
18331
|
+
width: 100%;
|
|
18332
|
+
min-width: 0;
|
|
18333
|
+
}
|
|
18334
|
+
|
|
18335
|
+
/* What is said under one item: its refusal at the start, its count at the end. */
|
|
18336
|
+
.crewlet-list-input__note {
|
|
18337
|
+
display: flex;
|
|
18338
|
+
align-items: flex-start;
|
|
18339
|
+
justify-content: space-between;
|
|
18340
|
+
gap: var(--spacing-3);
|
|
18341
|
+
padding-bottom: var(--spacing-1);
|
|
18342
|
+
}
|
|
18343
|
+
|
|
18344
|
+
.crewlet-list-input__error {
|
|
18345
|
+
min-width: 0;
|
|
18346
|
+
font-size: var(--font-size-xs);
|
|
18347
|
+
line-height: var(--font-line-height-normal);
|
|
18348
|
+
color: var(--color-feedback-danger-ink);
|
|
18349
|
+
}
|
|
18350
|
+
|
|
18351
|
+
/*
|
|
18352
|
+
* THE ROW A REMOVED ITEM LEAVES (`undoRemove`): the item's own place in the
|
|
18353
|
+
* order, at a row's height and on the row's rule, saying what happened in the
|
|
18354
|
+
* quiet ink with Undo beside it, so the list does not close up over the place
|
|
18355
|
+
* an Undo would put it back.
|
|
18356
|
+
*/
|
|
18357
|
+
.crewlet-list-input__removed {
|
|
18358
|
+
display: flex;
|
|
18359
|
+
align-items: center;
|
|
18360
|
+
gap: var(--spacing-2);
|
|
18361
|
+
padding: var(--spacing-1) var(--spacing-3);
|
|
18362
|
+
border-block-end-width: 1px;
|
|
18363
|
+
border-block-end-style: solid;
|
|
18364
|
+
border-block-end-color: var(--color-border-default);
|
|
18365
|
+
background: var(--color-surface-subtle);
|
|
18366
|
+
}
|
|
18367
|
+
|
|
18368
|
+
.crewlet-list-input__removed:last-child {
|
|
18369
|
+
border-block-end-style: none;
|
|
18370
|
+
}
|
|
18371
|
+
|
|
18372
|
+
.crewlet-list-input__removed-text {
|
|
18154
18373
|
flex: 1;
|
|
18155
18374
|
min-width: 0;
|
|
18375
|
+
font-size: var(--font-size-compact);
|
|
18376
|
+
color: var(--color-text-secondary);
|
|
18377
|
+
}
|
|
18378
|
+
|
|
18379
|
+
/* Where the new-item box was, once the list holds all it may. */
|
|
18380
|
+
.crewlet-list-input__full {
|
|
18381
|
+
margin: 0;
|
|
18382
|
+
font-size: var(--font-size-xs);
|
|
18383
|
+
line-height: var(--font-line-height-normal);
|
|
18384
|
+
color: var(--color-text-tertiary);
|
|
18156
18385
|
}
|
|
18157
18386
|
|
|
18158
18387
|
/*
|
|
@@ -18220,10 +18449,60 @@ a.crewlet-icon-btn {
|
|
|
18220
18449
|
opacity: 1;
|
|
18221
18450
|
}
|
|
18222
18451
|
|
|
18452
|
+
/*
|
|
18453
|
+
* THE GRIP (`reorderByDrag`) waits with the move pair: the pointer's way to
|
|
18454
|
+
* take hold of a row, shown under the pointer and while the row holds the
|
|
18455
|
+
* focus, in the quiet ink so the row's number stays the first mark on it.
|
|
18456
|
+
*/
|
|
18457
|
+
.crewlet-list-input__handle {
|
|
18458
|
+
display: inline-flex;
|
|
18459
|
+
flex: none;
|
|
18460
|
+
align-items: center;
|
|
18461
|
+
justify-content: center;
|
|
18462
|
+
margin-inline-start: calc(var(--spacing-1) * -1);
|
|
18463
|
+
color: var(--color-text-tertiary);
|
|
18464
|
+
cursor: grab;
|
|
18465
|
+
opacity: 0;
|
|
18466
|
+
transition: opacity var(--motion-duration-fast) var(--motion-easing-default);
|
|
18467
|
+
}
|
|
18468
|
+
|
|
18469
|
+
.crewlet-list-input__handle:active {
|
|
18470
|
+
cursor: grabbing;
|
|
18471
|
+
}
|
|
18472
|
+
|
|
18473
|
+
.crewlet-list-input__item:hover .crewlet-list-input__handle,
|
|
18474
|
+
.crewlet-list-input__item:focus-within .crewlet-list-input__handle {
|
|
18475
|
+
opacity: 1;
|
|
18476
|
+
}
|
|
18477
|
+
|
|
18478
|
+
/* The row being dragged keeps its place as an outline, so the list does not
|
|
18479
|
+
close up under the pointer and the reader can see where it came from. */
|
|
18480
|
+
.crewlet-list-input__item[data-reorder='dragging'] {
|
|
18481
|
+
outline-width: 1px;
|
|
18482
|
+
outline-style: dashed;
|
|
18483
|
+
outline-color: var(--color-border-strong);
|
|
18484
|
+
outline-offset: -1px;
|
|
18485
|
+
}
|
|
18486
|
+
|
|
18487
|
+
.crewlet-list-input__item[data-reorder='dragging'] > * {
|
|
18488
|
+
opacity: 0.4;
|
|
18489
|
+
}
|
|
18490
|
+
|
|
18223
18491
|
@media (prefers-reduced-motion: reduce) {
|
|
18224
18492
|
.crewlet-list-input__move {
|
|
18225
18493
|
transition: none;
|
|
18226
18494
|
}
|
|
18495
|
+
|
|
18496
|
+
.crewlet-list-input__handle {
|
|
18497
|
+
transition: none;
|
|
18498
|
+
}
|
|
18499
|
+
}
|
|
18500
|
+
|
|
18501
|
+
/* With a hidden legend the add control stands at the end of the box's row. */
|
|
18502
|
+
.crewlet-list-input__add-control {
|
|
18503
|
+
display: inline-flex;
|
|
18504
|
+
flex: none;
|
|
18505
|
+
align-self: center;
|
|
18227
18506
|
}
|
|
18228
18507
|
|
|
18229
18508
|
|
|
@@ -30463,7 +30742,7 @@ b.crewlet-switcher__match {
|
|
|
30463
30742
|
}
|
|
30464
30743
|
|
|
30465
30744
|
|
|
30466
|
-
/* Text-
|
|
30745
|
+
/* Text-XOCOU34C.css */
|
|
30467
30746
|
/*
|
|
30468
30747
|
* The type registers, one rule each.
|
|
30469
30748
|
*
|
|
@@ -30532,6 +30811,15 @@ b.crewlet-switcher__match {
|
|
|
30532
30811
|
color: var(--color-text-primary);
|
|
30533
30812
|
}
|
|
30534
30813
|
|
|
30814
|
+
.crewlet-text--passage {
|
|
30815
|
+
font-size: var(--font-size-sm);
|
|
30816
|
+
line-height: var(--font-line-height-relaxed);
|
|
30817
|
+
color: var(--color-text-primary);
|
|
30818
|
+
white-space: pre-wrap;
|
|
30819
|
+
overflow-wrap: anywhere;
|
|
30820
|
+
text-wrap: pretty;
|
|
30821
|
+
}
|
|
30822
|
+
|
|
30535
30823
|
.crewlet-text--cell {
|
|
30536
30824
|
font-size: var(--font-size-compact);
|
|
30537
30825
|
line-height: var(--font-line-height-snug);
|
|
@@ -31016,7 +31304,7 @@ b.crewlet-switcher__match {
|
|
|
31016
31304
|
}
|
|
31017
31305
|
|
|
31018
31306
|
|
|
31019
|
-
/* TileGrid-
|
|
31307
|
+
/* TileGrid-UYMVVVJK.css */
|
|
31020
31308
|
/*
|
|
31021
31309
|
* TileGrid: tiles on a fixed track count that folds by the grid's own width.
|
|
31022
31310
|
*
|
|
@@ -31070,6 +31358,36 @@ b.crewlet-switcher__match {
|
|
|
31070
31358
|
}
|
|
31071
31359
|
}
|
|
31072
31360
|
|
|
31361
|
+
/*
|
|
31362
|
+
* COMPACT TILES FOLD WIDER. A compact `CatalogTile` puts its mark, name,
|
|
31363
|
+
* state, fact and action on ONE line, which needs about 30rem; the folds above
|
|
31364
|
+
* are sized for a comfortable tile, whose parts stack. Measured at a 1024px
|
|
31365
|
+
* window, two compact tiles on 415px tracks cut the name to its first letter.
|
|
31366
|
+
* So a grid holding a compact tile folds where a track would be narrower than
|
|
31367
|
+
* 30rem, counting the gaps: two tracks need 61rem, three 92rem (folding
|
|
31368
|
+
* straight to one, as three always do), and four 123rem before they go to
|
|
31369
|
+
* two. Declared here, on the grid, because the grid chooses the track count
|
|
31370
|
+
* and the tile cannot.
|
|
31371
|
+
*/
|
|
31372
|
+
@container crewlet-tile-grid (width < 123rem) {
|
|
31373
|
+
.crewlet-tile-grid[data-columns='4']:has(.crewlet-catalog-tile--compact) > .crewlet-tile-grid__track {
|
|
31374
|
+
--crewlet-tile-grid-tracks: 2;
|
|
31375
|
+
}
|
|
31376
|
+
}
|
|
31377
|
+
|
|
31378
|
+
@container crewlet-tile-grid (width < 92rem) {
|
|
31379
|
+
.crewlet-tile-grid[data-columns='3']:has(.crewlet-catalog-tile--compact) > .crewlet-tile-grid__track {
|
|
31380
|
+
--crewlet-tile-grid-tracks: 1;
|
|
31381
|
+
}
|
|
31382
|
+
}
|
|
31383
|
+
|
|
31384
|
+
@container crewlet-tile-grid (width < 61rem) {
|
|
31385
|
+
/* As specific as the two rules above and after them, so it wins at every count. */
|
|
31386
|
+
.crewlet-tile-grid[data-columns]:has(.crewlet-catalog-tile--compact) > .crewlet-tile-grid__track {
|
|
31387
|
+
--crewlet-tile-grid-tracks: 1;
|
|
31388
|
+
}
|
|
31389
|
+
}
|
|
31390
|
+
|
|
31073
31391
|
|
|
31074
31392
|
/* TimeWindowPicker-I3HXC74I.css */
|
|
31075
31393
|
/*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crewlethq/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.46.0",
|
|
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.
|
|
46
|
-
"@crewlethq/tokens": "0.
|
|
45
|
+
"@crewlethq/icons": "0.46.0",
|
|
46
|
+
"@crewlethq/tokens": "0.46.0",
|
|
47
47
|
"prosemirror-commands": "1.7.2",
|
|
48
48
|
"prosemirror-gapcursor": "1.4.1",
|
|
49
49
|
"prosemirror-history": "1.5.1",
|