@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.
Files changed (58) hide show
  1. package/README.md +0 -7
  2. package/custom-elements.json +6 -25
  3. package/dist/components.d.ts +24 -30
  4. package/dist/components.js +929 -742
  5. package/dist/components.js.map +1 -1
  6. package/dist/util.d.ts +40 -24
  7. package/package.json +1 -5
  8. package/src/lapisApi/lapisApi.ts +21 -1
  9. package/src/lapisApi/lapisTypes.ts +37 -0
  10. package/src/preact/components/annotated-mutation.tsx +2 -2
  11. package/src/preact/{mutationsOverTime/mutations-over-time-grid.tsx → components/features-over-time-grid.tsx} +45 -52
  12. package/src/preact/genomeViewer/genome-data-viewer.tsx +2 -2
  13. package/src/preact/mutationsOverTime/MutationOverTimeData.ts +6 -4
  14. package/src/preact/mutationsOverTime/__mockData__/aminoAcidMutationsByDay/aminoAcidMutations.json +5482 -0
  15. package/src/preact/mutationsOverTime/__mockData__/aminoAcidMutationsByDay/aminoAcidMutationsOverTime.json +5496 -0
  16. package/src/preact/mutationsOverTime/__mockData__/byWeek/mutationsOverTime.json +7100 -0
  17. package/src/preact/mutationsOverTime/__mockData__/byWeek/nucleotideMutations.json +10122 -0
  18. package/src/preact/mutationsOverTime/__mockData__/defaultMockData/mutationsOverTime.json +12646 -0
  19. package/src/preact/mutationsOverTime/__mockData__/defaultMockData/nucleotideMutations.json +12632 -0
  20. package/src/preact/mutationsOverTime/__mockData__/request1800s/mutationsOverTime.json +16 -0
  21. package/src/preact/mutationsOverTime/__mockData__/request1800s/nucleotideMutations.json +11 -0
  22. package/src/preact/mutationsOverTime/__mockData__/withDisplayMutations/mutationsOverTime.json +52 -0
  23. package/src/preact/mutationsOverTime/getFilteredMutationsOverTime.spec.ts +3 -3
  24. package/src/preact/mutationsOverTime/mutations-over-time-grid-tooltip.tsx +3 -6
  25. package/src/preact/mutationsOverTime/mutations-over-time.stories.tsx +199 -12
  26. package/src/preact/mutationsOverTime/mutations-over-time.tsx +30 -35
  27. package/src/preact/wastewater/mutationsOverTime/wastewater-mutations-over-time.tsx +30 -3
  28. package/src/query/queryDatesInDataset.ts +89 -0
  29. package/src/query/queryMutationsOverTime.spec.ts +526 -548
  30. package/src/query/queryMutationsOverTime.ts +22 -245
  31. package/src/query/queryQueriesOverTime.spec.ts +432 -0
  32. package/src/query/queryQueriesOverTime.ts +125 -0
  33. package/src/utilEntrypoint.ts +3 -1
  34. package/src/utils/mutations.spec.ts +6 -0
  35. package/src/utils/mutations.ts +1 -1
  36. package/src/utils/temporalClass.ts +4 -0
  37. package/src/web-components/visualization/gs-mutation-comparison.tsx +2 -2
  38. package/src/web-components/visualization/gs-mutations-over-time.spec-d.ts +0 -3
  39. package/src/web-components/visualization/gs-mutations-over-time.stories.ts +283 -17
  40. package/src/web-components/visualization/gs-mutations-over-time.tsx +0 -9
  41. package/standalone-bundle/dashboard-components.js +8935 -8780
  42. package/standalone-bundle/dashboard-components.js.map +1 -1
  43. package/dist/assets/mutationOverTimeWorker-CQQFRoK4.js.map +0 -1
  44. package/src/preact/mutationsOverTime/__mockData__/aminoAcidMutationsByDay.ts +0 -47170
  45. package/src/preact/mutationsOverTime/__mockData__/byWeek.ts +0 -54026
  46. package/src/preact/mutationsOverTime/__mockData__/defaultMockData.ts +0 -108385
  47. package/src/preact/mutationsOverTime/__mockData__/mockConversion.ts +0 -54
  48. package/src/preact/mutationsOverTime/__mockData__/noDataWhenNoMutationsAreInFilter.ts +0 -23
  49. package/src/preact/mutationsOverTime/__mockData__/noDataWhenThereAreNoDatesInFilter.ts +0 -23
  50. package/src/preact/mutationsOverTime/__mockData__/showsMessageWhenTooManyMutations.ts +0 -65527
  51. package/src/preact/mutationsOverTime/__mockData__/withDisplayMutations.ts +0 -352
  52. package/src/preact/mutationsOverTime/__mockData__/withGaps.ts +0 -298
  53. package/src/preact/mutationsOverTime/mutationOverTimeWorker.mock.ts +0 -33
  54. package/src/preact/mutationsOverTime/mutationOverTimeWorker.ts +0 -29
  55. package/src/preact/webWorkers/useWebWorker.ts +0 -74
  56. package/src/preact/webWorkers/workerFunction.ts +0 -30
  57. package/src/query/queryMutationsOverTimeNewEndpoint.spec.ts +0 -1179
  58. package/standalone-bundle/assets/mutationOverTimeWorker-DIpJukJC.js.map +0 -1
package/README.md CHANGED
@@ -172,13 +172,6 @@ Make sure that stories don't issue actual HTTP calls to LAPIS or other services.
172
172
  This is to make sure that we have stable tests in CI that don't depend on the availability of other services.
173
173
  We still use the real LAPIS URL so that a user can change the filters in a story and will still see data.
174
174
 
175
- In general, we use `storybook-addon-fetch-mock` for all outgoing requests. This strategy
176
- cannot be used for components that use web workers, like gs-mutations-over-time. Therefore, we created custom mock
177
- workers that return mocked data. The mock workers are enabled in the package.json using
178
- Node.js [subpath imports](https://nodejs.org/api/packages.html#subpath-imports), following the guide
179
- from [storybook](https://storybook.js.org/docs/writing-stories/mocking-data-and-modules/mocking-modules). This ensures
180
- that when importing the worker in the component, the mock worker is used inside Storybook instead of the real worker.
181
-
182
175
  ### How The Release Build Works
183
176
 
184
177
  The `"exports"` field in `package.json` defines which files a user of the package can import using the normal module systems.
@@ -2717,7 +2717,7 @@
2717
2717
  "type": {
2718
2718
  "text": "Meta<Required<MutationsOverTimeProps>>"
2719
2719
  },
2720
- "default": "{ title: 'Visualization/Mutations over time', component: 'gs-mutations-over-time', argTypes: { lapisFilter: { control: 'object' }, sequenceType: { options: ['nucleotide', 'amino acid'], control: { type: 'radio' }, }, views: { options: ['grid'], control: { type: 'check' }, }, width: { control: 'text' }, height: { control: 'text' }, granularity: { options: ['day', 'week', 'month', 'year'], control: { type: 'radio' }, }, lapisDateField: { control: 'text' }, displayMutations: { control: 'object' }, initialMeanProportionInterval: { control: 'object' }, hideGaps: { control: 'boolean' }, useNewEndpoint: { control: 'boolean' }, pageSizes: { control: 'object' }, customColumns: { control: 'object' }, }, args: { lapisFilter: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-07-10' }, sequenceType: 'nucleotide', views: ['grid'], width: '100%', granularity: 'month', lapisDateField: 'date', initialMeanProportionInterval: { min: 0.05, max: 0.9 }, hideGaps: false, useNewEndpoint: false, pageSizes: [10, 20, 30, 40, 50], }, parameters: withComponentDocs({ componentDocs: { opensShadowDom: true, expectsChildren: false, codeExample, }, fetchMock: {}, }), tags: ['autodocs'], }"
2720
+ "default": "{ title: 'Visualization/Mutations over time', component: 'gs-mutations-over-time', argTypes: { lapisFilter: { control: 'object' }, sequenceType: { options: ['nucleotide', 'amino acid'], control: { type: 'radio' }, }, views: { options: ['grid'], control: { type: 'check' }, }, width: { control: 'text' }, height: { control: 'text' }, granularity: { options: ['day', 'week', 'month', 'year'], control: { type: 'radio' }, }, lapisDateField: { control: 'text' }, displayMutations: { control: 'object' }, initialMeanProportionInterval: { control: 'object' }, hideGaps: { control: 'boolean' }, pageSizes: { control: 'object' }, customColumns: { control: 'object' }, }, args: { lapisFilter: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-07-10' }, sequenceType: 'nucleotide', views: ['grid'], width: '100%', granularity: 'month', lapisDateField: 'date', initialMeanProportionInterval: { min: 0.05, max: 0.9 }, hideGaps: false, pageSizes: [10, 20, 30, 40, 50], }, parameters: withComponentDocs({ componentDocs: { opensShadowDom: true, expectsChildren: false, codeExample, }, fetchMock: { mocks: [ { matcher: { url: `${LAPIS_URL}/sample/nucleotideMutations`, body: { pangoLineage: 'JN.1*', dateFrom: '2024-01-01', dateTo: '2024-07-31', minProportion: 0.001, }, response: { status: 200, body: mockDefaultNucleotideMutations, }, }, }, { matcher: { url: `${LAPIS_URL}/component/nucleotideMutationsOverTime`, body: { filters: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-07-10', }, dateRanges: [ { dateFrom: '2024-01-01', dateTo: '2024-01-31' }, { dateFrom: '2024-02-01', dateTo: '2024-02-29' }, { dateFrom: '2024-03-01', dateTo: '2024-03-31' }, { dateFrom: '2024-04-01', dateTo: '2024-04-30' }, { dateFrom: '2024-05-01', dateTo: '2024-05-31' }, { dateFrom: '2024-06-01', dateTo: '2024-06-30' }, { dateFrom: '2024-07-01', dateTo: '2024-07-31' }, ], dateField: 'date', }, matchPartialBody: true, response: { status: 200, body: mockDefaultMutationsOverTime, }, }, }, ], }, }), tags: ['autodocs'], }"
2721
2721
  },
2722
2722
  {
2723
2723
  "kind": "variable",
@@ -2733,7 +2733,7 @@
2733
2733
  "type": {
2734
2734
  "text": "StoryObj<Required<MutationsOverTimeProps>>"
2735
2735
  },
2736
- "default": "{ ...Template, args: { ...Template.args, displayMutations: ['A19722G', 'G21641T', 'T21653-'], }, }"
2736
+ "default": "{ ...Template, args: { ...Template.args, displayMutations: ['A13121T', 'G24872T', 'T21653-'], }, parameters: { fetchMock: { mocks: [ { matcher: { url: `${LAPIS_URL}/sample/nucleotideMutations`, body: { pangoLineage: 'JN.1*', dateFrom: '2024-01-01', dateTo: '2024-07-31', minProportion: 0.001, }, response: { status: 200, body: mockDefaultNucleotideMutations, }, }, }, { matcher: { url: `${LAPIS_URL}/component/nucleotideMutationsOverTime`, body: { filters: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-07-10' }, dateRanges: [ { dateFrom: '2024-01-01', dateTo: '2024-01-31' }, { dateFrom: '2024-02-01', dateTo: '2024-02-29' }, { dateFrom: '2024-03-01', dateTo: '2024-03-31' }, { dateFrom: '2024-04-01', dateTo: '2024-04-30' }, { dateFrom: '2024-05-01', dateTo: '2024-05-31' }, { dateFrom: '2024-06-01', dateTo: '2024-06-30' }, { dateFrom: '2024-07-01', dateTo: '2024-07-31' }, ], includeMutations: ['A13121T', 'T21653-', 'G24872T'], dateField: 'date', }, response: { status: 200, body: mockWithDisplayMutationsMutationsOverTime, }, }, }, ], }, }, }"
2737
2737
  },
2738
2738
  {
2739
2739
  "kind": "variable",
@@ -2741,7 +2741,7 @@
2741
2741
  "type": {
2742
2742
  "text": "StoryObj<Required<MutationsOverTimeProps>>"
2743
2743
  },
2744
- "default": "{ ...Template, args: { ...Template.args, displayMutations: ['A19722G', 'G21641T', 'T21652-'], hideGaps: true, }, }"
2744
+ "default": "{ ...Template, args: { ...Template.args, displayMutations: ['A13121T', 'G24872T', 'T21653-'], hideGaps: true, }, parameters: { fetchMock: { mocks: [ { matcher: { url: `${LAPIS_URL}/sample/nucleotideMutations`, body: { pangoLineage: 'JN.1*', dateFrom: '2024-01-01', dateTo: '2024-07-31', minProportion: 0.001, }, response: { status: 200, body: mockDefaultNucleotideMutations, }, }, }, { matcher: { url: `${LAPIS_URL}/component/nucleotideMutationsOverTime`, body: { filters: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-07-10' }, dateRanges: [ { dateFrom: '2024-01-01', dateTo: '2024-01-31' }, { dateFrom: '2024-02-01', dateTo: '2024-02-29' }, { dateFrom: '2024-03-01', dateTo: '2024-03-31' }, { dateFrom: '2024-04-01', dateTo: '2024-04-30' }, { dateFrom: '2024-05-01', dateTo: '2024-05-31' }, { dateFrom: '2024-06-01', dateTo: '2024-06-30' }, { dateFrom: '2024-07-01', dateTo: '2024-07-31' }, ], includeMutations: ['A13121T', 'T21653-', 'G24872T'], dateField: 'date', }, response: { status: 200, body: mockWithDisplayMutationsMutationsOverTime, }, }, }, ], }, }, }"
2745
2745
  },
2746
2746
  {
2747
2747
  "kind": "variable",
@@ -2749,7 +2749,7 @@
2749
2749
  "type": {
2750
2750
  "text": "StoryObj<Required<MutationsOverTimeProps>>"
2751
2751
  },
2752
- "default": "{ ...Template, args: { ...Template.args, lapisFilter: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-02-11' }, granularity: 'week', }, }"
2752
+ "default": "{ ...Template, args: { ...Template.args, lapisFilter: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-02-11' }, granularity: 'week', }, parameters: { fetchMock: { mocks: [ { matcher: { url: `${LAPIS_URL}/sample/nucleotideMutations`, body: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-02-11', minProportion: 0.001, }, response: { status: 200, body: mockByWeekNucleotideMutations, }, }, }, { matcher: { url: `${LAPIS_URL}/component/nucleotideMutationsOverTime`, body: { filters: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-02-11', }, dateRanges: [ { dateFrom: '2024-01-15', dateTo: '2024-01-21' }, { dateFrom: '2024-01-22', dateTo: '2024-01-28' }, { dateFrom: '2024-01-29', dateTo: '2024-02-04' }, { dateFrom: '2024-02-05', dateTo: '2024-02-11' }, ], dateField: 'date', }, matchPartialBody: true, response: { status: 200, body: mockByWeekMutationsOverTime, }, }, }, ], }, }, }"
2753
2753
  },
2754
2754
  {
2755
2755
  "kind": "variable",
@@ -2757,7 +2757,7 @@
2757
2757
  "type": {
2758
2758
  "text": "StoryObj<Required<MutationsOverTimeProps>>"
2759
2759
  },
2760
- "default": "{ ...Template, args: { ...Template.args, lapisFilter: { pangoLineage: 'JN.1*', dateFrom: '2024-01-20', dateTo: '2024-01-26' }, granularity: 'day', sequenceType: 'amino acid', }, }"
2760
+ "default": "{ ...Template, args: { ...Template.args, lapisFilter: { pangoLineage: 'JN.1*', dateFrom: '2024-01-20', dateTo: '2024-01-26' }, granularity: 'day', sequenceType: 'amino acid', }, parameters: { fetchMock: { mocks: [ { matcher: { url: `${LAPIS_URL}/sample/aminoAcidMutations`, body: { pangoLineage: 'JN.1*', dateFrom: '2024-01-20', dateTo: '2024-01-26', minProportion: 0.001, }, response: { status: 200, body: mockAminoAcidMutationsByDayAminoAcidMutations, }, }, }, { matcher: { url: `${LAPIS_URL}/component/aminoAcidMutationsOverTime`, body: { filters: { pangoLineage: 'JN.1*', dateFrom: '2024-01-20', dateTo: '2024-01-26', }, dateRanges: [ { dateFrom: '2024-01-20', dateTo: '2024-01-20' }, { dateFrom: '2024-01-21', dateTo: '2024-01-21' }, { dateFrom: '2024-01-22', dateTo: '2024-01-22' }, { dateFrom: '2024-01-23', dateTo: '2024-01-23' }, { dateFrom: '2024-01-24', dateTo: '2024-01-24' }, { dateFrom: '2024-01-25', dateTo: '2024-01-25' }, { dateFrom: '2024-01-26', dateTo: '2024-01-26' }, ], dateField: 'date', }, matchPartialBody: true, response: { status: 200, body: mockAminoAcidMutationsByDayAminoAcidMutationsOverTime, }, }, }, ], }, }, }"
2761
2761
  },
2762
2762
  {
2763
2763
  "kind": "variable",
@@ -2781,7 +2781,7 @@
2781
2781
  "type": {
2782
2782
  "text": "StoryObj<Required<MutationsOverTimeProps>>"
2783
2783
  },
2784
- "default": "{ ...Template, args: { ...Template.args, displayMutations: ['A19722G', 'G21641T', 'T21653-'], customColumns: [ { header: 'Jaccard Index', values: { A19722G: 0.75, G21641T: 0.92, 'T21653-': 0.58, }, }, ], }, }"
2784
+ "default": "{ ...Template, args: { ...Template.args, displayMutations: ['A13121T', 'G24872T', 'T21653-'], customColumns: [ { header: 'Jaccard Index', values: { A13121T: 0.75, G24872T: 0.92, 'T21653-': 0.58, }, }, ], }, parameters: { fetchMock: { mocks: [ { matcher: { url: `${LAPIS_URL}/sample/nucleotideMutations`, body: { pangoLineage: 'JN.1*', dateFrom: '2024-01-01', dateTo: '2024-07-31', minProportion: 0.001, }, response: { status: 200, body: mockDefaultNucleotideMutations, }, }, }, { matcher: { url: `${LAPIS_URL}/component/nucleotideMutationsOverTime`, body: { filters: { pangoLineage: 'JN.1*', dateFrom: '2024-01-15', dateTo: '2024-07-10' }, dateRanges: [ { dateFrom: '2024-01-01', dateTo: '2024-01-31' }, { dateFrom: '2024-02-01', dateTo: '2024-02-29' }, { dateFrom: '2024-03-01', dateTo: '2024-03-31' }, { dateFrom: '2024-04-01', dateTo: '2024-04-30' }, { dateFrom: '2024-05-01', dateTo: '2024-05-31' }, { dateFrom: '2024-06-01', dateTo: '2024-06-30' }, { dateFrom: '2024-07-01', dateTo: '2024-07-31' }, ], includeMutations: ['A13121T', 'T21653-', 'G24872T'], dateField: 'date', }, response: { status: 200, body: mockWithDisplayMutationsMutationsOverTime, }, }, }, ], }, }, }"
2785
2785
  }
2786
2786
  ],
2787
2787
  "exports": [
@@ -2968,16 +2968,6 @@
2968
2968
  "description": "If true, date ranges with no data will be hidden initially; if false, not.\nCan be switched with a button in the toolbar.",
2969
2969
  "attribute": "hideGaps"
2970
2970
  },
2971
- {
2972
- "kind": "field",
2973
- "name": "useNewEndpoint",
2974
- "type": {
2975
- "text": "boolean | undefined"
2976
- },
2977
- "default": "false",
2978
- "description": "Whether to use the mutationsOverTime endpoint from LAPIS.\nIf true, use the endpoint, if false, compute component data as before.\nEventually, the new endpoint will become the default.",
2979
- "attribute": "useNewEndpoint"
2980
- },
2981
2971
  {
2982
2972
  "kind": "field",
2983
2973
  "name": "pageSizes",
@@ -3099,15 +3089,6 @@
3099
3089
  "description": "If true, date ranges with no data will be hidden initially; if false, not.\nCan be switched with a button in the toolbar.",
3100
3090
  "fieldName": "hideGaps"
3101
3091
  },
3102
- {
3103
- "name": "useNewEndpoint",
3104
- "type": {
3105
- "text": "boolean | undefined"
3106
- },
3107
- "default": "false",
3108
- "description": "Whether to use the mutationsOverTime endpoint from LAPIS.\nIf true, use the endpoint, if false, compute component data as before.\nEventually, the new endpoint will become the default.",
3109
- "fieldName": "useNewEndpoint"
3110
- },
3111
3092
  {
3112
3093
  "name": "pageSizes",
3113
3094
  "type": {
@@ -829,12 +829,6 @@ export declare class MutationsOverTimeComponent extends PreactLitAdapterWithGrid
829
829
  * Can be switched with a button in the toolbar.
830
830
  */
831
831
  hideGaps: boolean;
832
- /**
833
- * Whether to use the mutationsOverTime endpoint from LAPIS.
834
- * If true, use the endpoint, if false, compute component data as before.
835
- * Eventually, the new endpoint will become the default.
836
- */
837
- useNewEndpoint?: boolean;
838
832
  /**
839
833
  * The number of rows per page, which can be selected by the user.
840
834
  */
@@ -1680,7 +1674,7 @@ declare global {
1680
1674
 
1681
1675
  declare global {
1682
1676
  interface HTMLElementTagNameMap {
1683
- 'gs-genome-data-viewer': GenomeDataViewerComponent;
1677
+ 'gs-wastewater-mutations-over-time': WastewaterMutationsOverTimeComponent;
1684
1678
  }
1685
1679
  }
1686
1680
 
@@ -1688,7 +1682,7 @@ declare global {
1688
1682
  declare global {
1689
1683
  namespace JSX {
1690
1684
  interface IntrinsicElements {
1691
- 'gs-genome-data-viewer': DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>;
1685
+ 'gs-wastewater-mutations-over-time': DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>;
1692
1686
  }
1693
1687
  }
1694
1688
  }
@@ -1696,7 +1690,7 @@ declare global {
1696
1690
 
1697
1691
  declare global {
1698
1692
  interface HTMLElementTagNameMap {
1699
- 'gs-mutation-comparison-component': MutationComparisonComponent;
1693
+ 'gs-genome-data-viewer': GenomeDataViewerComponent;
1700
1694
  }
1701
1695
  }
1702
1696
 
@@ -1704,7 +1698,7 @@ declare global {
1704
1698
  declare global {
1705
1699
  namespace JSX {
1706
1700
  interface IntrinsicElements {
1707
- 'gs-mutation-comparison-component': DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>;
1701
+ 'gs-genome-data-viewer': DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>;
1708
1702
  }
1709
1703
  }
1710
1704
  }
@@ -1744,7 +1738,7 @@ declare global {
1744
1738
 
1745
1739
  declare global {
1746
1740
  interface HTMLElementTagNameMap {
1747
- 'gs-aggregate': AggregateComponent;
1741
+ 'gs-mutation-comparison': MutationComparisonComponent;
1748
1742
  }
1749
1743
  }
1750
1744
 
@@ -1752,7 +1746,23 @@ declare global {
1752
1746
  declare global {
1753
1747
  namespace JSX {
1754
1748
  interface IntrinsicElements {
1755
- 'gs-aggregate': DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>;
1749
+ 'gs-mutation-comparison': DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>;
1750
+ }
1751
+ }
1752
+ }
1753
+
1754
+
1755
+ declare global {
1756
+ interface HTMLElementTagNameMap {
1757
+ 'gs-relative-growth-advantage': RelativeGrowthAdvantageComponent;
1758
+ }
1759
+ }
1760
+
1761
+
1762
+ declare global {
1763
+ namespace JSX {
1764
+ interface IntrinsicElements {
1765
+ 'gs-relative-growth-advantage': DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>;
1756
1766
  }
1757
1767
  }
1758
1768
  }
@@ -1776,7 +1786,7 @@ declare global {
1776
1786
 
1777
1787
  declare global {
1778
1788
  interface HTMLElementTagNameMap {
1779
- 'gs-relative-growth-advantage': RelativeGrowthAdvantageComponent;
1789
+ 'gs-aggregate': AggregateComponent;
1780
1790
  }
1781
1791
  }
1782
1792
 
@@ -1784,7 +1794,7 @@ declare global {
1784
1794
  declare global {
1785
1795
  namespace JSX {
1786
1796
  interface IntrinsicElements {
1787
- 'gs-relative-growth-advantage': DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>;
1797
+ 'gs-aggregate': DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>;
1788
1798
  }
1789
1799
  }
1790
1800
  }
@@ -1955,22 +1965,6 @@ declare global {
1955
1965
  }
1956
1966
 
1957
1967
 
1958
- declare global {
1959
- interface HTMLElementTagNameMap {
1960
- 'gs-wastewater-mutations-over-time': WastewaterMutationsOverTimeComponent;
1961
- }
1962
- }
1963
-
1964
-
1965
- declare global {
1966
- namespace JSX {
1967
- interface IntrinsicElements {
1968
- 'gs-wastewater-mutations-over-time': DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement>;
1969
- }
1970
- }
1971
- }
1972
-
1973
-
1974
1968
  declare module 'chart.js' {
1975
1969
  interface CartesianScaleTypeRegistry {
1976
1970
  logit: {