Skip to content

feat: OPTIC-1733: Standardize Dropdown Components Using LSE selector #7257

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 273 commits into from
Apr 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
273 commits
Select commit Hold shift + click to select a range
67f46c4
lint cleanup
yyassi-heartex Mar 4, 2025
8f0245b
Merge remote-tracking branch 'origin/develop' into fb-optic-1748/ui-i…
yyassi-heartex Mar 4, 2025
2983fb2
fixing AnnotationsCarousel tests
bmartel Mar 4, 2025
682f90d
cleaning up a situation where its possible for user to be null when w…
yyassi-heartex Mar 5, 2025
8ddd48a
Merge remote-tracking branch 'origin/develop' into fb-optic-1748/ui-i…
yyassi-heartex Mar 5, 2025
5eadf84
chore: OPTIC-1778: Unify and prettify icons
yyassi-heartex Mar 5, 2025
02e66a3
slight tweaks
yyassi-heartex Mar 5, 2025
d152e99
Merge branch 'develop' into 'fb-optic-1748/ui-improvements'
robot-ci-heartex Mar 6, 2025
a4f47f0
Sync Follow Merge dependencies
robot-ci-heartex Mar 6, 2025
d3a70e0
Sync Follow Merge dependencies
robot-ci-heartex Mar 6, 2025
eb900ec
test and lint cleanup
yyassi-heartex Mar 6, 2025
0c800a6
Merge branch 'fb-optic-1748/ui-improvements' of github.com:heartexlab…
yyassi-heartex Mar 6, 2025
1c53cd9
fixing an issue that makes it impossible for a user to update the fields
yyassi-heartex Mar 6, 2025
291f6e3
Merge remote-tracking branch 'origin/develop' into fb-optic-1748/ui-i…
yyassi-heartex Mar 6, 2025
233340c
Revert "Merge remote-tracking branch 'origin/develop' into fb-optic-1…
yyassi-heartex Mar 6, 2025
5ef00d2
Reapply "Merge remote-tracking branch 'origin/develop' into fb-optic-…
yyassi-heartex Mar 6, 2025
2bd247c
fixing merge
yyassi-heartex Mar 6, 2025
f59c735
cleaning up imports
yyassi-heartex Mar 6, 2025
38b22b8
Merge branch 'fb-optic-1748/ui-improvements' into fb-optic-1778/icons
yyassi-heartex Mar 6, 2025
981c7be
addressing a different in icon usage
yyassi-heartex Mar 6, 2025
f9ddf2b
icon cleanup
yyassi-heartex Mar 6, 2025
57ad67a
import upload uptton sizing
yyassi-heartex Mar 6, 2025
7cac18d
Sync Follow Merge dependencies
robot-ci-heartex Mar 7, 2025
66acccf
Update web/libs/core/src/pages/AccountSettings/sections/PersonalInfo.tsx
yyassi-heartex Mar 7, 2025
e538921
Update web/libs/ui/src/lib/Userpic/Userpic.tsx
yyassi-heartex Mar 7, 2025
f46cec4
Update web/libs/ui/src/lib/Userpic/Userpic.tsx
yyassi-heartex Mar 7, 2025
d252491
unfiying icons
yyassi-heartex Mar 7, 2025
a365100
fixing icon
yyassi-heartex Mar 7, 2025
b06aaa8
Merge branch 'develop' into fb-optic-1748/ui-improvements
yyassi-heartex Mar 7, 2025
93aa9f4
cleaned out unused files + fixed tooltip breakage due to quick toggle…
yyassi-heartex Mar 7, 2025
1a2c954
lint cleanup
yyassi-heartex Mar 7, 2025
6bf7829
Sync Follow Merge dependencies
robot-ci-heartex Mar 10, 2025
6e1f4d5
we dont need this icon here
yyassi-heartex Mar 10, 2025
18637da
Merge branch 'fb-optic-1748/ui-improvements' into fb-optic-1778/icons
yyassi-heartex Mar 10, 2025
9c9d4a8
Merge branch 'develop' into fb-optic-1778/icons
yyassi-heartex Mar 10, 2025
bfae5e3
Merge remote-tracking branch 'origin/develop' into fb-optic-1778/icons
yyassi-heartex Mar 10, 2025
e93beed
icon updates
yyassi-heartex Mar 10, 2025
21c234f
lint cleanup
yyassi-heartex Mar 10, 2025
22deb13
icon cleanup
yyassi-heartex Mar 10, 2025
6035a0d
react-icons no longer used + cleanup
yyassi-heartex Mar 10, 2025
1246386
Merge remote-tracking branch 'origin/develop' into fb-optic-1778/icons
yyassi-heartex Mar 10, 2025
39c87c7
fixing icon import
yyassi-heartex Mar 10, 2025
5242a3c
Merge branch 'develop' into fb-optic-1778/icons
yyassi-heartex Mar 11, 2025
8256be8
fixing e2e + integration tests
yyassi-heartex Mar 11, 2025
baa0986
Merge branch 'develop' into 'fb-optic-1778/icons'
yyassi-heartex Mar 11, 2025
72b3c27
slight tweaks
yyassi-heartex Mar 11, 2025
7690473
Merge branch 'fb-optic-1778/icons' of github.com:heartexlabs/label-st…
yyassi-heartex Mar 11, 2025
92a91d4
fixing an import
yyassi-heartex Mar 11, 2025
fb89c7e
lint cleanup
yyassi-heartex Mar 11, 2025
83ea702
unifiying LSE icons into ui library
yyassi-heartex Mar 11, 2025
4df1c10
adjusting Compare all annotations icon size
yyassi-heartex Mar 11, 2025
b4ce218
bigger button looks better
yyassi-heartex Mar 11, 2025
94f5b48
fix top bar icon sizing to match design intent
bmartel Mar 13, 2025
2c4828f
comment form icon styles
bmartel Mar 13, 2025
0a04b77
don't increase weight of icons by forcing a stroke to paths of button…
bmartel Mar 13, 2025
3cb6e56
fix eye icon sizing in relations and regions panel
bmartel Mar 13, 2025
b553782
linting
bmartel Mar 13, 2025
17e2905
Merge remote-tracking branch 'origin/develop' into fb-optic-1778/icons
bmartel Mar 14, 2025
7143241
fix slider icon import
bmartel Mar 14, 2025
d77f9c8
add new icons to replace MD Icons in app
bmartel Mar 17, 2025
8cda9a2
added sync disabled icon
bmartel Mar 17, 2025
1379d1a
updating bell.svg
yyassi-heartex Mar 17, 2025
9a58d0a
Merge branch 'fb-optic-1778/icons' of github.com:heartexlabs/label-st…
yyassi-heartex Mar 17, 2025
31a6a2e
remove react-icons
bmartel Mar 17, 2025
deb3d73
Merge branch 'fb-optic-1778/icons' of github.com:HumanSignal/label-st…
bmartel Mar 17, 2025
1d13a22
switching to unified select
yyassi-heartex Mar 17, 2025
d5ad4c1
feat: OPTIC-1733: Standardize Dropdown Components Using LSE selector
yyassi-heartex Mar 17, 2025
1578ba2
switching to use ui select
yyassi-heartex Mar 17, 2025
40cd7ed
standardized datamanger filer select
yyassi-heartex Mar 17, 2025
2396595
Merge branch 'develop' into 'fb-optic-1778/icons'
robot-ci-heartex Mar 18, 2025
ab1badd
Sync Follow Merge dependencies
robot-ci-heartex Mar 18, 2025
4268266
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Mar 18, 2025
cf005f7
now using new file upload.svg
yyassi-heartex Mar 18, 2025
a9d8b6d
Merge remote-tracking branch 'origin/develop' into fb-optic-1778/icons
yyassi-heartex Mar 18, 2025
9635e1c
resolving merge issue + restoring refresh icon
yyassi-heartex Mar 18, 2025
927f3c1
lint cleanup
yyassi-heartex Mar 18, 2025
b077225
fixing disabled flag
yyassi-heartex Mar 18, 2025
46855d7
overhauling select to movetowards combobox mehavior
yyassi-heartex Mar 18, 2025
d76d2f0
Merge branch 'fb-optic-1778/icons' into fb-optic-1733/select
yyassi-heartex Mar 18, 2025
1992fef
prepping for cmdk
yyassi-heartex Mar 18, 2025
11aa974
Merge branch 'develop' into 'fb-optic-1778/icons'
robot-ci-heartex Mar 19, 2025
60c8a1b
Sync Follow Merge dependencies
robot-ci-heartex Mar 19, 2025
0c1655e
updating modal close icon size
yyassi-heartex Mar 19, 2025
0eaa9d8
Merge branch 'fb-optic-1778/icons' into fb-optic-1733/select
yyassi-heartex Mar 19, 2025
adb3982
LSO now fully Select unified
yyassi-heartex Mar 19, 2025
9eedef8
cleaning up unused files
yyassi-heartex Mar 19, 2025
63dfbbf
lint cleanup
yyassi-heartex Mar 19, 2025
cc83df5
fixing a DateTime select issue
yyassi-heartex Mar 19, 2025
e3aa8a1
testid being added to select
yyassi-heartex Mar 19, 2025
48faa2d
fixing selection
yyassi-heartex Mar 19, 2025
735c631
cleaning up dependencies
yyassi-heartex Mar 19, 2025
f6d7af5
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Mar 20, 2025
5c65ae2
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Mar 21, 2025
62a381d
stabilizing merge
yyassi-heartex Mar 21, 2025
a9d92af
we now have working DM filters with search
yyassi-heartex Mar 22, 2025
60e3a45
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Mar 24, 2025
a753d61
select is functional with a way to deal with inline selects
yyassi-heartex Mar 24, 2025
92a051c
lint cleanup
yyassi-heartex Mar 24, 2025
3e35633
fixed select behavior
yyassi-heartex Mar 24, 2025
6532ff2
making sure we have a ref pointing to an element that populates a par…
yyassi-heartex Mar 24, 2025
b905dd8
lint cleanup
yyassi-heartex Mar 24, 2025
0ac9431
slight cleanup
yyassi-heartex Mar 25, 2025
5d045f8
lint cleanup
yyassi-heartex Mar 25, 2025
e8228df
select cleanup + label support
yyassi-heartex Mar 25, 2025
087f47a
slight visual tweaks for labeled selects, adding test ids and visual…
yyassi-heartex Mar 25, 2025
4c073da
lint cleanup
yyassi-heartex Mar 25, 2025
e2578ea
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Mar 25, 2025
26a28bb
supporting testid prop
yyassi-heartex Mar 25, 2025
fd558b7
tweaking story and lint cleanup
yyassi-heartex Mar 25, 2025
4bc4a23
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Mar 26, 2025
7cd1a09
modifying visuals and behavior
yyassi-heartex Mar 26, 2025
42ea8ce
select is in a stable spot
yyassi-heartex Mar 26, 2025
f6c129c
filter rendering
yyassi-heartex Mar 27, 2025
5acca8b
fixed an issue boolean values
yyassi-heartex Mar 27, 2025
f80f666
further tweaks
yyassi-heartex Mar 27, 2025
a40e73e
multi select parent can now toggle children on click
yyassi-heartex Mar 27, 2025
8c78823
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Mar 27, 2025
f448dfa
Select trigger visuals
yyassi-heartex Mar 27, 2025
beac67d
more visual tweaks
yyassi-heartex Mar 27, 2025
059c120
test id support
yyassi-heartex Mar 27, 2025
8bff94b
fixing e2e test
yyassi-heartex Mar 27, 2025
9a6379e
fixing unit test
yyassi-heartex Mar 27, 2025
f9e3482
fixing unit test
yyassi-heartex Mar 27, 2025
58fddaa
slight tweak to trigger props and select className
yyassi-heartex Mar 27, 2025
b0e46ac
fixing unit tests
yyassi-heartex Mar 27, 2025
db7917d
fixing tests
yyassi-heartex Mar 28, 2025
c11caf3
visual fixes
yyassi-heartex Mar 28, 2025
40c8ccc
updating e2e
yyassi-heartex Mar 28, 2025
b07d863
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Mar 28, 2025
9613b2d
tweaking e2e test
yyassi-heartex Mar 28, 2025
f967686
updating option visuals + e2e test fix
yyassi-heartex Mar 28, 2025
60a2fb0
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Mar 28, 2025
9be3faa
changing how we test for select option
yyassi-heartex Mar 31, 2025
252f090
Merge branch 'develop' into 'fb-optic-1733/select'
yyassi-heartex Mar 31, 2025
b87b373
moving along
yyassi-heartex Mar 31, 2025
65801d9
Merge branch 'fb-optic-1733/select' of github.com:heartexlabs/label-s…
yyassi-heartex Mar 31, 2025
92007d9
this should result in passing e2e
yyassi-heartex Mar 31, 2025
26530fd
Update web/apps/labelstudio/src/pages/Settings/AnnotationSettings/Mod…
yyassi-heartex Mar 31, 2025
6db22f2
Update web/apps/labelstudio/src/pages/Settings/MachineLearningSetting…
yyassi-heartex Mar 31, 2025
cf0eb26
Update web/apps/labelstudio/src/pages/Settings/StorageSettings/Storag…
yyassi-heartex Mar 31, 2025
73613ad
Update web/libs/datamanager/src/components/CellViews/Annotators/Annot…
yyassi-heartex Mar 31, 2025
9bec6e4
lint cleanup
yyassi-heartex Mar 31, 2025
20ca14c
fix due to replacement
yyassi-heartex Mar 31, 2025
6fcac1e
clearing out tests that are irrelevant because it is on old region it…
yyassi-heartex Mar 31, 2025
cb707fb
adding data-value attribute to select trigger
yyassi-heartex Mar 31, 2025
ee11cce
cleaning up usage and standardizing visuals and behavior
yyassi-heartex Mar 31, 2025
7e56f18
the DM select component is only used in DM Pagination which is not used
yyassi-heartex Mar 31, 2025
49dc2fb
cleaning up
yyassi-heartex Mar 31, 2025
dd9ffbe
updating paragraphs test
yyassi-heartex Mar 31, 2025
f87d4e4
fixing the selector
yyassi-heartex Mar 31, 2025
de322e5
updating paragraphs test
yyassi-heartex Mar 31, 2025
0a63493
Merge branch 'develop' into 'fb-optic-1733/select'
robot-ci-heartex Apr 1, 2025
c03a446
Sync Follow Merge dependencies
robot-ci-heartex Apr 1, 2025
da1d39f
applying tweak for visuals for initial feedback + making testing easier
yyassi-heartex Apr 1, 2025
7f463d0
fixing e2e test
yyassi-heartex Apr 1, 2025
f18261e
fixing more tests
yyassi-heartex Apr 1, 2025
540c4f5
experiment with claude
luarmr Apr 1, 2025
0e2b1c4
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 1, 2025
8d2c065
lint cleanup
yyassi-heartex Apr 1, 2025
6eafb7d
cleanup
yyassi-heartex Apr 1, 2025
d38aa48
cleanup
yyassi-heartex Apr 1, 2025
456df11
cleaning up select input
yyassi-heartex Apr 2, 2025
2a6d389
cleaning up selects
yyassi-heartex Apr 2, 2025
214ddfb
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 2, 2025
ca46f06
now supporting sizes
yyassi-heartex Apr 2, 2025
3b2ed44
getting model version selector working in LSO
yyassi-heartex Apr 2, 2025
306363e
updating testid
yyassi-heartex Apr 2, 2025
506bbf0
using hidden text input + updating test id for tests
yyassi-heartex Apr 2, 2025
ac28f63
we now dispatch the change event
yyassi-heartex Apr 2, 2025
11ddcf2
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 2, 2025
abb7edb
cleaning up placeholder visibility
yyassi-heartex Apr 2, 2025
9247cb5
fixing a select issue where it flows past the edge in some situations
yyassi-heartex Apr 3, 2025
77172d5
select supports custom filter, searchInput on change and datamanager …
yyassi-heartex Apr 3, 2025
9ef32f4
updating select visuals
yyassi-heartex Apr 3, 2025
67ac8b5
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 7, 2025
5d2cd20
lint cleanup
yyassi-heartex Apr 7, 2025
318107b
applying feedback + lint cleanup
yyassi-heartex Apr 7, 2025
1d6f155
making sure we wait a little before we do the next step to avoid fail…
yyassi-heartex Apr 7, 2025
01a13d4
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 7, 2025
804d1fe
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 8, 2025
7e2a672
updated visuals
yyassi-heartex Apr 8, 2025
6dd51d2
select forcing a change event
yyassi-heartex Apr 8, 2025
590a562
altering the hidden select
yyassi-heartex Apr 8, 2025
5ed8ec7
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 8, 2025
8cf7c51
fixing filterRow
yyassi-heartex Apr 8, 2025
3327fb3
lint cleanup
yyassi-heartex Apr 8, 2025
e8092e6
fixing date-time test to match updated select
yyassi-heartex Apr 9, 2025
fdfb9c6
fixing filter.test
yyassi-heartex Apr 9, 2025
6e16125
fixing filter.test
yyassi-heartex Apr 9, 2025
00a7c5a
lint cleanup
yyassi-heartex Apr 9, 2025
6068e62
forcing an update
yyassi-heartex Apr 9, 2025
d2bff65
forcing an update
yyassi-heartex Apr 9, 2025
a122858
resizeObservable
yyassi-heartex Apr 9, 2025
3217c6e
filter test fix
yyassi-heartex Apr 9, 2025
c6b56b9
we nee to make sure on change fires on change - not only on event dis…
yyassi-heartex Apr 9, 2025
cb31bae
updating filter test
yyassi-heartex Apr 9, 2025
0decb20
visual tweaks to select
yyassi-heartex Apr 9, 2025
b5c415d
event handling should be better now
yyassi-heartex Apr 9, 2025
ed159cd
addressing weirdness with datamanger selects
yyassi-heartex Apr 9, 2025
f25694d
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 9, 2025
645f486
is this redundant?
yyassi-heartex Apr 9, 2025
5ff2c70
Merge branch 'develop' into 'fb-optic-1733/select'
yyassi-heartex Apr 10, 2025
240efe6
now supporting selected value render
yyassi-heartex Apr 10, 2025
adcc0cd
darkmode support
yyassi-heartex Apr 10, 2025
c29d50b
header support
yyassi-heartex Apr 10, 2025
87fe473
Merge branch 'develop' into fb-optic-1733/select
yyassi-heartex Apr 10, 2025
15e56e3
fixing merge
yyassi-heartex Apr 10, 2025
d179551
adding test ids
yyassi-heartex Apr 10, 2025
eaebab8
trigger test id
yyassi-heartex Apr 10, 2025
10fe3ef
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 11, 2025
6876db9
reverting initial changes - trying again
yyassi-heartex Apr 11, 2025
3560c54
author filter is now multi select as intially intended
yyassi-heartex Apr 14, 2025
50418a2
paragraphs tests now succesful
yyassi-heartex Apr 14, 2025
e8ee289
making sure first option is selected
yyassi-heartex Apr 14, 2025
84bc3aa
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 14, 2025
33ac8a0
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 14, 2025
0b471a8
tweaking display for feature parity
yyassi-heartex Apr 14, 2025
3a1d028
lint cleanup
yyassi-heartex Apr 14, 2025
311ecdd
Merge branch 'develop' into 'fb-optic-1733/select'
robot-ci-heartex Apr 15, 2025
c44f4d9
Sync Follow Merge dependencies
robot-ci-heartex Apr 15, 2025
aa04e55
minor tweak to preselect first option if no placeholder provided
yyassi-heartex Apr 15, 2025
5e8351d
lint cleanup
yyassi-heartex Apr 15, 2025
88331d6
updating focus visual
yyassi-heartex Apr 15, 2025
5c1573d
undoing defaulting to first option as it breaks behavior in other spots
yyassi-heartex Apr 15, 2025
fd02250
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 15, 2025
99b5f34
cleaning up icons
yyassi-heartex Apr 15, 2025
0e12112
using corrected search icon
yyassi-heartex Apr 15, 2025
cc707ce
lint cleanup
yyassi-heartex Apr 15, 2025
48b6593
slight tweak to the popover content so it has a max-width of availabl…
yyassi-heartex Apr 15, 2025
53c1de8
lint cleanup
yyassi-heartex Apr 15, 2025
c0eda4b
slight visual tweaks based on feedback
yyassi-heartex Apr 15, 2025
46fbffa
Update web/libs/datamanager/src/components/Filters/FilterLine/FilterL…
yyassi-heartex Apr 16, 2025
200bec9
applying changes based on feedback
yyassi-heartex Apr 16, 2025
e399ef4
Merge branch 'develop' into 'fb-optic-1733/select'
robot-ci-heartex Apr 17, 2025
6d49896
Sync Follow Merge dependencies
robot-ci-heartex Apr 17, 2025
6dbf4ea
Merge branch 'develop' into 'fb-optic-1733/select'
yyassi-heartex Apr 17, 2025
6fa519c
tweaking searching group container for Select + removing radix-ui select
yyassi-heartex Apr 17, 2025
559d8ca
Merge branch 'develop' into 'fb-optic-1733/select'
robot-ci-heartex Apr 18, 2025
dafc38c
Sync Follow Merge dependencies
robot-ci-heartex Apr 18, 2025
86bf9a3
Update web/libs/ui/src/lib/select/select.tsx
yyassi-heartex Apr 22, 2025
1721ca5
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 22, 2025
b579339
fixing issue detected in QA
yyassi-heartex Apr 22, 2025
048a6b7
Update web/libs/ui/src/lib/select/select.tsx
yyassi-heartex Apr 22, 2025
7494a71
lint cleanup
yyassi-heartex Apr 22, 2025
03ae14a
Merge branch 'fb-optic-1733/select' of github.com:heartexlabs/label-s…
yyassi-heartex Apr 22, 2025
aa06623
Merge branch 'develop' into 'fb-optic-1733/select'
yyassi-heartex Apr 22, 2025
6a4779d
making sure we update the story
yyassi-heartex Apr 22, 2025
ae83425
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
bmartel Apr 22, 2025
16c6f6e
taking leading-none out
yyassi-heartex Apr 22, 2025
41c0027
Merge remote-tracking branch 'origin/develop' into fb-optic-1733/select
yyassi-heartex Apr 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion label_studio/core/static/css/uikit.css
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ body {
display: block;
}
.field--wide > *:not(:first-child) {
display: block;
display: flex;
margin-top: 4px;
width: 100%;
box-sizing: border-box;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,7 @@ def predictions_to_annotations_form(user, project):
'name': 'model_version',
'label': 'Choose predictions',
'options': versions,
'value': first,
}
],
}
Expand All @@ -106,7 +107,7 @@ def predictions_to_annotations_form(user, project):
'dialog': {
'title': 'Create Annotations From Predictions',
'text': 'Create annotations from predictions using selected predictions set '
'for each selected task.'
'for each selected task. '
'Your account will be assigned as an owner to those annotations. ',
'type': 'confirm',
'form': predictions_to_annotations_form,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
.input-ls,
.select-ls,
.textarea-ls {
height: 40px;
min-height: 40px;
--input-size: 40px;

height: var(--input-size);
min-height: var(--input-size);
background: var(--sand_0);
font-size: 16px;
line-height: 22px;
Expand Down
53 changes: 22 additions & 31 deletions web/apps/labelstudio/src/components/Form/Elements/Select/Select.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { useEffect, useMemo, useState } from "react";
import { cn } from "../../../../utils/bem";
import { FormField } from "../../FormField";
import { default as Label } from "../Label/Label";
import "./Select.scss";
import { Select as SelectUI } from "@humansignal/ui";

const SelectOption = ({ value, label, disabled = false, hidden = false, ...props }) => {
return (
Expand All @@ -24,16 +24,23 @@ const Select = ({ label, className, options, validate, required, skip, labelProp
return groupedOptions;
}, {});

const renderOptions = (option) => {
return <SelectOption {...(option.value ? { ...option, key: option.value } : { value: option, key: option })} />;
};

const classList = rootClass.mod({ ghost }).mix(className);

useEffect(() => {
setValue(initialValue);
}, [initialValue]);

const selectOptions = useMemo(() => {
return Object.keys(grouped).flatMap((group) => {
return group === "NoGroup"
? grouped[group]
: (grouped[group] = {
label: group,
children: grouped[group],
});
});
}, [grouped]);

const selectWrapper = (
<FormField
name={props.name}
Expand All @@ -46,32 +53,16 @@ const Select = ({ label, className, options, validate, required, skip, labelProp
>
{(ref) => {
return (
<div className={classList}>
<select
{...props}
value={value}
onChange={(e) => {
setValue(e.target.value);
props.onChange?.(e);
}}
ref={ref}
className={rootClass.elem("list")}
>
{props.placeholder && (!props.defaulValue || !props.value) && (
<option value="" disabled hidden>
{props.placeholder}
</option>
)}

{Object.keys(grouped).map((group) => {
return group === "NoGroup" ? (
grouped[group].map(renderOptions)
) : (
<optgroup label={group}>{grouped[group].map(renderOptions)}</optgroup>
);
})}
</select>
</div>
<SelectUI
{...props}
value={value}
onChange={(val) => {
setValue(val);
props.onChange?.(val);
}}
ref={ref}
options={selectOptions}
/>
);
}}
</FormField>
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
.pagination-ls {
height: 40px;
--pagination-height: 40px;

height: var(--pagination-height);
display: inline-flex;
align-items: center;

Expand Down Expand Up @@ -114,14 +116,12 @@

&__input {
width: 100px;
height: 38px;
height: var(--pagination-height);
text-align: center;
display: flex;
align-items: center;
justify-content: center;
border: 1px solid #D9D9D9;
border-top: none;
border-bottom: none;
background: var(--sand_100);
margin: 1px 0;

Expand Down
6 changes: 3 additions & 3 deletions web/apps/labelstudio/src/components/Pagination/Pagination.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import {
import { Block, Elem } from "../../utils/bem";
import { clamp, isDefined } from "../../utils/helpers";
import { useValueTracker } from "../Form/Utils";
import { Select } from "../Form/Elements";
import { Select } from "@humansignal/ui";
import "./Pagination.scss";
import { useUpdateEffect } from "../../utils/hooks";

Expand Down Expand Up @@ -263,8 +263,8 @@ export const Pagination: FC<PaginationProps> = forwardRef(
<Select
value={pageSize}
options={pageSizeOptions.map((v) => ({ label: `${v} per page`, value: v }))}
onChange={(e: any) => {
const newPageSize = Number.parseInt(e.target.value);
onChange={(val: string) => {
const newPageSize = Number.parseInt(val);

setPageSize(newPageSize);

Expand Down
84 changes: 49 additions & 35 deletions web/apps/labelstudio/src/pages/CreateProject/Config/Config.jsx
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import "codemirror/lib/codemirror.css";
import "codemirror/mode/xml/xml";
import React, { useEffect, useState } from "react";
import React, { useEffect, useMemo, useState } from "react";
import { UnControlled as CodeMirror } from "react-codemirror2";
import CM from "codemirror";
import "codemirror/addon/hint/show-hint";
import "codemirror/addon/hint/show-hint.css";

import { Button, ToggleItems } from "../../../components";
import { Form } from "../../../components/Form";
import { Form, Input } from "../../../components/Form";
import { useAPI } from "../../../providers/ApiProvider";
import { Block, cn, Elem } from "../../../utils/bem";
import { Palette } from "../../../utils/colors";
Expand All @@ -22,7 +22,7 @@ import "./codemirror.css";
import "./config-hint";
import tags from "./schema.json";
import { UnsavedChanges } from "./UnsavedChanges";
import { Checkbox } from "@humansignal/ui";
import { Checkbox, Select } from "@humansignal/ui";
import { toSnakeCase } from "strman";

const wizardClass = cn("wizard");
Expand Down Expand Up @@ -154,26 +154,25 @@ const ConfigureSettings = ({ template }) => {

switch (type) {
case Array:
onChange = (e) => {
onChange = (val) => {
if (typeof options.param === "function") {
options.param($tag, e.target.value);
options.param($tag, val);
} else {
$object.setAttribute(options.param, e.target.value);
$object.setAttribute(options.param, val);
}
template.render();
};
return (
<li key={key}>
<label>
{options.title}{" "}
<select className="border" value={value} onChange={onChange}>
{options.type.map((option) => (
<option key={option} value={option}>
{option}
</option>
))}
</select>
</label>
<Select
className="border"
value={value}
onChange={onChange}
options={options.type}
label={options.title}
isInline={true}
dataTestid={`select-trigger-${options.title.replace(/\s+/g, "-").replace(":", "").toLowerCase()}-${value}`}
/>
</li>
);
case Boolean:
Expand Down Expand Up @@ -247,9 +246,7 @@ const ConfigureColumn = ({ template, obj, columns }) => {
template.render();
};

const selectValue = (e) => {
const value = e.target.value;

const selectValue = (value) => {
if (value === "-") {
setIsManual(true);
return;
Expand Down Expand Up @@ -278,23 +275,40 @@ const ConfigureColumn = ({ template, obj, columns }) => {
}
};

const columnsList = useMemo(() => {
const cols = (columns ?? []).map((col) => {
return {
value: col,
label: col === DEFAULT_COLUMN ? "<imported file>" : `$${col}`,
};
});
if (!columns?.length) {
cols.push({ value, label: "<imported file>" });
}
cols.push({ value: "-", label: "<set manually>" });
return cols;
}, [columns, DEFAULT_COLUMN, value]);

return (
<p>
Use {obj.tagName.toLowerCase()}
{template.objects > 1 && ` for ${obj.getAttribute("name")}`}
{" from "}
{columns?.length > 0 && columns[0] !== DEFAULT_COLUMN && "field "}
<select className="border" onChange={selectValue} value={isManual ? "-" : value}>
{columns?.map((column) => (
<option key={column} value={column}>
{column === DEFAULT_COLUMN ? "<imported file>" : `$${column}`}
</option>
))}
{!columns?.length && <option value={value}>{"<imported file>"}</option>}
<option value="-">{"<set manually>"}</option>
</select>
{isManual && <input value={newValue} onChange={handleChange} onBlur={handleBlur} onKeyDown={handleKeyDown} />}
</p>
<>
<Select
onChange={selectValue}
value={isManual ? "-" : value}
options={columnsList}
isInline={true}
label={
<>
Use {obj.tagName.toLowerCase()}
{template.objects > 1 && ` for ${obj.getAttribute("name")}`}
{" from "}
{columns?.length > 0 && columns[0] !== DEFAULT_COLUMN && "field "}
</>
}
labelProps={{ className: "inline-flex" }}
dataTestid={`select-trigger-use-image-from-field-${isManual ? "-" : value}`}
/>
{isManual && <Input value={newValue} onChange={handleChange} onBlur={handleBlur} onKeyDown={handleKeyDown} />}
</>
);
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -309,6 +309,8 @@ $scroll-width: 5px;
margin-left: 8px;
padding: 4px 8px;
line-height: 1.4em;
height: 40px;
border-radius: var(--corner-radius-smaller);
}

select {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { EnterpriseBadge } from "@humansignal/ui";
import { EnterpriseBadge, Select } from "@humansignal/ui";
import React from "react";
import { useHistory } from "react-router";
import { Button, ToggleItems } from "../../components";
Expand All @@ -12,7 +12,7 @@ import "./CreateProject.scss";
import { ImportPage } from "./Import/Import";
import { useImportPage } from "./Import/useImportPage";
import { useDraftProject } from "./utils/useDraftProject";
import { Input, Select, TextArea } from "../../components/Form";
import { Input, TextArea } from "../../components/Form";
import { Caption } from "../../components/Caption/Caption";
import { FF_LSDV_E_297, isFF } from "../../utils/feature-flags";
import { createURL } from "../../components/HeidiTips/utils";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,9 +82,10 @@ export const ModelVersionSelector = ({
name={name}
disabled={!versions.length && !models.length}
value={version}
onChange={(e) => setVersion(e.target.value)}
onChange={setVersion}
options={[...models, ...versions]}
placeholder={loading ? "Loading ..." : placeholder ? placeholder : "Please select model or predictions"}
placeholder={placeholder || "Please select model or predictions"}
isInProgress={loading}
{...props}
/>
</div>
Expand Down
4 changes: 2 additions & 2 deletions web/apps/labelstudio/src/pages/Settings/GeneralSettings.jsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { EnterpriseBadge } from "@humansignal/ui";
import { EnterpriseBadge, Select } from "@humansignal/ui";
import { useCallback, useContext } from "react";
import { Button } from "../../components";
import { Form, Input, Select, TextArea } from "../../components/Form";
import { Form, Input, TextArea } from "../../components/Form";
import { RadioGroup } from "../../components/Form/Elements/RadioGroup/RadioGroup";
import { ProjectContext } from "../../providers/ProjectProvider";
import { Block, Elem } from "../../utils/bem";
Expand Down
Loading
Loading