@crewlethq/ui 0.42.0 → 0.43.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 +14 -2
- package/dist/ArrangeFrame/index.js +2 -2
- package/dist/ArrangeList/index.js +1 -1
- package/dist/AvatarPicker/index.js +3 -3
- package/dist/CharacterPicker/index.js +2 -2
- package/dist/DataView/index.js +2 -2
- package/dist/DatasetSource/index.js +1 -1
- package/dist/DirectoryList/DirectoryList.d.ts +55 -0
- package/dist/DirectoryList/index.d.ts +3 -0
- package/dist/DirectoryList/index.js +3 -0
- package/dist/DirectoryList-EESYMH2U.css +126 -0
- package/dist/DocTabsEditor/index.js +1 -1
- package/dist/ListDetail/ListDetail.d.ts +27 -0
- package/dist/ListDetail/index.d.ts +3 -0
- package/dist/ListDetail/index.js +2 -0
- package/dist/ListDetail-ALKU5VJW.css +53 -0
- package/dist/ListInput/index.js +2 -2
- package/dist/ObjectHeader/ObjectHeader.d.ts +7 -1
- package/dist/ObjectHeader/index.js +1 -1
- package/dist/{ObjectHeader-ZOS22FKX.css → ObjectHeader-DNQWRGUK.css} +50 -0
- package/dist/PropertyList/index.js +2 -2
- package/dist/RichEditor/index.js +1 -1
- package/dist/SheetGrid/index.js +5 -5
- package/dist/SlideFilmstrip/index.js +1 -1
- package/dist/Switcher/index.js +2 -2
- package/dist/TableCells/index.js +1 -1
- package/dist/TagsInput/index.js +2 -2
- package/dist/{chunk-ODOJJGXH.js → chunk-HFQBMEEH.js} +18 -2
- package/dist/{chunk-TVSHR35W.js → chunk-JF3TJUBU.js} +1 -1
- package/dist/{chunk-T6MXORP5.js → chunk-JGCDFMXN.js} +1 -1
- package/dist/{chunk-Q7HLZH32.js → chunk-PLLYOPS4.js} +1 -1
- package/dist/chunk-R5RCGD7N.js +12 -0
- package/dist/chunk-SJ6DMG4R.js +39 -0
- package/dist/generated/index.d.ts +2 -0
- package/dist/generated/index.js +49 -47
- package/dist/index.js +49 -47
- package/dist/styles.css +236 -1
- package/package.json +3 -3
- package/dist/{Editor-FXO2JVWK.js → Editor-AMO2B54T.js} +1 -1
- package/dist/{chunk-NF6SWHQI.js → chunk-524GGA67.js} +1 -1
- package/dist/{chunk-SXBJMBSV.js → chunk-IVAR7NRW.js} +1 -1
- package/dist/{chunk-VWYT3GVV.js → chunk-LKBZV5IT.js} +1 -1
- package/dist/{chunk-AACPFUZW.js → chunk-NCM73C34.js} +1 -1
- package/dist/{chunk-OWIGEE2Y.js → chunk-OVHJTOKW.js} +2 -2
- package/dist/{chunk-S3QTFUJX.js → chunk-VXCT6L3F.js} +0 -0
- package/dist/{chunk-SNQRGH4A.js → chunk-VZICPYGR.js} +1 -1
- package/dist/{chunk-NMYGJJJK.js → chunk-Z5WMCBHR.js} +1 -1
package/dist/styles.css
CHANGED
|
@@ -13725,6 +13725,135 @@ svg.crewlet-datetime__chevron {
|
|
|
13725
13725
|
}
|
|
13726
13726
|
|
|
13727
13727
|
|
|
13728
|
+
/* DirectoryList-EESYMH2U.css */
|
|
13729
|
+
/*
|
|
13730
|
+
* DirectoryList: named groups of links, each line a mark, a label and a state,
|
|
13731
|
+
* and one foot that holds the bottom (DirectoryList.tsx).
|
|
13732
|
+
*
|
|
13733
|
+
* NO FRAME OF ITS OWN. The list draws on the column it is placed in, its lines
|
|
13734
|
+
* on the hover and selected grounds alone, so it never makes a box inside a
|
|
13735
|
+
* box; the foot's hairline is the one rule it draws.
|
|
13736
|
+
*/
|
|
13737
|
+
|
|
13738
|
+
.crewlet-directory {
|
|
13739
|
+
display: flex;
|
|
13740
|
+
flex-direction: column;
|
|
13741
|
+
gap: var(--spacing-2);
|
|
13742
|
+
min-width: 0;
|
|
13743
|
+
min-height: 0;
|
|
13744
|
+
height: 100%;
|
|
13745
|
+
font-family: var(--font-family-sans);
|
|
13746
|
+
}
|
|
13747
|
+
|
|
13748
|
+
/* The groups take the room and scroll on their own, so the foot stays put. */
|
|
13749
|
+
.crewlet-directory__groups {
|
|
13750
|
+
display: flex;
|
|
13751
|
+
flex: 1 1 auto;
|
|
13752
|
+
flex-direction: column;
|
|
13753
|
+
gap: var(--spacing-5);
|
|
13754
|
+
min-height: 0;
|
|
13755
|
+
overflow-y: auto;
|
|
13756
|
+
}
|
|
13757
|
+
|
|
13758
|
+
.crewlet-directory__group {
|
|
13759
|
+
display: flex;
|
|
13760
|
+
flex-direction: column;
|
|
13761
|
+
gap: var(--spacing-2);
|
|
13762
|
+
min-width: 0;
|
|
13763
|
+
}
|
|
13764
|
+
|
|
13765
|
+
.crewlet-directory__heading {
|
|
13766
|
+
margin: 0;
|
|
13767
|
+
padding: 0 var(--spacing-2);
|
|
13768
|
+
font-size: var(--font-size-xs);
|
|
13769
|
+
font-weight: var(--font-weight-semibold);
|
|
13770
|
+
letter-spacing: 0.04em;
|
|
13771
|
+
text-transform: uppercase;
|
|
13772
|
+
color: var(--color-text-tertiary);
|
|
13773
|
+
}
|
|
13774
|
+
|
|
13775
|
+
.crewlet-directory__items {
|
|
13776
|
+
display: flex;
|
|
13777
|
+
flex-direction: column;
|
|
13778
|
+
gap: 2px;
|
|
13779
|
+
margin: 0;
|
|
13780
|
+
padding: 0;
|
|
13781
|
+
list-style: none;
|
|
13782
|
+
}
|
|
13783
|
+
|
|
13784
|
+
.crewlet-directory__item {
|
|
13785
|
+
display: grid;
|
|
13786
|
+
grid-template-columns: auto minmax(0, 1fr) auto;
|
|
13787
|
+
align-items: center;
|
|
13788
|
+
gap: var(--spacing-2);
|
|
13789
|
+
min-height: var(--size-row-md);
|
|
13790
|
+
padding: var(--spacing-1) var(--spacing-2);
|
|
13791
|
+
border-radius: var(--radius-md);
|
|
13792
|
+
color: var(--color-text-primary);
|
|
13793
|
+
font-size: var(--font-size-sm);
|
|
13794
|
+
text-decoration: none;
|
|
13795
|
+
}
|
|
13796
|
+
|
|
13797
|
+
.crewlet-directory__item:hover {
|
|
13798
|
+
background: var(--color-surface-hover);
|
|
13799
|
+
}
|
|
13800
|
+
|
|
13801
|
+
.crewlet-directory__item--selected,
|
|
13802
|
+
.crewlet-directory__item--selected:hover {
|
|
13803
|
+
background: var(--color-surface-selected);
|
|
13804
|
+
}
|
|
13805
|
+
|
|
13806
|
+
.crewlet-directory__item:focus-visible {
|
|
13807
|
+
outline: 2px solid var(--color-focus);
|
|
13808
|
+
outline-offset: 1px;
|
|
13809
|
+
}
|
|
13810
|
+
|
|
13811
|
+
.crewlet-directory__mark {
|
|
13812
|
+
display: inline-flex;
|
|
13813
|
+
flex: none;
|
|
13814
|
+
align-items: center;
|
|
13815
|
+
justify-content: center;
|
|
13816
|
+
width: var(--size-row-sm);
|
|
13817
|
+
height: var(--size-row-sm);
|
|
13818
|
+
}
|
|
13819
|
+
|
|
13820
|
+
.crewlet-directory__text {
|
|
13821
|
+
display: flex;
|
|
13822
|
+
flex-direction: column;
|
|
13823
|
+
min-width: 0;
|
|
13824
|
+
}
|
|
13825
|
+
|
|
13826
|
+
.crewlet-directory__label {
|
|
13827
|
+
overflow: hidden;
|
|
13828
|
+
font-weight: var(--font-weight-medium);
|
|
13829
|
+
text-overflow: ellipsis;
|
|
13830
|
+
white-space: nowrap;
|
|
13831
|
+
}
|
|
13832
|
+
|
|
13833
|
+
.crewlet-directory__hint {
|
|
13834
|
+
overflow: hidden;
|
|
13835
|
+
font-size: var(--font-size-xs);
|
|
13836
|
+
color: var(--color-text-tertiary);
|
|
13837
|
+
text-overflow: ellipsis;
|
|
13838
|
+
white-space: nowrap;
|
|
13839
|
+
}
|
|
13840
|
+
|
|
13841
|
+
.crewlet-directory__status {
|
|
13842
|
+
display: inline-flex;
|
|
13843
|
+
flex: none;
|
|
13844
|
+
font-size: var(--font-size-xs);
|
|
13845
|
+
color: var(--color-text-secondary);
|
|
13846
|
+
}
|
|
13847
|
+
|
|
13848
|
+
/* The foot: one small step under the groups, at the bottom of the column. */
|
|
13849
|
+
.crewlet-directory__foot {
|
|
13850
|
+
flex: none;
|
|
13851
|
+
min-width: 0;
|
|
13852
|
+
padding: var(--spacing-2) var(--spacing-2) 0;
|
|
13853
|
+
border-top: 1px solid var(--color-border-default);
|
|
13854
|
+
}
|
|
13855
|
+
|
|
13856
|
+
|
|
13728
13857
|
/* Disclosure-P4FH3C35.css */
|
|
13729
13858
|
/*
|
|
13730
13859
|
* The disclosure anatomy, declared once for every expander in the package.
|
|
@@ -17732,6 +17861,62 @@ a.crewlet-icon-btn {
|
|
|
17732
17861
|
}
|
|
17733
17862
|
|
|
17734
17863
|
|
|
17864
|
+
/* ListDetail-ALKU5VJW.css */
|
|
17865
|
+
/*
|
|
17866
|
+
* ListDetail: a list beside the detail of what is chosen in it, each scrolling
|
|
17867
|
+
* on its own in the height it is given, one pane on a phone (ListDetail.tsx).
|
|
17868
|
+
*/
|
|
17869
|
+
|
|
17870
|
+
.crewlet-list-detail {
|
|
17871
|
+
display: grid;
|
|
17872
|
+
flex: 1 1 auto;
|
|
17873
|
+
grid-template-columns: var(--crewlet-list-detail-list, 17rem) minmax(0, 1fr);
|
|
17874
|
+
gap: var(--spacing-8);
|
|
17875
|
+
height: 100%;
|
|
17876
|
+
min-width: 0;
|
|
17877
|
+
min-height: 0;
|
|
17878
|
+
}
|
|
17879
|
+
|
|
17880
|
+
.crewlet-list-detail__list {
|
|
17881
|
+
display: flex;
|
|
17882
|
+
flex-direction: column;
|
|
17883
|
+
min-width: 0;
|
|
17884
|
+
min-height: 0;
|
|
17885
|
+
padding-right: var(--spacing-6);
|
|
17886
|
+
border-right: 1px solid var(--color-border-default);
|
|
17887
|
+
}
|
|
17888
|
+
|
|
17889
|
+
.crewlet-list-detail__detail {
|
|
17890
|
+
display: flex;
|
|
17891
|
+
flex-direction: column;
|
|
17892
|
+
gap: var(--spacing-5);
|
|
17893
|
+
min-width: 0;
|
|
17894
|
+
min-height: 0;
|
|
17895
|
+
overflow-y: auto;
|
|
17896
|
+
}
|
|
17897
|
+
|
|
17898
|
+
@media (width < 640px) {
|
|
17899
|
+
.crewlet-list-detail {
|
|
17900
|
+
grid-template-columns: minmax(0, 1fr);
|
|
17901
|
+
height: auto;
|
|
17902
|
+
}
|
|
17903
|
+
|
|
17904
|
+
.crewlet-list-detail__list {
|
|
17905
|
+
padding-right: 0;
|
|
17906
|
+
border-right: 0;
|
|
17907
|
+
}
|
|
17908
|
+
|
|
17909
|
+
.crewlet-list-detail__detail {
|
|
17910
|
+
overflow: visible;
|
|
17911
|
+
}
|
|
17912
|
+
|
|
17913
|
+
.crewlet-list-detail--showing-list .crewlet-list-detail__detail,
|
|
17914
|
+
.crewlet-list-detail--showing-detail .crewlet-list-detail__list {
|
|
17915
|
+
display: none;
|
|
17916
|
+
}
|
|
17917
|
+
}
|
|
17918
|
+
|
|
17919
|
+
|
|
17735
17920
|
/* ListInput-O7LJKOIG.css */
|
|
17736
17921
|
/*
|
|
17737
17922
|
* ListInput: an ordered list of sentences, written in the box at the top and
|
|
@@ -19635,7 +19820,7 @@ a.crewlet-icon-btn {
|
|
|
19635
19820
|
}
|
|
19636
19821
|
|
|
19637
19822
|
|
|
19638
|
-
/* ObjectHeader-
|
|
19823
|
+
/* ObjectHeader-DNQWRGUK.css */
|
|
19639
19824
|
/*
|
|
19640
19825
|
* The header of an object: its eyebrow, its head row and its fact line.
|
|
19641
19826
|
*
|
|
@@ -19656,6 +19841,56 @@ a.crewlet-icon-btn {
|
|
|
19656
19841
|
padding: var(--spacing-3) 0 var(--spacing-2);
|
|
19657
19842
|
}
|
|
19658
19843
|
|
|
19844
|
+
/*
|
|
19845
|
+
* A MARKED HEADER: the object's own mark on a plate, the catalogue tile's well
|
|
19846
|
+
* at one and a half rows, beside the column the rest of the header keeps. The
|
|
19847
|
+
* plate is the one box in the header, so the mark reads as the object's face
|
|
19848
|
+
* rather than as one more glyph in the eyebrow.
|
|
19849
|
+
*/
|
|
19850
|
+
.crewlet-object-header--marked {
|
|
19851
|
+
flex-direction: row;
|
|
19852
|
+
align-items: flex-start;
|
|
19853
|
+
gap: var(--spacing-4);
|
|
19854
|
+
}
|
|
19855
|
+
|
|
19856
|
+
.crewlet-object-header__mark {
|
|
19857
|
+
display: inline-flex;
|
|
19858
|
+
flex: none;
|
|
19859
|
+
align-items: center;
|
|
19860
|
+
justify-content: center;
|
|
19861
|
+
width: calc(var(--size-row-lg) * 1.5);
|
|
19862
|
+
height: calc(var(--size-row-lg) * 1.5);
|
|
19863
|
+
border-radius: var(--radius-lg);
|
|
19864
|
+
background: var(--color-surface-elevated);
|
|
19865
|
+
border: 1px solid var(--color-border-default);
|
|
19866
|
+
}
|
|
19867
|
+
|
|
19868
|
+
.crewlet-object-header--peek .crewlet-object-header__mark {
|
|
19869
|
+
width: var(--size-row-lg);
|
|
19870
|
+
height: var(--size-row-lg);
|
|
19871
|
+
border-radius: var(--radius-md);
|
|
19872
|
+
}
|
|
19873
|
+
|
|
19874
|
+
.crewlet-object-header__body {
|
|
19875
|
+
display: flex;
|
|
19876
|
+
flex: 1 1 auto;
|
|
19877
|
+
flex-direction: column;
|
|
19878
|
+
gap: var(--spacing-1);
|
|
19879
|
+
min-width: 0;
|
|
19880
|
+
}
|
|
19881
|
+
|
|
19882
|
+
@media (width < 640px) {
|
|
19883
|
+
.crewlet-object-header--marked {
|
|
19884
|
+
gap: var(--spacing-3);
|
|
19885
|
+
}
|
|
19886
|
+
|
|
19887
|
+
.crewlet-object-header--marked .crewlet-object-header__mark {
|
|
19888
|
+
width: var(--size-row-lg);
|
|
19889
|
+
height: var(--size-row-lg);
|
|
19890
|
+
border-radius: var(--radius-md);
|
|
19891
|
+
}
|
|
19892
|
+
}
|
|
19893
|
+
|
|
19659
19894
|
.crewlet-object-header__eyebrow {
|
|
19660
19895
|
display: flex;
|
|
19661
19896
|
align-items: center;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crewlethq/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.43.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.43.0",
|
|
46
|
+
"@crewlethq/tokens": "0.43.0",
|
|
47
47
|
"prosemirror-commands": "1.7.2",
|
|
48
48
|
"prosemirror-gapcursor": "1.4.1",
|
|
49
49
|
"prosemirror-history": "1.5.1",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { richEditorLabels } from './chunk-CSQTDGTS.js';
|
|
2
1
|
import { schema, readMarkdown, writeMarkdown } from './chunk-QH6VYJ3X.js';
|
|
2
|
+
import { richEditorLabels } from './chunk-CSQTDGTS.js';
|
|
3
3
|
import { safeHref, MARKDOWN_CALLOUT_TONES } from './chunk-BAKPMH3S.js';
|
|
4
4
|
import { Toolbar } from './chunk-NR4CPM4T.js';
|
|
5
5
|
import { FormField, Input } from './chunk-ZI5G5RS7.js';
|
|
@@ -4,10 +4,10 @@ import { Popover } from './chunk-KHJIEPZV.js';
|
|
|
4
4
|
import { KeyChip, highlightMatch } from './chunk-FYTIJM2T.js';
|
|
5
5
|
import { Skeleton } from './chunk-TEUQWOWZ.js';
|
|
6
6
|
import { Input } from './chunk-ZI5G5RS7.js';
|
|
7
|
-
import { announce } from './chunk-RSAQOKH3.js';
|
|
8
7
|
import { useMediaMatch } from './chunk-RTPQDNW3.js';
|
|
9
8
|
import { focusables, isComposing } from './chunk-H5XTJ7GJ.js';
|
|
10
9
|
import { returnFocus } from './chunk-NUZHC6MM.js';
|
|
10
|
+
import { announce } from './chunk-RSAQOKH3.js';
|
|
11
11
|
import { VisuallyHidden } from './chunk-BZFWDIV6.js';
|
|
12
12
|
import { cx } from './chunk-ODEQTPFM.js';
|
|
13
13
|
import './Switcher-K3EPA2RB.css';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Tag } from './chunk-KYIAFNU7.js';
|
|
2
2
|
import { useListbox } from './chunk-7KHM2FZH.js';
|
|
3
|
-
import { announce } from './chunk-RSAQOKH3.js';
|
|
4
3
|
import { isComposing } from './chunk-H5XTJ7GJ.js';
|
|
5
4
|
import { IconButton } from './chunk-LACA4JGC.js';
|
|
6
5
|
import { useFocusModality } from './chunk-NUZHC6MM.js';
|
|
6
|
+
import { announce } from './chunk-RSAQOKH3.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,5 +1,5 @@
|
|
|
1
|
-
import { announce } from './chunk-RSAQOKH3.js';
|
|
2
1
|
import { IconButton } from './chunk-LACA4JGC.js';
|
|
2
|
+
import { announce } from './chunk-RSAQOKH3.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,6 +1,6 @@
|
|
|
1
1
|
import { PageHeader } from './chunk-HOXGBLEY.js';
|
|
2
|
-
import { DateTimePicker } from './chunk-UFXLNC2N.js';
|
|
3
2
|
import { DataTable } from './chunk-GI3S6RMM.js';
|
|
3
|
+
import { DateTimePicker } from './chunk-UFXLNC2N.js';
|
|
4
4
|
import { useListbox, useOptionKeys } from './chunk-7KHM2FZH.js';
|
|
5
5
|
import { Popover } from './chunk-KHJIEPZV.js';
|
|
6
6
|
import { Toolbar } from './chunk-NR4CPM4T.js';
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { TagGroup } from './chunk-O2EGEONV.js';
|
|
2
|
-
import { Tag } from './chunk-KYIAFNU7.js';
|
|
3
2
|
import { CursorFlag } from './chunk-3BYIWOTV.js';
|
|
4
3
|
import { presenceHueClass } from './chunk-I6POAB4V.js';
|
|
4
|
+
import { Tag } from './chunk-KYIAFNU7.js';
|
|
5
5
|
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';
|
|
9
10
|
import { StatusDot } from './chunk-WIATRXEJ.js';
|
|
10
11
|
import { Tooltip } from './chunk-I33UIUZD.js';
|
|
11
|
-
import { Avatar } from './chunk-PZKHBB7D.js';
|
|
12
12
|
import { Menu } from './chunk-PCI7ZJ6Z.js';
|
|
13
13
|
import { isComposing } from './chunk-H5XTJ7GJ.js';
|
|
14
14
|
import { Button } from './chunk-OG6CL3EB.js';
|
|
File without changes
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { useRoving, tabStop } from './chunk-EGMQURBR.js';
|
|
2
1
|
import { Avatar } from './chunk-PZKHBB7D.js';
|
|
2
|
+
import { useRoving, tabStop } from './chunk-EGMQURBR.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,8 +1,8 @@
|
|
|
1
1
|
import { FormField, Textarea, Input } from './chunk-ZI5G5RS7.js';
|
|
2
2
|
import { Kbd } from './chunk-SMBKXWML.js';
|
|
3
|
-
import { announce } from './chunk-RSAQOKH3.js';
|
|
4
3
|
import { isComposing } from './chunk-H5XTJ7GJ.js';
|
|
5
4
|
import { IconButton } from './chunk-LACA4JGC.js';
|
|
5
|
+
import { announce } from './chunk-RSAQOKH3.js';
|
|
6
6
|
import './ListInput-O7LJKOIG.css';
|
|
7
7
|
import { useState, useRef, useLayoutEffect } from 'react';
|
|
8
8
|
import { ArrowUpGlyph, ArrowDownGlyph, XGlyph, PlusGlyph } from '@crewlethq/icons/glyphs';
|