Skip to content

Commit 59020c8

Browse files
committed
2 parents d3fa3a5 + 671c5cd commit 59020c8

File tree

16 files changed

+296
-39
lines changed

16 files changed

+296
-39
lines changed

.github/workflows/tests-yarn-e2e.yml

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252
timeout-minutes: 2
5353
working-directory: ${{ env.FRONTEND_MONOREPO_DIR }}
5454
env:
55-
NODE_ENV: production
55+
NODE_ENV: development
5656
BUILD_NO_MINIMIZATION: true
5757
run: |
5858
set -xeuo pipefail
@@ -70,14 +70,27 @@ jobs:
7070
working-directory: ${{ env.FRONTEND_MONOREPO_DIR }}
7171
env:
7272
HEADLESS: true
73+
COVERAGE: true
7374
run: |
7475
yarn lsf:e2e:ci
7576
77+
- name: Upload coverage to Codecov
78+
if: ${{ always() && github.event.pull_request.head.repo.fork == false && github.event.pull_request.user.login != 'dependabot[bot]' }}
79+
uses: codecov/codecov-action@v5
80+
with:
81+
name: lsf-e2e
82+
directory: web/libs/editor/tests/coverage
83+
token: ${{ secrets.CODECOV_TOKEN }}
84+
verbose: true
85+
fail_ci_if_error: true
86+
7687
- uses: actions/upload-artifact@v4
7788
if: always()
7889
with:
7990
name: e2e output
80-
path: "web/libs/editor/tests/e2e/output"
91+
path: |
92+
web/libs/editor/tests/e2e/output
93+
web/libs/editor/tests/coverage
8194
8295
- name: Kill LSO server
8396
if: always()

.github/workflows/tests-yarn-integration.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
main:
1616
name: "yarn integration"
1717
runs-on: ubuntu-latest
18-
timeout-minutes: 20
18+
timeout-minutes: 30
1919
steps:
2020
- uses: hmarr/[email protected]
2121

label_studio/core/feature_flags/stale_feature_flags.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
'fflag_fix_all_lsdv_4971_async_reimport_09052023_short': True,
99
# Jan 16
1010
'fflag_feat_front_optic_767_annotator_project_multiselect_short': True,
11-
'fflag_fix_back_leap_612_explore_review_09042024_short': True,
1211
'fflag_fix_optic_214_extra_blank_dashboard_charts_short': True,
1312
'fflag_fix_optic_391_tasks_outside_low_agreement_project_counts_short': True,
1413
'fflag_feat_all_optic_520_annotator_report_short': True,

label_studio/feature_flags.json

Lines changed: 56 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3795,6 +3795,60 @@
37953795
"version": 3,
37963796
"deleted": false
37973797
},
3798+
"fflag_fix_back_plt_811_finished_task_number_01072025_short": {
3799+
"key": "fflag_fix_back_plt_811_finished_task_number_01072025_short",
3800+
"on": true,
3801+
"prerequisites": [],
3802+
"targets": [],
3803+
"contextTargets": [],
3804+
"rules": [],
3805+
"fallthrough": {
3806+
"variation": 0
3807+
},
3808+
"offVariation": 1,
3809+
"variations": [
3810+
true,
3811+
false
3812+
],
3813+
"clientSideAvailability": {
3814+
"usingMobileKey": false,
3815+
"usingEnvironmentId": false
3816+
},
3817+
"clientSide": false,
3818+
"salt": "7f13c327ad9e4ba9819c9a843b99ed4c",
3819+
"trackEvents": false,
3820+
"trackEventsFallthrough": false,
3821+
"debugEventsUntilDate": null,
3822+
"version": 3,
3823+
"deleted": false
3824+
},
3825+
"fflag_fix_back_plt_811_projects_pagination_01072025_short": {
3826+
"key": "fflag_fix_back_plt_811_projects_pagination_01072025_short",
3827+
"on": true,
3828+
"prerequisites": [],
3829+
"targets": [],
3830+
"contextTargets": [],
3831+
"rules": [],
3832+
"fallthrough": {
3833+
"variation": 0
3834+
},
3835+
"offVariation": 1,
3836+
"variations": [
3837+
true,
3838+
false
3839+
],
3840+
"clientSideAvailability": {
3841+
"usingMobileKey": false,
3842+
"usingEnvironmentId": false
3843+
},
3844+
"clientSide": false,
3845+
"salt": "9460cf1d97b343a9a1376d031d4a1a9d",
3846+
"trackEvents": false,
3847+
"trackEventsFallthrough": false,
3848+
"debugEventsUntilDate": null,
3849+
"version": 3,
3850+
"deleted": false
3851+
},
37983852
"fflag_fix_bros_95_drafts_from_other_users": {
37993853
"key": "fflag_fix_bros_95_drafts_from_other_users",
38003854
"on": true,
@@ -4432,7 +4486,7 @@
44324486
},
44334487
"fflag_front_feat_bros_87_pixel_wise_16062025_short": {
44344488
"key": "fflag_front_feat_bros_87_pixel_wise_16062025_short",
4435-
"on": false,
4489+
"on": true,
44364490
"prerequisites": [],
44374491
"targets": [],
44384492
"contextTargets": [],
@@ -4454,7 +4508,7 @@
44544508
"trackEvents": false,
44554509
"trackEventsFallthrough": false,
44564510
"debugEventsUntilDate": null,
4457-
"version": 2,
4511+
"version": 4,
44584512
"deleted": false
44594513
},
44604514
"fflag_optic_all_optic_1938_storage_proxy": {

web/apps/labelstudio/src/pages/CreateProject/Import/Import.scss

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
line-height: 1em;
5151
}
5252

53-
& > header {
53+
&>header {
5454
font-size: 14px;
5555
padding: 24px 32px;
5656
background: var(--color-neutral-background);
@@ -75,7 +75,8 @@
7575
box-shadow: inset 0 1px 2px rgba(var(--color-neutral-shadow-raw) / 12%);
7676
transition: all 150ms ease-out;
7777

78-
&:focus, &:focus-visible {
78+
&:focus,
79+
&:focus-visible {
7980
border-color: var(--color-neutral-border-bolder);
8081
outline: none;
8182
box-shadow: 0 0 0 4px var(--color-primary-focus-outline);
@@ -95,7 +96,7 @@
9596
}
9697
}
9798

98-
& + span {
99+
&+span {
99100
color: var(--color-neutral-content-subtler);
100101
}
101102
}
@@ -105,7 +106,7 @@
105106
font-weight: 500;
106107
}
107108

108-
& > main {
109+
&>main {
109110
@include custom-scrollbar;
110111

111112
flex: 1;
@@ -153,14 +154,14 @@
153154
width: 100%;
154155
height: 100%;
155156
z-index: 1;
156-
background: rgb(255 255 255 / 50%);
157+
background: rgb(255 255 255 / 50%);
157158
}
158159

159160
&__code-wrapper {
160161
padding: 0 var(--spacing-base) var(--spacing-base);
161162
height: calc(100% - var(--spacing-tight));
162163

163-
& > div {
164+
&>div {
164165
@include custom-scrollbar;
165166

166167
height: 100%;
@@ -210,7 +211,8 @@
210211
&_highlighted {
211212
position: relative;
212213
z-index: 12;
213-
background: var(--color-neutral-background);
214+
border: 1px solid var(--color-neutral-border);
215+
background: var(--color-neutral-surface);
214216
padding: 4px 8px;
215217
border-radius: 8px;
216218
}
@@ -222,7 +224,7 @@
222224
}
223225

224226
&__csv-splash {
225-
background: var(--color-neutral-surface);
227+
background: rgb(var(--color-neutral-background-raw) / 90%);
226228
position: absolute;
227229
inset: 0;
228230
z-index: 10;
@@ -249,7 +251,7 @@
249251
}
250252

251253
&::before {
252-
content:"";
254+
content: "";
253255
transition: all 300ms ease-out;
254256
position: absolute;
255257
inset: 16px 48px 48px;
@@ -301,7 +303,7 @@
301303
border-radius: var(--corner-radius-small);
302304
transition: all 150ms ease-out;
303305

304-
& > *:not(:first-child) {
306+
&>*:not(:first-child) {
305307
margin-top: 32px;
306308
}
307309

@@ -322,7 +324,7 @@
322324
dt {
323325
color: var(--color-neutral-content);
324326
}
325-
327+
326328
dd {
327329
font-weight: normal;
328330
}
@@ -393,4 +395,4 @@
393395
100% {
394396
background-position: 37px 0;
395397
}
396-
}
398+
}

web/libs/core/src/lib/utils/feature-flags/ff.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import { FF_BITMASK, FF_SAMPLE_DATASETS } from "./flags";
2-
31
const FEATURE_FLAGS = window.APP_SETTINGS?.feature_flags || {};
42

53
// TODO: remove the override + if statement once LSE and LSO start building
@@ -11,8 +9,6 @@ const FLAGS_OVERRIDE: Record<string, boolean> = {
119
//
1210
// Add your flags overrides as following:
1311
// [FF_FLAG_NAME]: boolean
14-
[FF_SAMPLE_DATASETS]: true,
15-
[FF_BITMASK]: true,
1612
};
1713

1814
/**

web/libs/editor/.babelrc

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,13 @@
2323
"@babel/plugin-proposal-private-methods",
2424
"@babel/plugin-proposal-optional-chaining",
2525
"@babel/plugin-proposal-nullish-coalescing-operator"
26-
]
26+
],
27+
"env": {
28+
"development": {
29+
"plugins": ["babel-plugin-istanbul"]
30+
},
31+
"test": {
32+
"plugins": ["babel-plugin-istanbul"]
33+
}
34+
}
2735
}

web/libs/editor/package.json

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"@thi.ng/rle-pack": "^3.1.30",
1111
"antd": "^4.3.3",
1212
"chroma-js": "^2.1.1",
13+
"colormap": "^2.3.2",
1314
"d3": "^5.16.0",
1415
"date-fns": "^2.20.1",
1516
"emoji-regex": "^7.0.3",
@@ -39,9 +40,11 @@
3940
"sanitize-html": "^2.12.1",
4041
"strman": "^2.0.1",
4142
"wavesurfer.js": "^6.0.1",
42-
"xpath-range": "^1.1.1",
43-
"colormap": "^2.3.2",
44-
"webfft": "^1.0.3"
43+
"webfft": "^1.0.3",
44+
"xpath-range": "^1.1.1"
4545
},
46-
"main": "src/index.js"
46+
"main": "src/index.js",
47+
"devDependencies": {
48+
"babel-plugin-istanbul": "^7.0.0"
49+
}
4750
}

web/libs/editor/src/components/Settings/Settings.jsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import * as TagSettings from "./TagSettings";
1313
import { IconClose } from "@humansignal/icons";
1414
import { Checkbox, Toggle } from "@humansignal/ui";
1515
import { FF_DEV_3873, isFF } from "../../utils/feature-flags";
16+
import { ff } from "@humansignal/core";
1617

1718
const HotkeysDescription = () => {
1819
const columns = [
@@ -64,7 +65,10 @@ const HotkeysDescription = () => {
6465

6566
const newUI = isFF(FF_DEV_3873) ? { newUI: true } : {};
6667

67-
const editorSettingsKeys = Object.keys(EditorSettings);
68+
const editorSettingsKeys = Object.keys(EditorSettings).filter((key) => {
69+
const flag = EditorSettings[key].flag;
70+
return flag ? ff.isActive(flag) : true;
71+
});
6872

6973
if (isFF(FF_DEV_3873)) {
7074
const enableTooltipsIndex = editorSettingsKeys.findIndex((key) => key === "enableTooltips");

web/libs/editor/src/core/settings/editorsettings.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import { FF_BITMASK } from "@humansignal/core/lib/utils/feature-flags";
2+
13
export default {
24
enableHotkeys: {
35
newUI: {
@@ -93,5 +95,6 @@ export default {
9395
description: "Enable inverted zoom direction",
9496
onChangeEvent: "toggleInvertedZoom",
9597
defaultValue: false,
98+
flag: FF_BITMASK,
9699
},
97100
};

0 commit comments

Comments
 (0)