@rivm-loculus-tools/common-frontend 0.1.3 → 0.2.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/dist/_chunks/FastaDataImportDialog.js +309 -0
- package/dist/_chunks/FastaDataImportDialog.js.map +1 -0
- package/dist/_chunks/react.js +11 -0
- package/dist/_chunks/react.js.map +1 -0
- package/dist/classes/services/FastaDataEventBusService/FastaDataEventBusService.d.ts +10 -0
- package/dist/classes/services/FastaDataEventBusService/index.js +16 -0
- package/dist/classes/services/FastaDataEventBusService/index.js.map +1 -0
- package/dist/components/FastaDataImportDialog/FastaDataImportDialog.d.ts +12 -0
- package/dist/components/FastaDataImportDialog/index.js +1 -0
- package/dist/components/FastaDataImportDialogLoader/FastaDataImportDialogLoader.d.ts +8 -0
- package/dist/components/FastaDataImportDialogLoader/index.js +70 -0
- package/dist/components/FastaDataImportDialogLoader/index.js.map +1 -0
- package/dist/components/FastaNotLoaded/FastaNotLoaded.d.ts +7 -0
- package/dist/components/FastaNotLoaded/index.js +53 -0
- package/dist/components/FastaNotLoaded/index.js.map +1 -0
- package/dist/components/FastaPageHeaderCenterComponent/FastaPageHeaderCenterComponent.d.ts +6 -0
- package/dist/components/FastaPageHeaderCenterComponent/index.js +37 -0
- package/dist/components/FastaPageHeaderCenterComponent/index.js.map +1 -0
- package/dist/components/FastaPageHeaderImportButton/FastaPageHeaderImportButton.d.ts +1 -0
- package/dist/components/FastaPageHeaderImportButton/index.js +26 -0
- package/dist/components/FastaPageHeaderImportButton/index.js.map +1 -0
- package/dist/components/FastaPageHeaderResetButton/FastaPageHeaderResetButton.d.ts +4 -0
- package/dist/components/FastaPageHeaderResetButton/index.js +35 -0
- package/dist/components/FastaPageHeaderResetButton/index.js.map +1 -0
- package/dist/components/I18nWrapper/I18nWrapper.d.ts +4 -0
- package/dist/components/I18nWrapper/index.js +21 -0
- package/dist/components/I18nWrapper/index.js.map +1 -0
- package/dist/components/PageHeaderDocumentationButton/PageHeaderDocumentationButton.d.ts +1 -0
- package/dist/components/PageHeaderDocumentationButton/index.js +24 -0
- package/dist/components/PageHeaderDocumentationButton/index.js.map +1 -0
- package/dist/components/SearchBar/SearchBar.d.ts +10 -0
- package/dist/components/SearchBar/SearchBarNodeCounter.d.ts +4 -0
- package/dist/components/SearchBar/index.js +129 -0
- package/dist/components/SearchBar/index.js.map +1 -0
- package/dist/components/page/ErrorPageCommon.d.ts +4 -0
- package/dist/components/page/PageCommon.d.ts +8 -0
- package/dist/components/page/PageCommonContext.d.ts +7 -0
- package/dist/components/page/PageCommonContextProvider.d.ts +3 -0
- package/dist/components/page/PageCommonDrawer.d.ts +5 -0
- package/dist/components/page/PageCommonHeader.d.ts +8 -0
- package/dist/components/page/index.js +207 -0
- package/dist/components/page/index.js.map +1 -0
- package/dist/constants/page.d.ts +1 -0
- package/dist/constants/page.js +6 -0
- package/dist/constants/page.js.map +1 -0
- package/dist/models/fasta.d.ts +23 -0
- package/dist/models/fasta.js +8 -0
- package/dist/models/fasta.js.map +1 -0
- package/dist/models/metadata.d.ts +9 -0
- package/dist/stores/fastaDataStore/fastaDataStore.d.ts +32 -0
- package/dist/stores/fastaDataStore/index.js +57 -0
- package/dist/stores/fastaDataStore/index.js.map +1 -0
- package/dist/theme/index.js +257 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/theme/theme.d.ts +1 -0
- package/dist/utils/DownloadUtil/DownloadUtil.d.ts +3 -0
- package/dist/utils/DownloadUtil/index.js +10 -0
- package/dist/utils/DownloadUtil/index.js.map +1 -0
- package/dist/utils/ErrorUtil/ErrorUtil.d.ts +3 -0
- package/dist/utils/ErrorUtil/index.js +10 -0
- package/dist/utils/ErrorUtil/index.js.map +1 -0
- package/dist/utils/FastaUtil/FastaUtil.d.ts +6 -0
- package/dist/utils/FastaUtil/index.js +56 -0
- package/dist/utils/FastaUtil/index.js.map +1 -0
- package/dist/utils/MetaDataUtil/MetaDataUtil.d.ts +20 -0
- package/dist/utils/MetaDataUtil/index.js +133 -0
- package/dist/utils/MetaDataUtil/index.js.map +1 -0
- package/dist/utils/UrlUtil/UrlUtil.d.ts +5 -0
- package/dist/utils/UrlUtil/index.js +30 -0
- package/dist/utils/UrlUtil/index.js.map +1 -0
- package/package.json +27 -28
- package/CHANGELOG.md +0 -29
- package/eslint.config.js +0 -16
- package/scripts/update-exports.js +0 -9
- package/src/classes/services/FastaDataEventBusService/FastaDataEventBusService.ts +0 -22
- package/src/components/FastaDataImportDialog/FastaDataImportDialog.tsx +0 -364
- package/src/components/FastaDataImportDialogLoader/FastaDataImportDialogLoader.tsx +0 -124
- package/src/components/FastaNotLoaded/FastaNotLoaded.tsx +0 -62
- package/src/components/FastaPageHeaderCenterComponent/FastaPageHeaderCenterComponent.tsx +0 -50
- package/src/components/FastaPageHeaderImportButton/FastaPageHeaderImportButton.tsx +0 -28
- package/src/components/FastaPageHeaderResetButton/FastaPageHeaderResetButton.tsx +0 -50
- package/src/components/I18nWrapper/I18nWrapper.tsx +0 -39
- package/src/components/PageHeaderDocumentationButton/PageHeaderDocumentationButton.tsx +0 -25
- package/src/components/SearchBar/SearchBar.tsx +0 -207
- package/src/components/SearchBar/SearchBarNodeCounter.tsx +0 -23
- package/src/components/page/ErrorPageCommon.tsx +0 -51
- package/src/components/page/PageCommon.tsx +0 -76
- package/src/components/page/PageCommonContext.ts +0 -15
- package/src/components/page/PageCommonContextProvider.tsx +0 -30
- package/src/components/page/PageCommonDrawer.tsx +0 -35
- package/src/components/page/PageCommonHeader.tsx +0 -99
- package/src/constants/page.ts +0 -1
- package/src/index.ts +0 -21
- package/src/models/fasta.ts +0 -22
- package/src/models/metadata.ts +0 -10
- package/src/stores/fastaDataStore/fastaDataStore.ts +0 -103
- package/src/theme/fonts/RobotoFlex.woff2 +0 -0
- package/src/theme/theme.ts +0 -368
- package/src/utils/DownloadUtil/DownloadUtil.ts +0 -10
- package/src/utils/ErrorUtil/ErrorUtil.ts +0 -5
- package/src/utils/FastaUtil/FastaUtil.ts +0 -109
- package/src/utils/MetaDataUtil/MetaDataUtil.ts +0 -292
- package/src/utils/UrlUtil/UrlUtil.ts +0 -35
- package/tsconfig.build.json +0 -14
- package/tsconfig.json +0 -32
- package/vite.config.ts +0 -137
- /package/{src → dist}/@types/vite-env.d.ts +0 -0
- /package/{src/classes/services/FastaDataEventBusService/index.ts → dist/classes/services/FastaDataEventBusService/index.d.ts} +0 -0
- /package/{src/components/FastaDataImportDialog/index.ts → dist/components/FastaDataImportDialog/index.d.ts} +0 -0
- /package/{src/components/FastaDataImportDialogLoader/index.ts → dist/components/FastaDataImportDialogLoader/index.d.ts} +0 -0
- /package/{src/components/FastaNotLoaded/index.ts → dist/components/FastaNotLoaded/index.d.ts} +0 -0
- /package/{src/components/FastaPageHeaderCenterComponent/index.ts → dist/components/FastaPageHeaderCenterComponent/index.d.ts} +0 -0
- /package/{src/components/FastaPageHeaderImportButton/index.ts → dist/components/FastaPageHeaderImportButton/index.d.ts} +0 -0
- /package/{src/components/FastaPageHeaderResetButton/index.ts → dist/components/FastaPageHeaderResetButton/index.d.ts} +0 -0
- /package/{src/components/I18nWrapper/index.ts → dist/components/I18nWrapper/index.d.ts} +0 -0
- /package/{src/components/PageHeaderDocumentationButton/index.ts → dist/components/PageHeaderDocumentationButton/index.d.ts} +0 -0
- /package/{src/components/SearchBar/index.ts → dist/components/SearchBar/index.d.ts} +0 -0
- /package/{src/components/page/index.ts → dist/components/page/index.d.ts} +0 -0
- /package/{src/.gitkeep → dist/models/metadata.js} +0 -0
- /package/{src/stores/fastaDataStore/index.ts → dist/stores/fastaDataStore/index.d.ts} +0 -0
- /package/{src/theme/index.ts → dist/theme/index.d.ts} +0 -0
- /package/{src/utils/DownloadUtil/index.ts → dist/utils/DownloadUtil/index.d.ts} +0 -0
- /package/{src/utils/ErrorUtil/index.ts → dist/utils/ErrorUtil/index.d.ts} +0 -0
- /package/{src/utils/FastaUtil/index.ts → dist/utils/FastaUtil/index.d.ts} +0 -0
- /package/{src/utils/MetaDataUtil/index.ts → dist/utils/MetaDataUtil/index.d.ts} +0 -0
- /package/{src/utils/UrlUtil/index.ts → dist/utils/UrlUtil/index.d.ts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fasta.js","names":["LOADING_STATUS","\"ERROR\"","\"IDLE\"","\"LOADING\"","\"SUCCESS\""],"sources":["../../src/models/fasta.ts"],"sourcesContent":["export enum LOADING_STATUS {\n ERROR = 'ERROR',\n IDLE = 'IDLE',\n LOADING = 'LOADING',\n SUCCESS = 'SUCCESS',\n}\n\nexport type FastaParseResult = {\n error?: string;\n expectedLength: number;\n invalidSequences?: { id: string; length: number }[];\n isAligned: boolean;\n sequences: FastaSequence[];\n};\n\nexport type FastaSequence = {\n accessionVersion: string;\n header: string;\n id: string;\n length: number;\n sequence: string;\n};\n"],"mappings":";AAAA,IAAYA,IAAL,yBAAA,GAAA;QACL,EAAAC,QAAA,SACA,EAAAC,OAAA,QACA,EAAAC,UAAA,WACA,EAAAC,UAAA;AACF,EAAA,CAAA,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface MetadataParseResult {
|
|
2
|
+
columns: string[];
|
|
3
|
+
error?: string;
|
|
4
|
+
records: MetadataRecord[];
|
|
5
|
+
recordsByAccession: Record<string, MetadataRecord>;
|
|
6
|
+
recordsByColumn: Record<string, Record<string, MetadataRecord>>;
|
|
7
|
+
recordsBySampleId: Record<string, MetadataRecord>;
|
|
8
|
+
}
|
|
9
|
+
export type MetadataRecord = Record<string, string>;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { StoreApi } from 'zustand';
|
|
2
|
+
import { FastaParseResult, LOADING_STATUS } from '../../models/fasta';
|
|
3
|
+
import { MetadataParseResult } from '../../models/metadata';
|
|
4
|
+
export type FastaDataStore = FastaDataStoreActions & FastaDataStoreState;
|
|
5
|
+
export interface FastaDataStoreActions {
|
|
6
|
+
resetDataset: () => void;
|
|
7
|
+
setColumnMatchCounts: (counts: Record<string, number>) => void;
|
|
8
|
+
setData: (fasta: string, tsv?: string) => Promise<{
|
|
9
|
+
fastaResult: FastaParseResult;
|
|
10
|
+
metadataResult?: MetadataParseResult;
|
|
11
|
+
}>;
|
|
12
|
+
setLoadingStatus: (status: LOADING_STATUS) => void;
|
|
13
|
+
setMatchKeyField: (field: null | string) => void;
|
|
14
|
+
}
|
|
15
|
+
export interface FastaDataStoreState {
|
|
16
|
+
columnMatchCounts: Record<string, number>;
|
|
17
|
+
loadingError: null | string;
|
|
18
|
+
loadingStatus: LOADING_STATUS;
|
|
19
|
+
matchKeyField: null | string;
|
|
20
|
+
parsedFasta: FastaParseResult | null;
|
|
21
|
+
parsedMetadata: MetadataParseResult | null;
|
|
22
|
+
rawFasta: string;
|
|
23
|
+
rawMetadata: string;
|
|
24
|
+
}
|
|
25
|
+
export declare const createFastaDataStoreInitialState: () => FastaDataStoreState;
|
|
26
|
+
type Get<T extends FastaDataStore> = StoreApi<T>['getState'];
|
|
27
|
+
type Set<T extends FastaDataStore> = StoreApi<T>['setState'];
|
|
28
|
+
export declare const createFastaDataStoreActions: <T extends FastaDataStore>(kwArgs: {
|
|
29
|
+
get: Get<T>;
|
|
30
|
+
set: Set<T>;
|
|
31
|
+
}) => FastaDataStoreActions;
|
|
32
|
+
export {};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { MetaDataUtil as e } from "../../utils/MetaDataUtil/index.js";
|
|
2
|
+
import { FastaUtil as t } from "../../utils/FastaUtil/index.js";
|
|
3
|
+
import { LOADING_STATUS as n } from "../../models/fasta.js";
|
|
4
|
+
//#region src/stores/fastaDataStore/fastaDataStore.ts
|
|
5
|
+
var r = () => ({
|
|
6
|
+
columnMatchCounts: {},
|
|
7
|
+
loadingError: null,
|
|
8
|
+
loadingStatus: n.IDLE,
|
|
9
|
+
matchKeyField: null,
|
|
10
|
+
parsedFasta: null,
|
|
11
|
+
parsedMetadata: null,
|
|
12
|
+
rawFasta: "",
|
|
13
|
+
rawMetadata: ""
|
|
14
|
+
}), i = (i) => {
|
|
15
|
+
let { get: a, set: o } = i, s = (e) => o(e);
|
|
16
|
+
return {
|
|
17
|
+
resetDataset: () => s(r()),
|
|
18
|
+
setColumnMatchCounts: (e) => s({ columnMatchCounts: e }),
|
|
19
|
+
setData: async (r, i) => {
|
|
20
|
+
let o = t.parseFasta(r);
|
|
21
|
+
if (o.error) throw s({
|
|
22
|
+
loadingError: o.error,
|
|
23
|
+
loadingStatus: n.ERROR
|
|
24
|
+
}), Error(o.error);
|
|
25
|
+
s({
|
|
26
|
+
parsedFasta: o,
|
|
27
|
+
rawFasta: r
|
|
28
|
+
});
|
|
29
|
+
let c;
|
|
30
|
+
if (i) {
|
|
31
|
+
if (c = e.parseTsv(i), c.error) throw s({
|
|
32
|
+
loadingError: c.error,
|
|
33
|
+
loadingStatus: n.ERROR
|
|
34
|
+
}), Error(c.error);
|
|
35
|
+
s({
|
|
36
|
+
parsedMetadata: c,
|
|
37
|
+
rawMetadata: i
|
|
38
|
+
});
|
|
39
|
+
let t = o.sequences.map((e) => e.id), { bestColumn: r, matchCounts: l } = e.findBestMatchingColumn(c.columns, c.recordsByColumn, t);
|
|
40
|
+
a().setColumnMatchCounts(l), a().setMatchKeyField(r);
|
|
41
|
+
}
|
|
42
|
+
return s({
|
|
43
|
+
loadingError: null,
|
|
44
|
+
loadingStatus: n.SUCCESS
|
|
45
|
+
}), Promise.resolve({
|
|
46
|
+
fastaResult: o,
|
|
47
|
+
metadataResult: c
|
|
48
|
+
});
|
|
49
|
+
},
|
|
50
|
+
setLoadingStatus: (e) => s({ loadingStatus: e }),
|
|
51
|
+
setMatchKeyField: (e) => s({ matchKeyField: e })
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
//#endregion
|
|
55
|
+
export { i as createFastaDataStoreActions, r as createFastaDataStoreInitialState };
|
|
56
|
+
|
|
57
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["createFastaDataStoreInitialState","LOADING_STATUS","createFastaDataStoreActions","kwArgs","setBaseState","set","partial","counts","parsedFasta","FastaUtil","fasta","parsedMetadata","tsv","MetaDataUtil","fastaIds","s","get","matchCounts","bestColumn","status","field"],"sources":["../../../src/stores/fastaDataStore/fastaDataStore.ts"],"sourcesContent":["import type { StoreApi } from 'zustand';\n\nimport type { FastaParseResult } from '../../models/fasta';\nimport { LOADING_STATUS } from '../../models/fasta';\nimport type { MetadataParseResult } from '../../models/metadata';\nimport { FastaUtil } from '../../utils/FastaUtil';\nimport { MetaDataUtil } from '../../utils/MetaDataUtil';\n\nexport type FastaDataStore = FastaDataStoreActions & FastaDataStoreState;\n\nexport interface FastaDataStoreActions {\n resetDataset: () => void;\n setColumnMatchCounts: (counts: Record<string, number>) => void;\n setData: (fasta: string, tsv?: string) => Promise<{ fastaResult: FastaParseResult; metadataResult?: MetadataParseResult }>;\n setLoadingStatus: (status: LOADING_STATUS) => void;\n setMatchKeyField: (field: null | string) => void;\n}\n\nexport interface FastaDataStoreState {\n columnMatchCounts: Record<string, number>;\n loadingError: null | string;\n loadingStatus: LOADING_STATUS;\n matchKeyField: null | string;\n parsedFasta: FastaParseResult | null;\n parsedMetadata: MetadataParseResult | null;\n rawFasta: string;\n rawMetadata: string;\n}\n\nexport const createFastaDataStoreInitialState = (): FastaDataStoreState => ({\n columnMatchCounts: {},\n loadingError: null,\n loadingStatus: LOADING_STATUS.IDLE,\n matchKeyField: null,\n parsedFasta: null,\n parsedMetadata: null,\n rawFasta: '',\n rawMetadata: '',\n});\n\n\ntype Get<T extends FastaDataStore> = StoreApi<T>['getState'];\ntype Set<T extends FastaDataStore> = StoreApi<T>['setState'];\n\nexport const createFastaDataStoreActions = <T extends FastaDataStore>(kwArgs: { get: Get<T>; set: Set<T> }): FastaDataStoreActions => {\n const { get, set } = kwArgs;\n const setBaseState = (partial: Partial<FastaDataStoreState>) => set(partial as Partial<T>);\n\n return {\n resetDataset: () => setBaseState(createFastaDataStoreInitialState()),\n setColumnMatchCounts: (counts: Record<string, number>) => setBaseState({ columnMatchCounts: counts }),\n setData: async (fasta: string, tsv?: string) => {\n const parsedFasta = FastaUtil.parseFasta(fasta);\n\n if (parsedFasta.error) {\n setBaseState({\n loadingError: parsedFasta.error,\n loadingStatus: LOADING_STATUS.ERROR,\n });\n throw new Error(parsedFasta.error);\n }\n\n setBaseState({\n parsedFasta,\n rawFasta: fasta,\n });\n\n let parsedMetadata: MetadataParseResult | undefined;\n if (tsv) {\n parsedMetadata = MetaDataUtil.parseTsv(tsv);\n if (parsedMetadata.error) {\n setBaseState({\n loadingError: parsedMetadata.error,\n loadingStatus: LOADING_STATUS.ERROR,\n });\n throw new Error(parsedMetadata.error);\n }\n\n setBaseState({\n parsedMetadata,\n rawMetadata: tsv,\n });\n\n const fastaIds = parsedFasta.sequences.map((s) => s.id);\n const { bestColumn, matchCounts } = MetaDataUtil.findBestMatchingColumn(\n parsedMetadata.columns,\n parsedMetadata.recordsByColumn,\n fastaIds,\n );\n get().setColumnMatchCounts(matchCounts);\n get().setMatchKeyField(bestColumn);\n }\n\n setBaseState({\n loadingError: null,\n loadingStatus: LOADING_STATUS.SUCCESS,\n });\n return Promise.resolve({ fastaResult: parsedFasta, metadataResult: parsedMetadata });\n },\n setLoadingStatus: (status: LOADING_STATUS) => setBaseState({ loadingStatus: status }),\n setMatchKeyField: (field: null | string) => setBaseState({ matchKeyField: field }),\n };\n};\n"],"mappings":";;;;AA6BA,IAAaA,WAA+D;CAC1E,mBAAmB,CAAC;CACpB,cAAc;CACd,eAAeC,EAAe;CAC9B,eAAe;CACf,aAAa;CACb,gBAAgB;CAChB,UAAU;CACV,aAAa;AACf,IAMaC,KAAyD,MAAgE;CACpI,IAAM,EAAE,QAAK,WAAQC,GACfC,KAAgB,MAA0CC,EAAIC,CAAqB;CAEzF,OAAO;EACL,oBAAoBF,EAAaJ,EAAiC,CAAC;EACnE,uBAAuB,MAAmCI,EAAa,EAAE,mBAAmBG,EAAO,CAAC;EACpG,SAAS,OAAO,GAAe,MAAiB;GAC9C,IAAMC,IAAcC,EAAU,WAAWC,CAAK;GAE9C,IAAIF,EAAY,OAKd,MAJAJ,EAAa;IACX,cAAcI,EAAY;IAC1B,eAAeP,EAAe;GAChC,CAAC,GACS,MAAMO,EAAY,KAAK;GAGnC,EAAa;IACX;IACA,UAAUE;GACZ,CAAC;GAED,IAAIC;GACJ,IAAIC,GAAK;IAEP,IADA,IAAiBC,EAAa,SAASD,CAAG,GACtCD,EAAe,OAKjB,MAJAP,EAAa;KACX,cAAcO,EAAe;KAC7B,eAAeV,EAAe;IAChC,CAAC,GACS,MAAMU,EAAe,KAAK;IAGtC,EAAa;KACX;KACA,aAAaC;IACf,CAAC;IAED,IAAME,IAAWN,EAAY,UAAU,KAAK,MAAMO,EAAE,EAAE,GAChD,EAAE,eAAY,mBAAgBF,EAAa,uBAC/CF,EAAe,SACfA,EAAe,iBACfG,CACF;IAEA,AADAE,EAAI,CAAC,CAAC,qBAAqBC,CAAW,GACtCD,EAAI,CAAC,CAAC,iBAAiBE,CAAU;GACnC;GAMA,OAJAd,EAAa;IACX,cAAc;IACd,eAAeH,EAAe;GAChC,CAAC,GACM,QAAQ,QAAQ;IAAE,aAAaO;IAAa,gBAAgBG;GAAe,CAAC;EACrF;EACA,mBAAmB,MAA2BP,EAAa,EAAE,eAAee,EAAO,CAAC;EACpF,mBAAmB,MAAyBf,EAAa,EAAE,eAAegB,EAAM,CAAC;CACnF;AACF"}
|