@crewlethq/ui 0.53.0 → 0.54.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 +12 -0
- package/dist/AgentHandoffPanel/index.js +8 -8
- package/dist/AppShell/index.js +1 -1
- package/dist/{AppShell-BIUFNT3J.css → AppShell-5LPXYUV3.css} +19 -3
- package/dist/ArrangeFrame/index.js +2 -2
- package/dist/ArrangeList/index.js +5 -5
- package/dist/ArtifactBar/index.js +7 -7
- package/dist/ArtifactCard/index.js +6 -6
- package/dist/ArtifactMakeRow/index.js +2 -2
- package/dist/AvatarPicker/index.js +7 -7
- package/dist/Canvas/index.js +2 -2
- package/dist/CanvasBoard/index.js +4 -4
- package/dist/CanvasToolbar/index.js +3 -3
- package/dist/CharacterPicker/index.js +2 -2
- package/dist/Checkbox/index.js +4 -4
- package/dist/ColorField/index.js +4 -4
- package/dist/Combobox/index.js +5 -5
- package/dist/CommandPalette/index.js +8 -8
- package/dist/CommentThread/index.js +7 -7
- package/dist/Composer/index.js +5 -5
- package/dist/ConfirmField/index.js +4 -4
- package/dist/DataGrid/index.js +6 -6
- package/dist/DataTable/index.js +7 -7
- package/dist/DataView/index.js +10 -10
- package/dist/DatasetSource/index.js +1 -1
- package/dist/DocTabsEditor/index.js +5 -5
- package/dist/{Editor-RAUVEXLG.js → Editor-RMM3NQJ2.js} +5 -5
- package/dist/HuePicker/index.js +4 -4
- package/dist/InlineEditor/index.js +1 -1
- package/dist/Input/index.js +3 -3
- package/dist/LinkInterstitial/index.js +3 -3
- package/dist/ListInput/index.js +6 -6
- package/dist/MarkdownEditor/index.js +4 -4
- package/dist/MergeConflicts/index.js +4 -4
- package/dist/Modal/index.js +2 -2
- package/dist/OrgTable/index.js +1 -1
- package/dist/PeopleRail/index.js +2 -2
- package/dist/PrincipalPicker/index.js +6 -6
- package/dist/ReviewList/ReviewList.d.ts +58 -0
- package/dist/ReviewList/index.d.ts +3 -0
- package/dist/ReviewList/index.js +6 -0
- package/dist/ReviewList-TIN6C2JN.css +116 -0
- package/dist/RichEditor/index.js +1 -1
- package/dist/SegmentedControl/index.js +3 -3
- package/dist/SetupWizard/SetupWizard.d.ts +17 -11
- package/dist/SetupWizard/index.js +2 -2
- package/dist/{SetupWizard-GZK5UDKC.css → SetupWizard-Z54H6RYW.css} +86 -15
- package/dist/ShareDialog/index.js +3 -3
- package/dist/SheetColumnEditor/index.js +11 -11
- package/dist/SheetGrid/index.js +4 -4
- package/dist/SlideFilmstrip/index.js +3 -3
- package/dist/Switcher/index.js +6 -6
- package/dist/TableCells/index.js +1 -1
- package/dist/Tabs/index.js +2 -2
- package/dist/TagsInput/index.js +2 -2
- package/dist/ThemeSwitcher/index.js +4 -4
- package/dist/TimeWindowPicker/index.js +5 -5
- package/dist/TreeCanvas/index.js +3 -3
- package/dist/VersionCompare/index.js +6 -6
- package/dist/{chunk-M7MMWXKE.js → chunk-4QIGQC6Y.js} +1 -1
- package/dist/{chunk-ROXAHDMA.js → chunk-6PEALINJ.js} +3 -3
- package/dist/{chunk-55H7REZK.js → chunk-BR4FA2NG.js} +1 -1
- package/dist/{chunk-B424UBV3.js → chunk-CNTBUK24.js} +2 -2
- package/dist/{chunk-XSHA74LN.js → chunk-CONCQJ2X.js} +4 -4
- package/dist/{chunk-V3M7V5SO.js → chunk-DTCX5KCL.js} +4 -4
- package/dist/{chunk-LZDTH436.js → chunk-DU5AHR5B.js} +2 -2
- package/dist/{chunk-TNGIFWDG.js → chunk-E2X2MXVK.js} +1 -1
- package/dist/{chunk-ATRRLHLU.js → chunk-EMC2QD76.js} +1 -1
- package/dist/{chunk-Z2SK4MPL.js → chunk-F45VSK2M.js} +2 -2
- package/dist/{chunk-K3UA2GJF.js → chunk-GM2LN24I.js} +2 -2
- package/dist/{chunk-ZXQXEP2S.js → chunk-HEBW53YG.js} +2 -2
- package/dist/{chunk-JFKPOVDA.js → chunk-IRAS2CZ5.js} +2 -2
- package/dist/{chunk-WCIJW2SA.js → chunk-JM5AN3CF.js} +1 -1
- package/dist/{chunk-XFZ7JWBJ.js → chunk-LHKIP4ZP.js} +2 -2
- package/dist/{chunk-VYVW24VC.js → chunk-LVFG2RER.js} +1 -1
- package/dist/{chunk-HTEQFRDI.js → chunk-LXCRHVMZ.js} +1 -1
- package/dist/{chunk-AQCJKX5R.js → chunk-M5LON3CU.js} +2 -2
- package/dist/{chunk-LP6EDXO5.js → chunk-MZ3QFQDL.js} +1 -1
- package/dist/{chunk-UM5LMW5X.js → chunk-NILOJV62.js} +1 -1
- package/dist/chunk-OBUQVGEG.js +38 -0
- package/dist/{chunk-362TAJUQ.js → chunk-PGYIDNGG.js} +2 -2
- package/dist/{chunk-WO4W5FTB.js → chunk-PZQK7DWI.js} +1 -1
- package/dist/{chunk-JV4G7LH3.js → chunk-PZZHO6OS.js} +1 -1
- package/dist/{chunk-CPOD27EG.js → chunk-QEVW4DIN.js} +1 -1
- package/dist/{chunk-5WJAH6JG.js → chunk-QRA2GOK2.js} +1 -1
- package/dist/{chunk-BIRR4RKZ.js → chunk-RBUA7ZNK.js} +1 -1
- package/dist/{chunk-5FB6DGGC.js → chunk-SMVWDO72.js} +2 -2
- package/dist/{chunk-4QW6K7RK.js → chunk-U3LNU4B2.js} +1 -1
- package/dist/{chunk-JIMTX2X3.js → chunk-UD76FCAO.js} +1 -1
- package/dist/{chunk-ZZL54LEO.js → chunk-VBEMIZIJ.js} +1 -1
- package/dist/{chunk-FAHAJWZR.js → chunk-VEXOODVM.js} +4 -4
- package/dist/{chunk-4C5CZT4D.js → chunk-WXWMHYKW.js} +2 -2
- package/dist/{chunk-N3MM67K4.js → chunk-XNKARRTG.js} +1 -1
- package/dist/{chunk-WIYTIJF6.js → chunk-XS7HRQVY.js} +1 -1
- package/dist/{chunk-5Z4DAS53.js → chunk-ZBZUTUE7.js} +1 -1
- package/dist/generated/index.d.ts +1 -0
- package/dist/generated/index.js +94 -93
- package/dist/index.js +94 -93
- package/dist/styles.css +226 -20
- package/dist/utils/index.js +1 -1
- package/package.json +3 -3
- package/dist/{chunk-RRHB5WWN.js → chunk-25S5YROP.js} +1 -1
- package/dist/{chunk-DEBVNLFJ.js → chunk-3RCHEFIL.js} +1 -1
- package/dist/{chunk-P432I5DQ.js → chunk-55MPFB2U.js} +0 -0
- package/dist/{chunk-I4Q6PACO.js → chunk-GKRPPSWY.js} +1 -1
- package/dist/{chunk-MXBDOQA5.js → chunk-ICPQIAD6.js} +1 -1
- package/dist/{chunk-5UEANIIW.js → chunk-K2FNW3MK.js} +1 -1
- package/dist/{chunk-NC3Z6MM3.js → chunk-N224FUS3.js} +1 -1
- package/dist/{chunk-TN22R6LW.js → chunk-QLEJPU5R.js} +2 -2
- package/dist/{chunk-RFK4ROA7.js → chunk-R3BA3C4Y.js} +1 -1
- package/dist/{chunk-VZICPYGR.js → chunk-SNQRGH4A.js} +1 -1
- package/dist/{chunk-LKBZV5IT.js → chunk-VWYT3GVV.js} +1 -1
- package/dist/{chunk-SFG7TS4Q.js → chunk-YCC2S7DF.js} +1 -1
package/dist/styles.css
CHANGED
|
@@ -702,7 +702,7 @@
|
|
|
702
702
|
}
|
|
703
703
|
|
|
704
704
|
|
|
705
|
-
/* AppShell-
|
|
705
|
+
/* AppShell-5LPXYUV3.css */
|
|
706
706
|
/*
|
|
707
707
|
* The application frame: a rail on the FRAME, and the screen on a SHEET that
|
|
708
708
|
* floats beside it.
|
|
@@ -1316,13 +1316,25 @@
|
|
|
1316
1316
|
programmatic focus does not match :focus-visible, so neither the browser nor
|
|
1317
1317
|
the document baseline draws a ring around the whole screen. */
|
|
1318
1318
|
|
|
1319
|
+
/*
|
|
1320
|
+
* THE CONTENT'S END is room under the last line, so it never reads flush
|
|
1321
|
+
* against the window's edge. It is a custom property,
|
|
1322
|
+
* `--crewlet-app-shell-content-end`, because a screen that ends in a bar
|
|
1323
|
+
* docked to the bottom of the scroller (a setup's footer) IS that edge: the
|
|
1324
|
+
* bar takes the room back with a negative margin of the same length, and
|
|
1325
|
+
* sits on the scroller's bottom at the end of a scroll exactly where it stood
|
|
1326
|
+
* while scrolling, rather than riding the room's height above it.
|
|
1327
|
+
*/
|
|
1319
1328
|
.crewlet-app-shell__content {
|
|
1329
|
+
--crewlet-app-shell-content-end: var(--spacing-10);
|
|
1330
|
+
|
|
1320
1331
|
display: flex;
|
|
1321
1332
|
flex-direction: column;
|
|
1322
1333
|
gap: var(--spacing-5);
|
|
1323
1334
|
max-width: var(--size-content-max);
|
|
1324
1335
|
margin: 0 auto;
|
|
1325
|
-
padding: var(--spacing-5) var(--spacing-5)
|
|
1336
|
+
padding: var(--spacing-5) var(--spacing-5);
|
|
1337
|
+
padding-bottom: var(--crewlet-app-shell-content-end);
|
|
1326
1338
|
min-width: 0;
|
|
1327
1339
|
}
|
|
1328
1340
|
|
|
@@ -1341,8 +1353,9 @@
|
|
|
1341
1353
|
}
|
|
1342
1354
|
|
|
1343
1355
|
.crewlet-app-shell--fill .crewlet-app-shell__content {
|
|
1356
|
+
--crewlet-app-shell-content-end: var(--spacing-5);
|
|
1357
|
+
|
|
1344
1358
|
height: 100%;
|
|
1345
|
-
padding-bottom: var(--spacing-5);
|
|
1346
1359
|
}
|
|
1347
1360
|
|
|
1348
1361
|
/* Hidden by default, revealed by the breakpoint below: the wide layout has the
|
|
@@ -1461,7 +1474,10 @@
|
|
|
1461
1474
|
}
|
|
1462
1475
|
|
|
1463
1476
|
.crewlet-app-shell__content {
|
|
1464
|
-
|
|
1477
|
+
--crewlet-app-shell-content-end: var(--spacing-9);
|
|
1478
|
+
|
|
1479
|
+
padding: var(--spacing-4) var(--spacing-4);
|
|
1480
|
+
padding-bottom: var(--crewlet-app-shell-content-end);
|
|
1465
1481
|
}
|
|
1466
1482
|
}
|
|
1467
1483
|
|
|
@@ -24857,6 +24873,125 @@ button.crewlet-presence-stack__member:focus-visible {
|
|
|
24857
24873
|
}
|
|
24858
24874
|
|
|
24859
24875
|
|
|
24876
|
+
/* ReviewList-TIN6C2JN.css */
|
|
24877
|
+
/*
|
|
24878
|
+
* ReviewList: a setup's parts in one bordered box, a row each, before the
|
|
24879
|
+
* setup is finished (ReviewList.tsx).
|
|
24880
|
+
*
|
|
24881
|
+
* A ROW IS A GRID OF THREE COLUMNS: the glyph's tile, the part (its title and
|
|
24882
|
+
* state over its values), and the action. The values sit under the title, at
|
|
24883
|
+
* its start, and reach the row's end under the action, so a row of logos or
|
|
24884
|
+
* swatches has the whole width and the titles still run down one line.
|
|
24885
|
+
*/
|
|
24886
|
+
.crewlet-review-list {
|
|
24887
|
+
container-type: inline-size;
|
|
24888
|
+
display: flex;
|
|
24889
|
+
flex-direction: column;
|
|
24890
|
+
min-width: 0;
|
|
24891
|
+
margin: 0;
|
|
24892
|
+
padding: 0;
|
|
24893
|
+
border: 1px solid var(--color-border-default);
|
|
24894
|
+
border-radius: var(--radius-lg);
|
|
24895
|
+
background-color: var(--color-surface-subtle);
|
|
24896
|
+
list-style: none;
|
|
24897
|
+
}
|
|
24898
|
+
|
|
24899
|
+
.crewlet-review-list__item {
|
|
24900
|
+
display: grid;
|
|
24901
|
+
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
24902
|
+
grid-template-areas:
|
|
24903
|
+
'icon head action'
|
|
24904
|
+
'. body body'
|
|
24905
|
+
'. error error';
|
|
24906
|
+
align-items: center;
|
|
24907
|
+
column-gap: var(--spacing-3);
|
|
24908
|
+
min-width: 0;
|
|
24909
|
+
padding: var(--spacing-4) var(--spacing-5);
|
|
24910
|
+
}
|
|
24911
|
+
|
|
24912
|
+
.crewlet-review-list__item + .crewlet-review-list__item {
|
|
24913
|
+
border-top: 1px solid var(--color-border-default);
|
|
24914
|
+
}
|
|
24915
|
+
|
|
24916
|
+
.crewlet-review-list__icon {
|
|
24917
|
+
grid-area: icon;
|
|
24918
|
+
}
|
|
24919
|
+
|
|
24920
|
+
.crewlet-review-list__head {
|
|
24921
|
+
display: flex;
|
|
24922
|
+
flex-wrap: wrap;
|
|
24923
|
+
align-items: center;
|
|
24924
|
+
gap: var(--spacing-1) var(--spacing-2);
|
|
24925
|
+
grid-area: head;
|
|
24926
|
+
min-width: 0;
|
|
24927
|
+
}
|
|
24928
|
+
|
|
24929
|
+
.crewlet-review-list__title {
|
|
24930
|
+
margin: 0;
|
|
24931
|
+
color: var(--color-text-primary);
|
|
24932
|
+
font-family: var(--font-family-sans);
|
|
24933
|
+
font-size: var(--font-size-sm);
|
|
24934
|
+
font-weight: var(--font-weight-semibold);
|
|
24935
|
+
line-height: var(--font-line-height-tight);
|
|
24936
|
+
}
|
|
24937
|
+
|
|
24938
|
+
.crewlet-review-list__action {
|
|
24939
|
+
display: flex;
|
|
24940
|
+
align-items: center;
|
|
24941
|
+
gap: var(--spacing-1);
|
|
24942
|
+
grid-area: action;
|
|
24943
|
+
}
|
|
24944
|
+
|
|
24945
|
+
.crewlet-review-list__body {
|
|
24946
|
+
grid-area: body;
|
|
24947
|
+
min-width: 0;
|
|
24948
|
+
margin-top: var(--spacing-3);
|
|
24949
|
+
color: var(--color-text-primary);
|
|
24950
|
+
font-size: var(--font-size-sm);
|
|
24951
|
+
line-height: var(--font-line-height-body);
|
|
24952
|
+
}
|
|
24953
|
+
|
|
24954
|
+
/* WHAT HOLDS THE FINISH, in the danger ink with its glyph, so it never rests on the hue alone. */
|
|
24955
|
+
.crewlet-review-list__error {
|
|
24956
|
+
display: flex;
|
|
24957
|
+
align-items: flex-start;
|
|
24958
|
+
gap: var(--spacing-1);
|
|
24959
|
+
grid-area: error;
|
|
24960
|
+
margin: var(--spacing-2) 0 0;
|
|
24961
|
+
color: var(--color-feedback-danger-ink);
|
|
24962
|
+
font-size: var(--font-size-xs);
|
|
24963
|
+
line-height: var(--font-line-height-normal);
|
|
24964
|
+
}
|
|
24965
|
+
|
|
24966
|
+
.crewlet-review-list__error > svg {
|
|
24967
|
+
flex: none;
|
|
24968
|
+
margin-top: 1px;
|
|
24969
|
+
}
|
|
24970
|
+
|
|
24971
|
+
/* WITHOUT A GLYPH the part starts at the row's start, with no empty column before it. */
|
|
24972
|
+
.crewlet-review-list__item--plain {
|
|
24973
|
+
grid-template-columns: minmax(0, 1fr) auto;
|
|
24974
|
+
grid-template-areas:
|
|
24975
|
+
'head action'
|
|
24976
|
+
'body body'
|
|
24977
|
+
'error error';
|
|
24978
|
+
}
|
|
24979
|
+
|
|
24980
|
+
/* A NARROW LIST gives the values the whole row: an indent of a tile and a gap is a fifth of a phone. */
|
|
24981
|
+
@container (width < 28rem) {
|
|
24982
|
+
.crewlet-review-list__item {
|
|
24983
|
+
padding: var(--spacing-3) var(--spacing-4);
|
|
24984
|
+
}
|
|
24985
|
+
|
|
24986
|
+
.crewlet-review-list__item:not(.crewlet-review-list__item--plain) {
|
|
24987
|
+
grid-template-areas:
|
|
24988
|
+
'icon head action'
|
|
24989
|
+
'body body body'
|
|
24990
|
+
'error error error';
|
|
24991
|
+
}
|
|
24992
|
+
}
|
|
24993
|
+
|
|
24994
|
+
|
|
24860
24995
|
/* RichEditor-NPD2KAPS.css */
|
|
24861
24996
|
/*
|
|
24862
24997
|
* The rich editor (RichEditor.tsx).
|
|
@@ -26834,7 +26969,7 @@ svg.crewlet-select__chevron {
|
|
|
26834
26969
|
}
|
|
26835
26970
|
|
|
26836
26971
|
|
|
26837
|
-
/* SetupWizard-
|
|
26972
|
+
/* SetupWizard-Z54H6RYW.css */
|
|
26838
26973
|
/*
|
|
26839
26974
|
* SetupWizard: a setup walked step by step on a page of its own
|
|
26840
26975
|
* (SetupWizard.tsx).
|
|
@@ -26844,27 +26979,58 @@ svg.crewlet-select__chevron {
|
|
|
26844
26979
|
* from 70rem of the wizard's own width, the aside (320px). Under 70rem the
|
|
26845
26980
|
* aside takes the row under the content and the rail runs down beside both.
|
|
26846
26981
|
* Under the phone breakpoint every part is one column, in reading order.
|
|
26982
|
+
*
|
|
26983
|
+
* THE TRACKS ARE THE MEASURE, NOT THE WINDOW. The content's track is at most
|
|
26984
|
+
* its column, so on a window wider than the parts the aside stands right
|
|
26985
|
+
* beside the content and the header and the footer end where the parts do.
|
|
26986
|
+
* A track of 1fr with the content held to 640px inside it left the preview
|
|
26987
|
+
* stranded at the window's far edge with a void between, and Continue a
|
|
26988
|
+
* window's width from the fields it continues. A wide step (`wide`) takes
|
|
26989
|
+
* the content and the aside's columns together, so its footer ends where
|
|
26990
|
+
* every other step's does.
|
|
26847
26991
|
*/
|
|
26848
26992
|
|
|
26849
26993
|
.crewlet-setup-wizard {
|
|
26994
|
+
--crewlet-setup-wizard-rail: 240px;
|
|
26995
|
+
--crewlet-setup-wizard-column: 640px;
|
|
26996
|
+
--crewlet-setup-wizard-aside: 320px;
|
|
26997
|
+
--crewlet-setup-wizard-gap: var(--spacing-8);
|
|
26998
|
+
--crewlet-setup-wizard-wide: calc(
|
|
26999
|
+
var(--crewlet-setup-wizard-column) + var(--crewlet-setup-wizard-gap) + var(--crewlet-setup-wizard-aside)
|
|
27000
|
+
);
|
|
27001
|
+
|
|
26850
27002
|
container-type: inline-size;
|
|
26851
27003
|
min-width: 0;
|
|
26852
27004
|
}
|
|
26853
27005
|
|
|
26854
27006
|
.crewlet-setup-wizard__frame {
|
|
26855
27007
|
display: grid;
|
|
26856
|
-
grid-template-columns:
|
|
27008
|
+
grid-template-columns: var(--crewlet-setup-wizard-rail) minmax(0, var(--crewlet-setup-wizard-column));
|
|
26857
27009
|
grid-template-areas:
|
|
26858
27010
|
'head head'
|
|
26859
27011
|
'rail content'
|
|
26860
27012
|
'rail aside'
|
|
26861
27013
|
'foot foot';
|
|
26862
27014
|
grid-template-rows: auto auto 1fr auto;
|
|
26863
|
-
column-gap: var(--
|
|
27015
|
+
column-gap: var(--crewlet-setup-wizard-gap);
|
|
26864
27016
|
row-gap: var(--spacing-6);
|
|
26865
27017
|
min-width: 0;
|
|
26866
27018
|
}
|
|
26867
27019
|
|
|
27020
|
+
/* With no aside there is no row for one, and no second gap above the footer. */
|
|
27021
|
+
.crewlet-setup-wizard--no-aside .crewlet-setup-wizard__frame {
|
|
27022
|
+
grid-template-areas:
|
|
27023
|
+
'head head'
|
|
27024
|
+
'rail content'
|
|
27025
|
+
'foot foot';
|
|
27026
|
+
grid-template-rows: auto 1fr auto;
|
|
27027
|
+
}
|
|
27028
|
+
|
|
27029
|
+
/* A WIDE STEP lays out columns of its own across the content's and the aside's columns together. */
|
|
27030
|
+
.crewlet-setup-wizard--wide .crewlet-setup-wizard__frame {
|
|
27031
|
+
grid-template-columns: var(--crewlet-setup-wizard-rail) minmax(0, var(--crewlet-setup-wizard-wide));
|
|
27032
|
+
}
|
|
27033
|
+
|
|
26868
27034
|
.crewlet-setup-wizard__head {
|
|
26869
27035
|
display: flex;
|
|
26870
27036
|
flex-direction: column;
|
|
@@ -26896,7 +27062,6 @@ svg.crewlet-select__chevron {
|
|
|
26896
27062
|
grid-area: content;
|
|
26897
27063
|
box-sizing: border-box;
|
|
26898
27064
|
width: 100%;
|
|
26899
|
-
max-width: 640px;
|
|
26900
27065
|
min-width: 0;
|
|
26901
27066
|
}
|
|
26902
27067
|
|
|
@@ -26939,7 +27104,6 @@ svg.crewlet-select__chevron {
|
|
|
26939
27104
|
gap: var(--spacing-4);
|
|
26940
27105
|
grid-area: aside;
|
|
26941
27106
|
box-sizing: border-box;
|
|
26942
|
-
max-width: 640px;
|
|
26943
27107
|
min-width: 0;
|
|
26944
27108
|
padding-top: var(--spacing-6);
|
|
26945
27109
|
border-top: 1px solid var(--color-border-default);
|
|
@@ -26949,6 +27113,14 @@ svg.crewlet-select__chevron {
|
|
|
26949
27113
|
* THE FOOTER holds the step's actions at the bottom of the view while the
|
|
26950
27114
|
* content scrolls under it, on the sheet's own ground with a hairline above,
|
|
26951
27115
|
* and clears the device's safe area where it has one.
|
|
27116
|
+
*
|
|
27117
|
+
* IT ENDS THE SCREEN. Inside an `AppShell` the content column keeps room
|
|
27118
|
+
* under its last line (`--crewlet-app-shell-content-end`, 64px wide), and a
|
|
27119
|
+
* docked bar is that last line: the footer takes the room back, so at the end
|
|
27120
|
+
* of a scroll it rests on the scroller's bottom edge, where it stood while
|
|
27121
|
+
* scrolling, rather than rising 64px with a strip of empty sheet under it.
|
|
27122
|
+
* Outside a shell there is no room to take back and the margin is zero. The
|
|
27123
|
+
* wizard is the screen's last element for the same reason.
|
|
26952
27124
|
*/
|
|
26953
27125
|
.crewlet-setup-wizard__footer {
|
|
26954
27126
|
position: sticky;
|
|
@@ -26959,6 +27131,7 @@ svg.crewlet-select__chevron {
|
|
|
26959
27131
|
align-items: center;
|
|
26960
27132
|
gap: var(--spacing-2);
|
|
26961
27133
|
grid-area: foot;
|
|
27134
|
+
margin-bottom: calc(-1 * var(--crewlet-app-shell-content-end, 0px));
|
|
26962
27135
|
padding: var(--spacing-3) 0 calc(var(--spacing-3) + env(safe-area-inset-bottom, var(--spacing-0)));
|
|
26963
27136
|
border-top: 1px solid var(--color-border-default);
|
|
26964
27137
|
background: var(--color-surface-background);
|
|
@@ -26977,15 +27150,16 @@ svg.crewlet-select__chevron {
|
|
|
26977
27150
|
margin-inline-start: auto;
|
|
26978
27151
|
}
|
|
26979
27152
|
|
|
26980
|
-
/*
|
|
26981
|
-
|
|
26982
|
-
|
|
26983
|
-
|
|
26984
|
-
|
|
26985
|
-
/* BESIDE THE CONTENT, from 70rem of the wizard's own width: the aside holds in view. */
|
|
27153
|
+
/*
|
|
27154
|
+
* BESIDE THE CONTENT, from 70rem of the wizard's own width: the aside holds in
|
|
27155
|
+
* view. Written at the specificity of the wide and no-aside rules above, and
|
|
27156
|
+
* after them, so the three shapes are decided by source order alone.
|
|
27157
|
+
*/
|
|
26986
27158
|
@container (min-width: 70rem) {
|
|
26987
|
-
.crewlet-setup-wizard__frame {
|
|
26988
|
-
grid-template-columns:
|
|
27159
|
+
.crewlet-setup-wizard .crewlet-setup-wizard__frame {
|
|
27160
|
+
grid-template-columns:
|
|
27161
|
+
var(--crewlet-setup-wizard-rail) minmax(0, var(--crewlet-setup-wizard-column))
|
|
27162
|
+
var(--crewlet-setup-wizard-aside);
|
|
26989
27163
|
grid-template-areas:
|
|
26990
27164
|
'head head head'
|
|
26991
27165
|
'rail content aside'
|
|
@@ -26993,15 +27167,19 @@ svg.crewlet-select__chevron {
|
|
|
26993
27167
|
grid-template-rows: auto 1fr auto;
|
|
26994
27168
|
}
|
|
26995
27169
|
|
|
26996
|
-
/* With no aside, nothing is held for one
|
|
27170
|
+
/* With no aside, nothing is held for one. */
|
|
26997
27171
|
.crewlet-setup-wizard--no-aside .crewlet-setup-wizard__frame {
|
|
26998
|
-
grid-template-columns:
|
|
27172
|
+
grid-template-columns: var(--crewlet-setup-wizard-rail) minmax(0, var(--crewlet-setup-wizard-column));
|
|
26999
27173
|
grid-template-areas:
|
|
27000
27174
|
'head head'
|
|
27001
27175
|
'rail content'
|
|
27002
27176
|
'foot foot';
|
|
27003
27177
|
}
|
|
27004
27178
|
|
|
27179
|
+
.crewlet-setup-wizard--wide.crewlet-setup-wizard--no-aside .crewlet-setup-wizard__frame {
|
|
27180
|
+
grid-template-columns: var(--crewlet-setup-wizard-rail) minmax(0, var(--crewlet-setup-wizard-wide));
|
|
27181
|
+
}
|
|
27182
|
+
|
|
27005
27183
|
.crewlet-setup-wizard__aside {
|
|
27006
27184
|
position: sticky;
|
|
27007
27185
|
top: var(--spacing-5);
|
|
@@ -27017,7 +27195,7 @@ svg.crewlet-select__chevron {
|
|
|
27017
27195
|
* position line, and scrolls away with the page rather than covering it.
|
|
27018
27196
|
*/
|
|
27019
27197
|
@media (width < 640px) {
|
|
27020
|
-
.crewlet-setup-wizard__frame {
|
|
27198
|
+
.crewlet-setup-wizard .crewlet-setup-wizard__frame {
|
|
27021
27199
|
grid-template-columns: minmax(0, 1fr);
|
|
27022
27200
|
grid-template-areas:
|
|
27023
27201
|
'head'
|
|
@@ -27029,6 +27207,14 @@ svg.crewlet-select__chevron {
|
|
|
27029
27207
|
row-gap: var(--spacing-5);
|
|
27030
27208
|
}
|
|
27031
27209
|
|
|
27210
|
+
.crewlet-setup-wizard--no-aside .crewlet-setup-wizard__frame {
|
|
27211
|
+
grid-template-areas:
|
|
27212
|
+
'head'
|
|
27213
|
+
'rail'
|
|
27214
|
+
'content'
|
|
27215
|
+
'foot';
|
|
27216
|
+
}
|
|
27217
|
+
|
|
27032
27218
|
.crewlet-setup-wizard__rail {
|
|
27033
27219
|
position: static;
|
|
27034
27220
|
display: flex;
|
|
@@ -27045,6 +27231,26 @@ svg.crewlet-select__chevron {
|
|
|
27045
27231
|
padding-top: 0;
|
|
27046
27232
|
border-top: 0;
|
|
27047
27233
|
}
|
|
27234
|
+
|
|
27235
|
+
/*
|
|
27236
|
+
* THE ACTIONS SHARE TWO ROWS: the way out and the step's other actions on
|
|
27237
|
+
* the first, the step's last action, its primary, the whole width on the
|
|
27238
|
+
* second, under the thumb. The two groups give their buttons to the
|
|
27239
|
+
* footer's own row, so three short buttons no longer take three lines of a
|
|
27240
|
+
* footer held over the content.
|
|
27241
|
+
*/
|
|
27242
|
+
.crewlet-setup-wizard__footer-start,
|
|
27243
|
+
.crewlet-setup-wizard__footer-end {
|
|
27244
|
+
display: contents;
|
|
27245
|
+
}
|
|
27246
|
+
|
|
27247
|
+
.crewlet-setup-wizard__footer-end > :first-child {
|
|
27248
|
+
margin-inline-start: auto;
|
|
27249
|
+
}
|
|
27250
|
+
|
|
27251
|
+
.crewlet-setup-wizard__footer-end > :last-child {
|
|
27252
|
+
flex: 1 1 100%;
|
|
27253
|
+
}
|
|
27048
27254
|
}
|
|
27049
27255
|
|
|
27050
27256
|
.crewlet-setup-wizard__position {
|
package/dist/utils/index.js
CHANGED
|
@@ -3,6 +3,6 @@ export { downloadBlob, downloadText, safeFilename, useDownload } from '../chunk-
|
|
|
3
3
|
export { useClipboard, writeClipboard } from '../chunk-STJ7QBC3.js';
|
|
4
4
|
export { useOutcome } from '../chunk-DTIW4CHZ.js';
|
|
5
5
|
export { NODE_HUES, NODE_HUE_NAMES, isNodeHue } from '../chunk-AYKXMIOR.js';
|
|
6
|
-
export { FOCUS_MODALITY_ATTRIBUTE, FOCUS_RETURNED_ATTRIBUTE, returnFocus, trackFocusModality, useFocusModality } from '../chunk-NUZHC6MM.js';
|
|
7
6
|
export { HeadingLevelProvider, headingTag, nextHeadingLevel, useHeadingLevel } from '../chunk-PQADV6P6.js';
|
|
7
|
+
export { FOCUS_MODALITY_ATTRIBUTE, FOCUS_RETURNED_ATTRIBUTE, returnFocus, trackFocusModality, useFocusModality } from '../chunk-NUZHC6MM.js';
|
|
8
8
|
export { cx } from '../chunk-ODEQTPFM.js';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crewlethq/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.54.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.54.0",
|
|
46
|
+
"@crewlethq/tokens": "0.54.0",
|
|
47
47
|
"prosemirror-commands": "1.7.2",
|
|
48
48
|
"prosemirror-gapcursor": "1.4.1",
|
|
49
49
|
"prosemirror-history": "1.5.1",
|
|
@@ -2,8 +2,8 @@ import { Tag } from './chunk-KYIAFNU7.js';
|
|
|
2
2
|
import { useListbox } from './chunk-7KHM2FZH.js';
|
|
3
3
|
import { isComposing } from './chunk-H5XTJ7GJ.js';
|
|
4
4
|
import { useFocusModality } from './chunk-NUZHC6MM.js';
|
|
5
|
-
import { IconButton } from './chunk-LACA4JGC.js';
|
|
6
5
|
import { announce } from './chunk-RSAQOKH3.js';
|
|
6
|
+
import { IconButton } from './chunk-LACA4JGC.js';
|
|
7
7
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
8
8
|
import './TagsInput-CLFHP6I2.css';
|
|
9
9
|
import { forwardRef, useState, useRef, useId, useImperativeHandle, useEffect, useMemo, useLayoutEffect } from 'react';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PRESENCE_LABELS, presenceOrder, collapseSessions } from './chunk-Z7JYG5TF.js';
|
|
2
2
|
import { Avatar } from './chunk-PZKHBB7D.js';
|
|
3
|
-
import { Button } from './chunk-OG6CL3EB.js';
|
|
4
3
|
import { headingTag, useHeadingLevel } from './chunk-PQADV6P6.js';
|
|
4
|
+
import { Button } from './chunk-OG6CL3EB.js';
|
|
5
5
|
import { IconButton } from './chunk-LACA4JGC.js';
|
|
6
6
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
7
7
|
import './PeopleRail-SZGHZXVT.css';
|
|
File without changes
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { StatusDot } from './chunk-WIATRXEJ.js';
|
|
2
2
|
import { useRoving, tabStop } from './chunk-EGMQURBR.js';
|
|
3
|
+
import { Count } from './chunk-BHHIIK3M.js';
|
|
3
4
|
import { Menu } from './chunk-3JIZ2A6K.js';
|
|
4
5
|
import { HIT_AREA_CLASS } from './chunk-2YTOOH3A.js';
|
|
5
|
-
import { Count } from './chunk-BHHIIK3M.js';
|
|
6
6
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
7
7
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
8
8
|
import './HitArea-QUOS6ZDJ.css';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { LayerNodeBridge } from './chunk-LM3ISVJA.js';
|
|
2
2
|
import { Tooltip } from './chunk-I33UIUZD.js';
|
|
3
|
-
import { LAYER_REPOSITION_EVENT, LayerHost } from './chunk-OMV5W53A.js';
|
|
4
3
|
import { Kbd } from './chunk-SMBKXWML.js';
|
|
4
|
+
import { LAYER_REPOSITION_EVENT, LayerHost } from './chunk-OMV5W53A.js';
|
|
5
5
|
import { Button } from './chunk-OG6CL3EB.js';
|
|
6
6
|
import { returnFocus } from './chunk-NUZHC6MM.js';
|
|
7
7
|
import { IconButton } from './chunk-LACA4JGC.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SlideStage } from './chunk-RMEBFYL7.js';
|
|
2
2
|
import { useReorder } from './chunk-XJ2QEBMM.js';
|
|
3
|
-
import { Menu } from './chunk-3JIZ2A6K.js';
|
|
4
3
|
import { Kbd, isApplePlatform } from './chunk-SMBKXWML.js';
|
|
4
|
+
import { Menu } from './chunk-3JIZ2A6K.js';
|
|
5
5
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
6
6
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
7
7
|
import './SlideFilmstrip-PAT7P4OG.css';
|
|
@@ -6,9 +6,9 @@ import { ChangeMark } from './chunk-66X5WDKE.js';
|
|
|
6
6
|
import { isEmptyValue, displayText, ratingMax, findPerson, findOption, statusTone, editText, textMax, sheetLabels, normalizeValue, sameValue, spokenText, drawnColumns, fitSamples, fittedWidth, columnWidth, SHEET_COLUMN_BOUNDS, sortRows, SHEET_ROW_HEIGHT, cellKey, columnOffsets, SHEET_ROW_NUMBER_WIDTH, rangeOf, presenceByCell, presenceByRow, presenceByColumn, scrollToRow, planClear, visibleRows, cellDescription, nextSort, rowName, inRange, hasPrevious, flagText, toTSV, planPaste, parseTSV, isMod, moveFrom, isTypingKey, editorSide, optionHue, parseText, liveOptions, checkValue } from './chunk-LFSIKGRQ.js';
|
|
7
7
|
import { presenceLabels } from './chunk-Z7JYG5TF.js';
|
|
8
8
|
import { Popover } from './chunk-KHJIEPZV.js';
|
|
9
|
-
import { Avatar } from './chunk-PZKHBB7D.js';
|
|
10
9
|
import { Tooltip } from './chunk-I33UIUZD.js';
|
|
11
10
|
import { StatusDot } from './chunk-WIATRXEJ.js';
|
|
11
|
+
import { Avatar } from './chunk-PZKHBB7D.js';
|
|
12
12
|
import { Menu } from './chunk-3JIZ2A6K.js';
|
|
13
13
|
import { Button } from './chunk-OG6CL3EB.js';
|
|
14
14
|
import { isComposing } from './chunk-H5XTJ7GJ.js';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { characterCountState, CharacterCount } from './chunk-XCUUI7E7.js';
|
|
2
|
+
import { useHeadingLevel, headingTag, HeadingLevelProvider, nextHeadingLevel } from './chunk-PQADV6P6.js';
|
|
2
3
|
import { isComposing } from './chunk-H5XTJ7GJ.js';
|
|
3
4
|
import { useFocusModality } from './chunk-NUZHC6MM.js';
|
|
4
|
-
import { useHeadingLevel, headingTag, HeadingLevelProvider, nextHeadingLevel } from './chunk-PQADV6P6.js';
|
|
5
|
-
import { IconButton } from './chunk-LACA4JGC.js';
|
|
6
5
|
import { announce } from './chunk-RSAQOKH3.js';
|
|
6
|
+
import { IconButton } from './chunk-LACA4JGC.js';
|
|
7
7
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
8
8
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
9
9
|
import './Input-GMOWHZRG.css';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { HIT_AREA_CLASS } from './chunk-2YTOOH3A.js';
|
|
2
1
|
import { ArtifactKindGlyph } from './chunk-RSKW25Y5.js';
|
|
2
|
+
import { HIT_AREA_CLASS } from './chunk-2YTOOH3A.js';
|
|
3
3
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
4
4
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
5
5
|
import './HitArea-QUOS6ZDJ.css';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Avatar } from './chunk-PZKHBB7D.js';
|
|
2
1
|
import { useRoving, tabStop } from './chunk-EGMQURBR.js';
|
|
2
|
+
import { Avatar } from './chunk-PZKHBB7D.js';
|
|
3
3
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
4
4
|
import { CREWLET_CHARACTERS, CREWLET_CHARACTER_GEOMETRY } from '@crewlethq/icons/characters';
|
|
5
5
|
import { jsx } from 'react/jsx-runtime';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { IconButton } from './chunk-LACA4JGC.js';
|
|
2
1
|
import { announce } from './chunk-RSAQOKH3.js';
|
|
2
|
+
import { IconButton } from './chunk-LACA4JGC.js';
|
|
3
3
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
4
4
|
import './ArrangeFrame-QXOQTFAH.css';
|
|
5
5
|
import { forwardRef, useRef, useCallback, useState, useEffect } from 'react';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { HeadingLevelProvider } from './chunk-PQADV6P6.js';
|
|
1
2
|
import { useLayerContainer } from './chunk-OMV5W53A.js';
|
|
2
3
|
import { Button } from './chunk-OG6CL3EB.js';
|
|
3
4
|
import { focusables, useModalLayer, useBodyScrollLock } from './chunk-H5XTJ7GJ.js';
|
|
4
|
-
import { HeadingLevelProvider } from './chunk-PQADV6P6.js';
|
|
5
5
|
import { IconButton } from './chunk-LACA4JGC.js';
|
|
6
6
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
7
7
|
import './Modal-3HMP7WAZ.css';
|