@truedat/qx 7.5.11 → 7.5.13

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@truedat/qx",
3
- "version": "7.5.11",
3
+ "version": "7.5.13",
4
4
  "description": "Truedat Web Quality Experience package",
5
5
  "sideEffects": false,
6
6
  "module": "src/index.js",
@@ -51,34 +51,34 @@
51
51
  "devDependencies": {
52
52
  "@testing-library/dom": "^10.4.0",
53
53
  "@testing-library/jest-dom": "^6.6.3",
54
- "@testing-library/react": "^16.2.0",
54
+ "@testing-library/react": "^16.3.0",
55
55
  "@testing-library/user-event": "^14.6.1",
56
- "@truedat/test": "7.5.11",
56
+ "@truedat/test": "7.5.13",
57
57
  "identity-obj-proxy": "^3.0.0",
58
58
  "jest": "^29.7.0",
59
59
  "redux-saga-test-plan": "^4.0.6"
60
60
  },
61
61
  "dependencies": {
62
- "@apollo/client": "^3.13.5",
63
- "axios": "^1.8.4",
64
- "graphql": "^16.10.0",
62
+ "@apollo/client": "^3.13.8",
63
+ "axios": "^1.9.0",
64
+ "graphql": "^16.11.0",
65
65
  "is-hotkey": "^0.2.0",
66
66
  "is-url": "^1.2.4",
67
67
  "lodash": "^4.17.21",
68
- "match-sorter": "^8.0.0",
68
+ "match-sorter": "^8.0.1",
69
69
  "moment": "^2.30.1",
70
70
  "path-to-regexp": "^8.2.0",
71
71
  "prop-types": "^15.8.1",
72
- "query-string": "^7.1.2",
73
- "react": "^19.0.0",
72
+ "query-string": "^7.1.3",
73
+ "react": "^19.1.0",
74
74
  "react-csv": "^2.2.2",
75
- "react-dom": "^19.0.0",
75
+ "react-dom": "^19.1.0",
76
76
  "react-dropzone": "^14.3.8",
77
- "react-hook-form": "^7.54.2",
78
- "react-intl": "^7.1.10",
77
+ "react-hook-form": "^7.56.4",
78
+ "react-intl": "^7.1.11",
79
79
  "react-moment": "^1.1.3",
80
80
  "react-redux": "^9.2.0",
81
- "react-router": "^7.4.0",
81
+ "react-router": "^7.6.0",
82
82
  "redux": "^5.0.1",
83
83
  "redux-saga": "^1.3.0",
84
84
  "redux-saga-routines": "^3.2.3",
@@ -87,5 +87,5 @@
87
87
  "semantic-ui-react": "^3.0.0-beta.2",
88
88
  "swr": "^2.3.3"
89
89
  },
90
- "gitHead": "cbb92d5206752fe2add4195432b0401da17a0f23"
90
+ "gitHead": "83de799e59c0d13d4d52812070d232d24f0b5f82"
91
91
  }
@@ -79,7 +79,10 @@ describe("<ShapeSelector />", () => {
79
79
  const watcher = jest.fn();
80
80
 
81
81
  const rendered = render(
82
- <TestFormWrapper watcher={watcher} context={{ type: "boolean" }}>
82
+ <TestFormWrapper
83
+ watcher={watcher}
84
+ context={{ type: "boolean", defaultShape: "constant" }}
85
+ >
83
86
  <ShapeSelector />
84
87
  </TestFormWrapper>
85
88
  );
@@ -26,14 +26,16 @@ exports[`<Condition /> matches the latest snapshot 1`] = `
26
26
  >
27
27
  <div
28
28
  class="shape-selector-trigger"
29
- />
29
+ >
30
+ f(x)
31
+ </div>
30
32
  <div
31
33
  class="menu transition"
32
34
  >
33
35
  <div
34
36
  aria-checked="false"
35
- aria-selected="true"
36
- class="selected item"
37
+ aria-selected="false"
38
+ class="item"
37
39
  role="option"
38
40
  style="pointer-events: all;"
39
41
  >
@@ -53,9 +55,9 @@ exports[`<Condition /> matches the latest snapshot 1`] = `
53
55
  </div>
54
56
  </div>
55
57
  <div
56
- aria-checked="false"
57
- aria-selected="false"
58
- class="item"
58
+ aria-checked="true"
59
+ aria-selected="true"
60
+ class="active selected item"
59
61
  role="option"
60
62
  style="pointer-events: all;"
61
63
  >
@@ -76,6 +78,61 @@ exports[`<Condition /> matches the latest snapshot 1`] = `
76
78
  </div>
77
79
  </div>
78
80
  </div>
81
+ <div
82
+ class="accordion ui fluid no-margin"
83
+ >
84
+ <div
85
+ class="active title no-padding"
86
+ >
87
+ <div
88
+ class="flex-center"
89
+ >
90
+ <i
91
+ aria-hidden="true"
92
+ class="dropdown icon"
93
+ />
94
+ <div
95
+ aria-expanded="false"
96
+ class="ui fluid search selection dropdown"
97
+ role="combobox"
98
+ >
99
+ <input
100
+ aria-autocomplete="list"
101
+ autocomplete="off"
102
+ class="search"
103
+ tabindex="0"
104
+ type="text"
105
+ value=""
106
+ />
107
+ <div
108
+ aria-atomic="true"
109
+ aria-live="polite"
110
+ class="divider text"
111
+ role="alert"
112
+ >
113
+ functions.form.expression.function.placeholder
114
+ </div>
115
+ <i
116
+ aria-hidden="true"
117
+ class="dropdown icon"
118
+ />
119
+ <div
120
+ class="menu transition"
121
+ role="listbox"
122
+ >
123
+ <div
124
+ class="message"
125
+ >
126
+ No results found.
127
+ </div>
128
+ </div>
129
+ </div>
130
+ </div>
131
+ </div>
132
+ <div
133
+ class="content active no-padding"
134
+ />
135
+ </div>
79
136
  </div>
80
137
  </div>
81
138
  </div>
@@ -139,14 +196,16 @@ exports[`<Condition /> matches the latest snapshot 1`] = `
139
196
  >
140
197
  <div
141
198
  class="shape-selector-trigger"
142
- />
199
+ >
200
+ f(x)
201
+ </div>
143
202
  <div
144
203
  class="menu transition"
145
204
  >
146
205
  <div
147
206
  aria-checked="false"
148
- aria-selected="true"
149
- class="selected item"
207
+ aria-selected="false"
208
+ class="item"
150
209
  role="option"
151
210
  style="pointer-events: all;"
152
211
  >
@@ -166,9 +225,9 @@ exports[`<Condition /> matches the latest snapshot 1`] = `
166
225
  </div>
167
226
  </div>
168
227
  <div
169
- aria-checked="false"
170
- aria-selected="false"
171
- class="item"
228
+ aria-checked="true"
229
+ aria-selected="true"
230
+ class="active selected item"
172
231
  role="option"
173
232
  style="pointer-events: all;"
174
233
  >
@@ -189,6 +248,61 @@ exports[`<Condition /> matches the latest snapshot 1`] = `
189
248
  </div>
190
249
  </div>
191
250
  </div>
251
+ <div
252
+ class="accordion ui fluid no-margin"
253
+ >
254
+ <div
255
+ class="active title no-padding"
256
+ >
257
+ <div
258
+ class="flex-center"
259
+ >
260
+ <i
261
+ aria-hidden="true"
262
+ class="dropdown icon"
263
+ />
264
+ <div
265
+ aria-expanded="false"
266
+ class="ui fluid search selection dropdown"
267
+ role="combobox"
268
+ >
269
+ <input
270
+ aria-autocomplete="list"
271
+ autocomplete="off"
272
+ class="search"
273
+ tabindex="0"
274
+ type="text"
275
+ value=""
276
+ />
277
+ <div
278
+ aria-atomic="true"
279
+ aria-live="polite"
280
+ class="divider text"
281
+ role="alert"
282
+ >
283
+ functions.form.expression.function.placeholder
284
+ </div>
285
+ <i
286
+ aria-hidden="true"
287
+ class="dropdown icon"
288
+ />
289
+ <div
290
+ class="menu transition"
291
+ role="listbox"
292
+ >
293
+ <div
294
+ class="message"
295
+ >
296
+ No results found.
297
+ </div>
298
+ </div>
299
+ </div>
300
+ </div>
301
+ </div>
302
+ <div
303
+ class="content active no-padding"
304
+ />
305
+ </div>
192
306
  </div>
193
307
  </div>
194
308
  </div>
@@ -19,14 +19,16 @@ exports[`<Expression /> matches the latest snapshot 1`] = `
19
19
  >
20
20
  <div
21
21
  class="shape-selector-trigger"
22
- />
22
+ >
23
+ f(x)
24
+ </div>
23
25
  <div
24
26
  class="menu transition"
25
27
  >
26
28
  <div
27
29
  aria-checked="false"
28
- aria-selected="true"
29
- class="selected item"
30
+ aria-selected="false"
31
+ class="item"
30
32
  role="option"
31
33
  style="pointer-events: all;"
32
34
  >
@@ -46,9 +48,9 @@ exports[`<Expression /> matches the latest snapshot 1`] = `
46
48
  </div>
47
49
  </div>
48
50
  <div
49
- aria-checked="false"
50
- aria-selected="false"
51
- class="item"
51
+ aria-checked="true"
52
+ aria-selected="true"
53
+ class="active selected item"
52
54
  role="option"
53
55
  style="pointer-events: all;"
54
56
  >
@@ -69,6 +71,61 @@ exports[`<Expression /> matches the latest snapshot 1`] = `
69
71
  </div>
70
72
  </div>
71
73
  </div>
74
+ <div
75
+ class="accordion ui fluid no-margin"
76
+ >
77
+ <div
78
+ class="active title no-padding"
79
+ >
80
+ <div
81
+ class="flex-center"
82
+ >
83
+ <i
84
+ aria-hidden="true"
85
+ class="dropdown icon"
86
+ />
87
+ <div
88
+ aria-expanded="false"
89
+ class="ui fluid search selection dropdown"
90
+ role="combobox"
91
+ >
92
+ <input
93
+ aria-autocomplete="list"
94
+ autocomplete="off"
95
+ class="search"
96
+ tabindex="0"
97
+ type="text"
98
+ value=""
99
+ />
100
+ <div
101
+ aria-atomic="true"
102
+ aria-live="polite"
103
+ class="divider text"
104
+ role="alert"
105
+ >
106
+ functions.form.expression.function.placeholder
107
+ </div>
108
+ <i
109
+ aria-hidden="true"
110
+ class="dropdown icon"
111
+ />
112
+ <div
113
+ class="menu transition"
114
+ role="listbox"
115
+ >
116
+ <div
117
+ class="message"
118
+ >
119
+ No results found.
120
+ </div>
121
+ </div>
122
+ </div>
123
+ </div>
124
+ </div>
125
+ <div
126
+ class="content active no-padding"
127
+ />
128
+ </div>
72
129
  </div>
73
130
  </div>
74
131
  </div>
@@ -10,14 +10,16 @@ exports[`<ShapeSelector /> matches the latest snapshot 1`] = `
10
10
  >
11
11
  <div
12
12
  class="shape-selector-trigger"
13
- />
13
+ >
14
+ f(x)
15
+ </div>
14
16
  <div
15
17
  class="menu transition"
16
18
  >
17
19
  <div
18
20
  aria-checked="false"
19
- aria-selected="true"
20
- class="selected item"
21
+ aria-selected="false"
22
+ class="item"
21
23
  role="option"
22
24
  style="pointer-events: all;"
23
25
  >
@@ -37,9 +39,9 @@ exports[`<ShapeSelector /> matches the latest snapshot 1`] = `
37
39
  </div>
38
40
  </div>
39
41
  <div
40
- aria-checked="false"
41
- aria-selected="false"
42
- class="item"
42
+ aria-checked="true"
43
+ aria-selected="true"
44
+ class="active selected item"
43
45
  role="option"
44
46
  style="pointer-events: all;"
45
47
  >
@@ -32,14 +32,16 @@ exports[`<SelectField /> matches the latest snapshot for group_by 1`] = `
32
32
  >
33
33
  <div
34
34
  class="shape-selector-trigger"
35
- />
35
+ >
36
+ f(x)
37
+ </div>
36
38
  <div
37
39
  class="menu transition"
38
40
  >
39
41
  <div
40
42
  aria-checked="false"
41
- aria-selected="true"
42
- class="selected item"
43
+ aria-selected="false"
44
+ class="item"
43
45
  role="option"
44
46
  style="pointer-events: all;"
45
47
  >
@@ -59,9 +61,9 @@ exports[`<SelectField /> matches the latest snapshot for group_by 1`] = `
59
61
  </div>
60
62
  </div>
61
63
  <div
62
- aria-checked="false"
63
- aria-selected="false"
64
- class="item"
64
+ aria-checked="true"
65
+ aria-selected="true"
66
+ class="active selected item"
65
67
  role="option"
66
68
  style="pointer-events: all;"
67
69
  >
@@ -82,6 +84,61 @@ exports[`<SelectField /> matches the latest snapshot for group_by 1`] = `
82
84
  </div>
83
85
  </div>
84
86
  </div>
87
+ <div
88
+ class="accordion ui fluid no-margin"
89
+ >
90
+ <div
91
+ class="active title no-padding"
92
+ >
93
+ <div
94
+ class="flex-center"
95
+ >
96
+ <i
97
+ aria-hidden="true"
98
+ class="dropdown icon"
99
+ />
100
+ <div
101
+ aria-expanded="false"
102
+ class="ui fluid search selection dropdown"
103
+ role="combobox"
104
+ >
105
+ <input
106
+ aria-autocomplete="list"
107
+ autocomplete="off"
108
+ class="search"
109
+ tabindex="0"
110
+ type="text"
111
+ value=""
112
+ />
113
+ <div
114
+ aria-atomic="true"
115
+ aria-live="polite"
116
+ class="divider text"
117
+ role="alert"
118
+ >
119
+ functions.form.expression.function.placeholder
120
+ </div>
121
+ <i
122
+ aria-hidden="true"
123
+ class="dropdown icon"
124
+ />
125
+ <div
126
+ class="menu transition"
127
+ role="listbox"
128
+ >
129
+ <div
130
+ class="message"
131
+ >
132
+ No results found.
133
+ </div>
134
+ </div>
135
+ </div>
136
+ </div>
137
+ </div>
138
+ <div
139
+ class="content active no-padding"
140
+ />
141
+ </div>
85
142
  </div>
86
143
  </div>
87
144
  </div>
@@ -145,14 +202,16 @@ exports[`<SelectField /> matches the latest snapshot for select 1`] = `
145
202
  >
146
203
  <div
147
204
  class="shape-selector-trigger"
148
- />
205
+ >
206
+ f(x)
207
+ </div>
149
208
  <div
150
209
  class="menu transition"
151
210
  >
152
211
  <div
153
212
  aria-checked="false"
154
- aria-selected="true"
155
- class="selected item"
213
+ aria-selected="false"
214
+ class="item"
156
215
  role="option"
157
216
  style="pointer-events: all;"
158
217
  >
@@ -172,9 +231,9 @@ exports[`<SelectField /> matches the latest snapshot for select 1`] = `
172
231
  </div>
173
232
  </div>
174
233
  <div
175
- aria-checked="false"
176
- aria-selected="false"
177
- class="item"
234
+ aria-checked="true"
235
+ aria-selected="true"
236
+ class="active selected item"
178
237
  role="option"
179
238
  style="pointer-events: all;"
180
239
  >
@@ -195,6 +254,61 @@ exports[`<SelectField /> matches the latest snapshot for select 1`] = `
195
254
  </div>
196
255
  </div>
197
256
  </div>
257
+ <div
258
+ class="accordion ui fluid no-margin"
259
+ >
260
+ <div
261
+ class="active title no-padding"
262
+ >
263
+ <div
264
+ class="flex-center"
265
+ >
266
+ <i
267
+ aria-hidden="true"
268
+ class="dropdown icon"
269
+ />
270
+ <div
271
+ aria-expanded="false"
272
+ class="ui fluid search selection dropdown"
273
+ role="combobox"
274
+ >
275
+ <input
276
+ aria-autocomplete="list"
277
+ autocomplete="off"
278
+ class="search"
279
+ tabindex="0"
280
+ type="text"
281
+ value=""
282
+ />
283
+ <div
284
+ aria-atomic="true"
285
+ aria-live="polite"
286
+ class="divider text"
287
+ role="alert"
288
+ >
289
+ functions.form.expression.function.placeholder
290
+ </div>
291
+ <i
292
+ aria-hidden="true"
293
+ class="dropdown icon"
294
+ />
295
+ <div
296
+ class="menu transition"
297
+ role="listbox"
298
+ >
299
+ <div
300
+ class="message"
301
+ >
302
+ No results found.
303
+ </div>
304
+ </div>
305
+ </div>
306
+ </div>
307
+ </div>
308
+ <div
309
+ class="content active no-padding"
310
+ />
311
+ </div>
198
312
  </div>
199
313
  </div>
200
314
  </div>
@@ -146,7 +146,7 @@ describe("<EditQualityControl />", () => {
146
146
  Promise.resolve({ data: { data: { id: "9", version: "1" } } })
147
147
  );
148
148
 
149
- useQualityControlUpdateDraft.mockImplementation(() => ({
149
+ useQualityControlUpdateDraft.mockImplementationOnce(() => ({
150
150
  trigger,
151
151
  }));
152
152
 
@@ -61,28 +61,31 @@ describe("<QualityControlScores />", () => {
61
61
  });
62
62
 
63
63
  it("shows a message when there are no scores", async () => {
64
- useQualityControlScores.mockReturnValueOnce({
65
- data: { data: [] },
66
- loading: false,
67
- mutate,
68
- });
69
-
70
- const context = {
71
- qualityControl: qualityControlData(),
72
- loading: false,
73
- actions: ["delete_score"],
74
- mutate,
75
- };
76
-
77
- const rendered = render(
78
- <TestFormWrapper context={context}>
79
- <QualityControlScores />
80
- </TestFormWrapper>,
81
- renderOpts
64
+ useQualityControlScores.withImplementation(
65
+ () => ({
66
+ data: { data: [] },
67
+ loading: false,
68
+ mutate,
69
+ }),
70
+ async () => {
71
+ const context = {
72
+ qualityControl: qualityControlData(),
73
+ loading: false,
74
+ actions: ["delete_score"],
75
+ mutate,
76
+ };
77
+
78
+ const rendered = render(
79
+ <TestFormWrapper context={context}>
80
+ <QualityControlScores />
81
+ </TestFormWrapper>,
82
+ renderOpts
83
+ );
84
+ await waitForLoad(rendered);
85
+
86
+ expect(rendered.getByText(/no scores found/i)).toBeInTheDocument();
87
+ }
82
88
  );
83
- await waitForLoad(rendered);
84
-
85
- expect(rendered.getByText(/no scores found/i)).toBeInTheDocument();
86
89
  });
87
90
 
88
91
  it("does not show delete button when user does not have delete_score action", async () => {
@@ -57,7 +57,7 @@ describe("<MyScoreGroups />", () => {
57
57
  });
58
58
 
59
59
  it("non_admin user do not show searchwidget", async () => {
60
- useAuthorized.mockImplementationOnce(() => false);
60
+ useAuthorized.mockImplementation(() => false);
61
61
 
62
62
  const { container, queryByText } = render(<MyScoreGroups />, renderOpts);
63
63