@genspectrum/dashboard-components 1.11.1 → 1.13.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 +0 -7
- package/custom-elements.json +6 -25
- package/dist/components.d.ts +24 -30
- package/dist/components.js +929 -742
- package/dist/components.js.map +1 -1
- package/dist/util.d.ts +40 -24
- package/package.json +1 -5
- package/src/lapisApi/lapisApi.ts +21 -1
- package/src/lapisApi/lapisTypes.ts +37 -0
- package/src/preact/components/annotated-mutation.tsx +2 -2
- package/src/preact/{mutationsOverTime/mutations-over-time-grid.tsx → components/features-over-time-grid.tsx} +45 -52
- package/src/preact/genomeViewer/genome-data-viewer.tsx +2 -2
- package/src/preact/mutationsOverTime/MutationOverTimeData.ts +6 -4
- package/src/preact/mutationsOverTime/__mockData__/aminoAcidMutationsByDay/aminoAcidMutations.json +5482 -0
- package/src/preact/mutationsOverTime/__mockData__/aminoAcidMutationsByDay/aminoAcidMutationsOverTime.json +5496 -0
- package/src/preact/mutationsOverTime/__mockData__/byWeek/mutationsOverTime.json +7100 -0
- package/src/preact/mutationsOverTime/__mockData__/byWeek/nucleotideMutations.json +10122 -0
- package/src/preact/mutationsOverTime/__mockData__/defaultMockData/mutationsOverTime.json +12646 -0
- package/src/preact/mutationsOverTime/__mockData__/defaultMockData/nucleotideMutations.json +12632 -0
- package/src/preact/mutationsOverTime/__mockData__/request1800s/mutationsOverTime.json +16 -0
- package/src/preact/mutationsOverTime/__mockData__/request1800s/nucleotideMutations.json +11 -0
- package/src/preact/mutationsOverTime/__mockData__/withDisplayMutations/mutationsOverTime.json +52 -0
- package/src/preact/mutationsOverTime/getFilteredMutationsOverTime.spec.ts +3 -3
- package/src/preact/mutationsOverTime/mutations-over-time-grid-tooltip.tsx +3 -6
- package/src/preact/mutationsOverTime/mutations-over-time.stories.tsx +199 -12
- package/src/preact/mutationsOverTime/mutations-over-time.tsx +30 -35
- package/src/preact/wastewater/mutationsOverTime/wastewater-mutations-over-time.tsx +30 -3
- package/src/query/queryDatesInDataset.ts +89 -0
- package/src/query/queryMutationsOverTime.spec.ts +526 -548
- package/src/query/queryMutationsOverTime.ts +22 -245
- package/src/query/queryQueriesOverTime.spec.ts +432 -0
- package/src/query/queryQueriesOverTime.ts +125 -0
- package/src/utilEntrypoint.ts +3 -1
- package/src/utils/mutations.spec.ts +6 -0
- package/src/utils/mutations.ts +1 -1
- package/src/utils/temporalClass.ts +4 -0
- package/src/web-components/visualization/gs-mutation-comparison.tsx +2 -2
- package/src/web-components/visualization/gs-mutations-over-time.spec-d.ts +0 -3
- package/src/web-components/visualization/gs-mutations-over-time.stories.ts +283 -17
- package/src/web-components/visualization/gs-mutations-over-time.tsx +0 -9
- package/standalone-bundle/dashboard-components.js +8935 -8780
- package/standalone-bundle/dashboard-components.js.map +1 -1
- package/dist/assets/mutationOverTimeWorker-CQQFRoK4.js.map +0 -1
- package/src/preact/mutationsOverTime/__mockData__/aminoAcidMutationsByDay.ts +0 -47170
- package/src/preact/mutationsOverTime/__mockData__/byWeek.ts +0 -54026
- package/src/preact/mutationsOverTime/__mockData__/defaultMockData.ts +0 -108385
- package/src/preact/mutationsOverTime/__mockData__/mockConversion.ts +0 -54
- package/src/preact/mutationsOverTime/__mockData__/noDataWhenNoMutationsAreInFilter.ts +0 -23
- package/src/preact/mutationsOverTime/__mockData__/noDataWhenThereAreNoDatesInFilter.ts +0 -23
- package/src/preact/mutationsOverTime/__mockData__/showsMessageWhenTooManyMutations.ts +0 -65527
- package/src/preact/mutationsOverTime/__mockData__/withDisplayMutations.ts +0 -352
- package/src/preact/mutationsOverTime/__mockData__/withGaps.ts +0 -298
- package/src/preact/mutationsOverTime/mutationOverTimeWorker.mock.ts +0 -33
- package/src/preact/mutationsOverTime/mutationOverTimeWorker.ts +0 -29
- package/src/preact/webWorkers/useWebWorker.ts +0 -74
- package/src/preact/webWorkers/workerFunction.ts +0 -30
- package/src/query/queryMutationsOverTimeNewEndpoint.spec.ts +0 -1179
- package/standalone-bundle/assets/mutationOverTimeWorker-DIpJukJC.js.map +0 -1
|
@@ -5,6 +5,13 @@ import './gs-mutations-over-time';
|
|
|
5
5
|
import '../gs-app';
|
|
6
6
|
import { withComponentDocs } from '../../../.storybook/ComponentDocsBlock';
|
|
7
7
|
import { LAPIS_URL } from '../../constants';
|
|
8
|
+
import mockAminoAcidMutationsByDayAminoAcidMutations from '../../preact/mutationsOverTime/__mockData__/aminoAcidMutationsByDay/aminoAcidMutations.json';
|
|
9
|
+
import mockAminoAcidMutationsByDayAminoAcidMutationsOverTime from '../../preact/mutationsOverTime/__mockData__/aminoAcidMutationsByDay/aminoAcidMutationsOverTime.json';
|
|
10
|
+
import mockByWeekMutationsOverTime from '../../preact/mutationsOverTime/__mockData__/byWeek/mutationsOverTime.json';
|
|
11
|
+
import mockByWeekNucleotideMutations from '../../preact/mutationsOverTime/__mockData__/byWeek/nucleotideMutations.json';
|
|
12
|
+
import mockDefaultMutationsOverTime from '../../preact/mutationsOverTime/__mockData__/defaultMockData/mutationsOverTime.json';
|
|
13
|
+
import mockDefaultNucleotideMutations from '../../preact/mutationsOverTime/__mockData__/defaultMockData/nucleotideMutations.json';
|
|
14
|
+
import mockWithDisplayMutationsMutationsOverTime from '../../preact/mutationsOverTime/__mockData__/withDisplayMutations/mutationsOverTime.json';
|
|
8
15
|
import { type MutationsOverTimeProps } from '../../preact/mutationsOverTime/mutations-over-time';
|
|
9
16
|
|
|
10
17
|
const codeExample = String.raw`
|
|
@@ -43,7 +50,6 @@ const meta: Meta<Required<MutationsOverTimeProps>> = {
|
|
|
43
50
|
displayMutations: { control: 'object' },
|
|
44
51
|
initialMeanProportionInterval: { control: 'object' },
|
|
45
52
|
hideGaps: { control: 'boolean' },
|
|
46
|
-
useNewEndpoint: { control: 'boolean' },
|
|
47
53
|
pageSizes: { control: 'object' },
|
|
48
54
|
customColumns: { control: 'object' },
|
|
49
55
|
},
|
|
@@ -56,7 +62,6 @@ const meta: Meta<Required<MutationsOverTimeProps>> = {
|
|
|
56
62
|
lapisDateField: 'date',
|
|
57
63
|
initialMeanProportionInterval: { min: 0.05, max: 0.9 },
|
|
58
64
|
hideGaps: false,
|
|
59
|
-
useNewEndpoint: false,
|
|
60
65
|
pageSizes: [10, 20, 30, 40, 50],
|
|
61
66
|
},
|
|
62
67
|
parameters: withComponentDocs({
|
|
@@ -65,7 +70,52 @@ const meta: Meta<Required<MutationsOverTimeProps>> = {
|
|
|
65
70
|
expectsChildren: false,
|
|
66
71
|
codeExample,
|
|
67
72
|
},
|
|
68
|
-
fetchMock: {
|
|
73
|
+
fetchMock: {
|
|
74
|
+
mocks: [
|
|
75
|
+
{
|
|
76
|
+
matcher: {
|
|
77
|
+
url: `${LAPIS_URL}/sample/nucleotideMutations`,
|
|
78
|
+
body: {
|
|
79
|
+
pangoLineage: 'JN.1*',
|
|
80
|
+
dateFrom: '2024-01-01',
|
|
81
|
+
dateTo: '2024-07-31',
|
|
82
|
+
minProportion: 0.001,
|
|
83
|
+
},
|
|
84
|
+
response: {
|
|
85
|
+
status: 200,
|
|
86
|
+
body: mockDefaultNucleotideMutations,
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
matcher: {
|
|
92
|
+
url: `${LAPIS_URL}/component/nucleotideMutationsOverTime`,
|
|
93
|
+
body: {
|
|
94
|
+
filters: {
|
|
95
|
+
pangoLineage: 'JN.1*',
|
|
96
|
+
dateFrom: '2024-01-15',
|
|
97
|
+
dateTo: '2024-07-10',
|
|
98
|
+
},
|
|
99
|
+
dateRanges: [
|
|
100
|
+
{ dateFrom: '2024-01-01', dateTo: '2024-01-31' },
|
|
101
|
+
{ dateFrom: '2024-02-01', dateTo: '2024-02-29' },
|
|
102
|
+
{ dateFrom: '2024-03-01', dateTo: '2024-03-31' },
|
|
103
|
+
{ dateFrom: '2024-04-01', dateTo: '2024-04-30' },
|
|
104
|
+
{ dateFrom: '2024-05-01', dateTo: '2024-05-31' },
|
|
105
|
+
{ dateFrom: '2024-06-01', dateTo: '2024-06-30' },
|
|
106
|
+
{ dateFrom: '2024-07-01', dateTo: '2024-07-31' },
|
|
107
|
+
],
|
|
108
|
+
dateField: 'date',
|
|
109
|
+
},
|
|
110
|
+
matchPartialBody: true,
|
|
111
|
+
response: {
|
|
112
|
+
status: 200,
|
|
113
|
+
body: mockDefaultMutationsOverTime,
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
},
|
|
117
|
+
],
|
|
118
|
+
},
|
|
69
119
|
}),
|
|
70
120
|
tags: ['autodocs'],
|
|
71
121
|
};
|
|
@@ -116,38 +166,121 @@ const Template: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
|
116
166
|
.initialMeanProportionInterval=${args.initialMeanProportionInterval}
|
|
117
167
|
.hideGaps=${args.hideGaps}
|
|
118
168
|
.pageSizes=${args.pageSizes}
|
|
119
|
-
.useNewEndpoint=${args.useNewEndpoint}
|
|
120
169
|
.customColumns=${args.customColumns}
|
|
121
170
|
></gs-mutations-over-time>
|
|
122
171
|
</gs-app>
|
|
123
172
|
`,
|
|
124
173
|
};
|
|
125
174
|
|
|
126
|
-
// This test uses mock data: defaultMockData.ts (through mutationOverTimeWorker.mock.ts)
|
|
127
175
|
export const ByMonth: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
128
176
|
...Template,
|
|
129
177
|
};
|
|
130
178
|
|
|
131
|
-
// This test uses mock data: withDisplayMutations.ts (through mutationOverTimeWorker.mock.ts)
|
|
132
179
|
export const ByMonthWithFilterOnDisplayedMutations: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
133
180
|
...Template,
|
|
134
181
|
args: {
|
|
135
182
|
...Template.args,
|
|
136
|
-
displayMutations: ['
|
|
183
|
+
displayMutations: ['A13121T', 'G24872T', 'T21653-'],
|
|
184
|
+
},
|
|
185
|
+
parameters: {
|
|
186
|
+
fetchMock: {
|
|
187
|
+
mocks: [
|
|
188
|
+
{
|
|
189
|
+
matcher: {
|
|
190
|
+
url: `${LAPIS_URL}/sample/nucleotideMutations`,
|
|
191
|
+
body: {
|
|
192
|
+
pangoLineage: 'JN.1*',
|
|
193
|
+
dateFrom: '2024-01-01',
|
|
194
|
+
dateTo: '2024-07-31',
|
|
195
|
+
minProportion: 0.001,
|
|
196
|
+
},
|
|
197
|
+
response: {
|
|
198
|
+
status: 200,
|
|
199
|
+
body: mockDefaultNucleotideMutations,
|
|
200
|
+
},
|
|
201
|
+
},
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
matcher: {
|
|
205
|
+
url: `${LAPIS_URL}/component/nucleotideMutationsOverTime`,
|
|
206
|
+
body: {
|
|
207
|
+
filters: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-07-10' },
|
|
208
|
+
dateRanges: [
|
|
209
|
+
{ dateFrom: '2024-01-01', dateTo: '2024-01-31' },
|
|
210
|
+
{ dateFrom: '2024-02-01', dateTo: '2024-02-29' },
|
|
211
|
+
{ dateFrom: '2024-03-01', dateTo: '2024-03-31' },
|
|
212
|
+
{ dateFrom: '2024-04-01', dateTo: '2024-04-30' },
|
|
213
|
+
{ dateFrom: '2024-05-01', dateTo: '2024-05-31' },
|
|
214
|
+
{ dateFrom: '2024-06-01', dateTo: '2024-06-30' },
|
|
215
|
+
{ dateFrom: '2024-07-01', dateTo: '2024-07-31' },
|
|
216
|
+
],
|
|
217
|
+
includeMutations: ['A13121T', 'T21653-', 'G24872T'],
|
|
218
|
+
dateField: 'date',
|
|
219
|
+
},
|
|
220
|
+
response: {
|
|
221
|
+
status: 200,
|
|
222
|
+
body: mockWithDisplayMutationsMutationsOverTime,
|
|
223
|
+
},
|
|
224
|
+
},
|
|
225
|
+
},
|
|
226
|
+
],
|
|
227
|
+
},
|
|
137
228
|
},
|
|
138
229
|
};
|
|
139
230
|
|
|
140
|
-
// This test uses mock data: withGaps.ts (through mutationOverTimeWorker.mock.ts)
|
|
141
231
|
export const ByMonthWithFilterOnDisplayedMutationsAndGaps: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
142
232
|
...Template,
|
|
143
233
|
args: {
|
|
144
234
|
...Template.args,
|
|
145
|
-
displayMutations: ['
|
|
235
|
+
displayMutations: ['A13121T', 'G24872T', 'T21653-'],
|
|
146
236
|
hideGaps: true,
|
|
147
237
|
},
|
|
238
|
+
parameters: {
|
|
239
|
+
fetchMock: {
|
|
240
|
+
mocks: [
|
|
241
|
+
{
|
|
242
|
+
matcher: {
|
|
243
|
+
url: `${LAPIS_URL}/sample/nucleotideMutations`,
|
|
244
|
+
body: {
|
|
245
|
+
pangoLineage: 'JN.1*',
|
|
246
|
+
dateFrom: '2024-01-01',
|
|
247
|
+
dateTo: '2024-07-31',
|
|
248
|
+
minProportion: 0.001,
|
|
249
|
+
},
|
|
250
|
+
response: {
|
|
251
|
+
status: 200,
|
|
252
|
+
body: mockDefaultNucleotideMutations,
|
|
253
|
+
},
|
|
254
|
+
},
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
matcher: {
|
|
258
|
+
url: `${LAPIS_URL}/component/nucleotideMutationsOverTime`,
|
|
259
|
+
body: {
|
|
260
|
+
filters: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-07-10' },
|
|
261
|
+
dateRanges: [
|
|
262
|
+
{ dateFrom: '2024-01-01', dateTo: '2024-01-31' },
|
|
263
|
+
{ dateFrom: '2024-02-01', dateTo: '2024-02-29' },
|
|
264
|
+
{ dateFrom: '2024-03-01', dateTo: '2024-03-31' },
|
|
265
|
+
{ dateFrom: '2024-04-01', dateTo: '2024-04-30' },
|
|
266
|
+
{ dateFrom: '2024-05-01', dateTo: '2024-05-31' },
|
|
267
|
+
{ dateFrom: '2024-06-01', dateTo: '2024-06-30' },
|
|
268
|
+
{ dateFrom: '2024-07-01', dateTo: '2024-07-31' },
|
|
269
|
+
],
|
|
270
|
+
includeMutations: ['A13121T', 'T21653-', 'G24872T'],
|
|
271
|
+
dateField: 'date',
|
|
272
|
+
},
|
|
273
|
+
response: {
|
|
274
|
+
status: 200,
|
|
275
|
+
body: mockWithDisplayMutationsMutationsOverTime,
|
|
276
|
+
},
|
|
277
|
+
},
|
|
278
|
+
},
|
|
279
|
+
],
|
|
280
|
+
},
|
|
281
|
+
},
|
|
148
282
|
};
|
|
149
283
|
|
|
150
|
-
// This test uses mock data: byWeek.ts (through mutationOverTimeWorker.mock.ts)
|
|
151
284
|
export const ByWeek: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
152
285
|
...Template,
|
|
153
286
|
args: {
|
|
@@ -155,9 +288,53 @@ export const ByWeek: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
|
155
288
|
lapisFilter: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-02-11' },
|
|
156
289
|
granularity: 'week',
|
|
157
290
|
},
|
|
291
|
+
parameters: {
|
|
292
|
+
fetchMock: {
|
|
293
|
+
mocks: [
|
|
294
|
+
{
|
|
295
|
+
matcher: {
|
|
296
|
+
url: `${LAPIS_URL}/sample/nucleotideMutations`,
|
|
297
|
+
body: {
|
|
298
|
+
pangoLineage: 'JN.1*',
|
|
299
|
+
dateFrom: '2024-01-15',
|
|
300
|
+
dateTo: '2024-02-11',
|
|
301
|
+
minProportion: 0.001,
|
|
302
|
+
},
|
|
303
|
+
response: {
|
|
304
|
+
status: 200,
|
|
305
|
+
body: mockByWeekNucleotideMutations,
|
|
306
|
+
},
|
|
307
|
+
},
|
|
308
|
+
},
|
|
309
|
+
{
|
|
310
|
+
matcher: {
|
|
311
|
+
url: `${LAPIS_URL}/component/nucleotideMutationsOverTime`,
|
|
312
|
+
body: {
|
|
313
|
+
filters: {
|
|
314
|
+
pangoLineage: 'JN.1*',
|
|
315
|
+
dateFrom: '2024-01-15',
|
|
316
|
+
dateTo: '2024-02-11',
|
|
317
|
+
},
|
|
318
|
+
dateRanges: [
|
|
319
|
+
{ dateFrom: '2024-01-15', dateTo: '2024-01-21' },
|
|
320
|
+
{ dateFrom: '2024-01-22', dateTo: '2024-01-28' },
|
|
321
|
+
{ dateFrom: '2024-01-29', dateTo: '2024-02-04' },
|
|
322
|
+
{ dateFrom: '2024-02-05', dateTo: '2024-02-11' },
|
|
323
|
+
],
|
|
324
|
+
dateField: 'date',
|
|
325
|
+
},
|
|
326
|
+
matchPartialBody: true,
|
|
327
|
+
response: {
|
|
328
|
+
status: 200,
|
|
329
|
+
body: mockByWeekMutationsOverTime,
|
|
330
|
+
},
|
|
331
|
+
},
|
|
332
|
+
},
|
|
333
|
+
],
|
|
334
|
+
},
|
|
335
|
+
},
|
|
158
336
|
};
|
|
159
337
|
|
|
160
|
-
// This test uses mock data: aminoAcidMutationsByDay.ts (through mutationOverTimeWorker.mock.ts)
|
|
161
338
|
export const AminoAcidMutationsByDay: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
162
339
|
...Template,
|
|
163
340
|
args: {
|
|
@@ -166,9 +343,56 @@ export const AminoAcidMutationsByDay: StoryObj<Required<MutationsOverTimeProps>>
|
|
|
166
343
|
granularity: 'day',
|
|
167
344
|
sequenceType: 'amino acid',
|
|
168
345
|
},
|
|
346
|
+
parameters: {
|
|
347
|
+
fetchMock: {
|
|
348
|
+
mocks: [
|
|
349
|
+
{
|
|
350
|
+
matcher: {
|
|
351
|
+
url: `${LAPIS_URL}/sample/aminoAcidMutations`,
|
|
352
|
+
body: {
|
|
353
|
+
pangoLineage: 'JN.1*',
|
|
354
|
+
dateFrom: '2024-01-20',
|
|
355
|
+
dateTo: '2024-01-26',
|
|
356
|
+
minProportion: 0.001,
|
|
357
|
+
},
|
|
358
|
+
response: {
|
|
359
|
+
status: 200,
|
|
360
|
+
body: mockAminoAcidMutationsByDayAminoAcidMutations,
|
|
361
|
+
},
|
|
362
|
+
},
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
matcher: {
|
|
366
|
+
url: `${LAPIS_URL}/component/aminoAcidMutationsOverTime`,
|
|
367
|
+
body: {
|
|
368
|
+
filters: {
|
|
369
|
+
pangoLineage: 'JN.1*',
|
|
370
|
+
dateFrom: '2024-01-20',
|
|
371
|
+
dateTo: '2024-01-26',
|
|
372
|
+
},
|
|
373
|
+
dateRanges: [
|
|
374
|
+
{ dateFrom: '2024-01-20', dateTo: '2024-01-20' },
|
|
375
|
+
{ dateFrom: '2024-01-21', dateTo: '2024-01-21' },
|
|
376
|
+
{ dateFrom: '2024-01-22', dateTo: '2024-01-22' },
|
|
377
|
+
{ dateFrom: '2024-01-23', dateTo: '2024-01-23' },
|
|
378
|
+
{ dateFrom: '2024-01-24', dateTo: '2024-01-24' },
|
|
379
|
+
{ dateFrom: '2024-01-25', dateTo: '2024-01-25' },
|
|
380
|
+
{ dateFrom: '2024-01-26', dateTo: '2024-01-26' },
|
|
381
|
+
],
|
|
382
|
+
dateField: 'date',
|
|
383
|
+
},
|
|
384
|
+
matchPartialBody: true,
|
|
385
|
+
response: {
|
|
386
|
+
status: 200,
|
|
387
|
+
body: mockAminoAcidMutationsByDayAminoAcidMutationsOverTime,
|
|
388
|
+
},
|
|
389
|
+
},
|
|
390
|
+
},
|
|
391
|
+
],
|
|
392
|
+
},
|
|
393
|
+
},
|
|
169
394
|
};
|
|
170
395
|
|
|
171
|
-
// This test uses mock data: defaultMockData.ts (through mutationOverTimeWorker.mock.ts)
|
|
172
396
|
export const HideProportionOnSmallScreen: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
173
397
|
...ByMonth,
|
|
174
398
|
args: {
|
|
@@ -177,7 +401,6 @@ export const HideProportionOnSmallScreen: StoryObj<Required<MutationsOverTimePro
|
|
|
177
401
|
},
|
|
178
402
|
};
|
|
179
403
|
|
|
180
|
-
// This test uses mock data: defaultMockData.ts (through mutationOverTimeWorker.mock.ts)
|
|
181
404
|
export const WithFixedHeight: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
182
405
|
...Template,
|
|
183
406
|
args: {
|
|
@@ -186,21 +409,64 @@ export const WithFixedHeight: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
|
186
409
|
},
|
|
187
410
|
};
|
|
188
411
|
|
|
189
|
-
// This test uses mock data: withDisplayMutations.ts (through mutationOverTimeWorker.mock.ts)
|
|
190
412
|
export const WithCustomColumns: StoryObj<Required<MutationsOverTimeProps>> = {
|
|
191
413
|
...Template,
|
|
192
414
|
args: {
|
|
193
415
|
...Template.args,
|
|
194
|
-
displayMutations: ['
|
|
416
|
+
displayMutations: ['A13121T', 'G24872T', 'T21653-'],
|
|
195
417
|
customColumns: [
|
|
196
418
|
{
|
|
197
419
|
header: 'Jaccard Index',
|
|
198
420
|
values: {
|
|
199
|
-
|
|
200
|
-
|
|
421
|
+
A13121T: 0.75,
|
|
422
|
+
G24872T: 0.92,
|
|
201
423
|
'T21653-': 0.58,
|
|
202
424
|
},
|
|
203
425
|
},
|
|
204
426
|
],
|
|
205
427
|
},
|
|
428
|
+
parameters: {
|
|
429
|
+
fetchMock: {
|
|
430
|
+
mocks: [
|
|
431
|
+
{
|
|
432
|
+
matcher: {
|
|
433
|
+
url: `${LAPIS_URL}/sample/nucleotideMutations`,
|
|
434
|
+
body: {
|
|
435
|
+
pangoLineage: 'JN.1*',
|
|
436
|
+
dateFrom: '2024-01-01',
|
|
437
|
+
dateTo: '2024-07-31',
|
|
438
|
+
minProportion: 0.001,
|
|
439
|
+
},
|
|
440
|
+
response: {
|
|
441
|
+
status: 200,
|
|
442
|
+
body: mockDefaultNucleotideMutations,
|
|
443
|
+
},
|
|
444
|
+
},
|
|
445
|
+
},
|
|
446
|
+
{
|
|
447
|
+
matcher: {
|
|
448
|
+
url: `${LAPIS_URL}/component/nucleotideMutationsOverTime`,
|
|
449
|
+
body: {
|
|
450
|
+
filters: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-07-10' },
|
|
451
|
+
dateRanges: [
|
|
452
|
+
{ dateFrom: '2024-01-01', dateTo: '2024-01-31' },
|
|
453
|
+
{ dateFrom: '2024-02-01', dateTo: '2024-02-29' },
|
|
454
|
+
{ dateFrom: '2024-03-01', dateTo: '2024-03-31' },
|
|
455
|
+
{ dateFrom: '2024-04-01', dateTo: '2024-04-30' },
|
|
456
|
+
{ dateFrom: '2024-05-01', dateTo: '2024-05-31' },
|
|
457
|
+
{ dateFrom: '2024-06-01', dateTo: '2024-06-30' },
|
|
458
|
+
{ dateFrom: '2024-07-01', dateTo: '2024-07-31' },
|
|
459
|
+
],
|
|
460
|
+
includeMutations: ['A13121T', 'T21653-', 'G24872T'],
|
|
461
|
+
dateField: 'date',
|
|
462
|
+
},
|
|
463
|
+
response: {
|
|
464
|
+
status: 200,
|
|
465
|
+
body: mockWithDisplayMutationsMutationsOverTime,
|
|
466
|
+
},
|
|
467
|
+
},
|
|
468
|
+
},
|
|
469
|
+
],
|
|
470
|
+
},
|
|
471
|
+
},
|
|
206
472
|
};
|
|
@@ -122,14 +122,6 @@ export class MutationsOverTimeComponent extends PreactLitAdapterWithGridJsStyles
|
|
|
122
122
|
@property({ type: Boolean })
|
|
123
123
|
hideGaps: boolean = false;
|
|
124
124
|
|
|
125
|
-
/**
|
|
126
|
-
* Whether to use the mutationsOverTime endpoint from LAPIS.
|
|
127
|
-
* If true, use the endpoint, if false, compute component data as before.
|
|
128
|
-
* Eventually, the new endpoint will become the default.
|
|
129
|
-
*/
|
|
130
|
-
@property({ type: Boolean })
|
|
131
|
-
useNewEndpoint?: boolean = false;
|
|
132
|
-
|
|
133
125
|
/**
|
|
134
126
|
* The number of rows per page, which can be selected by the user.
|
|
135
127
|
*/
|
|
@@ -170,7 +162,6 @@ export class MutationsOverTimeComponent extends PreactLitAdapterWithGridJsStyles
|
|
|
170
162
|
displayMutations={this.displayMutations}
|
|
171
163
|
initialMeanProportionInterval={this.initialMeanProportionInterval}
|
|
172
164
|
hideGaps={this.hideGaps}
|
|
173
|
-
useNewEndpoint={this.useNewEndpoint}
|
|
174
165
|
pageSizes={this.pageSizes}
|
|
175
166
|
customColumns={this.customColumns}
|
|
176
167
|
/>
|