@crewlethq/ui 0.76.1 → 0.78.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 +18 -0
- package/dist/AgentHandoffPanel/index.js +5 -5
- package/dist/AppShell/index.js +4 -4
- package/dist/ArrangeList/index.js +4 -4
- package/dist/ArtifactBar/index.js +8 -8
- package/dist/ArtifactCard/index.js +6 -6
- package/dist/ArtifactPanel/index.js +1 -1
- package/dist/AvatarPicker/index.js +7 -7
- package/dist/Canvas/index.js +3 -3
- package/dist/CanvasBoard/index.js +5 -5
- package/dist/CanvasToolbar/index.js +4 -4
- package/dist/CheckGrid/CheckGrid.d.ts +62 -0
- package/dist/CheckGrid/index.d.ts +3 -0
- package/dist/CheckGrid/index.js +11 -0
- package/dist/CheckGrid-B3SRTHOJ.css +287 -0
- package/dist/Checkbox/index.js +3 -3
- package/dist/ChoiceCards/ChoiceCards.d.ts +20 -6
- package/dist/ChoiceCards/index.d.ts +1 -1
- package/dist/ChoiceCards/index.js +1 -1
- package/dist/{ChoiceCards-HAGJMK6Q.css → ChoiceCards-TVMBO3HZ.css} +60 -5
- package/dist/ColorField/index.js +3 -3
- package/dist/Combobox/index.js +3 -3
- package/dist/CommandPalette/index.js +4 -4
- package/dist/CommentThread/index.js +6 -6
- package/dist/Composer/index.js +3 -3
- package/dist/ConfirmField/index.js +3 -3
- package/dist/ContrastBadge/index.js +2 -2
- package/dist/ContrastHelp/index.js +4 -4
- package/dist/DataGrid/index.js +4 -4
- package/dist/DataTable/index.js +6 -6
- package/dist/DataView/index.js +8 -8
- package/dist/DateTimePicker/index.js +3 -3
- package/dist/DescriptionList/DescriptionList.d.ts +8 -1
- package/dist/DescriptionList/index.js +1 -1
- package/dist/{DescriptionList-DEZISDLQ.css → DescriptionList-VF7NIBXA.css} +6 -0
- package/dist/DocTabsEditor/index.js +5 -5
- package/dist/{Editor-BXOWAV46.js → Editor-QO2GRTMK.js} +4 -4
- package/dist/FollowBanner/index.js +1 -1
- package/dist/HuePicker/index.js +6 -6
- package/dist/InlineEditor/index.js +1 -1
- package/dist/Input/index.js +2 -2
- package/dist/LinkInterstitial/index.js +2 -2
- package/dist/ListInput/index.js +4 -4
- package/dist/LogoSlot/index.js +3 -3
- package/dist/MarkdownEditor/index.js +7 -7
- package/dist/Menu/index.js +3 -3
- package/dist/MergeConflicts/index.js +7 -7
- package/dist/Modal/index.js +2 -2
- package/dist/ObjectHeader/index.js +1 -1
- package/dist/{ObjectHeader-7BGA56VQ.css → ObjectHeader-VKQSEJDN.css} +3 -2
- package/dist/OrgTable/index.js +1 -1
- package/dist/PeekRail/index.js +1 -1
- package/dist/PresenterView/index.js +2 -2
- package/dist/PrincipalPicker/index.js +4 -4
- package/dist/PropertyList/index.js +3 -3
- package/dist/ProposalCard/index.js +4 -4
- package/dist/RichEditor/index.js +1 -1
- package/dist/SegmentedControl/index.js +6 -6
- package/dist/SelectionBar/index.js +1 -1
- package/dist/ShareDialog/index.js +2 -2
- package/dist/SheetColumnEditor/index.js +9 -9
- package/dist/SheetGrid/index.js +5 -5
- package/dist/SidePanel/index.js +1 -1
- package/dist/SlideCompare/index.js +1 -1
- package/dist/SlideFilmstrip/index.js +4 -4
- package/dist/Switcher/index.js +4 -4
- package/dist/Tabs/Tabs.d.ts +20 -2
- package/dist/Tabs/fold.d.ts +3 -1
- package/dist/Tabs/index.js +4 -4
- package/dist/{Tabs-7ZK2UF75.css → Tabs-M2ELSU3V.css} +68 -0
- package/dist/TagsInput/index.js +2 -2
- package/dist/ThemeSwitcher/index.js +7 -7
- package/dist/TileGrid/index.js +1 -1
- package/dist/{TileGrid-UYMVVVJK.css → TileGrid-XOEJ4P52.css} +3 -1
- package/dist/TimeRangePicker/index.js +8 -8
- package/dist/TimeWindowPicker/index.js +4 -4
- package/dist/TreeCanvas/index.js +4 -4
- package/dist/TreeGrid/index.js +1 -1
- package/dist/ValueField/index.js +4 -4
- package/dist/VersionCompare/index.js +7 -7
- package/dist/{chunk-TKUAGWNR.js → chunk-2GBG7KPK.js} +1 -1
- package/dist/{chunk-25AZQ3GZ.js → chunk-36WK24AI.js} +1 -1
- package/dist/{chunk-5CEQ3HLH.js → chunk-3NYVPLPW.js} +1 -1
- package/dist/{chunk-HQOEAUDJ.js → chunk-4O5XNGDC.js} +1 -1
- package/dist/{chunk-45M73G5A.js → chunk-4Y7PLU4I.js} +1 -1
- package/dist/{chunk-2STOSJT3.js → chunk-5N3MF7O2.js} +2 -2
- package/dist/{chunk-YQDRJZ5J.js → chunk-62GVKZJI.js} +1 -1
- package/dist/{chunk-RIAPCEB5.js → chunk-72Y5DBSY.js} +2 -2
- package/dist/{chunk-57AKYFML.js → chunk-A6NUAQFW.js} +1 -1
- package/dist/{chunk-S7WG53JB.js → chunk-AXEXOAZQ.js} +1 -1
- package/dist/{chunk-MKFEVHSR.js → chunk-B7NX425Z.js} +16 -3
- package/dist/{chunk-GHQG4VZA.js → chunk-BRFIUUXX.js} +2 -2
- package/dist/{chunk-E35HYQMK.js → chunk-CZUIPICC.js} +1 -1
- package/dist/{chunk-DSMQTED5.js → chunk-DCAT5OAX.js} +1 -1
- package/dist/{chunk-HWPP22XG.js → chunk-E6ETTJWX.js} +4 -4
- package/dist/{chunk-TJIBTHWJ.js → chunk-EVOGHRFN.js} +2 -2
- package/dist/{chunk-6EWNMSS4.js → chunk-FRLUJAFK.js} +1 -1
- package/dist/{chunk-LMQG3VPG.js → chunk-GKWZTTFV.js} +1 -1
- package/dist/{chunk-UY3FWQWG.js → chunk-HDLUG3MA.js} +2 -2
- package/dist/{chunk-TPCBPGSB.js → chunk-HMOGLAXY.js} +1 -1
- package/dist/chunk-HUIYSNBS.js +65 -0
- package/dist/{chunk-ZKLEAK7M.js → chunk-HZHFXKVP.js} +2 -2
- package/dist/{chunk-OCGIQGYJ.js → chunk-JIBZ5SF5.js} +2 -2
- package/dist/{chunk-ZMIVQGAB.js → chunk-KP5DDOMF.js} +4 -4
- package/dist/{chunk-PMBJMNBX.js → chunk-L5PK2MXF.js} +1 -1
- package/dist/{chunk-SK5SLGZH.js → chunk-LE6K34SN.js} +1 -1
- package/dist/{chunk-MFS6F2P7.js → chunk-LH4OF7FI.js} +3 -1
- package/dist/{chunk-TPIMOGOZ.js → chunk-LJSQT5NJ.js} +1 -1
- package/dist/{chunk-6THG44LI.js → chunk-LPN3RHMA.js} +42 -19
- package/dist/{chunk-OWHETZIU.js → chunk-LWKMJMVC.js} +1 -1
- package/dist/{chunk-HZDI2CCS.js → chunk-LXB4CABM.js} +2 -2
- package/dist/{chunk-LCZULGMB.js → chunk-MKWURHR5.js} +1 -1
- package/dist/{chunk-FQI62PIZ.js → chunk-ODAZIKZF.js} +2 -2
- package/dist/{chunk-HIWPPWNY.js → chunk-OPVTNHPH.js} +2 -2
- package/dist/{chunk-ZW5SRQ5M.js → chunk-PP5E3FGY.js} +1 -1
- package/dist/{chunk-BKXUZCZX.js → chunk-PQDQTK64.js} +1 -1
- package/dist/{chunk-IPBSCJIZ.js → chunk-QEVYTXCY.js} +3 -3
- package/dist/{chunk-KL6A7JGH.js → chunk-SQ7GYC4K.js} +1 -1
- package/dist/{chunk-MP7DGKB6.js → chunk-SZ75VYRX.js} +1 -1
- package/dist/{chunk-T24HBEU6.js → chunk-TL74TBDR.js} +1 -1
- package/dist/{chunk-IQMWMT4V.js → chunk-TNU6U7C5.js} +2 -2
- package/dist/{chunk-ADGNISEI.js → chunk-U4ICCJJP.js} +2 -2
- package/dist/{chunk-Q6CQMS6R.js → chunk-UFID3DSP.js} +1 -1
- package/dist/{chunk-OOLMTUCO.js → chunk-UQHTHOSZ.js} +1 -1
- package/dist/{chunk-JQEXAH7G.js → chunk-VDIKDCNE.js} +1 -1
- package/dist/{chunk-CFTBESST.js → chunk-WM3U4ARK.js} +1 -1
- package/dist/{chunk-I3G5FJ54.js → chunk-Y7OXW5SB.js} +1 -1
- package/dist/generated/index.d.ts +1 -0
- package/dist/generated/index.js +90 -89
- package/dist/index.js +90 -89
- package/dist/styles.css +435 -13
- package/package.json +3 -3
- package/dist/{chunk-FB3TCNQP.js → chunk-6Q7RW2JJ.js} +1 -1
- package/dist/{chunk-PCBPDMNU.js → chunk-CDFQ7MQK.js} +0 -0
- package/dist/{chunk-OBPINJNO.js → chunk-EMCVX5FY.js} +1 -1
- package/dist/{chunk-OQG4P5KU.js → chunk-KNAHKQD4.js} +1 -1
- package/dist/{chunk-7PJFUQMY.js → chunk-MGWFVAPN.js} +1 -1
- package/dist/{chunk-HPI5J6AR.js → chunk-SWLVR54P.js} +1 -1
- package/dist/{chunk-WK4FQPYW.js → chunk-TD6LHL7M.js} +1 -1
package/dist/styles.css
CHANGED
|
@@ -9908,6 +9908,296 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
9908
9908
|
}
|
|
9909
9909
|
|
|
9910
9910
|
|
|
9911
|
+
/* CheckGrid-B3SRTHOJ.css */
|
|
9912
|
+
/*
|
|
9913
|
+
* CheckGrid: checkboxes where rows meet columns.
|
|
9914
|
+
*
|
|
9915
|
+
* WIDE, every column stands side by side under a header row: the row names'
|
|
9916
|
+
* track (at least 10rem) and one equal track per column (7.5rem), so the
|
|
9917
|
+
* columns of every row line up without a subgrid. A column's name beside each
|
|
9918
|
+
* box is said and not drawn, since the header draws it once.
|
|
9919
|
+
*
|
|
9920
|
+
* NARROW, each row stacks: its name on a line of its own, then its boxes
|
|
9921
|
+
* wrapping, each with its column's name drawn beside it; the header row is
|
|
9922
|
+
* gone. No column is cut off behind a sideways scroll. WHERE IS NARROW is the
|
|
9923
|
+
* grid's own width, by a container query, so a narrow column on a wide screen
|
|
9924
|
+
* stacks too: under the width every column needs, the name's track plus each
|
|
9925
|
+
* column's track and gap. A container query cannot read a custom property in
|
|
9926
|
+
* its condition, so that width is written once per column count below, up to
|
|
9927
|
+
* the six the grid stands side by side for (`MOST_COLUMNS`); a grid of more
|
|
9928
|
+
* always stacks.
|
|
9929
|
+
*/
|
|
9930
|
+
.crewlet-check-grid {
|
|
9931
|
+
--crewlet-check-grid-name: 10rem;
|
|
9932
|
+
--crewlet-check-grid-column: 7.5rem;
|
|
9933
|
+
container: crewlet-check-grid / inline-size;
|
|
9934
|
+
display: flex;
|
|
9935
|
+
flex-direction: column;
|
|
9936
|
+
gap: var(--spacing-2);
|
|
9937
|
+
min-width: 0;
|
|
9938
|
+
}
|
|
9939
|
+
|
|
9940
|
+
.crewlet-check-grid__table {
|
|
9941
|
+
display: flex;
|
|
9942
|
+
flex-direction: column;
|
|
9943
|
+
gap: var(--spacing-1);
|
|
9944
|
+
}
|
|
9945
|
+
|
|
9946
|
+
.crewlet-check-grid__head,
|
|
9947
|
+
.crewlet-check-grid__row {
|
|
9948
|
+
display: grid;
|
|
9949
|
+
grid-template-columns:
|
|
9950
|
+
minmax(var(--crewlet-check-grid-name), 1fr)
|
|
9951
|
+
repeat(var(--crewlet-check-grid-columns, 3), var(--crewlet-check-grid-column));
|
|
9952
|
+
column-gap: var(--spacing-3);
|
|
9953
|
+
align-items: center;
|
|
9954
|
+
}
|
|
9955
|
+
|
|
9956
|
+
/* A column's name over its boxes: its glyph and its word, wrapping inside its track. */
|
|
9957
|
+
.crewlet-check-grid__column {
|
|
9958
|
+
display: inline-flex;
|
|
9959
|
+
align-items: center;
|
|
9960
|
+
justify-content: center;
|
|
9961
|
+
gap: var(--spacing-1);
|
|
9962
|
+
color: var(--color-text-secondary);
|
|
9963
|
+
font-size: var(--font-size-xs);
|
|
9964
|
+
text-align: center;
|
|
9965
|
+
}
|
|
9966
|
+
|
|
9967
|
+
/* A row's name: its picture and its words, at the start. */
|
|
9968
|
+
.crewlet-check-grid__name {
|
|
9969
|
+
display: inline-flex;
|
|
9970
|
+
align-items: center;
|
|
9971
|
+
gap: var(--spacing-2);
|
|
9972
|
+
min-width: 0;
|
|
9973
|
+
color: var(--color-text-primary);
|
|
9974
|
+
font-size: var(--font-size-sm);
|
|
9975
|
+
}
|
|
9976
|
+
|
|
9977
|
+
.crewlet-check-grid__media {
|
|
9978
|
+
display: inline-flex;
|
|
9979
|
+
flex: none;
|
|
9980
|
+
}
|
|
9981
|
+
|
|
9982
|
+
/* Each box's cell stands centred under its column's name. */
|
|
9983
|
+
.crewlet-check-grid__row > .crewlet-check-grid__cell {
|
|
9984
|
+
display: inline-flex;
|
|
9985
|
+
justify-self: center;
|
|
9986
|
+
}
|
|
9987
|
+
|
|
9988
|
+
/* WIDE: the column's name beside a box is said (it names the box) and not drawn. */
|
|
9989
|
+
.crewlet-check-grid__box .crewlet-checkbox__text {
|
|
9990
|
+
position: absolute;
|
|
9991
|
+
width: 1px;
|
|
9992
|
+
height: 1px;
|
|
9993
|
+
margin: -1px;
|
|
9994
|
+
overflow: hidden;
|
|
9995
|
+
clip-path: inset(50%);
|
|
9996
|
+
white-space: nowrap;
|
|
9997
|
+
}
|
|
9998
|
+
|
|
9999
|
+
/* Why a column refuses a box, once, under the grid. */
|
|
10000
|
+
.crewlet-check-grid__notes {
|
|
10001
|
+
display: flex;
|
|
10002
|
+
flex-direction: column;
|
|
10003
|
+
gap: var(--spacing-1);
|
|
10004
|
+
margin: 0;
|
|
10005
|
+
padding: 0;
|
|
10006
|
+
color: var(--color-text-secondary);
|
|
10007
|
+
font-size: var(--font-size-xs);
|
|
10008
|
+
list-style: none;
|
|
10009
|
+
}
|
|
10010
|
+
|
|
10011
|
+
/* NARROW, by column count: under the name's track plus each column's track and gap. */
|
|
10012
|
+
@container crewlet-check-grid (width < 18.25rem) {
|
|
10013
|
+
.crewlet-check-grid--1 .crewlet-check-grid__head {
|
|
10014
|
+
display: none;
|
|
10015
|
+
}
|
|
10016
|
+
|
|
10017
|
+
.crewlet-check-grid--1 .crewlet-check-grid__row {
|
|
10018
|
+
display: flex;
|
|
10019
|
+
flex-wrap: wrap;
|
|
10020
|
+
column-gap: var(--spacing-3);
|
|
10021
|
+
padding-block: var(--spacing-1);
|
|
10022
|
+
}
|
|
10023
|
+
|
|
10024
|
+
.crewlet-check-grid--1 .crewlet-check-grid__name {
|
|
10025
|
+
flex-basis: 100%;
|
|
10026
|
+
}
|
|
10027
|
+
|
|
10028
|
+
.crewlet-check-grid--1 .crewlet-check-grid__box .crewlet-checkbox__text {
|
|
10029
|
+
position: static;
|
|
10030
|
+
width: auto;
|
|
10031
|
+
height: auto;
|
|
10032
|
+
margin: 0;
|
|
10033
|
+
overflow: visible;
|
|
10034
|
+
clip-path: none;
|
|
10035
|
+
white-space: normal;
|
|
10036
|
+
}
|
|
10037
|
+
}
|
|
10038
|
+
|
|
10039
|
+
@container crewlet-check-grid (width < 26.5rem) {
|
|
10040
|
+
.crewlet-check-grid--2 .crewlet-check-grid__head {
|
|
10041
|
+
display: none;
|
|
10042
|
+
}
|
|
10043
|
+
|
|
10044
|
+
.crewlet-check-grid--2 .crewlet-check-grid__row {
|
|
10045
|
+
display: flex;
|
|
10046
|
+
flex-wrap: wrap;
|
|
10047
|
+
column-gap: var(--spacing-3);
|
|
10048
|
+
padding-block: var(--spacing-1);
|
|
10049
|
+
}
|
|
10050
|
+
|
|
10051
|
+
.crewlet-check-grid--2 .crewlet-check-grid__name {
|
|
10052
|
+
flex-basis: 100%;
|
|
10053
|
+
}
|
|
10054
|
+
|
|
10055
|
+
.crewlet-check-grid--2 .crewlet-check-grid__box .crewlet-checkbox__text {
|
|
10056
|
+
position: static;
|
|
10057
|
+
width: auto;
|
|
10058
|
+
height: auto;
|
|
10059
|
+
margin: 0;
|
|
10060
|
+
overflow: visible;
|
|
10061
|
+
clip-path: none;
|
|
10062
|
+
white-space: normal;
|
|
10063
|
+
}
|
|
10064
|
+
}
|
|
10065
|
+
|
|
10066
|
+
@container crewlet-check-grid (width < 34.75rem) {
|
|
10067
|
+
.crewlet-check-grid--3 .crewlet-check-grid__head {
|
|
10068
|
+
display: none;
|
|
10069
|
+
}
|
|
10070
|
+
|
|
10071
|
+
.crewlet-check-grid--3 .crewlet-check-grid__row {
|
|
10072
|
+
display: flex;
|
|
10073
|
+
flex-wrap: wrap;
|
|
10074
|
+
column-gap: var(--spacing-3);
|
|
10075
|
+
padding-block: var(--spacing-1);
|
|
10076
|
+
}
|
|
10077
|
+
|
|
10078
|
+
.crewlet-check-grid--3 .crewlet-check-grid__name {
|
|
10079
|
+
flex-basis: 100%;
|
|
10080
|
+
}
|
|
10081
|
+
|
|
10082
|
+
.crewlet-check-grid--3 .crewlet-check-grid__box .crewlet-checkbox__text {
|
|
10083
|
+
position: static;
|
|
10084
|
+
width: auto;
|
|
10085
|
+
height: auto;
|
|
10086
|
+
margin: 0;
|
|
10087
|
+
overflow: visible;
|
|
10088
|
+
clip-path: none;
|
|
10089
|
+
white-space: normal;
|
|
10090
|
+
}
|
|
10091
|
+
}
|
|
10092
|
+
|
|
10093
|
+
@container crewlet-check-grid (width < 43rem) {
|
|
10094
|
+
.crewlet-check-grid--4 .crewlet-check-grid__head {
|
|
10095
|
+
display: none;
|
|
10096
|
+
}
|
|
10097
|
+
|
|
10098
|
+
.crewlet-check-grid--4 .crewlet-check-grid__row {
|
|
10099
|
+
display: flex;
|
|
10100
|
+
flex-wrap: wrap;
|
|
10101
|
+
column-gap: var(--spacing-3);
|
|
10102
|
+
padding-block: var(--spacing-1);
|
|
10103
|
+
}
|
|
10104
|
+
|
|
10105
|
+
.crewlet-check-grid--4 .crewlet-check-grid__name {
|
|
10106
|
+
flex-basis: 100%;
|
|
10107
|
+
}
|
|
10108
|
+
|
|
10109
|
+
.crewlet-check-grid--4 .crewlet-check-grid__box .crewlet-checkbox__text {
|
|
10110
|
+
position: static;
|
|
10111
|
+
width: auto;
|
|
10112
|
+
height: auto;
|
|
10113
|
+
margin: 0;
|
|
10114
|
+
overflow: visible;
|
|
10115
|
+
clip-path: none;
|
|
10116
|
+
white-space: normal;
|
|
10117
|
+
}
|
|
10118
|
+
}
|
|
10119
|
+
|
|
10120
|
+
@container crewlet-check-grid (width < 51.25rem) {
|
|
10121
|
+
.crewlet-check-grid--5 .crewlet-check-grid__head {
|
|
10122
|
+
display: none;
|
|
10123
|
+
}
|
|
10124
|
+
|
|
10125
|
+
.crewlet-check-grid--5 .crewlet-check-grid__row {
|
|
10126
|
+
display: flex;
|
|
10127
|
+
flex-wrap: wrap;
|
|
10128
|
+
column-gap: var(--spacing-3);
|
|
10129
|
+
padding-block: var(--spacing-1);
|
|
10130
|
+
}
|
|
10131
|
+
|
|
10132
|
+
.crewlet-check-grid--5 .crewlet-check-grid__name {
|
|
10133
|
+
flex-basis: 100%;
|
|
10134
|
+
}
|
|
10135
|
+
|
|
10136
|
+
.crewlet-check-grid--5 .crewlet-check-grid__box .crewlet-checkbox__text {
|
|
10137
|
+
position: static;
|
|
10138
|
+
width: auto;
|
|
10139
|
+
height: auto;
|
|
10140
|
+
margin: 0;
|
|
10141
|
+
overflow: visible;
|
|
10142
|
+
clip-path: none;
|
|
10143
|
+
white-space: normal;
|
|
10144
|
+
}
|
|
10145
|
+
}
|
|
10146
|
+
|
|
10147
|
+
@container crewlet-check-grid (width < 59.5rem) {
|
|
10148
|
+
.crewlet-check-grid--6 .crewlet-check-grid__head {
|
|
10149
|
+
display: none;
|
|
10150
|
+
}
|
|
10151
|
+
|
|
10152
|
+
.crewlet-check-grid--6 .crewlet-check-grid__row {
|
|
10153
|
+
display: flex;
|
|
10154
|
+
flex-wrap: wrap;
|
|
10155
|
+
column-gap: var(--spacing-3);
|
|
10156
|
+
padding-block: var(--spacing-1);
|
|
10157
|
+
}
|
|
10158
|
+
|
|
10159
|
+
.crewlet-check-grid--6 .crewlet-check-grid__name {
|
|
10160
|
+
flex-basis: 100%;
|
|
10161
|
+
}
|
|
10162
|
+
|
|
10163
|
+
.crewlet-check-grid--6 .crewlet-check-grid__box .crewlet-checkbox__text {
|
|
10164
|
+
position: static;
|
|
10165
|
+
width: auto;
|
|
10166
|
+
height: auto;
|
|
10167
|
+
margin: 0;
|
|
10168
|
+
overflow: visible;
|
|
10169
|
+
clip-path: none;
|
|
10170
|
+
white-space: normal;
|
|
10171
|
+
}
|
|
10172
|
+
}
|
|
10173
|
+
|
|
10174
|
+
/* More columns than the grid stands side by side for: always stacked. */
|
|
10175
|
+
.crewlet-check-grid--many .crewlet-check-grid__head {
|
|
10176
|
+
display: none;
|
|
10177
|
+
}
|
|
10178
|
+
|
|
10179
|
+
.crewlet-check-grid--many .crewlet-check-grid__row {
|
|
10180
|
+
display: flex;
|
|
10181
|
+
flex-wrap: wrap;
|
|
10182
|
+
column-gap: var(--spacing-3);
|
|
10183
|
+
padding-block: var(--spacing-1);
|
|
10184
|
+
}
|
|
10185
|
+
|
|
10186
|
+
.crewlet-check-grid--many .crewlet-check-grid__name {
|
|
10187
|
+
flex-basis: 100%;
|
|
10188
|
+
}
|
|
10189
|
+
|
|
10190
|
+
.crewlet-check-grid--many .crewlet-check-grid__box .crewlet-checkbox__text {
|
|
10191
|
+
position: static;
|
|
10192
|
+
width: auto;
|
|
10193
|
+
height: auto;
|
|
10194
|
+
margin: 0;
|
|
10195
|
+
overflow: visible;
|
|
10196
|
+
clip-path: none;
|
|
10197
|
+
white-space: normal;
|
|
10198
|
+
}
|
|
10199
|
+
|
|
10200
|
+
|
|
9911
10201
|
/* Checkbox-GAMV2XD7.css */
|
|
9912
10202
|
/*
|
|
9913
10203
|
* Checkbox: a box, its label and its consequence as one target.
|
|
@@ -10353,7 +10643,7 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10353
10643
|
}
|
|
10354
10644
|
|
|
10355
10645
|
|
|
10356
|
-
/* ChoiceCards-
|
|
10646
|
+
/* ChoiceCards-TVMBO3HZ.css */
|
|
10357
10647
|
/*
|
|
10358
10648
|
* Choices a person compares, as cards in a grid that wraps. The chosen card
|
|
10359
10649
|
* takes the selected fill and the strong boundary, as a chosen ChoiceList row
|
|
@@ -10369,9 +10659,9 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10369
10659
|
* with Runs. Facts run together as one line of meta wrapped differently in
|
|
10370
10660
|
* each card, and three cards read as three different shapes.
|
|
10371
10661
|
*
|
|
10372
|
-
* A card is at least 20rem (24rem at `lg`), the width a fact's
|
|
10373
|
-
* short value keep to one line in: a form's column holds one to a
|
|
10374
|
-
* wider surface two or three, aligned.
|
|
10662
|
+
* A card is at least 20rem (15rem at `sm`, 24rem at `lg`), the width a fact's
|
|
10663
|
+
* name and a short value keep to one line in: a form's column holds one to a
|
|
10664
|
+
* row, and a wider surface two or three, aligned.
|
|
10375
10665
|
*/
|
|
10376
10666
|
.crewlet-choice-cards {
|
|
10377
10667
|
--crewlet-choice-cards-min: 20rem;
|
|
@@ -10388,6 +10678,10 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10388
10678
|
row-gap: 0;
|
|
10389
10679
|
}
|
|
10390
10680
|
|
|
10681
|
+
.crewlet-choice-cards--sm {
|
|
10682
|
+
--crewlet-choice-cards-min: 15rem;
|
|
10683
|
+
}
|
|
10684
|
+
|
|
10391
10685
|
.crewlet-choice-cards--lg {
|
|
10392
10686
|
--crewlet-choice-cards-min: 24rem;
|
|
10393
10687
|
}
|
|
@@ -10507,11 +10801,19 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10507
10801
|
outline: 2px solid transparent;
|
|
10508
10802
|
}
|
|
10509
10803
|
|
|
10510
|
-
/*
|
|
10804
|
+
/*
|
|
10805
|
+
* The first line: the picture, the name and its tag, stopping short of the
|
|
10806
|
+
* radio. Where the name and the tag do not fit side by side, the tag moves to
|
|
10807
|
+
* a line of its own rather than breaking the name mid-phrase. The lines stand
|
|
10808
|
+
* at the row's top, so where a card beside it takes two, the name stays level
|
|
10809
|
+
* with its radio.
|
|
10810
|
+
*/
|
|
10511
10811
|
.crewlet-choice-cards__title {
|
|
10512
10812
|
display: flex;
|
|
10813
|
+
flex-wrap: wrap;
|
|
10814
|
+
align-content: flex-start;
|
|
10513
10815
|
align-items: center;
|
|
10514
|
-
gap: var(--spacing-2);
|
|
10816
|
+
gap: var(--spacing-1) var(--spacing-2);
|
|
10515
10817
|
grid-row: 1;
|
|
10516
10818
|
min-width: 0;
|
|
10517
10819
|
min-height: var(--crewlet-choice-cards-title);
|
|
@@ -10538,7 +10840,17 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10538
10840
|
border-color: var(--color-border-strong);
|
|
10539
10841
|
}
|
|
10540
10842
|
|
|
10843
|
+
/*
|
|
10844
|
+
* THE NAME IS THE TITLE LINE'S STRUT: at least the title step tall, its words
|
|
10845
|
+
* centred in it. The title wraps (a tag that does not fit takes a line of its
|
|
10846
|
+
* own) and its lines stand at the row's top, so a line is only as tall as what
|
|
10847
|
+
* is on it; without the strut a name in the document's 18.85px line sat 3.5px
|
|
10848
|
+
* above the radio, which is centred on the title step.
|
|
10849
|
+
*/
|
|
10541
10850
|
.crewlet-choice-cards__label {
|
|
10851
|
+
display: flex;
|
|
10852
|
+
align-items: center;
|
|
10853
|
+
min-block-size: var(--crewlet-choice-cards-title);
|
|
10542
10854
|
min-width: 0;
|
|
10543
10855
|
color: var(--color-text-primary);
|
|
10544
10856
|
font-weight: var(--font-weight-medium);
|
|
@@ -10620,6 +10932,39 @@ button.crewlet-histogram__bar[data-empty]:focus-visible > .crewlet-histogram__fi
|
|
|
10620
10932
|
font-size: var(--font-size-xs);
|
|
10621
10933
|
}
|
|
10622
10934
|
|
|
10935
|
+
/*
|
|
10936
|
+
* COMPACT: the same lines in less room, for three cards side by side in a
|
|
10937
|
+
* form's wide column. The padding and the gaps between cards step down one
|
|
10938
|
+
* (a card's own lines already keep the smallest), the picture is capped at
|
|
10939
|
+
* the `lg` glyph step, and the description takes the facts' size. Every line
|
|
10940
|
+
* stays: a description and a disabled card's reason wrap in full, since a
|
|
10941
|
+
* reason cut short is a dead end with no way to read why.
|
|
10942
|
+
*/
|
|
10943
|
+
.crewlet-choice-cards--compact {
|
|
10944
|
+
/* The largest picture a compact card draws: the icons package's `lg` glyph step (GLYPH_SIZES.lg, 20px). */
|
|
10945
|
+
--crewlet-choice-cards-compact-media: 1.25rem;
|
|
10946
|
+
column-gap: var(--spacing-2);
|
|
10947
|
+
}
|
|
10948
|
+
|
|
10949
|
+
.crewlet-choice-cards--compact .crewlet-choice-cards__card {
|
|
10950
|
+
margin-block-end: var(--spacing-2);
|
|
10951
|
+
padding: var(--spacing-2);
|
|
10952
|
+
}
|
|
10953
|
+
|
|
10954
|
+
.crewlet-choice-cards--compact .crewlet-choice-cards__radio {
|
|
10955
|
+
inset-block-start: calc(var(--spacing-2) + (var(--crewlet-choice-cards-title) - var(--crewlet-choice-cards-radio)) / 2);
|
|
10956
|
+
inset-inline-end: var(--spacing-2);
|
|
10957
|
+
}
|
|
10958
|
+
|
|
10959
|
+
/* The picture at most the `lg` glyph step, whatever size the caller drew it at, a wrapped mark included. */
|
|
10960
|
+
.crewlet-choice-cards--compact .crewlet-choice-cards__media svg {
|
|
10961
|
+
inline-size: var(--crewlet-choice-cards-compact-media);
|
|
10962
|
+
block-size: var(--crewlet-choice-cards-compact-media);
|
|
10963
|
+
}
|
|
10964
|
+
|
|
10965
|
+
.crewlet-choice-cards--compact .crewlet-choice-cards__description {
|
|
10966
|
+
font-size: var(--font-size-xs);
|
|
10967
|
+
}
|
|
10623
10968
|
|
|
10624
10969
|
/*
|
|
10625
10970
|
* WHERE SUBGRID IS SUPPORTED, every card spans the same rows of the group and
|
|
@@ -16647,7 +16992,7 @@ svg.crewlet-datetime__chevron {
|
|
|
16647
16992
|
}
|
|
16648
16993
|
|
|
16649
16994
|
|
|
16650
|
-
/* DescriptionList-
|
|
16995
|
+
/* DescriptionList-VF7NIBXA.css */
|
|
16651
16996
|
/*
|
|
16652
16997
|
* Metadata pairs on one grid.
|
|
16653
16998
|
*
|
|
@@ -16739,6 +17084,12 @@ svg.crewlet-datetime__chevron {
|
|
|
16739
17084
|
margin-bottom: 0;
|
|
16740
17085
|
}
|
|
16741
17086
|
|
|
17087
|
+
/* One type size: the terms at the details' size, in the secondary ink. */
|
|
17088
|
+
.crewlet-description-list--uniform .crewlet-description-list__term {
|
|
17089
|
+
font-size: inherit;
|
|
17090
|
+
color: var(--color-text-secondary);
|
|
17091
|
+
}
|
|
17092
|
+
|
|
16742
17093
|
|
|
16743
17094
|
/* DiffList-3JNPLQ2E.css */
|
|
16744
17095
|
/* DiffList: one path per row, with its mark, its word and its tint.
|
|
@@ -25316,7 +25667,7 @@ a.crewlet-icon-btn {
|
|
|
25316
25667
|
}
|
|
25317
25668
|
|
|
25318
25669
|
|
|
25319
|
-
/* ObjectHeader-
|
|
25670
|
+
/* ObjectHeader-VKQSEJDN.css */
|
|
25320
25671
|
/*
|
|
25321
25672
|
* The header of an object: its eyebrow, its head row and its fact line.
|
|
25322
25673
|
*
|
|
@@ -25544,10 +25895,11 @@ a.crewlet-icon-btn {
|
|
|
25544
25895
|
}
|
|
25545
25896
|
|
|
25546
25897
|
/* A footnote may not set its column's width: the track does, and the note
|
|
25547
|
-
wraps inside it, balanced so the wrap reads as deliberate.
|
|
25898
|
+
wraps inside it, balanced so the wrap reads as deliberate. It is set as
|
|
25899
|
+
the label is, so a fact line holds two sizes, the labels' and the values'. */
|
|
25548
25900
|
.crewlet-fact-line__note,
|
|
25549
25901
|
.crewlet-fact-line__set-by {
|
|
25550
|
-
font-size: var(--font-size-
|
|
25902
|
+
font-size: var(--font-size-xs);
|
|
25551
25903
|
color: var(--color-text-tertiary);
|
|
25552
25904
|
text-wrap: balance;
|
|
25553
25905
|
}
|
|
@@ -37642,7 +37994,7 @@ b.crewlet-switcher__match {
|
|
|
37642
37994
|
}
|
|
37643
37995
|
|
|
37644
37996
|
|
|
37645
|
-
/* Tabs-
|
|
37997
|
+
/* Tabs-M2ELSU3V.css */
|
|
37646
37998
|
/*
|
|
37647
37999
|
* The pill register: Tabs and SegmentedControl.
|
|
37648
38000
|
*
|
|
@@ -38123,6 +38475,74 @@ b.crewlet-switcher__match {
|
|
|
38123
38475
|
box-shadow: inset 0 -1px 0 var(--color-border-default);
|
|
38124
38476
|
}
|
|
38125
38477
|
|
|
38478
|
+
/*
|
|
38479
|
+
* THE BAR: a row and its actions. The row (or the box holding the row and
|
|
38480
|
+
* "More") takes the room the actions leave and gives way first: it shrinks
|
|
38481
|
+
* before an action does, scrolling or folding its tabs inside that room. An
|
|
38482
|
+
* underline row fills the bar, so its rule and its fold are measured in the
|
|
38483
|
+
* space the actions leave; a pill or chip row keeps its own width while it
|
|
38484
|
+
* fits and scrolls once it does not, so a tab never paints under an action.
|
|
38485
|
+
*/
|
|
38486
|
+
.crewlet-tabs-host {
|
|
38487
|
+
display: contents;
|
|
38488
|
+
}
|
|
38489
|
+
|
|
38490
|
+
.crewlet-tabs-bar {
|
|
38491
|
+
display: flex;
|
|
38492
|
+
align-items: center;
|
|
38493
|
+
gap: var(--spacing-3);
|
|
38494
|
+
min-width: 0;
|
|
38495
|
+
}
|
|
38496
|
+
|
|
38497
|
+
.crewlet-tabs-bar > .crewlet-tabs {
|
|
38498
|
+
flex: 0 1 auto;
|
|
38499
|
+
min-width: 0;
|
|
38500
|
+
}
|
|
38501
|
+
|
|
38502
|
+
.crewlet-tabs-bar > .crewlet-tabs--underline,
|
|
38503
|
+
.crewlet-tabs-bar > .crewlet-tabs-fold {
|
|
38504
|
+
flex: 1 1 auto;
|
|
38505
|
+
min-width: 0;
|
|
38506
|
+
}
|
|
38507
|
+
|
|
38508
|
+
/* The scroll contract an underline row has on its own, for a pill or chip
|
|
38509
|
+
row that must shrink beside its actions. Its ring is drawn inside the tab,
|
|
38510
|
+
as the underline's is, because the scroller clips an outset one. */
|
|
38511
|
+
.crewlet-tabs-bar > .crewlet-tabs--pill,
|
|
38512
|
+
.crewlet-tabs-bar > .crewlet-tabs--chip {
|
|
38513
|
+
overflow-x: auto;
|
|
38514
|
+
scrollbar-width: none;
|
|
38515
|
+
}
|
|
38516
|
+
|
|
38517
|
+
.crewlet-tabs-bar > .crewlet-tabs--pill::-webkit-scrollbar,
|
|
38518
|
+
.crewlet-tabs-bar > .crewlet-tabs--chip::-webkit-scrollbar {
|
|
38519
|
+
display: none;
|
|
38520
|
+
}
|
|
38521
|
+
|
|
38522
|
+
.crewlet-tabs-bar > .crewlet-tabs--pill .crewlet-tabs__tab:focus-visible,
|
|
38523
|
+
.crewlet-tabs-bar > .crewlet-tabs--chip .crewlet-tabs__tab:focus-visible {
|
|
38524
|
+
outline-offset: var(--size-focus-ring-inset-offset);
|
|
38525
|
+
}
|
|
38526
|
+
|
|
38527
|
+
.crewlet-tabs__actions {
|
|
38528
|
+
display: inline-flex;
|
|
38529
|
+
flex: none;
|
|
38530
|
+
align-items: center;
|
|
38531
|
+
gap: var(--spacing-2);
|
|
38532
|
+
margin-inline-start: auto;
|
|
38533
|
+
}
|
|
38534
|
+
|
|
38535
|
+
/* The underline's rule runs on under the actions to the bar's edge, painted
|
|
38536
|
+
on the same last pixel row the row's own border sits on. */
|
|
38537
|
+
.crewlet-tabs-bar--underline {
|
|
38538
|
+
align-items: stretch;
|
|
38539
|
+
box-shadow: inset 0 -1px 0 var(--color-border-default);
|
|
38540
|
+
}
|
|
38541
|
+
|
|
38542
|
+
.crewlet-tabs-bar--underline > .crewlet-tabs__actions {
|
|
38543
|
+
align-self: center;
|
|
38544
|
+
}
|
|
38545
|
+
|
|
38126
38546
|
/*
|
|
38127
38547
|
* The slider ARRIVES rather than travels, and a chip changes without a fade.
|
|
38128
38548
|
* The indicator still moves; what stops is the animation between the two
|
|
@@ -39802,7 +40222,7 @@ b.crewlet-switcher__match {
|
|
|
39802
40222
|
}
|
|
39803
40223
|
|
|
39804
40224
|
|
|
39805
|
-
/* TileGrid-
|
|
40225
|
+
/* TileGrid-XOEJ4P52.css */
|
|
39806
40226
|
/*
|
|
39807
40227
|
* TileGrid: tiles on a fixed track count that folds by the grid's own width.
|
|
39808
40228
|
*
|
|
@@ -39851,7 +40271,9 @@ b.crewlet-switcher__match {
|
|
|
39851
40271
|
}
|
|
39852
40272
|
|
|
39853
40273
|
@container crewlet-tile-grid (width < 28rem) {
|
|
39854
|
-
|
|
40274
|
+
/* As specific as the per-count rules above and after them, so a grid of two
|
|
40275
|
+
or four folds to one here too, not only a grid of three. */
|
|
40276
|
+
.crewlet-tile-grid[data-columns] > .crewlet-tile-grid__track {
|
|
39855
40277
|
--crewlet-tile-grid-tracks: 1;
|
|
39856
40278
|
}
|
|
39857
40279
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crewlethq/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.78.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.78.0",
|
|
46
|
+
"@crewlethq/tokens": "0.78.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 { characterCountState, CharacterCount } from './chunk-PGCLHYVP.js';
|
|
|
2
2
|
import { useHeadingLevel, headingTag, HeadingLevelProvider, nextHeadingLevel } from './chunk-PQADV6P6.js';
|
|
3
3
|
import { announce } from './chunk-2G355KDJ.js';
|
|
4
4
|
import { isComposing } from './chunk-H5XTJ7GJ.js';
|
|
5
|
-
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
6
5
|
import { useFocusModality } from './chunk-NUZHC6MM.js';
|
|
6
|
+
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
7
7
|
import { VisuallyHidden } from './chunk-UT6CW3C7.js';
|
|
8
8
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
9
9
|
import './Input-WSMB7JG2.css';
|
|
File without changes
|
|
@@ -3,8 +3,8 @@ import { Tooltip } from './chunk-I33UIUZD.js';
|
|
|
3
3
|
import { Kbd } from './chunk-ANTAQAR4.js';
|
|
4
4
|
import { Button } from './chunk-DGXZ635L.js';
|
|
5
5
|
import { LAYER_REPOSITION_EVENT, LayerHost } from './chunk-OMV5W53A.js';
|
|
6
|
-
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
7
6
|
import { returnFocus } from './chunk-NUZHC6MM.js';
|
|
7
|
+
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
8
8
|
import { VisuallyHidden } from './chunk-UT6CW3C7.js';
|
|
9
9
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
10
10
|
import './Canvas-4QJHVLJ4.css';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Button } from './chunk-DGXZ635L.js';
|
|
2
2
|
import { useLayerContainer, viewportBounds, LAYER_GAP, anchorGone, placePopup, LAYER_REPOSITION_EVENT } from './chunk-OMV5W53A.js';
|
|
3
3
|
import { usePopupLayer } from './chunk-H5XTJ7GJ.js';
|
|
4
|
-
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
5
4
|
import { returnFocus } from './chunk-NUZHC6MM.js';
|
|
5
|
+
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
6
6
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
7
7
|
import './Menu-I4SNXHOT.css';
|
|
8
8
|
import { useId, useState, useRef, useCallback, useLayoutEffect, useEffect } from 'react';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { normalizeHex } from './chunk-7W3LYIOC.js';
|
|
2
1
|
import { Tag } from './chunk-VERJCAJ4.js';
|
|
2
|
+
import { normalizeHex } from './chunk-7W3LYIOC.js';
|
|
3
3
|
import { VisuallyHidden } from './chunk-UT6CW3C7.js';
|
|
4
4
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
5
5
|
import './ContrastBadge-CBZPGG3G.css';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { today, CalendarGrid, shiftMonth, compareDays } from './chunk-EE3DJMSQ.js';
|
|
2
2
|
import { Popover } from './chunk-KHJIEPZV.js';
|
|
3
3
|
import { Button } from './chunk-DGXZ635L.js';
|
|
4
|
-
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
5
4
|
import { useFocusModality } from './chunk-NUZHC6MM.js';
|
|
5
|
+
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
6
6
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
7
7
|
import './DateTimePicker-PM6TIRIX.css';
|
|
8
8
|
import { useMemo, useState, useEffect } from 'react';
|
|
@@ -2,8 +2,8 @@ import { useListbox } from './chunk-7KHM2FZH.js';
|
|
|
2
2
|
import { Tag } from './chunk-VERJCAJ4.js';
|
|
3
3
|
import { announce } from './chunk-2G355KDJ.js';
|
|
4
4
|
import { isComposing } from './chunk-H5XTJ7GJ.js';
|
|
5
|
-
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
6
5
|
import { useFocusModality } from './chunk-NUZHC6MM.js';
|
|
6
|
+
import { IconButton } from './chunk-UAUP6XGK.js';
|
|
7
7
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
8
8
|
import './TagsInput-MZXEHKJD.css';
|
|
9
9
|
import { forwardRef, useState, useRef, useId, useImperativeHandle, useEffect, useMemo, useLayoutEffect } from 'react';
|