@crewlethq/ui 0.18.0 → 0.19.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 +19 -2
- package/dist/AccessDeniedCard/index.js +2 -2
- package/dist/AppShell/index.js +2 -2
- package/dist/ArrangeBoard/ArrangeBoard.d.ts +32 -0
- package/dist/ArrangeBoard/index.d.ts +3 -0
- package/dist/ArrangeBoard/index.js +2 -0
- package/dist/ArrangeBoard-MQE35P6Z.css +80 -0
- package/dist/ArrangeFrame/ArrangeFrame.d.ts +82 -0
- package/dist/ArrangeFrame/index.d.ts +5 -0
- package/dist/ArrangeFrame/index.js +5 -0
- package/dist/ArrangeFrame/useGridResize.d.ts +66 -0
- package/dist/ArrangeFrame-3PLZAG22.css +329 -0
- package/dist/ArrangeGroup/ArrangeGroup.d.ts +42 -0
- package/dist/ArrangeGroup/index.d.ts +3 -0
- package/dist/ArrangeGroup/index.js +4 -0
- package/dist/ArrangeGroup-SHFHA7BE.css +170 -0
- package/dist/ArrangeList/ArrangeList.d.ts +64 -0
- package/dist/ArrangeList/index.d.ts +3 -0
- package/dist/ArrangeList/index.js +10 -0
- package/dist/ArrangeList-NNRTDFI5.css +94 -0
- package/dist/ArtifactCard/index.js +2 -2
- package/dist/AuthLayout/index.js +2 -2
- package/dist/AvatarPicker/index.js +4 -4
- package/dist/Canvas/index.js +2 -2
- package/dist/Card/index.js +1 -1
- package/dist/Checkbox/index.js +3 -3
- package/dist/Combobox/index.js +4 -4
- package/dist/CommandPalette/index.js +6 -6
- package/dist/Composer/index.js +3 -3
- package/dist/ConfirmField/index.js +3 -3
- package/dist/DataTable/index.js +8 -8
- package/dist/DataView/index.js +13 -13
- package/dist/DateTimePicker/index.js +3 -3
- package/dist/Divider/Divider.d.ts +15 -0
- package/dist/Divider/index.d.ts +3 -0
- package/dist/Divider/index.js +2 -0
- package/dist/Divider-3Z77ZAJH.css +37 -0
- package/dist/HuePicker/HuePicker.d.ts +16 -4
- package/dist/HuePicker/index.js +2 -2
- package/dist/{HuePicker-5QIUR6L7.css → HuePicker-PAIGH6LR.css} +6 -0
- package/dist/IconTile/IconTile.d.ts +23 -0
- package/dist/IconTile/index.d.ts +3 -0
- package/dist/IconTile/index.js +2 -0
- package/dist/IconTile-4GNWTLAW.css +30 -0
- package/dist/Input/index.js +2 -2
- package/dist/LinkInterstitial/index.js +4 -4
- package/dist/ListInput/index.js +5 -5
- package/dist/MarkdownEditor/index.js +2 -2
- package/dist/Menu/index.js +2 -2
- package/dist/Modal/Modal.d.ts +20 -0
- package/dist/Modal/index.js +3 -3
- package/dist/{Modal-RQAYGG4L.css → Modal-XOSV6FAH.css} +14 -0
- package/dist/Note/Note.d.ts +23 -0
- package/dist/Note/index.d.ts +3 -0
- package/dist/Note/index.js +2 -0
- package/dist/Note-RT4L6VUT.css +58 -0
- package/dist/OrgTable/index.js +5 -5
- package/dist/PinTile/PinTile.d.ts +37 -0
- package/dist/PinTile/index.d.ts +3 -0
- package/dist/PinTile/index.js +4 -0
- package/dist/PinTile-IIA25MNZ.css +141 -0
- package/dist/PresenceStack/index.js +1 -1
- package/dist/PrincipalPicker/index.js +5 -5
- package/dist/Reorder/index.d.ts +2 -0
- package/dist/Reorder/index.js +4 -0
- package/dist/Reorder/useReorder.d.ts +138 -0
- package/dist/ShareDialog/index.js +7 -7
- package/dist/SheetGrid/index.js +4 -4
- package/dist/StatGroup/StatGroup.d.ts +7 -1
- package/dist/StatGroup/index.js +1 -1
- package/dist/{StatGroup-HVG6O62W.css → StatGroup-PADTJCUQ.css} +7 -0
- package/dist/Switcher/index.js +8 -8
- package/dist/TagsInput/index.js +3 -3
- package/dist/TimeWindowPicker/index.js +5 -5
- package/dist/TreeCanvas/index.js +3 -3
- package/dist/TreeGrid/index.js +2 -2
- package/dist/chunk-35XVR5JQ.js +81 -0
- package/dist/chunk-63WJLRB2.js +24 -0
- package/dist/{chunk-L4ZLXYPO.js → chunk-6A7P6II6.js} +1 -1
- package/dist/chunk-6KWNXIDE.js +18 -0
- package/dist/chunk-6MIXD6IW.js +49 -0
- package/dist/{chunk-NZY77ZDU.js → chunk-7FQEUNHX.js} +4 -4
- package/dist/{chunk-2TZATTIU.js → chunk-7IJARUIF.js} +18 -5
- package/dist/chunk-AIVZVKYZ.js +126 -0
- package/dist/{chunk-76FXDZAZ.js → chunk-AJESMWJS.js} +4 -4
- package/dist/chunk-DEJHAOC5.js +279 -0
- package/dist/{chunk-ERV5BUS3.js → chunk-EIGEIT4O.js} +3 -3
- package/dist/chunk-FFMCMSJB.js +1 -0
- package/dist/{chunk-LFZ45HV2.js → chunk-G3EEUNZQ.js} +1 -1
- package/dist/{chunk-2YR5ZPQ3.js → chunk-HTCJSUIZ.js} +3 -3
- package/dist/{chunk-75CLJNDQ.js → chunk-I6NZKJGK.js} +1 -1
- package/dist/chunk-IXJHTFXG.js +17 -0
- package/dist/{chunk-3UAA4IWJ.js → chunk-JEDWC3GI.js} +1 -1
- package/dist/{chunk-QVAFL2LE.js → chunk-JXRI5YD2.js} +3 -3
- package/dist/{chunk-ZFH7H7GS.js → chunk-LOLELDBW.js} +1 -1
- package/dist/{chunk-KVT3TJVG.js → chunk-OIMAK5AE.js} +6 -6
- package/dist/chunk-QO7QEQKV.js +24 -0
- package/dist/{chunk-A7EBCHEG.js → chunk-RT323I4I.js} +1 -1
- package/dist/{chunk-BOW2VUCH.js → chunk-T7ICFXEC.js} +1 -1
- package/dist/{chunk-2OLCUNG7.js → chunk-TBIZSQHB.js} +1 -1
- package/dist/{chunk-4U3GQ7D2.js → chunk-TODND5AD.js} +1 -1
- package/dist/{chunk-IFKBDRNJ.js → chunk-UXELEORU.js} +3 -3
- package/dist/{chunk-6NIMZ5XC.js → chunk-VJLYGPPE.js} +1 -1
- package/dist/{chunk-7QFAORCY.js → chunk-WHZFDS62.js} +1 -1
- package/dist/chunk-XJ2QEBMM.js +277 -0
- package/dist/{chunk-PA4CYTBY.js → chunk-XU4ZUGLE.js} +19 -4
- package/dist/{chunk-T3ZWBZ65.js → chunk-YSJYWQSP.js} +2 -2
- package/dist/{chunk-CXBAIVYZ.js → chunk-YSY6UJ4F.js} +1 -1
- package/dist/{chunk-EG6NYWVK.js → chunk-YZCJ63JF.js} +1 -1
- package/dist/generated/index.d.ts +9 -0
- package/dist/generated/index.js +80 -71
- package/dist/index.js +80 -71
- package/dist/styles.css +993 -3
- package/package.json +3 -3
- package/dist/chunk-EXHQ2QVW.js +0 -1
- package/dist/{chunk-ESKP3TXM.js → chunk-4Z7PW3L6.js} +0 -0
- package/dist/{chunk-AQCV62K6.js → chunk-7ZNKEPLN.js} +1 -1
- package/dist/{chunk-OYOQU7O5.js → chunk-EDGCPVVD.js} +1 -1
- package/dist/{chunk-NS7BVLL3.js → chunk-JULMZNGT.js} +1 -1
- package/dist/{chunk-5NVKTB6E.js → chunk-L4H7SSWF.js} +1 -1
- package/dist/{chunk-FYXRWBJJ.js → chunk-PUQY4WXR.js} +2 -2
- package/dist/{chunk-4GB57WIT.js → chunk-Q55TXPA3.js} +1 -1
- package/dist/{chunk-B2Z2CDM5.js → chunk-T5TFZ2JB.js} +1 -1
- package/dist/{chunk-AMH67MLM.js → chunk-TXAFKH2A.js} +1 -1
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* ArrangeList: rows a reader puts in order and switches on and off.
|
|
3
|
+
*
|
|
4
|
+
* The row is a quiet inset band rather than a card: a panel holding eight of
|
|
5
|
+
* them is a list, and eight bordered boxes read as eight separate objects.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
.crewlet-arrange-list {
|
|
9
|
+
display: flex;
|
|
10
|
+
flex-direction: column;
|
|
11
|
+
gap: var(--spacing-1);
|
|
12
|
+
margin: 0;
|
|
13
|
+
padding: 0;
|
|
14
|
+
list-style: none;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.crewlet-arrange-list__item {
|
|
18
|
+
display: flex;
|
|
19
|
+
align-items: center;
|
|
20
|
+
gap: var(--spacing-2);
|
|
21
|
+
min-height: var(--size-row-lg);
|
|
22
|
+
padding: var(--spacing-1) var(--spacing-2) var(--spacing-1) var(--spacing-1);
|
|
23
|
+
border: 1px solid transparent;
|
|
24
|
+
border-radius: var(--radius-md);
|
|
25
|
+
background: var(--color-surface-subtle);
|
|
26
|
+
transition: background-color var(--motion-duration-fast) var(--motion-easing-default),
|
|
27
|
+
border-color var(--motion-duration-fast) var(--motion-easing-default);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.crewlet-arrange-list__item:hover {
|
|
31
|
+
border-color: var(--color-border-default);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/* The row being carried is a gap in the list, outlined where it will land. */
|
|
35
|
+
.crewlet-arrange-list__item[data-reorder='dragging'] {
|
|
36
|
+
border-style: dashed;
|
|
37
|
+
border-color: var(--color-border-strong);
|
|
38
|
+
background: transparent;
|
|
39
|
+
}
|
|
40
|
+
.crewlet-arrange-list__item[data-reorder='dragging'] > * {
|
|
41
|
+
opacity: 0.4;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.crewlet-arrange-list__handle {
|
|
45
|
+
flex-shrink: 0;
|
|
46
|
+
cursor: grab;
|
|
47
|
+
color: var(--color-text-tertiary);
|
|
48
|
+
}
|
|
49
|
+
.crewlet-arrange-list__handle:active {
|
|
50
|
+
cursor: grabbing;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.crewlet-arrange-list__label {
|
|
54
|
+
display: inline-flex;
|
|
55
|
+
align-items: center;
|
|
56
|
+
gap: var(--spacing-2);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.crewlet-arrange-list__icon {
|
|
60
|
+
display: inline-flex;
|
|
61
|
+
flex-shrink: 0;
|
|
62
|
+
color: var(--color-text-secondary);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/* The toggle takes the row's width, so its label is the row's target. */
|
|
66
|
+
.crewlet-arrange-list__toggle {
|
|
67
|
+
flex: 1 1 auto;
|
|
68
|
+
min-width: 0;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/* Off, the words step back; the switch itself already says off. */
|
|
72
|
+
.crewlet-arrange-list__item.is-off .crewlet-arrange-list__icon,
|
|
73
|
+
.crewlet-arrange-list__item.is-off .crewlet-switch__label,
|
|
74
|
+
.crewlet-arrange-list__item.is-off .crewlet-checkbox__label {
|
|
75
|
+
color: var(--color-text-tertiary);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.crewlet-arrange-list__trailing {
|
|
79
|
+
display: inline-flex;
|
|
80
|
+
flex-shrink: 0;
|
|
81
|
+
align-items: center;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.crewlet-arrange-list__moves {
|
|
85
|
+
display: inline-flex;
|
|
86
|
+
flex-shrink: 0;
|
|
87
|
+
gap: 2px;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
@media (prefers-reduced-motion: reduce) {
|
|
91
|
+
.crewlet-arrange-list__item {
|
|
92
|
+
transition: none;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export { ARTIFACT_KINDS, ArtifactCard, ArtifactKindGlyph } from '../chunk-
|
|
1
|
+
export { ARTIFACT_KINDS, ArtifactCard, ArtifactKindGlyph } from '../chunk-TODND5AD.js';
|
|
2
2
|
import '../chunk-4KP4RC3O.js';
|
|
3
3
|
import '../chunk-3CZ7XAVY.js';
|
|
4
4
|
import '../chunk-EUCC37WY.js';
|
|
5
5
|
import '../chunk-UAN5NE7M.js';
|
|
6
6
|
import '../chunk-5OM447RW.js';
|
|
7
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-YZCJ63JF.js';
|
|
8
8
|
import '../chunk-AV2DXAEL.js';
|
|
9
9
|
import '../chunk-PQADV6P6.js';
|
|
10
10
|
import '../chunk-BHHIIK3M.js';
|
package/dist/AuthLayout/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { AuthLayout } from '../chunk-
|
|
1
|
+
export { AuthLayout } from '../chunk-WHZFDS62.js';
|
|
2
2
|
import '../chunk-7KBNFFM3.js';
|
|
3
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-YZCJ63JF.js';
|
|
4
4
|
import '../chunk-AV2DXAEL.js';
|
|
5
5
|
import '../chunk-PQADV6P6.js';
|
|
6
6
|
import '../chunk-BHHIIK3M.js';
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
export { AvatarPicker } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { AvatarPicker } from '../chunk-T7ICFXEC.js';
|
|
2
|
+
import '../chunk-XU4ZUGLE.js';
|
|
3
3
|
import '../chunk-26PEPONN.js';
|
|
4
4
|
import '../chunk-4LDTQWS7.js';
|
|
5
5
|
import '../chunk-BWRGFKJP.js';
|
|
6
6
|
import '../chunk-AYKXMIOR.js';
|
|
7
7
|
import '../chunk-5PSXBL73.js';
|
|
8
8
|
import '../chunk-CBOICT64.js';
|
|
9
|
-
import '../chunk-HMPFGIWM.js';
|
|
10
|
-
import '../chunk-R25RGPUB.js';
|
|
11
9
|
import '../chunk-5OM447RW.js';
|
|
12
10
|
import '../chunk-BHHIIK3M.js';
|
|
11
|
+
import '../chunk-HMPFGIWM.js';
|
|
12
|
+
import '../chunk-R25RGPUB.js';
|
|
13
13
|
import '../chunk-BZFWDIV6.js';
|
|
14
14
|
import '../chunk-ODEQTPFM.js';
|
package/dist/Canvas/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, anchorView, beyondSlop, clampPan, clampZoom, fitView, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-
|
|
1
|
+
export { CANVAS_COMPOSE_CONTEXT, CANVAS_FIT_MAX_ZOOM, CANVAS_FIT_PADDING, CANVAS_FOCUS_CONTEXT, CANVAS_MAX_ZOOM, CANVAS_MIN_ZOOM, CANVAS_PAN_MARGIN, CANVAS_PAN_STEP, CANVAS_REVEAL_PADDING, CANVAS_TAP_SLOP, CANVAS_WHEEL_LINE_PX, CANVAS_WHEEL_ZOOM_PER_PIXEL, CANVAS_ZOOM_CEILING, CANVAS_ZOOM_LIMITS, CANVAS_ZOOM_STEP, Canvas, IDENTITY_VIEW, anchorView, beyondSlop, clampPan, clampZoom, fitView, panBy, pinchView, regionView, revealView, screenRect, toScreen, toWorld, wheelPixels, wheelZoomFactor, zoomAt, zoomLimits } from '../chunk-TXAFKH2A.js';
|
|
2
2
|
import '../chunk-VYOKRN2I.js';
|
|
3
3
|
import '../chunk-OG6CL3EB.js';
|
|
4
|
-
import '../chunk-4FQT6ZAY.js';
|
|
5
4
|
import '../chunk-HMPFGIWM.js';
|
|
6
5
|
import '../chunk-R25RGPUB.js';
|
|
6
|
+
import '../chunk-4FQT6ZAY.js';
|
|
7
7
|
import '../chunk-BZFWDIV6.js';
|
|
8
8
|
import '../chunk-ODEQTPFM.js';
|
package/dist/Card/index.js
CHANGED
package/dist/Checkbox/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { Checkbox, CheckboxGroup } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-4FQT6ZAY.js';
|
|
1
|
+
export { Checkbox, CheckboxGroup } from '../chunk-I6NZKJGK.js';
|
|
2
|
+
import '../chunk-Q55TXPA3.js';
|
|
4
3
|
import '../chunk-PQADV6P6.js';
|
|
4
|
+
import '../chunk-4FQT6ZAY.js';
|
|
5
5
|
import '../chunk-BZFWDIV6.js';
|
|
6
6
|
import '../chunk-ODEQTPFM.js';
|
package/dist/Combobox/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { Combobox } from '../chunk-
|
|
1
|
+
export { Combobox } from '../chunk-LOLELDBW.js';
|
|
2
2
|
import '../chunk-F73MC7EZ.js';
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-4FQT6ZAY.js';
|
|
5
|
-
import '../chunk-R25RGPUB.js';
|
|
3
|
+
import '../chunk-Q55TXPA3.js';
|
|
6
4
|
import '../chunk-PQADV6P6.js';
|
|
5
|
+
import '../chunk-R25RGPUB.js';
|
|
6
|
+
import '../chunk-4FQT6ZAY.js';
|
|
7
7
|
import '../chunk-BZFWDIV6.js';
|
|
8
8
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export { CommandPalette } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { CommandPalette } from '../chunk-UXELEORU.js';
|
|
2
|
+
import '../chunk-7IJARUIF.js';
|
|
3
3
|
import '../chunk-F73MC7EZ.js';
|
|
4
4
|
import '../chunk-SMBKXWML.js';
|
|
5
|
-
import '../chunk-4GB57WIT.js';
|
|
6
5
|
import '../chunk-OG6CL3EB.js';
|
|
7
|
-
import '../chunk-
|
|
8
|
-
import '../chunk-HMPFGIWM.js';
|
|
9
|
-
import '../chunk-R25RGPUB.js';
|
|
6
|
+
import '../chunk-Q55TXPA3.js';
|
|
10
7
|
import '../chunk-PQADV6P6.js';
|
|
11
8
|
import '../chunk-BHHIIK3M.js';
|
|
9
|
+
import '../chunk-HMPFGIWM.js';
|
|
10
|
+
import '../chunk-R25RGPUB.js';
|
|
11
|
+
import '../chunk-4FQT6ZAY.js';
|
|
12
12
|
import '../chunk-BZFWDIV6.js';
|
|
13
13
|
import '../chunk-ODEQTPFM.js';
|
package/dist/Composer/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { COMPOSER_COUNTER_AT, Composer } from '../chunk-
|
|
1
|
+
export { COMPOSER_COUNTER_AT, Composer } from '../chunk-VJLYGPPE.js';
|
|
2
2
|
import '../chunk-SMBKXWML.js';
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-4FQT6ZAY.js';
|
|
3
|
+
import '../chunk-Q55TXPA3.js';
|
|
5
4
|
import '../chunk-PQADV6P6.js';
|
|
5
|
+
import '../chunk-4FQT6ZAY.js';
|
|
6
6
|
import '../chunk-BZFWDIV6.js';
|
|
7
7
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { ConfirmField, confirmMatches } from '../chunk-
|
|
1
|
+
export { ConfirmField, confirmMatches } from '../chunk-YSY6UJ4F.js';
|
|
2
2
|
import '../chunk-5CLW2CXT.js';
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-4FQT6ZAY.js';
|
|
3
|
+
import '../chunk-Q55TXPA3.js';
|
|
5
4
|
import '../chunk-PQADV6P6.js';
|
|
5
|
+
import '../chunk-4FQT6ZAY.js';
|
|
6
6
|
import '../chunk-BZFWDIV6.js';
|
|
7
7
|
import '../chunk-ODEQTPFM.js';
|
package/dist/DataTable/index.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-2TZATTIU.js';
|
|
4
|
-
import '../chunk-75CLJNDQ.js';
|
|
5
|
-
import '../chunk-4GB57WIT.js';
|
|
1
|
+
export { ALL_ITEMS, CopyableCell, DATA_TABLE_LABELS, DataTable, RowActionsMenu } from '../chunk-AJESMWJS.js';
|
|
2
|
+
import '../chunk-JULMZNGT.js';
|
|
6
3
|
import '../chunk-STJ7QBC3.js';
|
|
7
4
|
import '../chunk-DTIW4CHZ.js';
|
|
5
|
+
import '../chunk-7IJARUIF.js';
|
|
8
6
|
import '../chunk-OG6CL3EB.js';
|
|
9
|
-
import '../chunk-
|
|
10
|
-
import '../chunk-
|
|
11
|
-
import '../chunk-R25RGPUB.js';
|
|
7
|
+
import '../chunk-I6NZKJGK.js';
|
|
8
|
+
import '../chunk-Q55TXPA3.js';
|
|
12
9
|
import '../chunk-EUCC37WY.js';
|
|
13
10
|
import '../chunk-AV2DXAEL.js';
|
|
14
11
|
import '../chunk-PQADV6P6.js';
|
|
12
|
+
import '../chunk-HMPFGIWM.js';
|
|
13
|
+
import '../chunk-R25RGPUB.js';
|
|
14
|
+
import '../chunk-4FQT6ZAY.js';
|
|
15
15
|
import '../chunk-BZFWDIV6.js';
|
|
16
16
|
import '../chunk-ODEQTPFM.js';
|
package/dist/DataView/index.js
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-
|
|
1
|
+
export { DATA_VIEW_TOOLBAR_LABELS, DataView, DataViewToolbar, FILTER_AXIS_LABELS, FilterAxisBar, FilterAxisChip, applyColumnFilters, applyFilters, blankFilterValue, defaultOperator, filterDefsFromColumns, filterHasValue, filterPredicate, formatFilterValue, operatorOf, tableColumns } from '../chunk-OIMAK5AE.js';
|
|
2
2
|
import '../chunk-HOXGBLEY.js';
|
|
3
3
|
import '../chunk-PGRPNDWM.js';
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
7
|
-
import '../chunk-2TZATTIU.js';
|
|
8
|
-
import '../chunk-F73MC7EZ.js';
|
|
9
|
-
import '../chunk-SMBKXWML.js';
|
|
10
|
-
import '../chunk-75CLJNDQ.js';
|
|
11
|
-
import '../chunk-4GB57WIT.js';
|
|
4
|
+
import '../chunk-AJESMWJS.js';
|
|
5
|
+
import '../chunk-JULMZNGT.js';
|
|
6
|
+
import '../chunk-L4H7SSWF.js';
|
|
12
7
|
import '../chunk-STJ7QBC3.js';
|
|
13
8
|
import '../chunk-DTIW4CHZ.js';
|
|
14
|
-
import '../chunk-
|
|
9
|
+
import '../chunk-7IJARUIF.js';
|
|
10
|
+
import '../chunk-F73MC7EZ.js';
|
|
11
|
+
import '../chunk-SMBKXWML.js';
|
|
15
12
|
import '../chunk-GXQ3B46I.js';
|
|
16
13
|
import '../chunk-OG6CL3EB.js';
|
|
17
|
-
import '../chunk-
|
|
18
|
-
import '../chunk-
|
|
19
|
-
import '../chunk-R25RGPUB.js';
|
|
14
|
+
import '../chunk-I6NZKJGK.js';
|
|
15
|
+
import '../chunk-Q55TXPA3.js';
|
|
20
16
|
import '../chunk-3CZ7XAVY.js';
|
|
21
17
|
import '../chunk-EUCC37WY.js';
|
|
18
|
+
import '../chunk-BWRGFKJP.js';
|
|
22
19
|
import '../chunk-AV2DXAEL.js';
|
|
23
20
|
import '../chunk-PQADV6P6.js';
|
|
24
21
|
import '../chunk-BHHIIK3M.js';
|
|
22
|
+
import '../chunk-HMPFGIWM.js';
|
|
23
|
+
import '../chunk-R25RGPUB.js';
|
|
24
|
+
import '../chunk-4FQT6ZAY.js';
|
|
25
25
|
import '../chunk-BZFWDIV6.js';
|
|
26
26
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-
|
|
2
|
-
import '../chunk-BWRGFKJP.js';
|
|
1
|
+
export { DEFAULT_DATE_TIME_PICKER_LABELS, DateTimePicker } from '../chunk-L4H7SSWF.js';
|
|
3
2
|
import '../chunk-GXQ3B46I.js';
|
|
4
3
|
import '../chunk-OG6CL3EB.js';
|
|
5
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-BWRGFKJP.js';
|
|
6
5
|
import '../chunk-HMPFGIWM.js';
|
|
7
6
|
import '../chunk-R25RGPUB.js';
|
|
7
|
+
import '../chunk-4FQT6ZAY.js';
|
|
8
8
|
import '../chunk-BZFWDIV6.js';
|
|
9
9
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { HTMLAttributes } from 'react';
|
|
2
|
+
export interface DividerProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
/** Words on the rule, for a divider that names what follows: "History". */
|
|
4
|
+
label?: string | undefined;
|
|
5
|
+
/** Where the words sit: at the start, as a section's name, or centred. */
|
|
6
|
+
align?: 'start' | 'center' | undefined;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* A rule between parts of a page, with or without a name.
|
|
10
|
+
*
|
|
11
|
+
* A SEPARATOR TO A SCREEN READER, and a named one says its name, so a reader
|
|
12
|
+
* moving through the page hears where one part ends and "History" begins
|
|
13
|
+
* rather than nothing at all.
|
|
14
|
+
*/
|
|
15
|
+
export declare function Divider({ label, align, className, ...rest }: DividerProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/* Divider: a rule across its space, with its name at its start or in its middle. */
|
|
2
|
+
|
|
3
|
+
.crewlet-divider {
|
|
4
|
+
display: flex;
|
|
5
|
+
align-items: center;
|
|
6
|
+
gap: var(--spacing-3);
|
|
7
|
+
min-height: var(--size-row-sm);
|
|
8
|
+
min-width: 0;
|
|
9
|
+
}
|
|
10
|
+
.crewlet-divider::before,
|
|
11
|
+
.crewlet-divider::after {
|
|
12
|
+
content: '';
|
|
13
|
+
flex: 1 1 auto;
|
|
14
|
+
border-top: 1px solid var(--color-border-strong);
|
|
15
|
+
}
|
|
16
|
+
/* One rule unless the words sit in the middle of it. */
|
|
17
|
+
.crewlet-divider:not(.crewlet-divider--center)::before {
|
|
18
|
+
display: none;
|
|
19
|
+
}
|
|
20
|
+
.crewlet-divider:not(.crewlet-divider--labelled)::before {
|
|
21
|
+
display: block;
|
|
22
|
+
}
|
|
23
|
+
.crewlet-divider:not(.crewlet-divider--labelled)::after {
|
|
24
|
+
display: none;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.crewlet-divider__label {
|
|
28
|
+
flex: 0 1 auto;
|
|
29
|
+
overflow: hidden;
|
|
30
|
+
font-size: var(--font-size-xs);
|
|
31
|
+
font-weight: var(--font-weight-medium);
|
|
32
|
+
letter-spacing: var(--font-letter-spacing-wide);
|
|
33
|
+
color: var(--color-text-tertiary);
|
|
34
|
+
text-transform: uppercase;
|
|
35
|
+
text-overflow: ellipsis;
|
|
36
|
+
white-space: nowrap;
|
|
37
|
+
}
|
|
@@ -1,15 +1,26 @@
|
|
|
1
1
|
import { type SegmentedSize } from '../SegmentedControl/SegmentedControl.js';
|
|
2
2
|
import { type NodeHue } from '../utils/nodeHue.js';
|
|
3
|
-
|
|
3
|
+
interface HuePickerBase {
|
|
4
4
|
/** The group's name, said on entering it: "Color". */
|
|
5
5
|
label: string;
|
|
6
|
-
value: NodeHue;
|
|
7
|
-
onValueChange: (hue: NodeHue) => void;
|
|
8
6
|
size?: SegmentedSize | undefined;
|
|
9
7
|
/** Nothing can be chosen, and the row says so. */
|
|
10
8
|
disabled?: boolean | undefined;
|
|
11
9
|
className?: string | undefined;
|
|
12
10
|
}
|
|
11
|
+
/**
|
|
12
|
+
* The six hues, or the six and NO HUE first, named by `none` ("Plain"): a
|
|
13
|
+
* surface that may carry a colour (a group's band, a note) but need not.
|
|
14
|
+
*/
|
|
15
|
+
export type HuePickerProps = HuePickerBase & ({
|
|
16
|
+
none?: undefined;
|
|
17
|
+
value: NodeHue;
|
|
18
|
+
onValueChange: (hue: NodeHue) => void;
|
|
19
|
+
} | {
|
|
20
|
+
none: string;
|
|
21
|
+
value: NodeHue | 'none';
|
|
22
|
+
onValueChange: (hue: NodeHue | 'none') => void;
|
|
23
|
+
});
|
|
13
24
|
/**
|
|
14
25
|
* The choice of an entity's hue: the six node hues as a row of chips, each a
|
|
15
26
|
* swatch and the hue's name.
|
|
@@ -23,4 +34,5 @@ export interface HuePickerProps {
|
|
|
23
34
|
* row is still read and the chosen hue still shown, and nothing in it takes
|
|
24
35
|
* focus or a press.
|
|
25
36
|
*/
|
|
26
|
-
export declare function HuePicker(
|
|
37
|
+
export declare function HuePicker(props: HuePickerProps): import("react").JSX.Element;
|
|
38
|
+
export {};
|
package/dist/HuePicker/index.js
CHANGED
|
@@ -16,3 +16,9 @@
|
|
|
16
16
|
.crewlet-hue-picker__swatch--amber { background: var(--color-node-amber); }
|
|
17
17
|
.crewlet-hue-picker__swatch--rose { background: var(--color-node-rose); }
|
|
18
18
|
.crewlet-hue-picker__swatch--blue { background: var(--color-node-blue); }
|
|
19
|
+
|
|
20
|
+
/* No hue: a ring in the hairline, so the row still reads as swatches. */
|
|
21
|
+
.crewlet-hue-picker__swatch--none {
|
|
22
|
+
box-sizing: border-box;
|
|
23
|
+
border: 1px solid var(--color-border-strong);
|
|
24
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
import type { NodeHue } from '../utils/nodeHue.js';
|
|
3
|
+
export interface IconTileProps extends Omit<HTMLAttributes<HTMLSpanElement>, 'children'> {
|
|
4
|
+
/** The glyph, at the size the tile is drawn at: `sm` in a `sm` or `md` tile, `md` in a `lg` one. */
|
|
5
|
+
children: ReactNode;
|
|
6
|
+
/** The hue it is tinted in. Left out, the brand accent's soft fill and ink. */
|
|
7
|
+
hue?: NodeHue | undefined;
|
|
8
|
+
/** One of the row heights: `sm` 28px, `md` 36px, `lg` 48px. */
|
|
9
|
+
size?: 'sm' | 'md' | 'lg' | undefined;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* A glyph on a tinted square: what a choice in a library or a catalog is
|
|
13
|
+
* told apart by before its name is read. The widget tray draws one per widget
|
|
14
|
+
* it offers.
|
|
15
|
+
*
|
|
16
|
+
* A HUE PER KIND, NOT PER STATE. The tint is decorative and picked for the
|
|
17
|
+
* thing it marks (`NodeHue`), so a tile in rose says nothing is wrong; a state
|
|
18
|
+
* is a `StatusDot` or a `Tag`.
|
|
19
|
+
*
|
|
20
|
+
* DECORATION. The tile is hidden from assistive technology: the name beside it
|
|
21
|
+
* is what is read.
|
|
22
|
+
*/
|
|
23
|
+
export declare function IconTile({ children, hue, size, className, ...rest }: IconTileProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* IconTile: a glyph on a tinted square. Each hue pairs its fill and its ink
|
|
3
|
+
* from one measured family (`--color-node-*`); left out, the brand accent's
|
|
4
|
+
* soft fill and ink. No edge: the tile sits inside a card that has one.
|
|
5
|
+
*/
|
|
6
|
+
.crewlet-icon-tile {
|
|
7
|
+
--crewlet-icon-tile-fill: var(--color-brand-accent-soft);
|
|
8
|
+
--crewlet-icon-tile-ink: var(--color-brand-accent-ink);
|
|
9
|
+
--crewlet-icon-tile-size: var(--size-row-md);
|
|
10
|
+
|
|
11
|
+
display: inline-flex;
|
|
12
|
+
flex: none;
|
|
13
|
+
align-items: center;
|
|
14
|
+
justify-content: center;
|
|
15
|
+
width: var(--crewlet-icon-tile-size);
|
|
16
|
+
height: var(--crewlet-icon-tile-size);
|
|
17
|
+
border-radius: var(--radius-md);
|
|
18
|
+
background: var(--crewlet-icon-tile-fill);
|
|
19
|
+
color: var(--crewlet-icon-tile-ink);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.crewlet-icon-tile--sm { --crewlet-icon-tile-size: var(--size-row-sm); }
|
|
23
|
+
.crewlet-icon-tile--lg { --crewlet-icon-tile-size: var(--size-row-lg); border-radius: var(--radius-lg); }
|
|
24
|
+
|
|
25
|
+
.crewlet-icon-tile--purple { --crewlet-icon-tile-fill: var(--color-node-purple-fill); --crewlet-icon-tile-ink: var(--color-node-purple-ink); }
|
|
26
|
+
.crewlet-icon-tile--cyan { --crewlet-icon-tile-fill: var(--color-node-cyan-fill); --crewlet-icon-tile-ink: var(--color-node-cyan-ink); }
|
|
27
|
+
.crewlet-icon-tile--green { --crewlet-icon-tile-fill: var(--color-node-green-fill); --crewlet-icon-tile-ink: var(--color-node-green-ink); }
|
|
28
|
+
.crewlet-icon-tile--amber { --crewlet-icon-tile-fill: var(--color-node-amber-fill); --crewlet-icon-tile-ink: var(--color-node-amber-ink); }
|
|
29
|
+
.crewlet-icon-tile--rose { --crewlet-icon-tile-fill: var(--color-node-rose-fill); --crewlet-icon-tile-ink: var(--color-node-rose-ink); }
|
|
30
|
+
.crewlet-icon-tile--blue { --crewlet-icon-tile-fill: var(--color-node-blue-fill); --crewlet-icon-tile-ink: var(--color-node-blue-ink); }
|
package/dist/Input/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { FormField, FormRow, FormSection, Input, InputAffix, Label, ReadOnlyField, Textarea } from '../chunk-
|
|
2
|
-
import '../chunk-4FQT6ZAY.js';
|
|
1
|
+
export { FormField, FormRow, FormSection, Input, InputAffix, Label, ReadOnlyField, Textarea } from '../chunk-Q55TXPA3.js';
|
|
3
2
|
import '../chunk-PQADV6P6.js';
|
|
3
|
+
import '../chunk-4FQT6ZAY.js';
|
|
4
4
|
import '../chunk-BZFWDIV6.js';
|
|
5
5
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export { LinkInterstitial, openExternal } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { LinkInterstitial, openExternal } from '../chunk-RT323I4I.js';
|
|
2
|
+
import '../chunk-7IJARUIF.js';
|
|
3
3
|
import '../chunk-5CLW2CXT.js';
|
|
4
4
|
import '../chunk-SVSCLHHI.js';
|
|
5
5
|
import '../chunk-OG6CL3EB.js';
|
|
6
|
-
import '../chunk-
|
|
6
|
+
import '../chunk-PQADV6P6.js';
|
|
7
7
|
import '../chunk-HMPFGIWM.js';
|
|
8
8
|
import '../chunk-R25RGPUB.js';
|
|
9
|
-
import '../chunk-
|
|
9
|
+
import '../chunk-4FQT6ZAY.js';
|
|
10
10
|
import '../chunk-BZFWDIV6.js';
|
|
11
11
|
import '../chunk-ODEQTPFM.js';
|
package/dist/ListInput/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export { ListInput } from '../chunk-
|
|
1
|
+
export { ListInput } from '../chunk-YSJYWQSP.js';
|
|
2
2
|
import '../chunk-SMBKXWML.js';
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-4FQT6ZAY.js';
|
|
3
|
+
import '../chunk-Q55TXPA3.js';
|
|
4
|
+
import '../chunk-PQADV6P6.js';
|
|
6
5
|
import '../chunk-HMPFGIWM.js';
|
|
7
6
|
import '../chunk-R25RGPUB.js';
|
|
8
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-RSAQOKH3.js';
|
|
8
|
+
import '../chunk-4FQT6ZAY.js';
|
|
9
9
|
import '../chunk-BZFWDIV6.js';
|
|
10
10
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -4,9 +4,9 @@ import '../chunk-PGRPNDWM.js';
|
|
|
4
4
|
import '../chunk-26PEPONN.js';
|
|
5
5
|
import '../chunk-4LDTQWS7.js';
|
|
6
6
|
import '../chunk-CBOICT64.js';
|
|
7
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-BHHIIK3M.js';
|
|
8
8
|
import '../chunk-HMPFGIWM.js';
|
|
9
9
|
import '../chunk-R25RGPUB.js';
|
|
10
|
-
import '../chunk-
|
|
10
|
+
import '../chunk-4FQT6ZAY.js';
|
|
11
11
|
import '../chunk-BZFWDIV6.js';
|
|
12
12
|
import '../chunk-ODEQTPFM.js';
|
package/dist/Menu/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { Menu } from '../chunk-
|
|
1
|
+
export { Menu } from '../chunk-JULMZNGT.js';
|
|
2
2
|
import '../chunk-OG6CL3EB.js';
|
|
3
|
-
import '../chunk-4FQT6ZAY.js';
|
|
4
3
|
import '../chunk-HMPFGIWM.js';
|
|
5
4
|
import '../chunk-R25RGPUB.js';
|
|
5
|
+
import '../chunk-4FQT6ZAY.js';
|
|
6
6
|
import '../chunk-BZFWDIV6.js';
|
|
7
7
|
import '../chunk-ODEQTPFM.js';
|
package/dist/Modal/Modal.d.ts
CHANGED
|
@@ -85,6 +85,18 @@ export interface ModalProps extends FrameAttributes {
|
|
|
85
85
|
* one glance keeps its actions in the foot, where the eye ends up.
|
|
86
86
|
*/
|
|
87
87
|
headerActions?: ReactNode;
|
|
88
|
+
/**
|
|
89
|
+
* A step back, drawn first in the head, before the title.
|
|
90
|
+
*
|
|
91
|
+
* For a surface reached FROM another one that stays the reader's place: a
|
|
92
|
+
* widget's options opened from a library of widgets, a record opened from a
|
|
93
|
+
* list in the same sheet. The way back belongs where the reader looks to
|
|
94
|
+
* learn where they are, beside the title, and not in a foot they have to
|
|
95
|
+
* scroll to. Closing is still the close control; this only goes back.
|
|
96
|
+
*/
|
|
97
|
+
onBack?: (() => void) | undefined;
|
|
98
|
+
/** The back control's name, saying where it goes: "Back to widgets". */
|
|
99
|
+
backLabel?: string | undefined;
|
|
88
100
|
children?: ReactNode;
|
|
89
101
|
size?: ModalSize | undefined;
|
|
90
102
|
variant?: ModalVariant | undefined;
|
|
@@ -99,6 +111,14 @@ export interface ModalProps extends FrameAttributes {
|
|
|
99
111
|
dismissable?: boolean | undefined;
|
|
100
112
|
/** A veil-only switch: the surface still closes on Escape and on its close control. */
|
|
101
113
|
closeOnBackdrop?: boolean | undefined;
|
|
114
|
+
/**
|
|
115
|
+
* What the page behind looks like. `veil` dims and softens it, which is what
|
|
116
|
+
* a surface asking for the reader's whole attention wants. `clear` leaves it
|
|
117
|
+
* as it is, for a sheet whose changes ARE the page behind it (a page's
|
|
118
|
+
* customize sheet): a preview under a veil is a preview nobody can read. The
|
|
119
|
+
* surface is still modal; only the paint changes.
|
|
120
|
+
*/
|
|
121
|
+
backdrop?: 'veil' | 'clear' | undefined;
|
|
102
122
|
showCloseButton?: boolean | undefined;
|
|
103
123
|
/** Stacks the body's children in a column with a gap, which most forms want. */
|
|
104
124
|
stackBody?: boolean | undefined;
|
package/dist/Modal/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export { ConfirmModal, Modal } from '../chunk-
|
|
1
|
+
export { ConfirmModal, Modal } from '../chunk-7IJARUIF.js';
|
|
2
2
|
import '../chunk-OG6CL3EB.js';
|
|
3
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-PQADV6P6.js';
|
|
4
4
|
import '../chunk-HMPFGIWM.js';
|
|
5
5
|
import '../chunk-R25RGPUB.js';
|
|
6
|
-
import '../chunk-
|
|
6
|
+
import '../chunk-4FQT6ZAY.js';
|
|
7
7
|
import '../chunk-BZFWDIV6.js';
|
|
8
8
|
import '../chunk-ODEQTPFM.js';
|
|
@@ -57,6 +57,12 @@
|
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
/* Inside a LayerHost the overlay covers the host, not the window. */
|
|
60
|
+
/* The page behind stays as it is: see `backdrop` in Modal.tsx. */
|
|
61
|
+
.crewlet-modal-overlay--clear {
|
|
62
|
+
background: transparent;
|
|
63
|
+
backdrop-filter: none;
|
|
64
|
+
}
|
|
65
|
+
|
|
60
66
|
.crewlet-modal-overlay--in-host {
|
|
61
67
|
position: absolute;
|
|
62
68
|
}
|
|
@@ -376,6 +382,14 @@
|
|
|
376
382
|
margin: calc(var(--spacing-1) * -1);
|
|
377
383
|
}
|
|
378
384
|
|
|
385
|
+
/* The step back leads the head, its glyph on the title's inline start, as
|
|
386
|
+
the close control's sits on the head's end. */
|
|
387
|
+
.crewlet-modal__back {
|
|
388
|
+
flex-shrink: 0;
|
|
389
|
+
margin-inline-start: calc(var(--spacing-2) * -1);
|
|
390
|
+
margin-block: calc(var(--spacing-1) * -1);
|
|
391
|
+
}
|
|
392
|
+
|
|
379
393
|
.crewlet-modal__body {
|
|
380
394
|
flex: 1 1 auto;
|
|
381
395
|
min-height: 0;
|