From f36608ec827c812920539f2f3084681c0d7006e1 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 10:56:39 +0000 Subject: [PATCH 01/32] Initial move of adapters. --- src/adapters/feature-adapter/config.ts | 105 +++++++++ src/adapters/feature-adapter/index.ts | 19 ++ src/adapters/feature-adapter/tooltip.ts | 221 ++++++++++++++++++ src/adapters/interpro-adapter/index.ts | 71 ++++++ src/adapters/proteomics-adapter/index.ts | 76 ++++++ .../structure-adapter/__tests__/index.spec.js | 20 ++ .../__tests__/uniprotkbEntryData.ts | 78 +++++++ .../__tests__/uniprotkbFeaturesData.ts | 81 +++++++ src/adapters/structure-adapter/index.ts | 105 +++++++++ src/adapters/structure-adapter/tooltip.ts | 18 ++ src/adapters/variation-adapter/index.ts | 40 ++++ src/adapters/variation-adapter/tooltip.ts | 138 +++++++++++ src/adapters/variation-adapter/types.ts | 198 ++++++++++++++++ src/utils.ts | 12 + 14 files changed, 1182 insertions(+) create mode 100644 src/adapters/feature-adapter/config.ts create mode 100644 src/adapters/feature-adapter/index.ts create mode 100644 src/adapters/feature-adapter/tooltip.ts create mode 100644 src/adapters/interpro-adapter/index.ts create mode 100644 src/adapters/proteomics-adapter/index.ts create mode 100644 src/adapters/structure-adapter/__tests__/index.spec.js create mode 100644 src/adapters/structure-adapter/__tests__/uniprotkbEntryData.ts create mode 100644 src/adapters/structure-adapter/__tests__/uniprotkbFeaturesData.ts create mode 100644 src/adapters/structure-adapter/index.ts create mode 100644 src/adapters/structure-adapter/tooltip.ts create mode 100644 src/adapters/variation-adapter/index.ts create mode 100644 src/adapters/variation-adapter/tooltip.ts create mode 100644 src/adapters/variation-adapter/types.ts create mode 100644 src/utils.ts diff --git a/src/adapters/feature-adapter/config.ts b/src/adapters/feature-adapter/config.ts new file mode 100644 index 0000000..6de078e --- /dev/null +++ b/src/adapters/feature-adapter/config.ts @@ -0,0 +1,105 @@ +const ecoMap = [ + { + name: 'ECO:0000269', + description: 'Manual assertion based on experiment', + shortDescription: 'Publication', + acronym: 'EXP', + isManual: true, + }, + { + name: 'ECO:0000303', + description: 'Manual assertion based on opinion', + shortDescription: 'Publication', + acronym: 'NAS', + isManual: true, + }, + { + name: 'ECO:0000305', + description: 'Manual assertion inferred by curator', + shortDescription: 'Curated', + acronym: 'IC', + isManual: true, + }, + { + name: 'ECO:0000250', + description: 'Manual assertion inferred from sequence similarity', + shortDescription: 'By similarity', + acronym: 'ISS', + isManual: true, + }, + { + name: 'ECO:0000255', + description: 'Manual assertion according to rules', + shortDescription: 'Sequence Analysis', + acronym: 'ISM', + isManual: true, + }, + { + name: 'ECO:0007744', + description: + 'Manual assertion inferred from combination of experimental and computational evidence', + shortDescription: 'Combined sources', + acronym: 'MIXM', + isManual: true, + }, + { + name: 'ECO:0000312', + description: 'Manual assertion inferred from database entries', + shortDescription: 'Imported', + acronym: 'MI', + isManual: true, + }, + { + name: 'ECO:0000256', + description: 'Automatic assertion according to rules', + shortDescription: 'Automatic annotation', + acronym: 'AA', + }, + { + name: 'ECO:0000259', + description: 'Automatic assertion inferred from signature match', + shortDescription: 'Automatic annotation', + acronym: 'AA', + }, + { + name: 'ECO:0007829', + description: + 'Automatic assertion inferred from combination of experimental and computational evidence', + shortDescription: 'Combined sources', + acronym: 'MIXA', + }, + /* ECO:0007829 replaced ECO:0000213 from release 2022_02. + Some evidences still have the obsolete code. eg: https://www.ebi.ac.uk/proteins/api/antigen/P49841 + It is better to show the evidence rather than being it empty */ + { + name: 'ECO:0000213', + description: + 'Automatic assertion inferred from combination of experimental and computational evidence', + shortDescription: 'Combined sources', + acronym: 'MIXA', + }, + // ECO:0007744 replaced ECO:0000244 from release 2022_02. Same as above + { + name: 'ECO:0000244', + description: + 'Manual assertion inferred from combination of experimental and computational evidence', + shortDescription: 'Combined sources', + acronym: 'MIXM', + isManual: true, + }, + { + name: 'ECO:0000313', + description: 'Automatic assertion inferred from database entries', + shortDescription: 'Imported', + acronym: 'AI', + }, + { + name: 'ECO:0000260', + description: 'Manual assertion inferred from signature match', + shortDescription: 'InterPro annotation', + acronym: 'SGNM', + isManual: true, + }, +]; + +export default ecoMap; diff --git a/src/adapters/feature-adapter/index.ts b/src/adapters/feature-adapter/index.ts new file mode 100644 index 0000000..edd39c8 --- /dev/null +++ b/src/adapters/feature-adapter/index.ts @@ -0,0 +1,19 @@ +import { renameProperties } from '../../utils'; +import { formatTooltip } from './tooltip'; + +const transformData = (data) => { + let transformedData = []; + const { features } = data; + if (features && features.length > 0) { + transformedData = features.map((feature) => { + return { + ...feature, + tooltipContent: formatTooltip(feature), + }; + }); + transformedData = renameProperties(transformedData); + } + return transformedData; +}; + +export default transformData; diff --git a/src/adapters/feature-adapter/tooltip.ts b/src/adapters/feature-adapter/tooltip.ts new file mode 100644 index 0000000..fdde6d7 --- /dev/null +++ b/src/adapters/feature-adapter/tooltip.ts @@ -0,0 +1,221 @@ +import ecoMap from './config'; + +const formatSource = (source) => { + if (source.name?.toLowerCase() === 'PubMed'.toLowerCase()) { + return `${source.id} (${source.name} EuropePMC)`; + } + const sourceLink = ` ${source.id}`; + if (source.name) { + // Temporary until we get the expected value as 'PeptideAtlas' instead of 'HppPeptideAtlas' + if (source.name.startsWith('Hpp')) { + return `${sourceLink} (${source.name.slice(3)})`; + } + return `${sourceLink} (${source.name})`; + } + return sourceLink; +}; + +export const getEvidenceFromCodes = (evidenceList) => { + if (!evidenceList) return ``; + return ` + + `; +}; + +export const formatXrefs = (xrefs) => { + return ``; +}; + +const getPTMEvidence = (ptms) => { + if (!ptms) return ``; + const ids = ptms.flatMap(({ dbReferences }) => + dbReferences.map((ref) => ref.id) + ); + const uniqueIds = [...new Set(ids.flat())]; + // Urls in the payload are not relevant. For 'Glue project' dataset, Dataset ID and publication reference is hardcoded. Need to be checked in 2024 if it still exists in the payload + const proteomexchange = + 'https://proteomecentral.proteomexchange.org/dataset/'; + return ` + + `; +}; + +const formatPTMPeptidoform = (peptide, ptms) => { + if (!ptms) return ``; + const modificationValues = ptms.map((ptm) => ({ + name: ptm.name, + position: ptm.position, + })); + let peptidoform = ''; + let lastModPosition = 0; + modificationValues.forEach((p) => { + peptidoform = `${peptidoform}${peptide.slice( + lastModPosition, + p.position + )}[${p.name}]`; + lastModPosition = p.position; + }); + // Add last remaining part of the peptide if any + peptidoform = `${peptidoform}${peptide.slice(lastModPosition)}`; + return `

${peptidoform}

`; +}; + +// At the moment, there is only phospho data. In future we may have more, the below AA sites have to be updated to accomodate more. +const AAPhosphoSites = { + A: 'alanine', + S: 'serine', + T: 'threonine', + Y: 'tyrosine', +}; + +const findModifiedResidueName = (feature, ptm) => { + const { peptide, begin: peptideStart } = feature; + const proteinLocation = Number(peptideStart) + ptm.position - 1; + const modifiedResidue = peptide.charAt(ptm.position - 1); // CharAt index starts from 0 + return `${proteinLocation} phospho${AAPhosphoSites[modifiedResidue]}`; +}; + +export const formatTooltip = (feature) => { + const evidenceHTML = + feature.type === 'PROTEOMICS_PTM' + ? getPTMEvidence(feature.ptms) + : getEvidenceFromCodes(feature.evidences); + const ptms = + feature.type === 'PROTEOMICS_PTM' && + feature.ptms.map((ptm) => findModifiedResidueName(feature, ptm)); + + const dataset = + feature.type === 'PROTEOMICS_PTM' && + feature.ptms.flatMap(({ dbReferences }) => + dbReferences.map((ref) => ref.id) + ); + + let { description } = feature; + + if (feature.type === 'BINDING' || feature.type === 'Binding site') { + let bindingDescription = ''; + if (feature.ligandPart) { + bindingDescription += `${feature.ligandPart.name} of `; + } + if (feature.ligand) { + bindingDescription += feature.ligand.name; + } + if (feature.description) { + bindingDescription += `; ${feature.description}`; + } + description = bindingDescription; + } + + try { + return ` + ${description ? `
Description

${description}

` : ``} + ${ + feature.matchScore + ? `
Match score

${feature.matchScore}%

` + : `` + } + ${feature.ftId ? `
Feature ID

${feature.ftId}

` : ``} + ${ + feature.alternativeSequence + ? `
Alternative sequence

${feature.alternativeSequence}

` + : `` + } + ${ + ptms + ? `
PTMs
+ ` + : '' + } + ${ + feature.peptide && feature.type === 'PROTEOMICS_PTM' + ? `
Peptidoform

${formatPTMPeptidoform( + feature.peptide, + feature.ptms + )}

` + : `` + } + ${ + feature.peptide && feature.type !== 'PROTEOMICS_PTM' + ? `
Peptide

${feature.peptide}

` + : `` + } + ${ + feature.xrefs + ? `
Cross-references
${formatXrefs(feature.xrefs)}` + : `` + } + ${evidenceHTML ? `
Evidence
${evidenceHTML}` : ``} + ${ + feature.ptms && dataset && !dataset.includes('Glue project') + ? `
PTM statistical attributes
` + : '' + } + `; + } catch (error) { + console.error(error); + return ''; + } +}; diff --git a/src/adapters/interpro-adapter/index.ts b/src/adapters/interpro-adapter/index.ts new file mode 100644 index 0000000..cd750ee --- /dev/null +++ b/src/adapters/interpro-adapter/index.ts @@ -0,0 +1,71 @@ +import ColorHash from 'color-hash'; + +// Copied from InterPro to replicate the same colours for the representative domains +/* eslint-disable no-magic-numbers */ +const colorHash = new ColorHash({ + hash: 'bkdr', + saturation: [0.65, 0.35, 0.5], + lightness: [0.65, 0.35, 0.5], +}); +/* eslint-enable no-magic-numbers */ + +const transformData = (data) => { + try { + return data?.results?.map(({ metadata, proteins }) => ({ + ...metadata, + locations: proteins[0].entry_protein_locations, + start: proteins[0].entry_protein_locations + ? Math.min( + ...proteins[0].entry_protein_locations.map((location) => + Math.min(...location.fragments.map((fragment) => fragment.start)) + ) + ) + : '', + end: proteins[0].entry_protein_locations + ? Math.max( + ...proteins[0].entry_protein_locations?.map((location) => + Math.max(...location.fragments.map((fragment) => fragment.end)) + ) + ) + : '', + color: colorHash.hex( + metadata.accession.toLowerCase().split('').reverse().join('') + ), + tooltipContent: ` +
Accession
+

+ + ${metadata.accession} + +

+
Name
+

${metadata.name}

+ ${ + metadata.integrated + ? `
Integrated into
+

+ + ${metadata.integrated} + +

` + : '' + } + `, + length: proteins[0].protein_length, + })); + } catch (error) { + throw new Error('Failed transforming the data'); + } +}; + +export default transformData; diff --git a/src/adapters/proteomics-adapter/index.ts b/src/adapters/proteomics-adapter/index.ts new file mode 100644 index 0000000..815d88f --- /dev/null +++ b/src/adapters/proteomics-adapter/index.ts @@ -0,0 +1,76 @@ +import { renameProperties } from '../../utils'; +import { formatTooltip } from '../feature-adapter/tooltip'; + +const proteomicsTrackProperties = (feature) => { + return { + category: 'PROTEOMICS', + type: feature.unique ? 'unique' : 'non_unique', + tooltipContent: formatTooltip(feature), + }; +}; + +const transformData = (data) => { + let adaptedData = []; + + if (data && data.length !== 0) { + /* Important: The PTM map is a temporary patch until multiple modifications are shown in the peptide. At this point, only 'phospho' sites are of interest. + Once they are available in the data, there is no need for the below merging */ + + // To merge PTM data present in same residue in a same length peptide, have a map [key: start-end-phospho site 1-... phosphosite n, value: corresponding feature elements] + const ptmMap = {}; + data.features.forEach((feature) => { + let ft = `${feature.begin}-${feature.end}`; + if (feature.ptms) { + feature.ptms.forEach((ptm) => { + ft += `-${ptm.position}`; + }); + ptmMap[ft] = ft in ptmMap ? [...ptmMap[ft], feature] : [feature]; + } + }); + + // The else part alone is enough if the PTM information need not be merged. + if (Object.keys(ptmMap).length) { + adaptedData = Object.values(ptmMap).map((features) => { + // Only the dbReferences have to be merged as the rest is all the same + const mergedDbReferences = []; + features.forEach((feature) => { + feature.ptms.forEach((ptm) => { + ptm.dbReferences.forEach((dbReference) => { + mergedDbReferences.push(dbReference); + }); + }); + }); + + const mergedFeatures = { + type: features[0].type, + begin: features[0].begin, + end: features[0].end, + xrefs: features[0].xrefs, + evidences: features[0].evidences, + peptide: features[0].peptide, + unique: features[0].unique, + ptms: features[0].ptms.map((ptm) => ({ + name: ptm.name, + position: ptm.position, + sources: ptm.sources, + dbReferences: mergedDbReferences, + })), + }; + + return Object.assign( + mergedFeatures, + proteomicsTrackProperties(mergedFeatures) + ); + }, []); + } else { + adaptedData = data.features.map((feature) => { + return Object.assign(feature, proteomicsTrackProperties(feature)); + }); + } + + adaptedData = renameProperties(adaptedData); + } + return adaptedData; +}; + +export default transformData; diff --git a/src/adapters/structure-adapter/__tests__/index.spec.js b/src/adapters/structure-adapter/__tests__/index.spec.js new file mode 100644 index 0000000..fe5eb45 --- /dev/null +++ b/src/adapters/structure-adapter/__tests__/index.spec.js @@ -0,0 +1,20 @@ +import { + getAllFeatureStructures, + mergeOverlappingIntervals +} from "../src/StructureDataParser"; +import { getEntryTestData } from "./UniProtEntryData"; + +describe("StructureDataParser", () => { + it("should turn structures into features", () => { + const entryData = getEntryTestData(); + const features = getAllFeatureStructures(entryData); + expect(features).toMatchSnapshot(); + }); + + it("should merge Overlapping Intervals", () => { + const entryData = getEntryTestData(); + const features = getAllFeatureStructures(entryData); + const overlapping = mergeOverlappingIntervals(features); + expect(overlapping).toMatchSnapshot(); + }); +}); diff --git a/src/adapters/structure-adapter/__tests__/uniprotkbEntryData.ts b/src/adapters/structure-adapter/__tests__/uniprotkbEntryData.ts new file mode 100644 index 0000000..f5e3568 --- /dev/null +++ b/src/adapters/structure-adapter/__tests__/uniprotkbEntryData.ts @@ -0,0 +1,78 @@ +const myTestData = { + accession: 'P01234', + id: 'A4_HUMAN_mocked', + dbReferences: [ + { + type: 'UniGene', + id: 'Hs.434980', + }, + { + type: 'PDB', + id: '1AAP', + properties: { + method: 'X-ray', + resolution: '1.50 A', + }, + }, + { + type: 'PDB', + id: '1AMB', + properties: { + method: 'NMR', + chains: 'A=672-699', + }, + }, + { + type: 'PDB', + id: '1AMC', + properties: { + method: 'NMR', + chains: 'A=672-699', + }, + }, + { + type: 'PDB', + id: '1AML', + properties: { + method: 'NMR', + chains: 'A=672-711', + }, + }, + { + type: 'PDB', + id: '1BA4', + properties: { + method: 'NMR', + chains: 'A=672-711', + }, + }, + { + type: 'PROSITE', + id: 'PS00280', + properties: { + 'match status': '1', + 'entry name': 'BPTI_KUNITZ_1', + }, + }, + { + type: 'PROSITE', + id: 'PS50279', + properties: { + 'match status': '1', + 'entry name': 'BPTI_KUNITZ_2', + }, + }, + ], + sequence: { + version: 3, + length: 770, + mass: 86943, + modified: '1991-11-01', + sequence: + 'MLPGLALLLLAAWTARALEVPTDGNAGLLAEPQIAMFCGRLNMHMNVQNGKWDSDPSGTKTCIDTKEGILQYCQEVYPELQITNVVEANQPVTIQNWCKRGRKQCKTHPHFVIPYRCLVGEFVSDALLVPDKCKFLHQERMDVCETHLHWHTVAKETCSEKSTNLHDYGMLLPCGIDKFRGVEFVCCPLAEESDNVDSADAEEDDSDVWWGGADTDYADGSEDKVVEVAEEEEVAEVEEEEADDDEDDEDGDEVEEEAEEPYEEATERTTSIATTTTTTTESVEEVVREVCSEQAETGPCRAMISRWYFDVTEGKCAPFFYGGCGGNRNNFDTEEYCMAVCGSAMSQSLLKTTQEPLARDPVKLPTTAASTPDAVDKYLETPGDENEHAHFQKAKERLEAKHRERMSQVMREWEEAERQAKNLPKADKKAVIQHFQEKVESLEQEAANERQQLVETHMARVEAMLNDRRRLALENYITALQAVPPRPRHVFNMLKKYVRAEQKDRQHTLKHFEHVRMVDPKKAAQIRSQVMTHLRVIYERMNQSLSLLYNVPAVAEEIQDEVDELLQKEQNYSDDVLANMISEPRISYGNDALMPSLTETKTTVELLPVNGEFSLDDLQPWHSFGADSVPANTENEVEPVDARPAADRGLTTRPGSGLTNIKTEEISEVKMDAEFRHDSGYEVHHQKLVFFAEDVGSNKGAIIGLMVGGVVIATVIVITLVMLKKKQYTSIHHGVVEVDAAVTPEERHLSKMQQNGYENPTYKFFEQMQN', + }, +}; + +export function getEntryTestData() { + return myTestData; +} diff --git a/src/adapters/structure-adapter/__tests__/uniprotkbFeaturesData.ts b/src/adapters/structure-adapter/__tests__/uniprotkbFeaturesData.ts new file mode 100644 index 0000000..7070c2f --- /dev/null +++ b/src/adapters/structure-adapter/__tests__/uniprotkbFeaturesData.ts @@ -0,0 +1,81 @@ +const myFeaturesTestData = { + accession: 'P01234', + sequence: + 'MLPGLALLLLAAWTARALEVPTDGNAGLLAEPQIAMFCGRLNMHMNVQNGKWDSDPSGTKTCIDTKEGILQYCQEVYPELQITNVVEANQPVTIQNWCKRGRKQCKTHPHFVIPYRCLVGEFVSDALLVPDKCKFLHQERMDVCETHLHWHTVAKETCSEKSTNLHDYGMLLPCGIDKFRGVEFVCCPLAEESDNVDSADAEEDDSDVWWGGADTDYADGSEDKVVEVAEEEEVAEVEEEEADDDEDDEDGDEVEEEAEEPYEEATERTTSIATTTTTTTESVEEVVREVCSEQAETGPCRAMISRWYFDVTEGKCAPFFYGGCGGNRNNFDTEEYCMAVCGSAMSQSLLKTTQEPLARDPVKLPTTAASTPDAVDKYLETPGDENEHAHFQKAKERLEAKHRERMSQVMREWEEAERQAKNLPKADKKAVIQHFQEKVESLEQEAANERQQLVETHMARVEAMLNDRRRLALENYITALQAVPPRPRHVFNMLKKYVRAEQKDRQHTLKHFEHVRMVDPKKAAQIRSQVMTHLRVIYERMNQSLSLLYNVPAVAEEIQDEVDELLQKEQNYSDDVLANMISEPRISYGNDALMPSLTETKTTVELLPVNGEFSLDDLQPWHSFGADSVPANTENEVEPVDARPAADRGLTTRPGSGLTNIKTEEISEVKMDAEFRHDSGYEVHHQKLVFFAEDVGSNKGAIIGLMVGGVVIATVIVITLVMLKKKQYTSIHHGVVEVDAAVTPEERHLSKMQQNGYENPTYKFFEQMQN', + features: [ + { + type: 'PDB_STRUCTURE', + category: 'STRUCTURAL', + description: 'Method: X-ray. Resolution: 1.50 A. ', + begin: 0, + end: 0, + xrefs: [ + { + name: 'PDB', + id: '1AAP', + url: 'http://www.ebi.ac.uk/pdbe-srv/view/entry/1AAP', + }, + ], + }, + { + type: 'PDB_STRUCTURE', + category: 'STRUCTURAL', + description: 'Method: NMR. Chains: A=672-699. ', + begin: 672, + end: 699, + xrefs: [ + { + name: 'PDB', + id: '1AMB', + url: 'http://www.ebi.ac.uk/pdbe-srv/view/entry/1AMB', + }, + ], + }, + { + type: 'PDB_STRUCTURE', + category: 'STRUCTURAL', + description: 'Method: NMR. Chains: A=672-699. ', + begin: 672, + end: 699, + xrefs: [ + { + name: 'PDB', + id: '1AMC', + url: 'http://www.ebi.ac.uk/pdbe-srv/view/entry/1AMC', + }, + ], + }, + { + type: 'PDB_STRUCTURE', + category: 'STRUCTURAL', + description: 'Method: NMR. Chains: A=672-711. ', + begin: 672, + end: 711, + xrefs: [ + { + name: 'PDB', + id: '1AML', + url: 'http://www.ebi.ac.uk/pdbe-srv/view/entry/1AML', + }, + ], + }, + { + type: 'PDB_STRUCTURE', + category: 'STRUCTURAL', + description: 'Method: NMR. Chains: A=672-711. ', + begin: 672, + end: 711, + xrefs: [ + { + name: 'PDB', + id: '1BA4', + url: 'http://www.ebi.ac.uk/pdbe-srv/view/entry/1BA4', + }, + ], + }, + ], +}; + +export function getFeaturesTestData() { + return myFeaturesTestData; +} diff --git a/src/adapters/structure-adapter/index.ts b/src/adapters/structure-adapter/index.ts new file mode 100644 index 0000000..48275c9 --- /dev/null +++ b/src/adapters/structure-adapter/index.ts @@ -0,0 +1,105 @@ +import { formatTooltip } from './tooltip'; + +const featureType = 'PDBE_COVER'; +const featureCategory = 'STRUCTURE_COVERAGE'; + +const capitalizeFirstLetter = (word) => { + return word.charAt(0).toUpperCase() + word.slice(1); +}; + +const getDescription = (properties) => { + return Object.keys(properties).reduce( + (accumulator, propertyKey) => + `${accumulator}${capitalizeFirstLetter(propertyKey)}: ${ + properties[propertyKey] + }. `, + '' + ); +}; + +const parseChainString = (value) => { + const posEqual = value.indexOf('='); + const posDash = value.indexOf('-'); + if (posEqual === -1 || posDash === -1) { + return { start: 0, end: 0 }; + } + return { + start: +value.slice(posEqual + 1, posDash), + end: +value.slice(posDash + 1), + }; +}; + +// Iterate over references and extract chain start and end +export const getAllFeatureStructures = (data) => { + return data.dbReferences + .filter((reference) => { + return reference.type === 'PDB'; + }) + .map((structureReference) => { + const parsedChain = structureReference.properties.chains + ? parseChainString(structureReference.properties.chains) + : { start: 0, end: 0 }; + return { + type: featureType, + category: featureCategory, + structures: [ + { + description: getDescription(structureReference.properties), + start: parsedChain.start, + end: parsedChain.end, + source: { + id: structureReference.id, + url: `http://www.ebi.ac.uk/pdbe-srv/view/entry/${structureReference.id}`, + }, + }, + ], + start: parsedChain.start, + end: parsedChain.end, + }; + }); +}; + +export const mergeOverlappingIntervals = (structures) => { + if (!structures || structures.length <= 0) { + return []; + } + // Sort by start position + const sortedStructures = structures.sort((a, b) => a.start - b.start); + const mergedIntervals = []; + sortedStructures.forEach((structure) => { + const lastItem = mergedIntervals[mergedIntervals.length - 1]; + if ( + !lastItem || + // If item doesn't overlap, push it + lastItem.end < structure.start + ) { + mergedIntervals.push(structure); + } + // If the end is bigger update the last one + else if (lastItem.end < structure.end) { + lastItem.end = structure.end; + lastItem.structures.push(structure.structures[0]); + } + // Otherwise just add to last item + else { + lastItem.structures.push(structure.structures[0]); + } + }); + return mergedIntervals; +}; + +const transformData = (data) => { + let transformedData = []; + if (data && data.length !== 0) { + const allFeatureStructures = getAllFeatureStructures(data); + transformedData = mergeOverlappingIntervals(allFeatureStructures); + + transformedData.forEach((feature) => { + /* eslint-disable no-param-reassign */ + feature.tooltipContent = formatTooltip(feature); + }); + } + return transformedData; +}; + +export default transformData; diff --git a/src/adapters/structure-adapter/tooltip.ts b/src/adapters/structure-adapter/tooltip.ts new file mode 100644 index 0000000..811d7dc --- /dev/null +++ b/src/adapters/structure-adapter/tooltip.ts @@ -0,0 +1,18 @@ +const getStructuresHTML = (structureList) => { + return ``; +}; + +export const formatTooltip = (feature) => { + const structuresHTML = getStructuresHTML(feature.structures); + return `${structuresHTML ? `
Structures
${structuresHTML}` : ``}`; +}; diff --git a/src/adapters/variation-adapter/index.ts b/src/adapters/variation-adapter/index.ts new file mode 100644 index 0000000..c19d7f2 --- /dev/null +++ b/src/adapters/variation-adapter/index.ts @@ -0,0 +1,40 @@ +import { + ProteinsAPIVariation, + VariationDatum, +} from '@nightingale-elements/nightingale-variation'; + +import formatTooltip from './tooltip'; + +import { Xref, SourceType, Variant, AminoAcid } from './types'; + +export type TransformedVariant = VariationDatum & Variant; + +const getSourceType = (xrefs: Xref[], sourceType: SourceType) => { + const xrefNames = xrefs ? xrefs.map((ref) => ref.name) : []; + if (sourceType === 'uniprot' || sourceType === 'mixed') { + xrefNames.push('uniprot'); + } + return xrefNames; +}; + +export const transformData = ( + data: ProteinsAPIVariation +): { + sequence: string; + variants: TransformedVariant[]; +} => { + const { sequence, features } = data; + const variants = features.map((variant) => ({ + ...variant, + accession: variant.genomicLocation?.join(', '), + variant: variant.alternativeSequence + ? variant.alternativeSequence + : AminoAcid.Empty, + start: variant.begin, + xrefNames: getSourceType(variant.xrefs, variant.sourceType), + hasPredictions: variant.predictions && variant.predictions.length > 0, + tooltipContent: formatTooltip(variant), + })); + if (!variants) return null; + return { sequence, variants }; +}; diff --git a/src/adapters/variation-adapter/tooltip.ts b/src/adapters/variation-adapter/tooltip.ts new file mode 100644 index 0000000..e209ccf --- /dev/null +++ b/src/adapters/variation-adapter/tooltip.ts @@ -0,0 +1,138 @@ +import { formatXrefs, getEvidenceFromCodes } from 'protvista-feature-adapter'; +import groupBy from 'lodash-es/groupBy'; +import { + Association, + Description, + PopulationFrequency, + Prediction, + Variant, +} from './types'; + +const getDiseaseAssociations = (associations: Association[]): string => + associations + ?.map( + (association) => ` +

Disease association

${association.name}

+ ${ + association.description + ? `<>${association.description}

` + : '' + } + ${ + association.dbReferences + ? `
Cross-references
${formatXrefs( + association.dbReferences + )}` + : '' + } + ${getEvidenceFromCodes(association.evidences)} + ` + ) + .join(''); + +const getDescriptions = (descriptions: Description[]): string => + `
Description
${descriptions + .map((description) => `

${description.value}

`) + .join('')} + `; + +const getPopulationFrequencies = ( + popFrequencies: PopulationFrequency[] +): string => + `
Population frequencies
${popFrequencies + .map( + (freq) => + `

${freq.frequency} - ${freq.populationName} (${freq.source})

` + ) + .join('')}`; + +const getEnsemblCovidLinks = (variant: Variant): string => { + const shouldGenerateLink = variant.locations.some( + (location) => location.source === 'EnsemblViruses' + ); + if (shouldGenerateLink) { + const xref = variant.xrefs.find((xref) => xref.name === 'ENA'); + return xref.id + ? `
Ensembl COVID-19
+

+ ${xref.id} +

` + : ''; + } + return ''; +}; + +const getPredictions = (predictions: Prediction[]): string => { + const groupedPredictions = groupBy(predictions, 'predAlgorithmNameType'); + const counts = Object.keys(groupedPredictions).map((key) => { + const valueGroups = groupBy(groupedPredictions[key], 'predictionValType'); + return { + algorithm: key, + values: Object.keys(valueGroups).map((valKey) => ({ + name: valKey, + count: valueGroups[valKey].length, + })), + }; + }); + return counts + .map( + (countItem) => + `
${countItem.algorithm}
` + ) + .join(''); +}; + +const formatTooltip = (variant: Variant): string => + ` +
Variant

${variant.wildType} > ${ + variant.alternativeSequence || '' + }

+ ${ + variant.populationFrequencies + ? getPopulationFrequencies(variant.populationFrequencies) + : '' + } + ${ + variant.consequenceType + ? `
Consequence

${variant.consequenceType}

` + : `` + } + ${ + variant.somaticStatus + ? `
Somatic

${ + variant.somaticStatus === 0 ? 'No' : 'Yes' + }

` + : `` + } + ${ + variant.genomicLocation?.length + ? `
Location

${variant.genomicLocation.join( + ', ' + )}

` + : `` + } + ${ + variant.ftId + ? `
Feature ID

${variant.ftId}

` + : `` + } + ${ + variant.descriptions + ? getDescriptions(variant.descriptions) + : '' + } + ${ + variant.association + ? getDiseaseAssociations(variant.association) + : '' + } + ${ + variant.predictions ? getPredictions(variant.predictions) : '' + } + ${getEnsemblCovidLinks(variant)} + + `; + +export default formatTooltip; diff --git a/src/adapters/variation-adapter/types.ts b/src/adapters/variation-adapter/types.ts new file mode 100644 index 0000000..c43b96d --- /dev/null +++ b/src/adapters/variation-adapter/types.ts @@ -0,0 +1,198 @@ +export type ProteinsAPIVariation = { + accession: string; + entryName: string; + proteinName: string; + geneName: string; + organismName: string; + proteinExistence: string; + sequence: string; + sequenceChecksum: string; + sequenceVersion: number; + taxid: number; + features: Variant[]; +}; + +export type Variant = { + type: string; + // Note: one of the 2 following fields will be deprecated - don't know yet + alternativeSequence?: AminoAcid; + mutatedType?: AminoAcid; + begin: string; + end: string; + xrefs: Xref[]; + cytogeneticBand: string; + genomicLocation: string[]; + locations: Location[]; + codon?: string; + consequenceType: ConsequenceType; + wildType: AminoAcid; + predictions?: Prediction[]; + somaticStatus: number; + sourceType: SourceType; + descriptions?: Description[]; + clinicalSignificances?: ClinicalSignificance[]; + association?: Association[]; + populationFrequencies?: PopulationFrequency[]; + evidences?: Evidence[]; + ftId?: string; +}; + +export enum AminoAcid { + A = 'A', + C = 'C', + D = 'D', + E = 'E', + Empty = '*', + F = 'F', + G = 'G', + H = 'H', + I = 'I', + K = 'K', + L = 'L', + M = 'M', + N = 'N', + Nl = 'NL', + P = 'P', + Q = 'Q', + R = 'R', + S = 'S', + T = 'T', + V = 'V', + W = 'W', + Y = 'Y', +} + +export type Association = { + name: string; + dbReferences?: Xref[]; + evidences: Evidence[]; + disease: boolean; + description?: string; +}; + +export type Xref = { + name: string; + id: string; + url: string; + alternativeUrl?: string; +}; + +/* + * This has been imported from the backend enums but + * might be best kept as a string... + */ +export enum Source { + CLINVAR = 'ClinVar', + ESP = 'ESP', + EXAC = 'ExAC', + GENOMES1K = '1000Genomes', + BOVINE_SNP50 = 'BovineSNP50', + BOVINE_LD = 'BovineLD', + BOVINE_HD = 'BovineHD', + EQUINE_SNP50 = 'EquineSNP50', + CHICKEN_600K = 'Chicken600K', + KG_HQ = '1kg_hq', + COSMIC = 'cosmic curated', + REVIEWED = 'reviewed', + UNIPROT = 'UniProt', + DBSNP = 'dbSNP', + ENSEMBL = 'Ensembl', + ENSEMBL_PLANTS = 'EnsemblPlants', + VECTORBASE = 'VectorBase', + REFSEQ = 'RefSeq', + DBGAP = 'dbGaP', + DDD = 'DDD', + PHARMCOGKB = 'PharmGKB', + ENSEMBL_FUNGI = 'EnsemblFungi', + ENSEMBL_METAZOA = 'EnsemblMetazoa', + GNOMAD_V2 = 'gnomAD_v2.0', + GNOMAD_V3 = 'gnomAD_v3.0', + TCGA = 'NCI-TCGA', + TCGA_COSMIC = 'NCI-TCGA Cosmic', + DECIPHER = 'ddG2P', + TOPMED = 'TOPMed', + GNOMAD = 'gnomAD', + PHARMGKB = 'pharmgkb', + SGRP = 'SGRP', + SGD = 'SGD', + JEFFARES_SNPS = 'Jeffares_SNPs', + JEFFARES_INDELS = 'Jeffares_Indels', + ENSEMBL_VIRUSES = 'EnsemblViruses', +} + +export type Evidence = { + code: string; + source: Xref; +}; + +export type ClinicalSignificance = { + type: ClinicalSignificanceType; + sources: Source[]; +}; + +export enum ClinicalSignificanceType { + Benign = 'Benign', + Disease = 'Disease', + LikelyBenign = 'Likely benign', + LikelyPathogenic = 'Likely pathogenic', + Pathogenic = 'Pathogenic', + Protective = 'Protective', + VariantOfUncertainSignificance = 'Variant of uncertain significance', +} + +export enum ConsequenceType { + Empty = '-', + Frameshift = 'frameshift', + InframeDeletion = 'inframe deletion', + Insertion = 'insertion', + Missense = 'missense', + StopGained = 'stop gained', +} + +export type Description = { + value: string; + sources: Source[]; +}; + +export type Location = { + loc: string; + seqId: string; + source: Source; +}; + +export type PopulationFrequency = { + populationName: string; + frequency: number; + source: Source; +}; + +export type Prediction = { + predictionValType: PredictionValType; + predictorType: string; + score: number; + predAlgorithmNameType: PredAlgorithmNameType; + sources: Source[]; + version?: string; +}; + +export enum PredAlgorithmNameType { + PolyPhen = 'PolyPhen', + Sift = 'SIFT', +} + +export enum PredictionValType { + Benign = 'benign', + Deleterious = 'deleterious', + DeleteriousLowConfidence = 'deleterious - low confidence', + PossiblyDamaging = 'possibly damaging', + ProbablyDamaging = 'probably damaging', + Tolerated = 'tolerated', + ToleratedLowConfidence = 'tolerated - low confidence', + Unknown = 'unknown', +} + +export enum SourceType { + LargeScaleStudy = 'large_scale_study', + Mixed = 'mixed', + UniProt = 'uniprot', +} diff --git a/src/utils.ts b/src/utils.ts new file mode 100644 index 0000000..74e0c13 --- /dev/null +++ b/src/utils.ts @@ -0,0 +1,12 @@ +export const renameProperties = (features) => { + return features.map((ft) => { + const obj = {}; + if (ft.begin) { + obj.start = ft.begin; + } + return { + ...ft, + ...obj, + }; + }); +}; From a3338aa7d78d1d973dd03d829164f4bab01a71fe Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 11:20:33 +0000 Subject: [PATCH 02/32] Slight restructure. --- .../__mocks__/uniprotkb-entry-data.ts} | 6 ++---- .../__mocks__/uniprotkb-features-data.ts} | 6 ++---- .../__tests__/structure-adapter.spec.js | 19 ++++++++++++++++++ .../config.ts => config/evidence.ts} | 0 .../index.ts => feature-adapter.ts} | 4 ++-- .../index.ts => interpro-adapter.ts} | 0 .../index.ts => proteomics-adapter.ts} | 4 ++-- .../index.ts => structure-adapter.ts} | 2 +- .../structure-adapter/__tests__/index.spec.js | 20 ------------------- .../types.ts => types/variants.ts} | 0 .../index.ts => variation-adapter.ts} | 4 ++-- .../tooltip.ts => tooltips/featureTooltip.ts} | 2 +- .../structureTooltip.ts} | 0 .../variationTooltip.ts} | 2 +- 14 files changed, 32 insertions(+), 37 deletions(-) rename src/adapters/{structure-adapter/__tests__/uniprotkbEntryData.ts => __tests__/__mocks__/uniprotkb-entry-data.ts} (96%) rename src/adapters/{structure-adapter/__tests__/uniprotkbFeaturesData.ts => __tests__/__mocks__/uniprotkb-features-data.ts} (96%) create mode 100644 src/adapters/__tests__/structure-adapter.spec.js rename src/adapters/{feature-adapter/config.ts => config/evidence.ts} (100%) rename src/adapters/{feature-adapter/index.ts => feature-adapter.ts} (79%) rename src/adapters/{interpro-adapter/index.ts => interpro-adapter.ts} (100%) rename src/adapters/{proteomics-adapter/index.ts => proteomics-adapter.ts} (95%) rename src/adapters/{structure-adapter/index.ts => structure-adapter.ts} (97%) delete mode 100644 src/adapters/structure-adapter/__tests__/index.spec.js rename src/adapters/{variation-adapter/types.ts => types/variants.ts} (100%) rename src/adapters/{variation-adapter/index.ts => variation-adapter.ts} (89%) rename src/{adapters/feature-adapter/tooltip.ts => tooltips/featureTooltip.ts} (99%) rename src/{adapters/structure-adapter/tooltip.ts => tooltips/structureTooltip.ts} (100%) rename src/{adapters/variation-adapter/tooltip.ts => tooltips/variationTooltip.ts} (99%) diff --git a/src/adapters/structure-adapter/__tests__/uniprotkbEntryData.ts b/src/adapters/__tests__/__mocks__/uniprotkb-entry-data.ts similarity index 96% rename from src/adapters/structure-adapter/__tests__/uniprotkbEntryData.ts rename to src/adapters/__tests__/__mocks__/uniprotkb-entry-data.ts index f5e3568..24873e6 100644 --- a/src/adapters/structure-adapter/__tests__/uniprotkbEntryData.ts +++ b/src/adapters/__tests__/__mocks__/uniprotkb-entry-data.ts @@ -1,4 +1,4 @@ -const myTestData = { +const data = { accession: 'P01234', id: 'A4_HUMAN_mocked', dbReferences: [ @@ -73,6 +73,4 @@ const myTestData = { }, }; -export function getEntryTestData() { - return myTestData; -} +export default data; diff --git a/src/adapters/structure-adapter/__tests__/uniprotkbFeaturesData.ts b/src/adapters/__tests__/__mocks__/uniprotkb-features-data.ts similarity index 96% rename from src/adapters/structure-adapter/__tests__/uniprotkbFeaturesData.ts rename to src/adapters/__tests__/__mocks__/uniprotkb-features-data.ts index 7070c2f..9475620 100644 --- a/src/adapters/structure-adapter/__tests__/uniprotkbFeaturesData.ts +++ b/src/adapters/__tests__/__mocks__/uniprotkb-features-data.ts @@ -1,4 +1,4 @@ -const myFeaturesTestData = { +const data = { accession: 'P01234', sequence: 'MLPGLALLLLAAWTARALEVPTDGNAGLLAEPQIAMFCGRLNMHMNVQNGKWDSDPSGTKTCIDTKEGILQYCQEVYPELQITNVVEANQPVTIQNWCKRGRKQCKTHPHFVIPYRCLVGEFVSDALLVPDKCKFLHQERMDVCETHLHWHTVAKETCSEKSTNLHDYGMLLPCGIDKFRGVEFVCCPLAEESDNVDSADAEEDDSDVWWGGADTDYADGSEDKVVEVAEEEEVAEVEEEEADDDEDDEDGDEVEEEAEEPYEEATERTTSIATTTTTTTESVEEVVREVCSEQAETGPCRAMISRWYFDVTEGKCAPFFYGGCGGNRNNFDTEEYCMAVCGSAMSQSLLKTTQEPLARDPVKLPTTAASTPDAVDKYLETPGDENEHAHFQKAKERLEAKHRERMSQVMREWEEAERQAKNLPKADKKAVIQHFQEKVESLEQEAANERQQLVETHMARVEAMLNDRRRLALENYITALQAVPPRPRHVFNMLKKYVRAEQKDRQHTLKHFEHVRMVDPKKAAQIRSQVMTHLRVIYERMNQSLSLLYNVPAVAEEIQDEVDELLQKEQNYSDDVLANMISEPRISYGNDALMPSLTETKTTVELLPVNGEFSLDDLQPWHSFGADSVPANTENEVEPVDARPAADRGLTTRPGSGLTNIKTEEISEVKMDAEFRHDSGYEVHHQKLVFFAEDVGSNKGAIIGLMVGGVVIATVIVITLVMLKKKQYTSIHHGVVEVDAAVTPEERHLSKMQQNGYENPTYKFFEQMQN', @@ -76,6 +76,4 @@ const myFeaturesTestData = { ], }; -export function getFeaturesTestData() { - return myFeaturesTestData; -} +export default data; diff --git a/src/adapters/__tests__/structure-adapter.spec.js b/src/adapters/__tests__/structure-adapter.spec.js new file mode 100644 index 0000000..67d3f33 --- /dev/null +++ b/src/adapters/__tests__/structure-adapter.spec.js @@ -0,0 +1,19 @@ +import { + getAllFeatureStructures, + mergeOverlappingIntervals, +} from '../structure-adapter'; + +import entryData from './__mocks__/uniprotkb-entry-data'; +import featuresData from './__mocks__/uniprotkb-features-data'; + +describe('structure data', () => { + it('should turn structures into features', () => { + const features = getAllFeatureStructures(entryData); + expect(features).toMatchSnapshot(); + }); + + it('should merge Overlapping Intervals', () => { + const overlapping = mergeOverlappingIntervals(featuresData); + expect(overlapping).toMatchSnapshot(); + }); +}); diff --git a/src/adapters/feature-adapter/config.ts b/src/adapters/config/evidence.ts similarity index 100% rename from src/adapters/feature-adapter/config.ts rename to src/adapters/config/evidence.ts diff --git a/src/adapters/feature-adapter/index.ts b/src/adapters/feature-adapter.ts similarity index 79% rename from src/adapters/feature-adapter/index.ts rename to src/adapters/feature-adapter.ts index edd39c8..d4402e5 100644 --- a/src/adapters/feature-adapter/index.ts +++ b/src/adapters/feature-adapter.ts @@ -1,5 +1,5 @@ -import { renameProperties } from '../../utils'; -import { formatTooltip } from './tooltip'; +import { renameProperties } from '../utils'; +import { formatTooltip } from '../tooltips/featureTooltip'; const transformData = (data) => { let transformedData = []; diff --git a/src/adapters/interpro-adapter/index.ts b/src/adapters/interpro-adapter.ts similarity index 100% rename from src/adapters/interpro-adapter/index.ts rename to src/adapters/interpro-adapter.ts diff --git a/src/adapters/proteomics-adapter/index.ts b/src/adapters/proteomics-adapter.ts similarity index 95% rename from src/adapters/proteomics-adapter/index.ts rename to src/adapters/proteomics-adapter.ts index 815d88f..a2a2183 100644 --- a/src/adapters/proteomics-adapter/index.ts +++ b/src/adapters/proteomics-adapter.ts @@ -1,5 +1,5 @@ -import { renameProperties } from '../../utils'; -import { formatTooltip } from '../feature-adapter/tooltip'; +import { renameProperties } from '../utils'; +import { formatTooltip } from '../tooltips/featureTooltip'; const proteomicsTrackProperties = (feature) => { return { diff --git a/src/adapters/structure-adapter/index.ts b/src/adapters/structure-adapter.ts similarity index 97% rename from src/adapters/structure-adapter/index.ts rename to src/adapters/structure-adapter.ts index 48275c9..9363383 100644 --- a/src/adapters/structure-adapter/index.ts +++ b/src/adapters/structure-adapter.ts @@ -1,4 +1,4 @@ -import { formatTooltip } from './tooltip'; +import { formatTooltip } from '../tooltips/structureTooltip'; const featureType = 'PDBE_COVER'; const featureCategory = 'STRUCTURE_COVERAGE'; diff --git a/src/adapters/structure-adapter/__tests__/index.spec.js b/src/adapters/structure-adapter/__tests__/index.spec.js deleted file mode 100644 index fe5eb45..0000000 --- a/src/adapters/structure-adapter/__tests__/index.spec.js +++ /dev/null @@ -1,20 +0,0 @@ -import { - getAllFeatureStructures, - mergeOverlappingIntervals -} from "../src/StructureDataParser"; -import { getEntryTestData } from "./UniProtEntryData"; - -describe("StructureDataParser", () => { - it("should turn structures into features", () => { - const entryData = getEntryTestData(); - const features = getAllFeatureStructures(entryData); - expect(features).toMatchSnapshot(); - }); - - it("should merge Overlapping Intervals", () => { - const entryData = getEntryTestData(); - const features = getAllFeatureStructures(entryData); - const overlapping = mergeOverlappingIntervals(features); - expect(overlapping).toMatchSnapshot(); - }); -}); diff --git a/src/adapters/variation-adapter/types.ts b/src/adapters/types/variants.ts similarity index 100% rename from src/adapters/variation-adapter/types.ts rename to src/adapters/types/variants.ts diff --git a/src/adapters/variation-adapter/index.ts b/src/adapters/variation-adapter.ts similarity index 89% rename from src/adapters/variation-adapter/index.ts rename to src/adapters/variation-adapter.ts index c19d7f2..0be394c 100644 --- a/src/adapters/variation-adapter/index.ts +++ b/src/adapters/variation-adapter.ts @@ -3,9 +3,9 @@ import { VariationDatum, } from '@nightingale-elements/nightingale-variation'; -import formatTooltip from './tooltip'; +import formatTooltip from '../tooltips/variationTooltip'; -import { Xref, SourceType, Variant, AminoAcid } from './types'; +import { Xref, SourceType, Variant, AminoAcid } from './types/variants'; export type TransformedVariant = VariationDatum & Variant; diff --git a/src/adapters/feature-adapter/tooltip.ts b/src/tooltips/featureTooltip.ts similarity index 99% rename from src/adapters/feature-adapter/tooltip.ts rename to src/tooltips/featureTooltip.ts index fdde6d7..db6304b 100644 --- a/src/adapters/feature-adapter/tooltip.ts +++ b/src/tooltips/featureTooltip.ts @@ -1,4 +1,4 @@ -import ecoMap from './config'; +import ecoMap from '../adapters/config/evidence'; const formatSource = (source) => { if (source.name?.toLowerCase() === 'PubMed'.toLowerCase()) { diff --git a/src/adapters/structure-adapter/tooltip.ts b/src/tooltips/structureTooltip.ts similarity index 100% rename from src/adapters/structure-adapter/tooltip.ts rename to src/tooltips/structureTooltip.ts diff --git a/src/adapters/variation-adapter/tooltip.ts b/src/tooltips/variationTooltip.ts similarity index 99% rename from src/adapters/variation-adapter/tooltip.ts rename to src/tooltips/variationTooltip.ts index e209ccf..61c3ab6 100644 --- a/src/adapters/variation-adapter/tooltip.ts +++ b/src/tooltips/variationTooltip.ts @@ -6,7 +6,7 @@ import { PopulationFrequency, Prediction, Variant, -} from './types'; +} from '../adapters/types/variants'; const getDiseaseAssociations = (associations: Association[]): string => associations From 274bfbe484c6f124ece45d0a2c19a3ac9bf78951 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 12:06:58 +0000 Subject: [PATCH 03/32] More restructuring. --- .../alphafold-confidence-adapter.ts} | 2 +- .../alphamissense-heatmap-adapter.ts} | 8 +++++--- .../alphamissense-pathogenicity-adapter.ts} | 2 +- .../ptm-exchange-adapter.ts} | 0 .../variation-graph-adapter.ts} | 0 src/{filterConfig.ts => filter-config.ts} | 0 src/index.ts | 2 +- src/loadComponents.ts | 10 ---------- src/protvista-uniprot-structure.ts | 2 +- src/protvista-uniprot.ts | 14 +++++++------- src/{commonTypes.ts => types/common-types.ts} | 0 src/utils.ts | 9 +++++++++ 12 files changed, 25 insertions(+), 24 deletions(-) rename src/{protvista-alphafold-confidence.ts => adapters/alphafold-confidence-adapter.ts} (94%) rename src/{protvista-alphamissense-heatmap.ts => adapters/alphamissense-heatmap-adapter.ts} (84%) rename src/{protvista-alphamissense-pathogenicity.ts => adapters/alphamissense-pathogenicity-adapter.ts} (97%) rename src/{protvista-ptm-exchange.ts => adapters/ptm-exchange-adapter.ts} (100%) rename src/{protvista-variation-graph-adapter.ts => adapters/variation-graph-adapter.ts} (100%) rename src/{filterConfig.ts => filter-config.ts} (100%) delete mode 100644 src/loadComponents.ts rename src/{commonTypes.ts => types/common-types.ts} (100%) diff --git a/src/protvista-alphafold-confidence.ts b/src/adapters/alphafold-confidence-adapter.ts similarity index 94% rename from src/protvista-alphafold-confidence.ts rename to src/adapters/alphafold-confidence-adapter.ts index 7ceb33d..140477a 100644 --- a/src/protvista-alphafold-confidence.ts +++ b/src/adapters/alphafold-confidence-adapter.ts @@ -1,4 +1,4 @@ -import { AlphafoldPayload } from './commonTypes'; +import { AlphafoldPayload } from '../types/common-types'; type AlphafoldConfidencePayload = { residueNumber: Array; diff --git a/src/protvista-alphamissense-heatmap.ts b/src/adapters/alphamissense-heatmap-adapter.ts similarity index 84% rename from src/protvista-alphamissense-heatmap.ts rename to src/adapters/alphamissense-heatmap-adapter.ts index 09ee460..84ac51a 100644 --- a/src/protvista-alphamissense-heatmap.ts +++ b/src/adapters/alphamissense-heatmap-adapter.ts @@ -1,8 +1,8 @@ import { cellSplitter, rowSplitter, -} from './protvista-alphamissense-pathogenicity'; -import { AlphafoldPayload } from './commonTypes'; +} from './alphamissense-pathogenicity-adapter'; +import { AlphafoldPayload } from '../types/common-types'; const parseCSV = (rawText: string): Array> => { const data = []; @@ -24,7 +24,9 @@ const parseCSV = (rawText: string): Array> => { }; // Load and parse -const loadAndParseAnnotations = async (url: string): Promise>> => { +const loadAndParseAnnotations = async ( + url: string +): Promise>> => { try { const payload = await fetch(url); const rawCSV = await payload.text(); diff --git a/src/protvista-alphamissense-pathogenicity.ts b/src/adapters/alphamissense-pathogenicity-adapter.ts similarity index 97% rename from src/protvista-alphamissense-pathogenicity.ts rename to src/adapters/alphamissense-pathogenicity-adapter.ts index 0165114..473479a 100644 --- a/src/protvista-alphamissense-pathogenicity.ts +++ b/src/adapters/alphamissense-pathogenicity-adapter.ts @@ -1,4 +1,4 @@ -import { AlphafoldPayload } from './commonTypes'; +import { AlphafoldPayload } from '../types/common-types'; // from example data // benign: [0.0448,0.3397]: x < 0.34 diff --git a/src/protvista-ptm-exchange.ts b/src/adapters/ptm-exchange-adapter.ts similarity index 100% rename from src/protvista-ptm-exchange.ts rename to src/adapters/ptm-exchange-adapter.ts diff --git a/src/protvista-variation-graph-adapter.ts b/src/adapters/variation-graph-adapter.ts similarity index 100% rename from src/protvista-variation-graph-adapter.ts rename to src/adapters/variation-graph-adapter.ts diff --git a/src/filterConfig.ts b/src/filter-config.ts similarity index 100% rename from src/filterConfig.ts rename to src/filter-config.ts diff --git a/src/index.ts b/src/index.ts index 1bf7cc3..ad17006 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,4 +1,4 @@ -import { loadComponent } from './loadComponents'; +import { loadComponent } from './utils'; import ProtvistaUniprot from './protvista-uniprot'; import _ProtvistaUniprotStructure from './protvista-uniprot-structure'; diff --git a/src/loadComponents.ts b/src/loadComponents.ts deleted file mode 100644 index c33025a..0000000 --- a/src/loadComponents.ts +++ /dev/null @@ -1,10 +0,0 @@ -const loadComponent = function ( - name: string, - elementConstructor: CustomElementConstructor -) { - if (!customElements.get(name)) { - customElements.define(name, elementConstructor); - } -}; - -export { loadComponent }; diff --git a/src/protvista-uniprot-structure.ts b/src/protvista-uniprot-structure.ts index f68109d..dd34b42 100644 --- a/src/protvista-uniprot-structure.ts +++ b/src/protvista-uniprot-structure.ts @@ -6,7 +6,7 @@ import NightingaleStructure, { StructureData, } from '@nightingale-elements/nightingale-structure'; import ProtvistaDatatable from 'protvista-datatable'; -import { loadComponent } from './loadComponents'; +import { loadComponent } from './utils'; import loaderIcon from './icons/spinner.svg'; import downloadIcon from './icons/download.svg'; diff --git a/src/protvista-uniprot.ts b/src/protvista-uniprot.ts index fc01e16..e3bfe7c 100644 --- a/src/protvista-uniprot.ts +++ b/src/protvista-uniprot.ts @@ -23,17 +23,17 @@ import { transformData as _transformDataVariationAdapter, TransformedVariant, } from 'protvista-variation-adapter'; -import { transformData as _transformDataVariationGraphAdapter } from './protvista-variation-graph-adapter'; +import { transformData as _transformDataVariationGraphAdapter } from './adapters/variation-graph-adapter'; import { transformData as _transformDataInterproAdapter } from 'protvista-interpro-adapter'; -import { transformData as _transformDataProteomicsPTMApdapter } from './protvista-ptm-exchange'; -import { transformData as _transformDataAlphaFoldConfidenceAdapter } from './protvista-alphafold-confidence'; -import { transformData as _transformDataAlphaMissensePathogenicityAdapter } from './protvista-alphamissense-pathogenicity'; -import { transformData as _transformDataAlphaMissenseHeatmapAdapter } from './protvista-alphamissense-heatmap'; +import { transformData as _transformDataProteomicsPTMApdapter } from './adapters/ptm-exchange-adapter'; +import { transformData as _transformDataAlphaFoldConfidenceAdapter } from './adapters/alphafold-confidence-adapter'; +import { transformData as _transformDataAlphaMissensePathogenicityAdapter } from './adapters/alphamissense-pathogenicity-adapter'; +import { transformData as _transformDataAlphaMissenseHeatmapAdapter } from './adapters/alphamissense-heatmap-adapter'; import defaultConfig from './config.json'; import _ProtvistaUniprotStructure from './protvista-uniprot-structure'; -import { loadComponent } from './loadComponents'; -import _filterConfig, { colorConfig as _colorConfig } from './filterConfig'; +import { loadComponent } from './utils'; +import _filterConfig, { colorConfig as _colorConfig } from './filter-config'; import { NightingaleEvent } from './types/nightingale-components'; import loaderIcon from './icons/spinner.svg'; diff --git a/src/commonTypes.ts b/src/types/common-types.ts similarity index 100% rename from src/commonTypes.ts rename to src/types/common-types.ts diff --git a/src/utils.ts b/src/utils.ts index 74e0c13..231063a 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -10,3 +10,12 @@ export const renameProperties = (features) => { }; }); }; + +export const loadComponent = function ( + name: string, + elementConstructor: CustomElementConstructor +) { + if (!customElements.get(name)) { + customElements.define(name, elementConstructor); + } +}; From d5a25fad24a79f3fe01a0c3bcf5cc9f2aae8c431 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 12:27:23 +0000 Subject: [PATCH 04/32] Move lots of things around. --- package.json | 1 + src/adapters/alphafold-confidence-adapter.ts | 6 +- src/adapters/alphamissense-heatmap-adapter.ts | 6 +- .../alphamissense-pathogenicity-adapter.ts | 6 +- src/adapters/ptm-exchange-adapter.ts | 4 +- src/adapters/variation-adapter.ts | 4 +- src/adapters/variation-graph-adapter.ts | 43 ++++++++------ src/index.ts | 24 +++----- src/protvista-uniprot.ts | 58 ++++++------------- src/types/common-types.ts | 25 -------- yarn.lock | 2 +- 11 files changed, 72 insertions(+), 107 deletions(-) delete mode 100644 src/types/common-types.ts diff --git a/package.json b/package.json index 7e74b03..5c583a7 100644 --- a/package.json +++ b/package.json @@ -36,6 +36,7 @@ "@nightingale-elements/nightingale-structure": "5.2.0", "@nightingale-elements/nightingale-track": "5.2.0", "@nightingale-elements/nightingale-variation": "5.2.0", + "color-hash": "^2.0.2", "core-js": "^3.13.0", "data-loader": "^2.9.1", "file-saver": "^2.0.2", diff --git a/src/adapters/alphafold-confidence-adapter.ts b/src/adapters/alphafold-confidence-adapter.ts index 140477a..ad20be3 100644 --- a/src/adapters/alphafold-confidence-adapter.ts +++ b/src/adapters/alphafold-confidence-adapter.ts @@ -1,4 +1,4 @@ -import { AlphafoldPayload } from '../types/common-types'; +import { AlphafoldPayload } from './types/alphafold'; type AlphafoldConfidencePayload = { residueNumber: Array; @@ -30,7 +30,7 @@ type PartialProtein = { }; }; -export const transformData = async ( +const transformData = async ( data: AlphafoldPayload, protein: PartialProtein ) => { @@ -41,3 +41,5 @@ export const transformData = async ( return confidenceData?.confidenceCategory.join(''); } }; + +export default transformData; diff --git a/src/adapters/alphamissense-heatmap-adapter.ts b/src/adapters/alphamissense-heatmap-adapter.ts index 84ac51a..073c4a3 100644 --- a/src/adapters/alphamissense-heatmap-adapter.ts +++ b/src/adapters/alphamissense-heatmap-adapter.ts @@ -2,7 +2,7 @@ import { cellSplitter, rowSplitter, } from './alphamissense-pathogenicity-adapter'; -import { AlphafoldPayload } from '../types/common-types'; +import { AlphafoldPayload } from './types/alphafold'; const parseCSV = (rawText: string): Array> => { const data = []; @@ -42,7 +42,7 @@ type PartialProtein = { }; }; -export const transformData = async ( +const transformData = async ( data: AlphafoldPayload, protein: PartialProtein ) => { @@ -52,3 +52,5 @@ export const transformData = async ( return heatmapData; } }; + +export default transformData; diff --git a/src/adapters/alphamissense-pathogenicity-adapter.ts b/src/adapters/alphamissense-pathogenicity-adapter.ts index 473479a..7c9e006 100644 --- a/src/adapters/alphamissense-pathogenicity-adapter.ts +++ b/src/adapters/alphamissense-pathogenicity-adapter.ts @@ -1,4 +1,4 @@ -import { AlphafoldPayload } from '../types/common-types'; +import { AlphafoldPayload } from './types/alphafold'; // from example data // benign: [0.0448,0.3397]: x < 0.34 @@ -87,7 +87,7 @@ type PartialProtein = { }; }; -export const transformData = async ( +const transformData = async ( data: AlphafoldPayload, protein: PartialProtein ) => { @@ -98,3 +98,5 @@ export const transformData = async ( return variationData; } }; + +export default transformData; diff --git a/src/adapters/ptm-exchange-adapter.ts b/src/adapters/ptm-exchange-adapter.ts index 5d513b4..8f0ae10 100644 --- a/src/adapters/ptm-exchange-adapter.ts +++ b/src/adapters/ptm-exchange-adapter.ts @@ -135,7 +135,7 @@ const convertPtmExchangePtms = ( }; }; -export const transformData = (data: ProteomicsPtm) => { +const transformData = (data: ProteomicsPtm) => { if (data) { const { features } = data; @@ -178,3 +178,5 @@ export const transformData = (data: ProteomicsPtm) => { } return []; }; + +export default transformData; diff --git a/src/adapters/variation-adapter.ts b/src/adapters/variation-adapter.ts index 0be394c..3d3a603 100644 --- a/src/adapters/variation-adapter.ts +++ b/src/adapters/variation-adapter.ts @@ -17,7 +17,7 @@ const getSourceType = (xrefs: Xref[], sourceType: SourceType) => { return xrefNames; }; -export const transformData = ( +const transformData = ( data: ProteinsAPIVariation ): { sequence: string; @@ -38,3 +38,5 @@ export const transformData = ( if (!variants) return null; return { sequence, variants }; }; + +export default transformData; diff --git a/src/adapters/variation-graph-adapter.ts b/src/adapters/variation-graph-adapter.ts index 72cabdf..39ca99f 100644 --- a/src/adapters/variation-graph-adapter.ts +++ b/src/adapters/variation-graph-adapter.ts @@ -1,10 +1,10 @@ -export const transformData = (data) => { +const transformData = (data) => { if (data.sequence && data.features.length) { const variants = data.features.map((variant) => ({ - ...variant, - accession: variant.genomicLocation?.join(", "), - start: variant.begin, - })); + ...variant, + accession: variant.genomicLocation?.join(', '), + start: variant.begin, + })); const total = new Uint8ClampedArray(data.sequence.length); const diseaseTotal = new Uint8ClampedArray(data.sequence.length); @@ -28,20 +28,27 @@ export const transformData = (data) => { } const graphData = [ - { - name: 'variant', - range: [0, Math.max(Math.max(...total), Math.max(...diseaseTotal))], - color: 'darkgrey', - values: [...total].map((value, index) => ({ position: index, value: value })), - }, - { - name: 'disease causing variant', - range: [0, Math.max(Math.max(...total), Math.max(...diseaseTotal))], - color: 'red', - values: [...diseaseTotal].map((value, index) => ({ position: index, value: value })), - }, - ]; + { + name: 'variant', + range: [0, Math.max(Math.max(...total), Math.max(...diseaseTotal))], + color: 'darkgrey', + values: [...total].map((value, index) => ({ + position: index, + value: value, + })), + }, + { + name: 'disease causing variant', + range: [0, Math.max(Math.max(...total), Math.max(...diseaseTotal))], + color: 'red', + values: [...diseaseTotal].map((value, index) => ({ + position: index, + value: value, + })), + }, + ]; return graphData; } }; +export default transformData; diff --git a/src/index.ts b/src/index.ts index ad17006..648da9c 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,22 +1,16 @@ import { loadComponent } from './utils'; import ProtvistaUniprot from './protvista-uniprot'; -import _ProtvistaUniprotStructure from './protvista-uniprot-structure'; +import ProtvistaUniprotStructure from './protvista-uniprot-structure'; -import { transformDataFeatureAdapter as _transformDataFeatureAdapter } from './protvista-uniprot'; -import { transformDataProteomicsAdapter as _transformDataProteomicsAdapter } from './protvista-uniprot'; -import { transformDataStructureAdapter as _transformDataStructureAdapter } from './protvista-uniprot'; -import { transformDataVariationAdapter as _transformDataVariationAdapter } from './protvista-uniprot'; -import { transformDataInterproAdapter as _transformDataInterproAdapter } from './protvista-uniprot'; - -export const transformDataFeatureAdapter = _transformDataFeatureAdapter; -export const transformDataProteomicsAdapter = _transformDataProteomicsAdapter; -export const transformDataStructureAdapter = _transformDataStructureAdapter; -export const transformDataVariationAdapter = _transformDataVariationAdapter; -export const transformDataInterproAdapter = _transformDataInterproAdapter; -export const ProtvistaUniprotStructure = _ProtvistaUniprotStructure; +import filterConfig, { colorConfig } from './filter-config'; loadComponent('protvista-uniprot', ProtvistaUniprot); -loadComponent('protvista-uniprot-structure', _ProtvistaUniprotStructure); +loadComponent('protvista-uniprot-structure', ProtvistaUniprotStructure); -export default ProtvistaUniprot; +export { + ProtvistaUniprot as default, + ProtvistaUniprotStructure, + filterConfig, + colorConfig, +}; diff --git a/src/protvista-uniprot.ts b/src/protvista-uniprot.ts index e3bfe7c..dc1ee88 100644 --- a/src/protvista-uniprot.ts +++ b/src/protvista-uniprot.ts @@ -14,54 +14,32 @@ import NightingaleLinegraphTrack from '@nightingale-elements/nightingale-linegra import NightingaleSequenceHeatmap from '@nightingale-elements/nightingale-sequence-heatmap'; import NightingaleFilter from '@nightingale-elements/nightingale-filter'; -import { load } from 'data-loader'; // adapters -import { transformData as _transformDataFeatureAdapter } from 'protvista-feature-adapter'; -import { transformData as _transformDataProteomicsAdapter } from 'protvista-proteomics-adapter'; -import { transformData as _transformDataStructureAdapter } from 'protvista-structure-adapter'; -import { - transformData as _transformDataVariationAdapter, - TransformedVariant, -} from 'protvista-variation-adapter'; -import { transformData as _transformDataVariationGraphAdapter } from './adapters/variation-graph-adapter'; -import { transformData as _transformDataInterproAdapter } from 'protvista-interpro-adapter'; -import { transformData as _transformDataProteomicsPTMApdapter } from './adapters/ptm-exchange-adapter'; -import { transformData as _transformDataAlphaFoldConfidenceAdapter } from './adapters/alphafold-confidence-adapter'; -import { transformData as _transformDataAlphaMissensePathogenicityAdapter } from './adapters/alphamissense-pathogenicity-adapter'; -import { transformData as _transformDataAlphaMissenseHeatmapAdapter } from './adapters/alphamissense-heatmap-adapter'; +import transformDataFeatureAdapter from './adapters/feature-adapter'; +import transformDataProteomicsAdapter from './adapters/proteomics-adapter'; +import transformDataStructureAdapter from './adapters/structure-adapter'; +import transformDataVariationAdapter from './adapters/variation-adapter'; +import transformDataInterproAdapter from './adapters/interpro-adapter'; +import transformDataVariationGraphAdapter from './adapters/variation-graph-adapter'; +import transformDataProteomicsPTMApdapter from './adapters/ptm-exchange-adapter'; +import transformDataAlphaFoldConfidenceAdapter from './adapters/alphafold-confidence-adapter'; +import transformDataAlphaMissensePathogenicityAdapter from './adapters/alphamissense-pathogenicity-adapter'; +import transformDataAlphaMissenseHeatmapAdapter from './adapters/alphamissense-heatmap-adapter'; + +import ProtvistaUniprotStructure from './protvista-uniprot-structure'; -import defaultConfig from './config.json'; -import _ProtvistaUniprotStructure from './protvista-uniprot-structure'; +import { load } from 'data-loader'; import { loadComponent } from './utils'; -import _filterConfig, { colorConfig as _colorConfig } from './filter-config'; + +import filterConfig, { colorConfig } from './filter-config'; +import defaultConfig from './config.json'; + import { NightingaleEvent } from './types/nightingale-components'; import loaderIcon from './icons/spinner.svg'; import protvistaStyles from './styles/protvista-styles'; import loaderStyles from './styles/loader-styles'; -export const transformDataFeatureAdapter = _transformDataFeatureAdapter; -export const transformDataProteomicsAdapter = _transformDataProteomicsAdapter; -export const transformDataStructureAdapter = _transformDataStructureAdapter; -export const transformDataVariationAdapter = _transformDataVariationAdapter; -export const transformDataVariationGraphAdapter = - _transformDataVariationGraphAdapter; -export const transformDataInterproAdapter = _transformDataInterproAdapter; -export const transformDataProteomicsPTMApdapter = - _transformDataProteomicsPTMApdapter; -export const transformDataAlphaFoldConfidenceAdapter = - _transformDataAlphaFoldConfidenceAdapter; - -export const transformDataAlphaMissensePathogenicityAdapter = - _transformDataAlphaMissensePathogenicityAdapter; - -export const transformDataAlphaMissenseHeatmapAdapter = - _transformDataAlphaMissenseHeatmapAdapter; - -export const filterConfig = _filterConfig; -export const colorConfig = _colorConfig; -export const ProtvistaUniprotStructure = _ProtvistaUniprotStructure; - const adapters = { 'protvista-feature-adapter': transformDataFeatureAdapter, 'protvista-interpro-adapter': transformDataInterproAdapter, @@ -196,7 +174,7 @@ class ProtvistaUniprot extends LitElement { loadComponent('nightingale-linegraph-track', NightingaleLinegraphTrack); loadComponent('nightingale-filter', NightingaleFilter); loadComponent('nightingale-manager', NightingaleManager); - loadComponent('protvista-uniprot-structure', _ProtvistaUniprotStructure); + loadComponent('protvista-uniprot-structure', ProtvistaUniprotStructure); loadComponent('nightingale-sequence-heatmap', NightingaleSequenceHeatmap); } diff --git a/src/types/common-types.ts b/src/types/common-types.ts deleted file mode 100644 index f4f65c0..0000000 --- a/src/types/common-types.ts +++ /dev/null @@ -1,25 +0,0 @@ -export type AlphafoldPayload = Array<{ - entryId: string; - gene: string; - uniprotAccession: string; - uniprotId: string; - uniprotDescription: string; - taxId: number; - organismScientificName: string; - uniprotStart: number; - uniprotEnd: number; - uniprotSequence: string; - modelCreatedDate: string; - latestVersion: number; - allVersions: number[]; - isReviewed: boolean; - isReferenceProteome: boolean; - cifUrl?: string; - bcifUrl?: string; - amAnnotationsUrl?: string; - amAnnotationsHg19Url?: string; - amAnnotationsHg38Url?: string; - pdbUrl: string; - paeImageUrl: string; - paeDocUrl: string; -}>; diff --git a/yarn.lock b/yarn.lock index e154e3d..777ffa0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2981,7 +2981,7 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-hash@2.0.2: +color-hash@2.0.2, color-hash@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/color-hash/-/color-hash-2.0.2.tgz#abf735705da71874ddec7dcef50cd7479e7d64e9" integrity sha512-6exeENAqBTuIR1wIo36mR8xVVBv6l1hSLd7Qmvf6158Ld1L15/dbahR9VUOiX7GmGJBCnQyS0EY+I8x+wa7egg== From 54990f27dfc1ce6d8f4699d3c1cbdbadb2130ea9 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 12:34:38 +0000 Subject: [PATCH 05/32] Drop protvista-X and transormDataX prefixes; move types around. --- src/adapters/types/alphafold.ts | 25 ++++++++ src/config.json | 104 +++++++++++++++---------------- src/filter-config.ts | 2 +- src/protvista-uniprot.ts | 68 ++++++++++---------- src/tooltips/variationTooltip.ts | 4 +- 5 files changed, 113 insertions(+), 90 deletions(-) create mode 100644 src/adapters/types/alphafold.ts diff --git a/src/adapters/types/alphafold.ts b/src/adapters/types/alphafold.ts new file mode 100644 index 0000000..f4f65c0 --- /dev/null +++ b/src/adapters/types/alphafold.ts @@ -0,0 +1,25 @@ +export type AlphafoldPayload = Array<{ + entryId: string; + gene: string; + uniprotAccession: string; + uniprotId: string; + uniprotDescription: string; + taxId: number; + organismScientificName: string; + uniprotStart: number; + uniprotEnd: number; + uniprotSequence: string; + modelCreatedDate: string; + latestVersion: number; + allVersions: number[]; + isReviewed: boolean; + isReferenceProteome: boolean; + cifUrl?: string; + bcifUrl?: string; + amAnnotationsUrl?: string; + amAnnotationsHg19Url?: string; + amAnnotationsHg38Url?: string; + pdbUrl: string; + paeImageUrl: string; + paeDocUrl: string; +}>; diff --git a/src/config.json b/src/config.json index 515926c..7c3b63a 100644 --- a/src/config.json +++ b/src/config.json @@ -12,7 +12,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -25,7 +25,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -38,7 +38,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -51,7 +51,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -65,7 +65,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -78,7 +78,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -98,7 +98,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -111,7 +111,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -124,7 +124,7 @@ "label": "Non-adjacent residues", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -137,7 +137,7 @@ "label": "Non-terminal residue", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -150,7 +150,7 @@ "label": "Sequence uncertainty", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -163,7 +163,7 @@ "label": "Non-standard residue", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -183,7 +183,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -196,7 +196,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -209,7 +209,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -229,7 +229,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -241,7 +241,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-interpro-adapter", + "adapter": "interpro-adapter", "url": "https://www.ebi.ac.uk/interpro/api/entry/all/protein/uniprot/{accession}?type=domain&page_size=100" } ], @@ -254,7 +254,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -267,7 +267,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -280,7 +280,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -293,7 +293,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -313,7 +313,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -326,7 +326,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -339,7 +339,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -352,7 +352,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -365,7 +365,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -378,7 +378,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -391,7 +391,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -411,7 +411,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -437,7 +437,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -450,7 +450,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -463,7 +463,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -476,7 +476,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -495,7 +495,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/epitope/{accession}" } ], @@ -514,7 +514,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/antigen/{accession}" } ], @@ -534,7 +534,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -546,7 +546,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/mutagenesis/{accession}" } ], @@ -565,7 +565,7 @@ "trackType": "nightingale-linegraph-track", "data": [ { - "adapter": "protvista-variation-graph-adapter", + "adapter": "variation-graph-adapter", "url": "https://www.ebi.ac.uk/proteins/api/variation/{accession}" } ], @@ -577,7 +577,7 @@ "trackType": "nightingale-variation", "data": [ { - "adapter": "protvista-variation-adapter", + "adapter": "variation-adapter", "url": "https://www.ebi.ac.uk/proteins/api/variation/{accession}" } ], @@ -589,7 +589,7 @@ "name": "PROTEOMICS", "label": "Proteomics", "trackType": "nightingale-track", - "adapter": "protvista-proteomics-adapter", + "adapter": "proteomics-adapter", "urls": [ "https://www.ebi.ac.uk/proteins/api/proteomics/{accession}", "https://www.ebi.ac.uk/proteins/api/proteomics-ptm/{accession}" @@ -602,7 +602,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-proteomics-adapter", + "adapter": "proteomics-adapter", "url": "https://www.ebi.ac.uk/proteins/api/proteomics/{accession}" } ], @@ -615,7 +615,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-proteomics-adapter", + "adapter": "proteomics-adapter", "url": "https://www.ebi.ac.uk/proteins/api/proteomics/{accession}" } ], @@ -627,7 +627,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-proteomics-adapter", + "adapter": "proteomics-adapter", "url": "https://www.ebi.ac.uk/proteins/api/hpp/{accession}" } ], @@ -639,7 +639,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-proteomics-adapter", + "adapter": "proteomics-adapter", "url": "https://www.ebi.ac.uk/proteins/api/proteomics-ptm/{accession}" } ], @@ -659,7 +659,7 @@ "tooltip": "PDBe 3D structure coverage", "data": [ { - "adapter": "protvista-structure-adapter", + "adapter": "structure-adapter", "url": "https://www.ebi.ac.uk/proteins/api/proteins/{accession}" } ] @@ -680,7 +680,7 @@ "trackType": "nightingale-colored-sequence", "data": [ { - "adapter": "protvista-alphafold-confidence-adapter", + "adapter": "alphafold-confidence-adapter", "url": [ "https://alphafold.ebi.ac.uk/api/prediction/{accession}", "https://www.ebi.ac.uk/proteins/api/proteins/{accession}" @@ -704,7 +704,7 @@ "trackType": "nightingale-colored-sequence", "data": [ { - "adapter": "protvista-alphamissense-pathogenicity-adapter", + "adapter": "alphamissense-pathogenicity-adapter", "url": [ "https://alphafold.ebi.ac.uk/api/prediction/{accession}", "https://www.ebi.ac.uk/proteins/api/proteins/{accession}" @@ -720,7 +720,7 @@ "trackType": "nightingale-sequence-heatmap", "data": [ { - "adapter": "protvista-alphamissense-heatmap-adapter", + "adapter": "alphamissense-heatmap-adapter", "url": [ "https://alphafold.ebi.ac.uk/api/prediction/{accession}", "https://www.ebi.ac.uk/proteins/api/proteins/{accession}" @@ -743,7 +743,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -756,7 +756,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -769,7 +769,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], @@ -782,7 +782,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-feature-adapter", + "adapter": "feature-adapter", "url": "https://www.ebi.ac.uk/proteins/api/features/{accession}" } ], diff --git a/src/filter-config.ts b/src/filter-config.ts index 984195d..764fbf8 100644 --- a/src/filter-config.ts +++ b/src/filter-config.ts @@ -1,4 +1,4 @@ -import { ClinicalSignificance } from 'protvista-variation-adapter/dist/es/variants'; +import { ClinicalSignificance } from 'variation-adapter/dist/es/variants'; const scaleColors = { UPDiseaseColor: '#990000', diff --git a/src/protvista-uniprot.ts b/src/protvista-uniprot.ts index dc1ee88..6dd456c 100644 --- a/src/protvista-uniprot.ts +++ b/src/protvista-uniprot.ts @@ -15,16 +15,16 @@ import NightingaleSequenceHeatmap from '@nightingale-elements/nightingale-sequen import NightingaleFilter from '@nightingale-elements/nightingale-filter'; // adapters -import transformDataFeatureAdapter from './adapters/feature-adapter'; -import transformDataProteomicsAdapter from './adapters/proteomics-adapter'; -import transformDataStructureAdapter from './adapters/structure-adapter'; -import transformDataVariationAdapter from './adapters/variation-adapter'; -import transformDataInterproAdapter from './adapters/interpro-adapter'; -import transformDataVariationGraphAdapter from './adapters/variation-graph-adapter'; -import transformDataProteomicsPTMApdapter from './adapters/ptm-exchange-adapter'; -import transformDataAlphaFoldConfidenceAdapter from './adapters/alphafold-confidence-adapter'; -import transformDataAlphaMissensePathogenicityAdapter from './adapters/alphamissense-pathogenicity-adapter'; -import transformDataAlphaMissenseHeatmapAdapter from './adapters/alphamissense-heatmap-adapter'; +import featureAdapter from './adapters/feature-adapter'; +import proteomicsAdapter from './adapters/proteomics-adapter'; +import structureAdapter from './adapters/structure-adapter'; +import variationAdapter from './adapters/variation-adapter'; +import interproAdapter from './adapters/interpro-adapter'; +import variationGraphAdapter from './adapters/variation-graph-adapter'; +import proteomicsPTMApdapter from './adapters/ptm-exchange-adapter'; +import alphaFoldConfidenceAdapter from './adapters/alphafold-confidence-adapter'; +import alphaMissensePathogenicityAdapter from './adapters/alphamissense-pathogenicity-adapter'; +import alphaMissenseHeatmapAdapter from './adapters/alphamissense-heatmap-adapter'; import ProtvistaUniprotStructure from './protvista-uniprot-structure'; @@ -41,19 +41,16 @@ import protvistaStyles from './styles/protvista-styles'; import loaderStyles from './styles/loader-styles'; const adapters = { - 'protvista-feature-adapter': transformDataFeatureAdapter, - 'protvista-interpro-adapter': transformDataInterproAdapter, - 'protvista-proteomics-adapter': transformDataProteomicsAdapter, - 'protvista-structure-adapter': transformDataStructureAdapter, - 'protvista-variation-adapter': transformDataVariationAdapter, - 'protvista-variation-graph-adapter': transformDataVariationGraphAdapter, - 'protvista-proteomics-ptm-adapter': transformDataProteomicsPTMApdapter, - 'protvista-alphafold-confidence-adapter': - transformDataAlphaFoldConfidenceAdapter, - 'protvista-alphamissense-pathogenicity-adapter': - transformDataAlphaMissensePathogenicityAdapter, - 'protvista-alphamissense-heatmap-adapter': - transformDataAlphaMissenseHeatmapAdapter, + 'feature-adapter': featureAdapter, + 'interpro-adapter': interproAdapter, + 'proteomics-adapter': proteomicsAdapter, + 'structure-adapter': structureAdapter, + 'variation-adapter': variationAdapter, + 'variation-graph-adapter': variationGraphAdapter, + 'protvista-proteomics-ptm-adapter': proteomicsPTMApdapter, + 'alphafold-confidence-adapter': alphaFoldConfidenceAdapter, + 'alphamissense-pathogenicity-adapter': alphaMissensePathogenicityAdapter, + 'alphamissense-heatmap-adapter': alphaMissenseHeatmapAdapter, }; type TrackType = @@ -73,15 +70,15 @@ type ProtvistaTrackConfig = { data: { url: string | string[]; adapter?: - | 'protvista-feature-adapter' - | 'protvista-structure-adapter' - | 'protvista-proteomics-adapter' - | 'protvista-variation-adapter' - | 'protvista-variation-graph-adapter' - | 'protvista-interpro-adapter' - | 'protvista-alphafold-confidence-adapter' - | 'protvista-alphamissense-pathogenicity-adapter' - | 'protvista-alphamissense-heatmap-adapter'; + | 'feature-adapter' + | 'structure-adapter' + | 'proteomics-adapter' + | 'variation-adapter' + | 'variation-graph-adapter' + | 'interpro-adapter' + | 'alphafold-confidence-adapter' + | 'alphamissense-pathogenicity-adapter' + | 'alphamissense-heatmap-adapter'; }[]; tooltip: string; color?: string; @@ -220,8 +217,7 @@ class ProtvistaUniprot extends LitElement { if ( !trackData || - (adapter === 'protvista-variation-adapter' && - trackData[0].length === 0) + (adapter === 'variation-adapter' && trackData[0].length === 0) ) { return; } @@ -231,7 +227,7 @@ class ProtvistaUniprot extends LitElement { ? await adapters[adapter](...trackData) : trackData; - if (adapter === 'protvista-interpro-adapter') { + if (adapter === 'interpro-adapter') { const representativeDomains = []; transformedData?.forEach((feature) => { feature.locations?.forEach((location) => { @@ -300,7 +296,7 @@ class ProtvistaUniprot extends LitElement { currentCategory.tracks && data && // Check there's data and special case for variants - // NOTE: should refactor protvista-variation-adapter + // NOTE: should refactor variation-adapter // to return a list of variants and set the sequence // on protvista-variation separately (data.length > 0 || data.variants?.length) diff --git a/src/tooltips/variationTooltip.ts b/src/tooltips/variationTooltip.ts index 61c3ab6..91e5a8d 100644 --- a/src/tooltips/variationTooltip.ts +++ b/src/tooltips/variationTooltip.ts @@ -1,5 +1,7 @@ -import { formatXrefs, getEvidenceFromCodes } from 'protvista-feature-adapter'; import groupBy from 'lodash-es/groupBy'; + +import { formatXrefs, getEvidenceFromCodes } from './featureTooltip'; + import { Association, Description, From 0e4b23b33180dd2425ba04584672479a5968f021 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 13:10:33 +0000 Subject: [PATCH 06/32] Update .gitignore for yalc. --- .gitignore | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index d994740..f9bfde4 100644 --- a/.gitignore +++ b/.gitignore @@ -5,4 +5,6 @@ build/ dist/ node_modules/ -*.log \ No newline at end of file +*.log +.yalc/ +yalc.lock \ No newline at end of file From 3a60d29ad254749a3cdfafb1268c8a7e59bd0918 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 13:13:58 +0000 Subject: [PATCH 07/32] Remove packages. --- package.json | 5 - yarn.lock | 1682 +++++++++++++++++++++++--------------------------- 2 files changed, 761 insertions(+), 926 deletions(-) diff --git a/package.json b/package.json index 5c583a7..3d6f03d 100644 --- a/package.json +++ b/package.json @@ -42,11 +42,6 @@ "file-saver": "^2.0.2", "lit": "3.1.3", "protvista-datatable": "3.8.22", - "protvista-feature-adapter": "3.8.22", - "protvista-interpro-adapter": "3.8.22", - "protvista-proteomics-adapter": "3.8.22", - "protvista-structure-adapter": "3.8.22", - "protvista-variation-adapter": "3.8.22", "timing-functions": "^2.0.1", "url-join": "^4.0.1" }, diff --git a/yarn.lock b/yarn.lock index 777ffa0..7a9bc56 100644 --- a/yarn.lock +++ b/yarn.lock @@ -17,95 +17,97 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.25.7.tgz#438f2c524071531d643c6f0188e1e28f130cebc7" - integrity sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" + integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== dependencies: - "@babel/highlight" "^7.25.7" + "@babel/helper-validator-identifier" "^7.25.9" + js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.7.tgz#b8479fe0018ef0ac87b6b7a5c6916fcd67ae2c9c" - integrity sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw== +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.9", "@babel/compat-data@^7.26.0": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.26.2.tgz#278b6b13664557de95b8f35b90d96785850bb56e" + integrity sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg== "@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.14.3", "@babel/core@^7.7.5": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.7.tgz#1b3d144157575daf132a3bc80b2b18e6e3ca6ece" - integrity sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow== + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.0.tgz#d78b6023cc8f3114ccf049eb219613f74a747b40" + integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.25.7" - "@babel/generator" "^7.25.7" - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helpers" "^7.25.7" - "@babel/parser" "^7.25.7" - "@babel/template" "^7.25.7" - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/code-frame" "^7.26.0" + "@babel/generator" "^7.26.0" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-module-transforms" "^7.26.0" + "@babel/helpers" "^7.26.0" + "@babel/parser" "^7.26.0" + "@babel/template" "^7.25.9" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.26.0" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.7.tgz#de86acbeb975a3e11ee92dd52223e6b03b479c56" - integrity sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA== +"@babel/generator@^7.25.9", "@babel/generator@^7.26.0": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.26.2.tgz#87b75813bec87916210e5e01939a4c823d6bb74f" + integrity sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw== dependencies: - "@babel/types" "^7.25.7" + "@babel/parser" "^7.26.2" + "@babel/types" "^7.26.0" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" jsesc "^3.0.2" -"@babel/helper-annotate-as-pure@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.7.tgz#63f02dbfa1f7cb75a9bdb832f300582f30bb8972" - integrity sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA== +"@babel/helper-annotate-as-pure@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz#d8eac4d2dc0d7b6e11fa6e535332e0d3184f06b4" + integrity sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g== dependencies: - "@babel/types" "^7.25.7" + "@babel/types" "^7.25.9" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.7.tgz#d721650c1f595371e0a23ee816f1c3c488c0d622" - integrity sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.9.tgz#f41752fe772a578e67286e6779a68a5a92de1ee9" + integrity sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g== dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz#11260ac3322dda0ef53edfae6e97b961449f5fa4" - integrity sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A== +"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz#55af025ce365be3cdc0c1c1e56c6af617ce88875" + integrity sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ== dependencies: - "@babel/compat-data" "^7.25.7" - "@babel/helper-validator-option" "^7.25.7" + "@babel/compat-data" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" browserslist "^4.24.0" lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.7.tgz#5d65074c76cae75607421c00d6bd517fe1892d6b" - integrity sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-member-expression-to-functions" "^7.25.7" - "@babel/helper-optimise-call-expression" "^7.25.7" - "@babel/helper-replace-supers" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" - "@babel/traverse" "^7.25.7" +"@babel/helper-create-class-features-plugin@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz#7644147706bb90ff613297d49ed5266bde729f83" + integrity sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-member-expression-to-functions" "^7.25.9" + "@babel/helper-optimise-call-expression" "^7.25.9" + "@babel/helper-replace-supers" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/traverse" "^7.25.9" semver "^6.3.1" -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.7.tgz#dcb464f0e2cdfe0c25cc2a0a59c37ab940ce894e" - integrity sha512-byHhumTj/X47wJ6C6eLpK7wW/WBEcnUeb7D0FNc/jFQnQVw7DOso3Zz5u9x/zLrFVkHa89ZGDbkAa1D54NdrCQ== +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.9.tgz#3e8999db94728ad2b2458d7a470e7770b7764e26" + integrity sha512-ORPNZ3h6ZRkOyAa/SaHU+XsLZr0UQzRwuDQ0cczIA17nAzZ+85G5cVkOJIj7QavLZGSe8QXUmNFxSZzjcZF9bw== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" + "@babel/helper-annotate-as-pure" "^7.25.9" regexpu-core "^6.1.1" semver "^6.3.1" @@ -120,165 +122,164 @@ lodash.debounce "^4.0.8" resolve "^1.14.2" -"@babel/helper-member-expression-to-functions@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.7.tgz#541a33b071f0355a63a0fa4bdf9ac360116b8574" - integrity sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA== - dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" - -"@babel/helper-module-imports@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz#dba00d9523539152906ba49263e36d7261040472" - integrity sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw== - dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" - -"@babel/helper-module-transforms@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz#2ac9372c5e001b19bc62f1fe7d96a18cb0901d1a" - integrity sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ== - dependencies: - "@babel/helper-module-imports" "^7.25.7" - "@babel/helper-simple-access" "^7.25.7" - "@babel/helper-validator-identifier" "^7.25.7" - "@babel/traverse" "^7.25.7" - -"@babel/helper-optimise-call-expression@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.7.tgz#1de1b99688e987af723eed44fa7fc0ee7b97d77a" - integrity sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng== - dependencies: - "@babel/types" "^7.25.7" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.25.7", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz#8ec5b21812d992e1ef88a9b068260537b6f0e36c" - integrity sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw== - -"@babel/helper-remap-async-to-generator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.7.tgz#9efdc39df5f489bcd15533c912b6c723a0a65021" - integrity sha512-kRGE89hLnPfcz6fTrlNU+uhgcwv0mBE4Gv3P9Ke9kLVJYpi4AMVVEElXvB5CabrPZW4nCM8P8UyyjrzCM0O2sw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-wrap-function" "^7.25.7" - "@babel/traverse" "^7.25.7" - -"@babel/helper-replace-supers@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.7.tgz#38cfda3b6e990879c71d08d0fef9236b62bd75f5" - integrity sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.25.7" - "@babel/helper-optimise-call-expression" "^7.25.7" - "@babel/traverse" "^7.25.7" - -"@babel/helper-simple-access@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz#5eb9f6a60c5d6b2e0f76057004f8dacbddfae1c0" - integrity sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ== - dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" - -"@babel/helper-skip-transparent-expression-wrappers@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.7.tgz#382831c91038b1a6d32643f5f49505b8442cb87c" - integrity sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA== - dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" - -"@babel/helper-string-parser@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz#d50e8d37b1176207b4fe9acedec386c565a44a54" - integrity sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g== - -"@babel/helper-validator-identifier@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz#77b7f60c40b15c97df735b38a66ba1d7c3e93da5" - integrity sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg== - -"@babel/helper-validator-option@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz#97d1d684448228b30b506d90cace495d6f492729" - integrity sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ== - -"@babel/helper-wrap-function@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.7.tgz#9f6021dd1c4fdf4ad515c809967fc4bac9a70fe7" - integrity sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg== - dependencies: - "@babel/template" "^7.25.7" - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" - -"@babel/helpers@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.7.tgz#091b52cb697a171fe0136ab62e54e407211f09c2" - integrity sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA== - dependencies: - "@babel/template" "^7.25.7" - "@babel/types" "^7.25.7" - -"@babel/highlight@^7.10.4", "@babel/highlight@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.25.7.tgz#20383b5f442aa606e7b5e3043b0b1aafe9f37de5" - integrity sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw== - dependencies: - "@babel/helper-validator-identifier" "^7.25.7" +"@babel/helper-member-expression-to-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz#9dfffe46f727005a5ea29051ac835fb735e4c1a3" + integrity sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ== + dependencies: + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" + +"@babel/helper-module-imports@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz#e7f8d20602ebdbf9ebbea0a0751fb0f2a4141715" + integrity sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw== + dependencies: + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" + +"@babel/helper-module-transforms@^7.25.9", "@babel/helper-module-transforms@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz#8ce54ec9d592695e58d84cd884b7b5c6a2fdeeae" + integrity sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw== + dependencies: + "@babel/helper-module-imports" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@babel/traverse" "^7.25.9" + +"@babel/helper-optimise-call-expression@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz#3324ae50bae7e2ab3c33f60c9a877b6a0146b54e" + integrity sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ== + dependencies: + "@babel/types" "^7.25.9" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.25.9", "@babel/helper-plugin-utils@^7.8.0": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz#9cbdd63a9443a2c92a725cca7ebca12cc8dd9f46" + integrity sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw== + +"@babel/helper-remap-async-to-generator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.9.tgz#e53956ab3d5b9fb88be04b3e2f31b523afd34b92" + integrity sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-wrap-function" "^7.25.9" + "@babel/traverse" "^7.25.9" + +"@babel/helper-replace-supers@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz#ba447224798c3da3f8713fc272b145e33da6a5c5" + integrity sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.25.9" + "@babel/helper-optimise-call-expression" "^7.25.9" + "@babel/traverse" "^7.25.9" + +"@babel/helper-simple-access@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.9.tgz#6d51783299884a2c74618d6ef0f86820ec2e7739" + integrity sha512-c6WHXuiaRsJTyHYLJV75t9IqsmTbItYfdj99PnzYGQZkYKvan5/2jKJ7gu31J3/BJ/A18grImSPModuyG/Eo0Q== + dependencies: + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" + +"@babel/helper-skip-transparent-expression-wrappers@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz#0b2e1b62d560d6b1954893fd2b705dc17c91f0c9" + integrity sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA== + dependencies: + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" + +"@babel/helper-string-parser@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz#1aabb72ee72ed35789b4bbcad3ca2862ce614e8c" + integrity sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA== + +"@babel/helper-validator-identifier@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7" + integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ== + +"@babel/helper-validator-option@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz#86e45bd8a49ab7e03f276577f96179653d41da72" + integrity sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw== + +"@babel/helper-wrap-function@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.9.tgz#d99dfd595312e6c894bd7d237470025c85eea9d0" + integrity sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g== + dependencies: + "@babel/template" "^7.25.9" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" + +"@babel/helpers@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.26.0.tgz#30e621f1eba5aa45fe6f4868d2e9154d884119a4" + integrity sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw== + dependencies: + "@babel/template" "^7.25.9" + "@babel/types" "^7.26.0" + +"@babel/highlight@^7.10.4": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.25.9.tgz#8141ce68fc73757946f983b343f1231f4691acc6" + integrity sha512-llL88JShoCsth8fF8R4SJnIn+WLvR6ccFxu1H3FlMhDontdcmZWf2HgIZ7AIqV3Xcck1idlohrN4EUBQz6klbw== + dependencies: + "@babel/helper-validator-identifier" "^7.25.9" chalk "^2.4.2" js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.7.tgz#99b927720f4ddbfeb8cd195a363ed4532f87c590" - integrity sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.25.9", "@babel/parser@^7.26.0", "@babel/parser@^7.26.2": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.2.tgz#fd7b6f487cfea09889557ef5d4eeb9ff9a5abd11" + integrity sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ== dependencies: - "@babel/types" "^7.25.7" + "@babel/types" "^7.26.0" -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.7.tgz#93969ac50ef4d68b2504b01b758af714e4cbdd64" - integrity sha512-UV9Lg53zyebzD1DwQoT9mzkEKa922LNUp5YkTJ6Uta0RbyXaQNUgcvSt7qIu1PpPzVb6rd10OVNTzkyBGeVmxQ== +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.9.tgz#cc2e53ebf0a0340777fff5ed521943e253b4d8fe" + integrity sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.7.tgz#a338d611adb9dcd599b8b1efa200c88ebeffe046" - integrity sha512-GDDWeVLNxRIkQTnJn2pDOM1pkCgYdSqPeT1a9vh9yIqu2uzzgw1zcqEb+IJOhy+dTBMlNdThrDIksr2o09qrrQ== +"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.9.tgz#af9e4fb63ccb8abcb92375b2fcfe36b60c774d30" + integrity sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.7.tgz#c5f755e911dfac7ef6957300c0f9c4a8c18c06f4" - integrity sha512-wxyWg2RYaSUYgmd9MR0FyRGyeOMQE/Uzr1wzd/g5cf5bwi9A4v6HFdDm7y1MgDtod/fLOSTZY6jDgV0xU9d5bA== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz#e8dc26fcd616e6c5bf2bd0d5a2c151d4f92a9137" + integrity sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.7.tgz#3b7ea04492ded990978b6deaa1dfca120ad4455a" - integrity sha512-Xwg6tZpLxc4iQjorYsyGMyfJE7nP5MV8t/Ka58BgiA7Jw0fRqQNcANlLfdJ/yvBt9z9LD2We+BEkT7vLqZRWng== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz#807a667f9158acac6f6164b4beb85ad9ebc9e1d1" + integrity sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" - "@babel/plugin-transform-optional-chaining" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/plugin-transform-optional-chaining" "^7.25.9" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.7.tgz#9622b1d597a703aa3a921e6f58c9c2d9a028d2c5" - integrity sha512-UVATLMidXrnH+GMUIuxq55nejlj02HP7F5ETyBONzP6G87fPBogG4CH6kxrSrdIuAjdwNO9VzyaYsrZPscWUrw== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.9.tgz#de7093f1e7deaf68eadd7cc6b07f2ab82543269e" + integrity sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/traverse" "^7.25.9" "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" @@ -313,33 +314,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-dynamic-import@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" - integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== +"@babel/plugin-syntax-import-assertions@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz#620412405058efa56e4a564903b79355020f445f" + integrity sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg== dependencies: - "@babel/helper-plugin-utils" "^7.8.0" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-syntax-export-namespace-from@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" - integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== +"@babel/plugin-syntax-import-attributes@^7.24.7", "@babel/plugin-syntax-import-attributes@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz#3b1412847699eea739b4f2602c74ce36f6b0b0f7" + integrity sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A== dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - -"@babel/plugin-syntax-import-assertions@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.7.tgz#8ce248f9f4ed4b7ed4cb2e0eb4ed9efd9f52921f" - integrity sha512-ZvZQRmME0zfJnDQnVBKYzHxXT7lYBB3Revz1GuS7oLXWMgqUPX4G+DDbT30ICClht9WKV34QVrZhSw6WdklwZQ== - dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - -"@babel/plugin-syntax-import-attributes@^7.24.7", "@babel/plugin-syntax-import-attributes@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.7.tgz#d78dd0499d30df19a598e63ab895e21b909bc43f" - integrity sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw== - dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-syntax-import-meta@^7.10.4": version "7.10.4" @@ -355,12 +342,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.7.tgz#5352d398d11ea5e7ef330c854dea1dae0bf18165" - integrity sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw== +"@babel/plugin-syntax-jsx@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz#a34313a178ea56f1951599b929c1ceacee719290" + integrity sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-syntax-logical-assignment-operators@^7.10.4": version "7.10.4" @@ -418,12 +405,12 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.7.tgz#bfc05b0cc31ebd8af09964650cee723bb228108b" - integrity sha512-rR+5FDjpCHqqZN2bzZm18bVYGaejGq5ZkpVCJLXor/+zlSrSoc4KWcHI0URVWjl/68Dyr1uwZUz/1njycEAv9g== +"@babel/plugin-syntax-typescript@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz#67dda2b74da43727cf21d46cf9afef23f4365399" + integrity sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-syntax-unicode-sets-regex@^7.18.6": version "7.18.6" @@ -433,504 +420,486 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-arrow-functions@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.7.tgz#1b9ed22e6890a0e9ff470371c73b8c749bcec386" - integrity sha512-EJN2mKxDwfOUCPxMO6MUI58RN3ganiRAG/MS/S3HfB6QFNjroAMelQo/gybyYq97WerCBAZoyrAoW8Tzdq2jWg== +"@babel/plugin-transform-arrow-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.9.tgz#7821d4410bee5daaadbb4cdd9a6649704e176845" + integrity sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-async-generator-functions@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.7.tgz#af61a02b30d7bff5108c63bd39ac7938403426d7" - integrity sha512-4B6OhTrwYKHYYgcwErvZjbmH9X5TxQBsaBHdzEIB4l71gR5jh/tuHGlb9in47udL2+wVUcOz5XXhhfhVJwEpEg== +"@babel/plugin-transform-async-generator-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.9.tgz#1b18530b077d18a407c494eb3d1d72da505283a2" + integrity sha512-RXV6QAzTBbhDMO9fWwOmwwTuYaiPbggWQ9INdZqAYeSHyG7FzQ+nOZaUUjNwKv9pV3aE4WFqFm1Hnbci5tBCAw== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-remap-async-to-generator" "^7.25.7" - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/traverse" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-remap-async-to-generator" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-transform-async-to-generator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.7.tgz#a44c7323f8d4285a6c568dd43c5c361d6367ec52" - integrity sha512-ZUCjAavsh5CESCmi/xCpX1qcCaAglzs/7tmuvoFnJgA1dM7gQplsguljoTg+Ru8WENpX89cQyAtWoaE0I3X3Pg== +"@babel/plugin-transform-async-to-generator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.9.tgz#c80008dacae51482793e5a9c08b39a5be7e12d71" + integrity sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ== dependencies: - "@babel/helper-module-imports" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-remap-async-to-generator" "^7.25.7" + "@babel/helper-module-imports" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-remap-async-to-generator" "^7.25.9" -"@babel/plugin-transform-block-scoped-functions@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.7.tgz#e0b8843d5571719a2f1bf7e284117a3379fcc17c" - integrity sha512-xHttvIM9fvqW+0a3tZlYcZYSBpSWzGBFIt/sYG3tcdSzBB8ZeVgz2gBP7Df+sM0N1850jrviYSSeUuc+135dmQ== +"@babel/plugin-transform-block-scoped-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.9.tgz#5700691dbd7abb93de300ca7be94203764fce458" + integrity sha512-toHc9fzab0ZfenFpsyYinOX0J/5dgJVA2fm64xPewu7CoYHWEivIWKxkK2rMi4r3yQqLnVmheMXRdG+k239CgA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-block-scoping@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.7.tgz#6dab95e98adf780ceef1b1c3ab0e55cd20dd410a" - integrity sha512-ZEPJSkVZaeTFG/m2PARwLZQ+OG0vFIhPlKHK/JdIMy8DbRJ/htz6LRrTFtdzxi9EHmcwbNPAKDnadpNSIW+Aow== +"@babel/plugin-transform-block-scoping@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.9.tgz#c33665e46b06759c93687ca0f84395b80c0473a1" + integrity sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-class-properties@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.7.tgz#a389cfca7a10ac80e3ff4c75fca08bd097ad1523" - integrity sha512-mhyfEW4gufjIqYFo9krXHJ3ElbFLIze5IDp+wQTxoPd+mwFb1NxatNAwmv8Q8Iuxv7Zc+q8EkiMQwc9IhyGf4g== +"@babel/plugin-transform-class-properties@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.9.tgz#a8ce84fedb9ad512549984101fa84080a9f5f51f" + integrity sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-class-static-block@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.25.7.tgz#d2cf3c812e3b3162d56aadf4566f45c30538cb2c" - integrity sha512-rvUUtoVlkDWtDWxGAiiQj0aNktTPn3eFynBcMC2IhsXweehwgdI9ODe+XjWw515kEmv22sSOTp/rxIRuTiB7zg== +"@babel/plugin-transform-class-static-block@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.26.0.tgz#6c8da219f4eb15cae9834ec4348ff8e9e09664a0" + integrity sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-syntax-class-static-block" "^7.14.5" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-classes@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.7.tgz#5103206cf80d02283bbbd044509ea3b65d0906bb" - integrity sha512-9j9rnl+YCQY0IGoeipXvnk3niWicIB6kCsWRGLwX241qSXpbA4MKxtp/EdvFxsc4zI5vqfLxzOd0twIJ7I99zg== +"@babel/plugin-transform-classes@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.9.tgz#7152457f7880b593a63ade8a861e6e26a4469f52" + integrity sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-replace-supers" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-replace-supers" "^7.25.9" + "@babel/traverse" "^7.25.9" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.7.tgz#7f621f0aa1354b5348a935ab12e3903842466f65" - integrity sha512-QIv+imtM+EtNxg/XBKL3hiWjgdLjMOmZ+XzQwSgmBfKbfxUjBzGgVPklUuE55eq5/uVoh8gg3dqlrwR/jw3ZeA== +"@babel/plugin-transform-computed-properties@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz#db36492c78460e534b8852b1d5befe3c923ef10b" + integrity sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/template" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/template" "^7.25.9" -"@babel/plugin-transform-destructuring@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.7.tgz#f6f26a9feefb5aa41fd45b6f5838901b5333d560" - integrity sha512-xKcfLTlJYUczdaM1+epcdh1UGewJqr9zATgrNHcLBcV2QmfvPPEixo/sK/syql9cEmbr7ulu5HMFG5vbbt/sEA== +"@babel/plugin-transform-destructuring@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.9.tgz#966ea2595c498224340883602d3cfd7a0c79cea1" + integrity sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-dotall-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.7.tgz#9d775c4a3ff1aea64045300fcd4309b4a610ef02" - integrity sha512-kXzXMMRzAtJdDEgQBLF4oaiT6ZCU3oWHgpARnTKDAqPkDJ+bs3NrZb310YYevR5QlRo3Kn7dzzIdHbZm1VzJdQ== +"@babel/plugin-transform-dotall-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz#bad7945dd07734ca52fe3ad4e872b40ed09bb09a" + integrity sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-duplicate-keys@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.7.tgz#fbba7d1155eab76bd4f2a038cbd5d65883bd7a93" - integrity sha512-by+v2CjoL3aMnWDOyCIg+yxU9KXSRa9tN6MbqggH5xvymmr9p4AMjYkNlQy4brMceBnUyHZ9G8RnpvT8wP7Cfg== +"@babel/plugin-transform-duplicate-keys@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz#8850ddf57dce2aebb4394bb434a7598031059e6d" + integrity sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.7.tgz#102b31608dcc22c08fbca1894e104686029dc141" - integrity sha512-HvS6JF66xSS5rNKXLqkk7L9c/jZ/cdIVIcoPVrnl8IsVpLggTjXs8OWekbLHs/VtYDDh5WXnQyeE3PPUGm22MA== +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.9.tgz#6f7259b4de127721a08f1e5165b852fcaa696d31" + integrity sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-dynamic-import@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.7.tgz#31905ab2cfa94dcf1b1f8ce66096720b2908e518" - integrity sha512-UvcLuual4h7/GfylKm2IAA3aph9rwvAM2XBA0uPKU3lca+Maai4jBjjEVUS568ld6kJcgbouuumCBhMd/Yz17w== +"@babel/plugin-transform-dynamic-import@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.9.tgz#23e917de63ed23c6600c5dd06d94669dce79f7b8" + integrity sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-exponentiation-operator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.7.tgz#5961a3a23a398faccd6cddb34a2182807d75fb5f" - integrity sha512-yjqtpstPfZ0h/y40fAXRv2snciYr0OAoMXY/0ClC7tm4C/nG5NJKmIItlaYlLbIVAWNfrYuy9dq1bE0SbX0PEg== +"@babel/plugin-transform-exponentiation-operator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.9.tgz#ece47b70d236c1d99c263a1e22b62dc20a4c8b0f" + integrity sha512-KRhdhlVk2nObA5AYa7QMgTMTVJdfHprfpAk4DjZVtllqRg9qarilstTKEhpVjyt+Npi8ThRyiV8176Am3CodPA== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-export-namespace-from@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.7.tgz#beb2679db6fd3bdfe6ad6de2c8cac84a86ef2da1" - integrity sha512-h3MDAP5l34NQkkNulsTNyjdaR+OiB0Im67VU//sFupouP8Q6m9Spy7l66DcaAQxtmCqGdanPByLsnwFttxKISQ== +"@babel/plugin-transform-export-namespace-from@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.9.tgz#90745fe55053394f554e40584cda81f2c8a402a2" + integrity sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-for-of@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.7.tgz#0acfea0f27aa290818b5b48a5a44b3f03fc13669" - integrity sha512-n/TaiBGJxYFWvpJDfsxSj9lEEE44BFM1EPGz4KEiTipTgkoFVVcCmzAL3qA7fdQU96dpo4gGf5HBx/KnDvqiHw== +"@babel/plugin-transform-for-of@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.9.tgz#4bdc7d42a213397905d89f02350c5267866d5755" + integrity sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" -"@babel/plugin-transform-function-name@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.7.tgz#7e394ccea3693902a8b50ded8b6ae1fa7b8519fd" - integrity sha512-5MCTNcjCMxQ63Tdu9rxyN6cAWurqfrDZ76qvVPrGYdBxIj+EawuuxTu/+dgJlhK5eRz3v1gLwp6XwS8XaX2NiQ== +"@babel/plugin-transform-function-name@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.9.tgz#939d956e68a606661005bfd550c4fc2ef95f7b97" + integrity sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA== dependencies: - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-transform-json-strings@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.7.tgz#6626433554aff4bd6f76a2c621a1f40e802dfb0a" - integrity sha512-Ot43PrL9TEAiCe8C/2erAjXMeVSnE/BLEx6eyrKLNFCCw5jvhTHKyHxdI1pA0kz5njZRYAnMO2KObGqOCRDYSA== +"@babel/plugin-transform-json-strings@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.9.tgz#c86db407cb827cded902a90c707d2781aaa89660" + integrity sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-literals@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.7.tgz#70cbdc742f2cfdb1a63ea2cbd018d12a60b213c3" - integrity sha512-fwzkLrSu2fESR/cm4t6vqd7ebNIopz2QHGtjoU+dswQo/P6lwAG04Q98lliE3jkz/XqnbGFLnUcE0q0CVUf92w== +"@babel/plugin-transform-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.9.tgz#1a1c6b4d4aa59bc4cad5b6b3a223a0abd685c9de" + integrity sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-logical-assignment-operators@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.7.tgz#93847feb513a1f191c5f5d903d991a0ee24fe99b" - integrity sha512-iImzbA55BjiovLyG2bggWS+V+OLkaBorNvc/yJoeeDQGztknRnDdYfp2d/UPmunZYEnZi6Lg8QcTmNMHOB0lGA== +"@babel/plugin-transform-logical-assignment-operators@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.9.tgz#b19441a8c39a2fda0902900b306ea05ae1055db7" + integrity sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-member-expression-literals@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.7.tgz#0a36c3fbd450cc9e6485c507f005fa3d1bc8fca5" - integrity sha512-Std3kXwpXfRV0QtQy5JJcRpkqP8/wG4XL7hSKZmGlxPlDqmpXtEPRmhF7ztnlTCtUN3eXRUJp+sBEZjaIBVYaw== +"@babel/plugin-transform-member-expression-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz#63dff19763ea64a31f5e6c20957e6a25e41ed5de" + integrity sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-modules-amd@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.7.tgz#bb4e543b5611f6c8c685a2fd485408713a3adf3d" - integrity sha512-CgselSGCGzjQvKzghCvDTxKHP3iooenLpJDO842ehn5D2G5fJB222ptnDwQho0WjEvg7zyoxb9P+wiYxiJX5yA== +"@babel/plugin-transform-modules-amd@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz#49ba478f2295101544abd794486cd3088dddb6c5" + integrity sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw== dependencies: - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-modules-commonjs@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.7.tgz#173f0c791bb7407c092ce6d77ee90eb3f2d1d2fd" - integrity sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg== +"@babel/plugin-transform-modules-commonjs@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.9.tgz#d165c8c569a080baf5467bda88df6425fc060686" + integrity sha512-dwh2Ol1jWwL2MgkCzUSOvfmKElqQcuswAZypBSUsScMXvgdT8Ekq5YA6TtqpTVWH+4903NmboMuH1o9i8Rxlyg== dependencies: - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-simple-access" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-simple-access" "^7.25.9" -"@babel/plugin-transform-modules-systemjs@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.7.tgz#8b14d319a177cc9c85ef8b0512afd429d9e2e60b" - integrity sha512-t9jZIvBmOXJsiuyOwhrIGs8dVcD6jDyg2icw1VL4A/g+FnWyJKwUfSSU2nwJuMV2Zqui856El9u+ElB+j9fV1g== +"@babel/plugin-transform-modules-systemjs@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz#8bd1b43836269e3d33307151a114bcf3ba6793f8" + integrity sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA== dependencies: - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-validator-identifier" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-transform-modules-umd@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.7.tgz#00ee7a7e124289549381bfb0e24d87fd7f848367" - integrity sha512-p88Jg6QqsaPh+EB7I9GJrIqi1Zt4ZBHUQtjw3z1bzEXcLh6GfPqzZJ6G+G1HBGKUNukT58MnKG7EN7zXQBCODw== +"@babel/plugin-transform-modules-umd@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz#6710079cdd7c694db36529a1e8411e49fcbf14c9" + integrity sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw== dependencies: - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-named-capturing-groups-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.7.tgz#a2f3f6d7f38693b462542951748f0a72a34d196d" - integrity sha512-BtAT9LzCISKG3Dsdw5uso4oV1+v2NlVXIIomKJgQybotJY3OwCwJmkongjHgwGKoZXd0qG5UZ12JUlDQ07W6Ow== +"@babel/plugin-transform-named-capturing-groups-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.9.tgz#454990ae6cc22fd2a0fa60b3a2c6f63a38064e6a" + integrity sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-new-target@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.7.tgz#52b2bde523b76c548749f38dc3054f1f45e82bc9" - integrity sha512-CfCS2jDsbcZaVYxRFo2qtavW8SpdzmBXC2LOI4oO0rP+JSRDxxF3inF4GcPsLgfb5FjkhXG5/yR/lxuRs2pySA== +"@babel/plugin-transform-new-target@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz#42e61711294b105c248336dcb04b77054ea8becd" + integrity sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-nullish-coalescing-operator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.7.tgz#0af84b86d4332654c43cf028dbdcf878b00ac168" - integrity sha512-FbuJ63/4LEL32mIxrxwYaqjJxpbzxPVQj5a+Ebrc8JICV6YX8nE53jY+K0RZT3um56GoNWgkS2BQ/uLGTjtwfw== +"@babel/plugin-transform-nullish-coalescing-operator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.9.tgz#bcb1b0d9e948168102d5f7104375ca21c3266949" + integrity sha512-ENfftpLZw5EItALAD4WsY/KUWvhUlZndm5GC7G3evUsVeSJB6p0pBeLQUnRnBCBx7zV0RKQjR9kCuwrsIrjWog== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-numeric-separator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.7.tgz#a516b78f894d1c08283f39d809b2048fd2f29448" - integrity sha512-8CbutzSSh4hmD+jJHIA8vdTNk15kAzOnFLVVgBSMGr28rt85ouT01/rezMecks9pkU939wDInImwCKv4ahU4IA== +"@babel/plugin-transform-numeric-separator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.9.tgz#bfed75866261a8b643468b0ccfd275f2033214a1" + integrity sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-object-rest-spread@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.7.tgz#fa0916521be96fd434e2db59780b24b308c6d169" - integrity sha512-1JdVKPhD7Y5PvgfFy0Mv2brdrolzpzSoUq2pr6xsR+m+3viGGeHEokFKsCgOkbeFOQxfB1Vt2F0cPJLRpFI4Zg== +"@babel/plugin-transform-object-rest-spread@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.9.tgz#0203725025074164808bcf1a2cfa90c652c99f18" + integrity sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg== dependencies: - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.25.7" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/plugin-transform-parameters" "^7.25.9" -"@babel/plugin-transform-object-super@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.7.tgz#582a9cea8cf0a1e02732be5b5a703a38dedf5661" - integrity sha512-pWT6UXCEW3u1t2tcAGtE15ornCBvopHj9Bps9D2DsH15APgNVOTwwczGckX+WkAvBmuoYKRCFa4DK+jM8vh5AA== +"@babel/plugin-transform-object-super@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz#385d5de135162933beb4a3d227a2b7e52bb4cf03" + integrity sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-replace-supers" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-replace-supers" "^7.25.9" -"@babel/plugin-transform-optional-catch-binding@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.7.tgz#400e2d891f9288f5231694234696aa67164e4913" - integrity sha512-m9obYBA39mDPN7lJzD5WkGGb0GO54PPLXsbcnj1Hyeu8mSRz7Gb4b1A6zxNX32ZuUySDK4G6it8SDFWD1nCnqg== +"@babel/plugin-transform-optional-catch-binding@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.9.tgz#10e70d96d52bb1f10c5caaac59ac545ea2ba7ff3" + integrity sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-optional-chaining@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.7.tgz#b7f7c9321aa1d8414e67799c28d87c23682e4d68" - integrity sha512-h39agClImgPWg4H8mYVAbD1qP9vClFbEjqoJmt87Zen8pjqK8FTPUwrOXAvqu5soytwxrLMd2fx2KSCp2CHcNg== +"@babel/plugin-transform-optional-chaining@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.9.tgz#e142eb899d26ef715435f201ab6e139541eee7dd" + integrity sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" -"@babel/plugin-transform-parameters@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.7.tgz#80c38b03ef580f6d6bffe1c5254bb35986859ac7" - integrity sha512-FYiTvku63me9+1Nz7TOx4YMtW3tWXzfANZtrzHhUZrz4d47EEtMQhzFoZWESfXuAMMT5mwzD4+y1N8ONAX6lMQ== +"@babel/plugin-transform-parameters@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.9.tgz#b856842205b3e77e18b7a7a1b94958069c7ba257" + integrity sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-private-methods@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.7.tgz#c790a04f837b4bd61d6b0317b43aa11ff67dce80" - integrity sha512-KY0hh2FluNxMLwOCHbxVOKfdB5sjWG4M183885FmaqWWiGMhRZq4DQRKH6mHdEucbJnyDyYiZNwNG424RymJjA== +"@babel/plugin-transform-private-methods@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.9.tgz#847f4139263577526455d7d3223cd8bda51e3b57" + integrity sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-private-property-in-object@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.7.tgz#aff877efd05b57c4ad04611d8de97bf155a53369" - integrity sha512-LzA5ESzBy7tqj00Yjey9yWfs3FKy4EmJyKOSWld144OxkTji81WWnUT8nkLUn+imN/zHL8ZQlOu/MTUAhHaX3g== +"@babel/plugin-transform-private-property-in-object@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.9.tgz#9c8b73e64e6cc3cbb2743633885a7dd2c385fe33" + integrity sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-property-literals@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.7.tgz#a8612b4ea4e10430f00012ecf0155662c7d6550d" - integrity sha512-lQEeetGKfFi0wHbt8ClQrUSUMfEeI3MMm74Z73T9/kuz990yYVtfofjf3NuA42Jy3auFOpbjDyCSiIkTs1VIYw== +"@babel/plugin-transform-property-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz#d72d588bd88b0dec8b62e36f6fda91cedfe28e3f" + integrity sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-regenerator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.7.tgz#6eb006e6d26f627bc2f7844a9f19770721ad6f3e" - integrity sha512-mgDoQCRjrY3XK95UuV60tZlFCQGXEtMg8H+IsW72ldw1ih1jZhzYXbJvghmAEpg5UVhhnCeia1CkGttUvCkiMQ== +"@babel/plugin-transform-regenerator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.9.tgz#03a8a4670d6cebae95305ac6defac81ece77740b" + integrity sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" regenerator-transform "^0.15.2" -"@babel/plugin-transform-reserved-words@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.7.tgz#dc56b25e02afaabef3ce0c5b06b0916e8523e995" - integrity sha512-3OfyfRRqiGeOvIWSagcwUTVk2hXBsr/ww7bLn6TRTuXnexA+Udov2icFOxFX9abaj4l96ooYkcNN1qi2Zvqwng== +"@babel/plugin-transform-regexp-modifiers@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.26.0.tgz#2f5837a5b5cd3842a919d8147e9903cc7455b850" + integrity sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-reserved-words@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz#0398aed2f1f10ba3f78a93db219b27ef417fb9ce" + integrity sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-transform-runtime@^7.14.3": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.7.tgz#435a4fab67273f00047dc806e05069c9c6344e12" - integrity sha512-Y9p487tyTzB0yDYQOtWnC+9HGOuogtP3/wNpun1xJXEEvI6vip59BSBTsHnekZLqxmPcgsrAKt46HAAb//xGhg== + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.9.tgz#62723ea3f5b31ffbe676da9d6dae17138ae580ea" + integrity sha512-nZp7GlEl+yULJrClz0SwHPqir3lc0zsPrDHQUcxGspSL7AKrexNSEfTbfqnDNJUO13bgKyfuOLMF8Xqtu8j3YQ== dependencies: - "@babel/helper-module-imports" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-module-imports" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.6" babel-plugin-polyfill-regenerator "^0.6.1" semver "^6.3.1" -"@babel/plugin-transform-shorthand-properties@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.7.tgz#92690a9c671915602d91533c278cc8f6bf12275f" - integrity sha512-uBbxNwimHi5Bv3hUccmOFlUy3ATO6WagTApenHz9KzoIdn0XeACdB12ZJ4cjhuB2WSi80Ez2FWzJnarccriJeA== +"@babel/plugin-transform-shorthand-properties@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.9.tgz#bb785e6091f99f826a95f9894fc16fde61c163f2" + integrity sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-spread@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.7.tgz#df83e899a9fc66284ee601a7b738568435b92998" - integrity sha512-Mm6aeymI0PBh44xNIv/qvo8nmbkpZze1KvR8MkEqbIREDxoiWTi18Zr2jryfRMwDfVZF9foKh060fWgni44luw== +"@babel/plugin-transform-spread@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.9.tgz#24a35153931b4ba3d13cec4a7748c21ab5514ef9" + integrity sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" -"@babel/plugin-transform-sticky-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.7.tgz#341c7002bef7f29037be7fb9684e374442dd0d17" - integrity sha512-ZFAeNkpGuLnAQ/NCsXJ6xik7Id+tHuS+NT+ue/2+rn/31zcdnupCdmunOizEaP0JsUmTFSTOPoQY7PkK2pttXw== +"@babel/plugin-transform-sticky-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.9.tgz#c7f02b944e986a417817b20ba2c504dfc1453d32" + integrity sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-template-literals@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.7.tgz#e566c581bb16d8541dd8701093bb3457adfce16b" - integrity sha512-SI274k0nUsFFmyQupiO7+wKATAmMFf8iFgq2O+vVFXZ0SV9lNfT1NGzBEhjquFmD8I9sqHLguH+gZVN3vww2AA== +"@babel/plugin-transform-template-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.9.tgz#6dbd4a24e8fad024df76d1fac6a03cf413f60fe1" + integrity sha512-o97AE4syN71M/lxrCtQByzphAdlYluKPDBzDVzMmfCobUjjhAryZV0AIpRPrxN0eAkxXO6ZLEScmt+PNhj2OTw== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-typeof-symbol@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.7.tgz#debb1287182efd20488f126be343328c679b66eb" - integrity sha512-OmWmQtTHnO8RSUbL0NTdtpbZHeNTnm68Gj5pA4Y2blFNh+V4iZR68V1qL9cI37J21ZN7AaCnkfdHtLExQPf2uA== +"@babel/plugin-transform-typeof-symbol@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.9.tgz#224ba48a92869ddbf81f9b4a5f1204bbf5a2bc4b" + integrity sha512-v61XqUMiueJROUv66BVIOi0Fv/CUuZuZMl5NkRoCVxLAnMexZ0A3kMe7vvZ0nulxMuMp0Mk6S5hNh48yki08ZA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-typescript@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.7.tgz#8fc7c3d28ddd36bce45b9b48594129d0e560cfbe" - integrity sha512-VKlgy2vBzj8AmEzunocMun2fF06bsSWV+FvVXohtL6FGve/+L217qhHxRTVGHEDO/YR8IANcjzgJsd04J8ge5Q== +"@babel/plugin-transform-typescript@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.9.tgz#69267905c2b33c2ac6d8fe765e9dc2ddc9df3849" + integrity sha512-7PbZQZP50tzv2KGGnhh82GSyMB01yKY9scIjf1a+GfZCtInOWqUH5+1EBU4t9fyR5Oykkkc9vFTs4OHrhHXljQ== dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" - "@babel/plugin-syntax-typescript" "^7.25.7" + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/plugin-syntax-typescript" "^7.25.9" -"@babel/plugin-transform-unicode-escapes@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.7.tgz#973592b6d13a914794e1de8cf1383e50e0f87f81" - integrity sha512-BN87D7KpbdiABA+t3HbVqHzKWUDN3dymLaTnPFAMyc8lV+KN3+YzNhVRNdinaCPA4AUqx7ubXbQ9shRjYBl3SQ== +"@babel/plugin-transform-unicode-escapes@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz#a75ef3947ce15363fccaa38e2dd9bc70b2788b82" + integrity sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-unicode-property-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.7.tgz#25349197cce964b1343f74fa7cfdf791a1b1919e" - integrity sha512-IWfR89zcEPQGB/iB408uGtSPlQd3Jpq11Im86vUgcmSTcoWAiQMCTOa2K2yNNqFJEBVICKhayctee65Ka8OB0w== +"@babel/plugin-transform-unicode-property-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.9.tgz#a901e96f2c1d071b0d1bb5dc0d3c880ce8f53dd3" + integrity sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-unicode-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.7.tgz#f93a93441baf61f713b6d5552aaa856bfab34809" - integrity sha512-8JKfg/hiuA3qXnlLx8qtv5HWRbgyFx2hMMtpDDuU2rTckpKkGu4ycK5yYHwuEa16/quXfoxHBIApEsNyMWnt0g== +"@babel/plugin-transform-unicode-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.9.tgz#5eae747fe39eacf13a8bd006a4fb0b5d1fa5e9b1" + integrity sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-unicode-sets-regex@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.7.tgz#d1b3295d29e0f8f4df76abc909ad1ebee919560c" - integrity sha512-YRW8o9vzImwmh4Q3Rffd09bH5/hvY0pxg+1H1i0f7APoUeg12G7+HhLj9ZFNIrYkgBXhIijPJ+IXypN0hLTIbw== +"@babel/plugin-transform-unicode-sets-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.9.tgz#65114c17b4ffc20fa5b163c63c70c0d25621fabe" + integrity sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/preset-env@^7.14.2": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.25.7.tgz#fc1b092152db4b58377b85dc05c890081c1157e0" - integrity sha512-Gibz4OUdyNqqLj+7OAvBZxOD7CklCtMA5/j0JgUEwOnaRULsPDXmic2iKxL2DX2vQduPR5wH2hjZas/Vr/Oc0g== - dependencies: - "@babel/compat-data" "^7.25.7" - "@babel/helper-compilation-targets" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-validator-option" "^7.25.7" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.7" - "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.7" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.7" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.25.7" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.7" + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.26.0.tgz#30e5c6bc1bcc54865bff0c5a30f6d4ccdc7fa8b1" + integrity sha512-H84Fxq0CQJNdPFT2DrfnylZ3cf5K43rGfWK4LJGPpjKHiZlk0/RzwEus3PDDZZg+/Er7lCA03MVacueUuXdzfw== + dependencies: + "@babel/compat-data" "^7.26.0" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.9" + "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.9" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.9" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.25.9" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.9" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-class-properties" "^7.12.13" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.25.7" - "@babel/plugin-syntax-import-attributes" "^7.25.7" - "@babel/plugin-syntax-import-meta" "^7.10.4" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" - "@babel/plugin-syntax-top-level-await" "^7.14.5" + "@babel/plugin-syntax-import-assertions" "^7.26.0" + "@babel/plugin-syntax-import-attributes" "^7.26.0" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.25.7" - "@babel/plugin-transform-async-generator-functions" "^7.25.7" - "@babel/plugin-transform-async-to-generator" "^7.25.7" - "@babel/plugin-transform-block-scoped-functions" "^7.25.7" - "@babel/plugin-transform-block-scoping" "^7.25.7" - "@babel/plugin-transform-class-properties" "^7.25.7" - "@babel/plugin-transform-class-static-block" "^7.25.7" - "@babel/plugin-transform-classes" "^7.25.7" - "@babel/plugin-transform-computed-properties" "^7.25.7" - "@babel/plugin-transform-destructuring" "^7.25.7" - "@babel/plugin-transform-dotall-regex" "^7.25.7" - "@babel/plugin-transform-duplicate-keys" "^7.25.7" - "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.7" - "@babel/plugin-transform-dynamic-import" "^7.25.7" - "@babel/plugin-transform-exponentiation-operator" "^7.25.7" - "@babel/plugin-transform-export-namespace-from" "^7.25.7" - "@babel/plugin-transform-for-of" "^7.25.7" - "@babel/plugin-transform-function-name" "^7.25.7" - "@babel/plugin-transform-json-strings" "^7.25.7" - "@babel/plugin-transform-literals" "^7.25.7" - "@babel/plugin-transform-logical-assignment-operators" "^7.25.7" - "@babel/plugin-transform-member-expression-literals" "^7.25.7" - "@babel/plugin-transform-modules-amd" "^7.25.7" - "@babel/plugin-transform-modules-commonjs" "^7.25.7" - "@babel/plugin-transform-modules-systemjs" "^7.25.7" - "@babel/plugin-transform-modules-umd" "^7.25.7" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.25.7" - "@babel/plugin-transform-new-target" "^7.25.7" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.25.7" - "@babel/plugin-transform-numeric-separator" "^7.25.7" - "@babel/plugin-transform-object-rest-spread" "^7.25.7" - "@babel/plugin-transform-object-super" "^7.25.7" - "@babel/plugin-transform-optional-catch-binding" "^7.25.7" - "@babel/plugin-transform-optional-chaining" "^7.25.7" - "@babel/plugin-transform-parameters" "^7.25.7" - "@babel/plugin-transform-private-methods" "^7.25.7" - "@babel/plugin-transform-private-property-in-object" "^7.25.7" - "@babel/plugin-transform-property-literals" "^7.25.7" - "@babel/plugin-transform-regenerator" "^7.25.7" - "@babel/plugin-transform-reserved-words" "^7.25.7" - "@babel/plugin-transform-shorthand-properties" "^7.25.7" - "@babel/plugin-transform-spread" "^7.25.7" - "@babel/plugin-transform-sticky-regex" "^7.25.7" - "@babel/plugin-transform-template-literals" "^7.25.7" - "@babel/plugin-transform-typeof-symbol" "^7.25.7" - "@babel/plugin-transform-unicode-escapes" "^7.25.7" - "@babel/plugin-transform-unicode-property-regex" "^7.25.7" - "@babel/plugin-transform-unicode-regex" "^7.25.7" - "@babel/plugin-transform-unicode-sets-regex" "^7.25.7" + "@babel/plugin-transform-arrow-functions" "^7.25.9" + "@babel/plugin-transform-async-generator-functions" "^7.25.9" + "@babel/plugin-transform-async-to-generator" "^7.25.9" + "@babel/plugin-transform-block-scoped-functions" "^7.25.9" + "@babel/plugin-transform-block-scoping" "^7.25.9" + "@babel/plugin-transform-class-properties" "^7.25.9" + "@babel/plugin-transform-class-static-block" "^7.26.0" + "@babel/plugin-transform-classes" "^7.25.9" + "@babel/plugin-transform-computed-properties" "^7.25.9" + "@babel/plugin-transform-destructuring" "^7.25.9" + "@babel/plugin-transform-dotall-regex" "^7.25.9" + "@babel/plugin-transform-duplicate-keys" "^7.25.9" + "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.9" + "@babel/plugin-transform-dynamic-import" "^7.25.9" + "@babel/plugin-transform-exponentiation-operator" "^7.25.9" + "@babel/plugin-transform-export-namespace-from" "^7.25.9" + "@babel/plugin-transform-for-of" "^7.25.9" + "@babel/plugin-transform-function-name" "^7.25.9" + "@babel/plugin-transform-json-strings" "^7.25.9" + "@babel/plugin-transform-literals" "^7.25.9" + "@babel/plugin-transform-logical-assignment-operators" "^7.25.9" + "@babel/plugin-transform-member-expression-literals" "^7.25.9" + "@babel/plugin-transform-modules-amd" "^7.25.9" + "@babel/plugin-transform-modules-commonjs" "^7.25.9" + "@babel/plugin-transform-modules-systemjs" "^7.25.9" + "@babel/plugin-transform-modules-umd" "^7.25.9" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.25.9" + "@babel/plugin-transform-new-target" "^7.25.9" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.25.9" + "@babel/plugin-transform-numeric-separator" "^7.25.9" + "@babel/plugin-transform-object-rest-spread" "^7.25.9" + "@babel/plugin-transform-object-super" "^7.25.9" + "@babel/plugin-transform-optional-catch-binding" "^7.25.9" + "@babel/plugin-transform-optional-chaining" "^7.25.9" + "@babel/plugin-transform-parameters" "^7.25.9" + "@babel/plugin-transform-private-methods" "^7.25.9" + "@babel/plugin-transform-private-property-in-object" "^7.25.9" + "@babel/plugin-transform-property-literals" "^7.25.9" + "@babel/plugin-transform-regenerator" "^7.25.9" + "@babel/plugin-transform-regexp-modifiers" "^7.26.0" + "@babel/plugin-transform-reserved-words" "^7.25.9" + "@babel/plugin-transform-shorthand-properties" "^7.25.9" + "@babel/plugin-transform-spread" "^7.25.9" + "@babel/plugin-transform-sticky-regex" "^7.25.9" + "@babel/plugin-transform-template-literals" "^7.25.9" + "@babel/plugin-transform-typeof-symbol" "^7.25.9" + "@babel/plugin-transform-unicode-escapes" "^7.25.9" + "@babel/plugin-transform-unicode-property-regex" "^7.25.9" + "@babel/plugin-transform-unicode-regex" "^7.25.9" + "@babel/plugin-transform-unicode-sets-regex" "^7.25.9" "@babel/preset-modules" "0.1.6-no-external-plugins" babel-plugin-polyfill-corejs2 "^0.4.10" babel-plugin-polyfill-corejs3 "^0.10.6" @@ -948,61 +917,60 @@ esutils "^2.0.2" "@babel/preset-typescript@^7.13.0": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.25.7.tgz#43c5b68eccb856ae5b52274b77b1c3c413cde1b7" - integrity sha512-rkkpaXJZOFN45Fb+Gki0c+KMIglk4+zZXOoMJuyEK8y8Kkc8Jd3BDmP7qPsz0zQMJj+UD7EprF+AqAXcILnexw== + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.26.0.tgz#4a570f1b8d104a242d923957ffa1eaff142a106d" + integrity sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-validator-option" "^7.25.7" - "@babel/plugin-syntax-jsx" "^7.25.7" - "@babel/plugin-transform-modules-commonjs" "^7.25.7" - "@babel/plugin-transform-typescript" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" + "@babel/plugin-syntax-jsx" "^7.25.9" + "@babel/plugin-transform-modules-commonjs" "^7.25.9" + "@babel/plugin-transform-typescript" "^7.25.9" "@babel/runtime-corejs3@^7.14.0": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.25.7.tgz#29ca319b1272e9d78faa3f7ee891d0af63c53aa2" - integrity sha512-gMmIEhg35sXk9Te5qbGp3W9YKrvLt3HV658/d3odWrHSqT0JeG5OzsJWFHRLiOohRyjRsJc/x03DhJm3i8VJxg== + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.26.0.tgz#5af6bed16073eb4a0191233d61e158a5c768c430" + integrity sha512-YXHu5lN8kJCb1LOb9PgV6pvak43X2h4HvRApcN5SdWeaItQOzfn1hgP6jasD6KWQyJDBxrVmA9o9OivlnNJK/w== dependencies: core-js-pure "^3.30.2" regenerator-runtime "^0.14.0" "@babel/runtime@^7.8.4": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.7.tgz#7ffb53c37a8f247c8c4d335e89cdf16a2e0d0fb6" - integrity sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w== + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.26.0.tgz#8600c2f595f277c60815256418b85356a65173c1" + integrity sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw== dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.25.7", "@babel/template@^7.3.3": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.7.tgz#27f69ce382855d915b14ab0fe5fb4cbf88fa0769" - integrity sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA== - dependencies: - "@babel/code-frame" "^7.25.7" - "@babel/parser" "^7.25.7" - "@babel/types" "^7.25.7" - -"@babel/traverse@^7.1.0", "@babel/traverse@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.7.tgz#83e367619be1cab8e4f2892ef30ba04c26a40fa8" - integrity sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg== - dependencies: - "@babel/code-frame" "^7.25.7" - "@babel/generator" "^7.25.7" - "@babel/parser" "^7.25.7" - "@babel/template" "^7.25.7" - "@babel/types" "^7.25.7" +"@babel/template@^7.25.9", "@babel/template@^7.3.3": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.9.tgz#ecb62d81a8a6f5dc5fe8abfc3901fc52ddf15016" + integrity sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg== + dependencies: + "@babel/code-frame" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/types" "^7.25.9" + +"@babel/traverse@^7.1.0", "@babel/traverse@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.9.tgz#a50f8fe49e7f69f53de5bea7e413cd35c5e13c84" + integrity sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw== + dependencies: + "@babel/code-frame" "^7.25.9" + "@babel/generator" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/template" "^7.25.9" + "@babel/types" "^7.25.9" debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.25.7", "@babel/types@^7.3.3", "@babel/types@^7.4.4": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.7.tgz#1b7725c1d3a59f328cb700ce704c46371e6eef9b" - integrity sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ== +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.25.9", "@babel/types@^7.26.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.0.tgz#deabd08d6b753bc8e0f198f8709fb575e31774ff" + integrity sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA== dependencies: - "@babel/helper-string-parser" "^7.25.7" - "@babel/helper-validator-identifier" "^7.25.7" - to-fast-properties "^2.0.0" + "@babel/helper-string-parser" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" "@bcoe/v8-coverage@^0.2.3": version "0.2.3" @@ -1523,9 +1491,9 @@ integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== "@types/argparse@^2.0.14": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@types/argparse/-/argparse-2.0.16.tgz#3bb7ccd2844b3a8bcd6efbd217f6c0ea06a80d22" - integrity sha512-aMqBra2JlqpFeCWOinCtpRpiCkPIXH8hahW2+FkGzvWjfE5sAqtOcrjN5DRcMnTQqFDe6gb1CVYuGnBH0lhXwA== + version "2.0.17" + resolved "https://registry.yarnpkg.com/@types/argparse/-/argparse-2.0.17.tgz#3895b4f71f239c7b3751e4651b56f1292c999885" + integrity sha512-fueJssTf+4dW4HODshEGkIZbkLKHzgu1FvCI4cTc/MKum/534Euo3SrN+ilq8xgyHnOjtmg33/hee8iXLRg1XA== "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14", "@types/babel__core@^7.1.7": version "7.20.5" @@ -1594,6 +1562,22 @@ dependencies: "@types/ms" "*" +"@types/eslint-scope@^3.7.7": + version "3.7.7" + resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5" + integrity sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg== + dependencies: + "@types/eslint" "*" + "@types/estree" "*" + +"@types/eslint@*": + version "9.6.1" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-9.6.1.tgz#d5795ad732ce81715f27f75da913004a56751584" + integrity sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + "@types/estree-jsx@^1.0.0": version "1.0.5" resolved "https://registry.yarnpkg.com/@types/estree-jsx/-/estree-jsx-1.0.5.tgz#858a88ea20f34fe65111f005a689fa1ebf70dc18" @@ -1601,7 +1585,7 @@ dependencies: "@types/estree" "*" -"@types/estree@*", "@types/estree@^1.0.0", "@types/estree@^1.0.5": +"@types/estree@*", "@types/estree@^1.0.0", "@types/estree@^1.0.6": version "1.0.6" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== @@ -1617,9 +1601,9 @@ "@types/send" "*" "@types/express-serve-static-core@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.0.0.tgz#91f06cda1049e8f17eeab364798ed79c97488a1c" - integrity sha512-AbXMTZGt40T+KON9/Fdxx0B2WK5hsgxcfXJLr5bFpZ7b4JCex2WyQPTEKdXqfHiY5nKKBScZ7yCoO6Pvgxfvnw== + version "5.0.1" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.0.1.tgz#3c9997ae9d00bc236e45c6374e84f2596458d9db" + integrity sha512-CRICJIl0N5cXDONAdlTv5ShATZ4HEwk6kDDIW2/w9qOWKg+NU/5F8wYRWCrONad0/UKkloNSmmyN/wX4rtpbVA== dependencies: "@types/node" "*" "@types/qs" "*" @@ -1697,7 +1681,7 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/json-schema@^7.0.5", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8": +"@types/json-schema@*", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -1710,9 +1694,9 @@ "@types/lodash" "*" "@types/lodash@*": - version "4.17.10" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.10.tgz#64f3edf656af2fe59e7278b73d3e62404144a6e6" - integrity sha512-YpS0zzoduEhuOWjAotS6A5AVCva7X4lVlYLF0FYHAY9sdraBfnatttHItlWeZdGhuEkf+OzMNg2ZYAx8t+52uQ== + version "4.17.13" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.13.tgz#786e2d67cfd95e32862143abe7463a7f90c300eb" + integrity sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg== "@types/mdast@^4.0.0": version "4.0.4" @@ -1745,16 +1729,16 @@ form-data "^4.0.0" "@types/node@*": - version "22.7.5" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.7.5.tgz#cfde981727a7ab3611a481510b473ae54442b92b" - integrity sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ== + version "22.9.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.9.0.tgz#b7f16e5c3384788542c72dc3d561a7ceae2c0365" + integrity sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ== dependencies: - undici-types "~6.19.2" + undici-types "~6.19.8" "@types/node@^16.18.69": - version "16.18.113" - resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.113.tgz#fbe99013933c4997db5838d20497494a7e01f4ab" - integrity sha512-4jHxcEzSXpF1cBNxogs5FVbVSFSKo50sFCn7Xg7vmjJTbWFWgeuHW3QnoINlfmfG++MFR/q97RZE5RQXKeT+jg== + version "16.18.119" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.18.119.tgz#88443bb82119b7c0920e86949673876cbe1c3492" + integrity sha512-ia7V9a2FnhUFfetng4/sRPBMTwHZUkPFY736rb1cg9AgG7MZdR97q7/nLR9om+sq5f1la9C857E0l/nrI0RiFQ== "@types/normalize-package-data@^2.4.0": version "2.4.4" @@ -2075,7 +2059,7 @@ abbrev@1, abbrev@^1.0.0: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== -accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: +accepts@~1.3.4, accepts@~1.3.8: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== @@ -2091,11 +2075,6 @@ acorn-globals@^6.0.0: acorn "^7.1.1" acorn-walk "^7.1.1" -acorn-import-attributes@^1.9.5: - version "1.9.5" - resolved "https://registry.yarnpkg.com/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz#7eb1557b1ba05ef18b5ed0ec67591bfab04688ef" - integrity sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ== - acorn-jsx@^5.3.1: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" @@ -2111,10 +2090,10 @@ acorn@^7.1.1, acorn@^7.4.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.7.1, acorn@^8.8.2: - version "8.12.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.1.tgz#71616bdccbe25e27a54439e0046e89ca76df2248" - integrity sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg== +acorn@^8.14.0, acorn@^8.2.4, acorn@^8.8.2: + version "8.14.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.0.tgz#063e2c70cac5fb4f6467f0b11152e04c682795b0" + integrity sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA== agent-base@6, agent-base@^6.0.2: version "6.0.2" @@ -2666,15 +2645,15 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browserslist@^4.21.10, browserslist@^4.23.3, browserslist@^4.24.0: - version "4.24.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.0.tgz#a1325fe4bc80b64fda169629fc01b3d6cecd38d4" - integrity sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A== +browserslist@^4.24.0, browserslist@^4.24.2: + version "4.24.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.2.tgz#f5845bc91069dbd55ee89faf9822e1d885d16580" + integrity sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg== dependencies: - caniuse-lite "^1.0.30001663" - electron-to-chromium "^1.5.28" + caniuse-lite "^1.0.30001669" + electron-to-chromium "^1.5.41" node-releases "^2.0.18" - update-browserslist-db "^1.1.0" + update-browserslist-db "^1.1.1" bser@2.1.1: version "2.1.1" @@ -2701,11 +2680,6 @@ buffer@^5.5.0: base64-js "^1.3.1" ieee754 "^1.1.13" -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== - bytes@3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" @@ -2776,10 +2750,10 @@ camelcase@^6.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001663: - version "1.0.30001667" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz#99fc5ea0d9c6e96897a104a8352604378377f949" - integrity sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw== +caniuse-lite@^1.0.30001669: + version "1.0.30001677" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001677.tgz#27c2e2c637e007cfa864a16f7dfe7cde66b38b5f" + integrity sha512-fmfjsOlJUpMWu+mAAtZZZHz7UEwsUxIIvu1TJfO1HqFQvB/B+ii0xr9B5HpbZY/mC4XZ8SvjHJqtAY6pDPQEog== canvas@^2.11.2: version "2.11.2" @@ -2981,7 +2955,7 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-hash@2.0.2, color-hash@^2.0.2: +color-hash@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/color-hash/-/color-hash-2.0.2.tgz#abf735705da71874ddec7dcef50cd7479e7d64e9" integrity sha512-6exeENAqBTuIR1wIo36mR8xVVBv6l1hSLd7Qmvf6158Ld1L15/dbahR9VUOiX7GmGJBCnQyS0EY+I8x+wa7egg== @@ -3038,7 +3012,7 @@ component-emitter@^1.2.1: resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.1.tgz#ef1d5796f7d93f135ee6fb684340b26403c97d17" integrity sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ== -compressible@~2.0.16: +compressible@~2.0.18: version "2.0.18" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== @@ -3046,16 +3020,16 @@ compressible@~2.0.16: mime-db ">= 1.43.0 < 2" compression@^1.7.4: - version "1.7.4" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" - integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== + version "1.7.5" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.5.tgz#fdd256c0a642e39e314c478f6c2cd654edd74c93" + integrity sha512-bQJ0YRck5ak3LgtnpKkiabX5pNF7tMUh1BSy2ZBOTh0Dim0BUu6aPPwByIns6/A5Prh8PufSPerMDUklpzes2Q== dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.16" + bytes "3.1.2" + compressible "~2.0.18" debug "2.6.9" + negotiator "~0.6.4" on-headers "~1.0.2" - safe-buffer "5.1.2" + safe-buffer "5.2.1" vary "~1.1.2" concat-map@0.0.1: @@ -3138,21 +3112,21 @@ copy-webpack-plugin@^9.0.1: serialize-javascript "^6.0.0" core-js-compat@^3.38.0, core-js-compat@^3.38.1: - version "3.38.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.38.1.tgz#2bc7a298746ca5a7bcb9c164bcb120f2ebc09a09" - integrity sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw== + version "3.39.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.39.0.tgz#b12dccb495f2601dc860bdbe7b4e3ffa8ba63f61" + integrity sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw== dependencies: - browserslist "^4.23.3" + browserslist "^4.24.2" core-js-pure@^3.30.2: - version "3.38.1" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.38.1.tgz#e8534062a54b7221344884ba9b52474be495ada3" - integrity sha512-BY8Etc1FZqdw1glX0XNOq2FDwfrg/VGqoZOZCdaL+UmdaqDwQwYXkMJT4t6In+zfEfOJDcM9T0KdbBeJg8KKCQ== + version "3.39.0" + resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.39.0.tgz#aa0d54d70a15bdc13e7c853db87c10abc30d68f3" + integrity sha512-7fEcWwKI4rJinnK+wLTezeg2smbFFdSBP6E2kQZNbnzM2s1rpKQ6aaRteZSSg7FLU3P0HGGVo/gbpfanU36urg== core-js@^3.13.0: - version "3.38.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.38.1.tgz#aa375b79a286a670388a1a363363d53677c0383e" - integrity sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw== + version "3.39.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.39.0.tgz#57f7647f4d2d030c32a72ea23a0555b2eaa30f83" + integrity sha512-raM0ew0/jJUqkJ0E6e8UDtl+y/7ktFivgWvqw8dNSQeNWoSDLvQ1H/RN3aPXB9tBd4/FhyR4RDPGhsNIMsAn7g== core-util-is@~1.0.0: version "1.0.3" @@ -3230,13 +3204,6 @@ d3-array@1, d3-array@^1.1.1, d3-array@^1.2.0: resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.4.tgz#635ce4d5eea759f6f605863dbcfc30edc737f71f" integrity sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw== -d3-array@2, d3-array@^2.3.0: - version "2.12.1" - resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-2.12.1.tgz#e20b41aafcdffdf5d50928004ececf815a465e81" - integrity sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ== - dependencies: - internmap "^1.0.0" - "d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3, d3-array@^3.2.0: version "3.2.4" resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-3.2.4.tgz#15fec33b237f97ac5d7c986dc77da273a8ed0bb5" @@ -3301,11 +3268,6 @@ d3-color@1: resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-1.4.1.tgz#c52002bf8846ada4424d55d97982fef26eb3bc8a" integrity sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q== -"d3-color@1 - 2": - version "2.0.0" - resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-2.0.0.tgz#8d625cab42ed9b8f601a1760a389f7ea9189d62e" - integrity sha512-SPXi0TSKPD4g9tw0NMZFnR95XVgUZiBH+uUTqQuDu1OsE2zomHU7ho0FISciaPvosimixwHFl3WHLGabv6dDgQ== - "d3-color@1 - 3", d3-color@3: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-3.1.0.tgz#395b2833dfac71507f12ac2f7af23bf819de24e2" @@ -3424,11 +3386,6 @@ d3-format@1: resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-1.4.5.tgz#374f2ba1320e3717eb74a9356c67daee17a7edb4" integrity sha512-J0piedu6Z8iB6TbIGfZgDzfXxUFN3qQRMofy2oPdXzQibYGqPB/9iMcxr/TGalU+2RsyDO+U4f33id8tbnSRMQ== -"d3-format@1 - 2": - version "2.0.0" - resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-2.0.0.tgz#a10bcc0f986c372b729ba447382413aabf5b0767" - integrity sha512-Ab3S6XuE/Q+flY96HXT0jOXcM4EAClYFnRGY5zsjRGNy6qCYrQsMffs7cV5Q9xejb35zxW5hf/guKw34kvIKsA== - "d3-format@1 - 3", d3-format@3: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-3.1.0.tgz#9260e23a28ea5cb109e93b21a06e24e2ebd55641" @@ -3472,13 +3429,6 @@ d3-interpolate@1: dependencies: d3-color "1 - 3" -"d3-interpolate@1.2.0 - 2": - version "2.0.1" - resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-2.0.1.tgz#98be499cfb8a3b94d4ff616900501a64abc91163" - integrity sha512-c5UhwwTs/yybcmTpAVqwSFl6vrQ8JZJoT5F7xNFK9pymv5C0Ymcc9/LIJHtYIggg/yS9YHw8i8O8tgb9pupjeQ== - dependencies: - d3-color "1 - 2" - d3-path@1: version "1.0.9" resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.9.tgz#48c050bb1fe8c262493a8caf5524e3e9591701cf" @@ -3558,17 +3508,6 @@ d3-scale@4: d3-time "2.1.1 - 3" d3-time-format "2 - 4" -d3-scale@^3.2.3: - version "3.3.0" - resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-3.3.0.tgz#28c600b29f47e5b9cd2df9749c206727966203f3" - integrity sha512-1JGp44NQCt5d1g+Yy+GeOnZP7xHo0ii8zsQp6PGzd+C1/dl0KGsp9A7Mxwp+1D1o4unbTTxVdU/ZOIEBoeZPbQ== - dependencies: - d3-array "^2.3.0" - d3-format "1 - 2" - d3-interpolate "1.2.0 - 2" - d3-time "^2.1.1" - d3-time-format "2 - 3" - d3-selection@1, d3-selection@^1.1.0: version "1.4.2" resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-1.4.2.tgz#dcaa49522c0dbf32d6c1858afc26b6094555bc5c" @@ -3600,13 +3539,6 @@ d3-time-format@2: dependencies: d3-time "1" -"d3-time-format@2 - 3": - version "3.0.0" - resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-3.0.0.tgz#df8056c83659e01f20ac5da5fdeae7c08d5f1bb6" - integrity sha512-UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag== - dependencies: - d3-time "1 - 2" - "d3-time-format@2 - 4", d3-time-format@4: version "4.1.0" resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-4.1.0.tgz#7ab5257a5041d11ecb4fe70a5c7d16a195bb408a" @@ -3619,13 +3551,6 @@ d3-time@1: resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-1.1.0.tgz#b1e19d307dae9c900b7e5b25ffc5dcc249a8a0f1" integrity sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA== -"d3-time@1 - 2", d3-time@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-2.1.1.tgz#e9d8a8a88691f4548e68ca085e5ff956724a6682" - integrity sha512-/eIQe/eR4kCQwq7yxi7z4c6qEXf2IYGcjoWB5OOQy4Tq9Uv39/947qlDcN2TLkiTzQWzvnsuYPB9TrWaNfipKQ== - dependencies: - d3-array "2" - "d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@3: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-3.1.0.tgz#9310db56e992e3c0175e1ef385e545e48a9bb5c7" @@ -3810,14 +3735,6 @@ data-loader@^2.9.1: "@types/lodash-es" "4.17.3" lodash-es "^4.17.11" -data-loader@^3.8.22: - version "3.8.22" - resolved "https://registry.yarnpkg.com/data-loader/-/data-loader-3.8.22.tgz#2b73a9ddf7d12b267d5775a7a29f08899191026d" - integrity sha512-x62gXAb7kW1wLo+laGrLRJ4yVLsIr+WQ23Jebe89EnzuvpUFf0ckmxtK2lvllBJ9U1ZEwCeSfX9xGc3kwI3Otg== - dependencies: - "@types/lodash-es" "4.17.3" - lodash-es "^4.17.11" - data-urls@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" @@ -4114,10 +4031,10 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -electron-to-chromium@^1.5.28: - version "1.5.34" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.34.tgz#59f6eef987d2301d96d46b1bc4da913fe784baeb" - integrity sha512-/TZAiChbAflBNjCg+VvstbcwAtIL/VdMFO3NgRFIzBjpvPzWOTIbbO8kNb6RwU4bt9TP7K+3KqBKw/lOU+Y+GA== +electron-to-chromium@^1.5.41: + version "1.5.51" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.51.tgz#bb99216fed4892d131a8585a8593b00739310163" + integrity sha512-kKeWV57KSS8jH4alKt/jKnvHPmJgBxXzGUSbMd4eQF+iOsVPl7bz2KUmu6eo80eMP8wVioTfTyTzdMgM15WXNg== emittery@^0.7.1: version "0.7.2" @@ -4665,9 +4582,9 @@ fast-levenshtein@^2.0.6: integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== fast-uri@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.2.tgz#d78b298cf70fd3b752fd951175a3da6a7b48f024" - integrity sha512-GR6f0hD7XXyNJa25Tb9BuIdN0tdr+0BMi6/CJPH3wJO1JjNG3n/VsSw38AwRdKZABm8lGbPfakLRkYzx2V9row== + version "3.0.3" + resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.3.tgz#892a1c91802d5d7860de728f18608a0573142241" + integrity sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw== fastest-levenshtein@^1.0.12: version "1.0.16" @@ -4803,18 +4720,18 @@ for-in@^1.0.2: integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== form-data@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" - integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== + version "3.0.2" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.2.tgz#83ad9ced7c03feaad97e293d6f6091011e1659c8" + integrity sha512-sJe+TQb2vIaIyO783qN6BlMYWMw3WBOHA1Ay2qxsnjuafEOQFJ2JakedOQirT6D5XPRxDvS7AHYyem9fTpb4LQ== dependencies: asynckit "^0.4.0" combined-stream "^1.0.8" mime-types "^2.1.12" form-data@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" - integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + version "4.0.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.1.tgz#ba1076daaaa5bfd7e99c1a6cb02aa0a5cff90d48" + integrity sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw== dependencies: asynckit "^0.4.0" combined-stream "^1.0.8" @@ -5213,9 +5130,9 @@ hasown@^2.0.0, hasown@^2.0.1, hasown@^2.0.2: function-bind "^1.1.2" hast-util-to-jsx-runtime@^2.0.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.0.tgz#3ed27caf8dc175080117706bf7269404a0aa4f7c" - integrity sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ== + version "2.3.2" + resolved "https://registry.yarnpkg.com/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.2.tgz#6d11b027473e69adeaa00ca4cfb5bb68e3d282fa" + integrity sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg== dependencies: "@types/estree" "^1.0.0" "@types/hast" "^3.0.0" @@ -5514,11 +5431,6 @@ internal-slot@^1.0.7: resolved "https://registry.yarnpkg.com/internmap/-/internmap-2.0.3.tgz#6685f23755e43c524e251d29cbc97248e3061009" integrity sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg== -internmap@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/internmap/-/internmap-1.0.1.tgz#0017cc8a3b99605f0302f2b198d272e015e5df95" - integrity sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw== - interpret@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" @@ -6789,9 +6701,9 @@ map-visit@^1.0.0: object-visit "^1.0.0" mdast-util-from-markdown@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.1.tgz#32a6e8f512b416e1f51eb817fc64bd867ebcd9cc" - integrity sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA== + version "2.0.2" + resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz#4850390ca7cf17413a9b9a0fbefcd1bc0eb4160a" + integrity sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA== dependencies: "@types/mdast" "^4.0.0" "@types/unist" "^3.0.0" @@ -6872,15 +6784,16 @@ mdast-util-to-hast@^13.0.0: vfile "^6.0.0" mdast-util-to-markdown@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz#9813f1d6e0cdaac7c244ec8c6dabfdb2102ea2b4" - integrity sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ== + version "2.1.2" + resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz#f910ffe60897f04bb4b7e7ee434486f76288361b" + integrity sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA== dependencies: "@types/mdast" "^4.0.0" "@types/unist" "^3.0.0" longest-streak "^3.0.0" mdast-util-phrasing "^4.0.0" mdast-util-to-string "^4.0.0" + micromark-util-classify-character "^2.0.0" micromark-util-decode-string "^2.0.0" unist-util-visit "^5.0.0" zwitch "^2.0.0" @@ -7368,9 +7281,9 @@ multicast-dns@^6.0.1: thunky "^1.0.2" nan@^2.12.1, nan@^2.17.0: - version "2.20.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.20.0.tgz#08c5ea813dd54ed16e5bd6505bf42af4f7838ca3" - integrity sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw== + version "2.22.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.22.0.tgz#31bc433fc33213c97bad36404bb68063de604de3" + integrity sha512-nbajikzWTMwsW+eSsNm3QwlOs7het9gGJU5dDZzRTQGk03vyBOauxgI4VakDzE0PtsGTmXPsXTbbjVhRwR5mpw== nanoid@^3.3.7: version "3.3.7" @@ -7404,11 +7317,16 @@ natural-compare@^1.4.0: resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -negotiator@0.6.3, negotiator@^0.6.3: +negotiator@0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== +negotiator@^0.6.3, negotiator@~0.6.4: + version "0.6.4" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.4.tgz#777948e2452651c570b712dd01c23e262713fff7" + integrity sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w== + neo-async@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" @@ -7420,9 +7338,9 @@ nice-try@^1.0.4: integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== node-abi@^3.26.0, node-abi@^3.3.0: - version "3.68.0" - resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.68.0.tgz#8f37fb02ecf4f43ebe694090dcb52e0c4cc4ba25" - integrity sha512-7vbj10trelExNjFSBm5kTvZXXa7pZyKWx9RCKIyqe6I9Ev3IzGpQoqBP3a+cOdxY+pWj6VkP28n/2wWysBHD/A== + version "3.71.0" + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.71.0.tgz#52d84bbcd8575efb71468fbaa1f9a49b2c242038" + integrity sha512-SZ40vRiy/+wRTf21hxkkEjPJZpARzUMVcJoQse2EF8qkUWbbO2z7vd5oA/H6bVH6SZQ5STGcu0KRDS7biNRfxw== dependencies: semver "^7.3.5" @@ -7877,9 +7795,9 @@ path-type@^4.0.0: integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== picocolors@^1.0.0, picocolors@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59" - integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw== + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== picomatch@^2.0.4, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" @@ -8091,79 +8009,11 @@ protvista-datatable@3.8.22: type-fest "^1.2.1" uuid "^8.3.1" -protvista-feature-adapter@3.8.22, protvista-feature-adapter@^3.8.22: - version "3.8.22" - resolved "https://registry.yarnpkg.com/protvista-feature-adapter/-/protvista-feature-adapter-3.8.22.tgz#41e516730bc5bcea54a4af43402d474a5985a040" - integrity sha512-5fRVpy/h5ez/3ODAo2F0crjYR3NSoWr9PvzGwdLKPAZyA4FY9B4DmWs23XKiqgbgUxVKeAxcY+xagj0TCrXB+g== - dependencies: - protvista-track "^3.8.22" - uuid "^8.3.1" - -protvista-interpro-adapter@3.8.22: - version "3.8.22" - resolved "https://registry.yarnpkg.com/protvista-interpro-adapter/-/protvista-interpro-adapter-3.8.22.tgz#f6e2be231822cb60e20c50ab6ad7088a72bfabdb" - integrity sha512-kiGjMRHvqNgiEphAc0GPzDOwFaGdVfYLV2hWswFfZ2o7MKT3WqE3tam/R2p23qcK/VOGiMk6sZ0E8sD/ia1yiA== - dependencies: - color-hash "2.0.2" - -protvista-proteomics-adapter@3.8.22: - version "3.8.22" - resolved "https://registry.yarnpkg.com/protvista-proteomics-adapter/-/protvista-proteomics-adapter-3.8.22.tgz#5af84314f94824f2bf3c5a137bb3a736fac4d552" - integrity sha512-ynkzYbA56Zwp46q7DigvibDDZAx45l+XBjiRit7p9Bn7jgW/jkvNl7+zDQJsTucy/NZIwtWCt3LA08IdTlwpUg== - dependencies: - protvista-feature-adapter "^3.8.22" - uuid "^8.3.1" - -protvista-structure-adapter@3.8.22: - version "3.8.22" - resolved "https://registry.yarnpkg.com/protvista-structure-adapter/-/protvista-structure-adapter-3.8.22.tgz#a7e1e193d5002bd9225ac242b81e3d32f3b366b6" - integrity sha512-kjz+b1vu33Ce93eqG6AfnsRlHzs7DURrOa+PLW2uEkI+RfQ/tTkPzrtGVebz7hrB4uUBC0nSQtLOunxZpCJWfw== - dependencies: - protvista-feature-adapter "^3.8.22" - uuid "^8.3.1" - -protvista-track@^3.8.22: - version "3.8.22" - resolved "https://registry.yarnpkg.com/protvista-track/-/protvista-track-3.8.22.tgz#24eaaab0f8cfa545a053f394cf9fda6b28ee4223" - integrity sha512-4w3OHxu9AxjH1FbLnoqsRXK/ofIIOZnobXUdGooxulvVKil/2zwWzApUgypM3NSnv9HjGrZGJHePCs/7UPJT9w== - dependencies: - lodash-es "^4.17.11" - protvista-zoomable "^3.8.22" - protvista-utils@^3.8.22: version "3.8.22" resolved "https://registry.yarnpkg.com/protvista-utils/-/protvista-utils-3.8.22.tgz#0d97ad6958a5aa889b43ce2d48d8565b3c9ec2e3" integrity sha512-u2AJGsS6n+uBNgqpIYyvKbeMWEO7IHdziTw3QA2uMfa2KUshpnFZ8h2g0FJUwEyxIC+JQqiNFGQd/ASBj9rqTQ== -protvista-variation-adapter@3.8.22: - version "3.8.22" - resolved "https://registry.yarnpkg.com/protvista-variation-adapter/-/protvista-variation-adapter-3.8.22.tgz#dd82e52565cf5944add68699782c220164dead05" - integrity sha512-xcys6PTrzWlWoeaH6cDQf+Y8OohAcvWdkcEidSdHTrhv4Yk/8OYeXzy+Ycspr7UhSgdSMY17rOgm0ooHJ9cWBg== - dependencies: - d3-scale "^3.2.3" - data-loader "^3.8.22" - lodash-es "^4.17.11" - protvista-feature-adapter "^3.8.22" - protvista-variation "^3.8.22" - uuid "^8.3.1" - -protvista-variation@^3.8.22: - version "3.8.22" - resolved "https://registry.yarnpkg.com/protvista-variation/-/protvista-variation-3.8.22.tgz#279c95a305d58182db0b058e10791c46d3947490" - integrity sha512-2NjbvjDUfAqhwT/2O+TXyWPY1IyCkItQ3uENN4cB23hCMXmWuJRAp//48KZXF7iNCR+A8pRtIxAt/kRmHOzVAw== - dependencies: - lodash-es "^4.17.11" - protvista-track "^3.8.22" - -protvista-zoomable@^3.8.22: - version "3.8.22" - resolved "https://registry.yarnpkg.com/protvista-zoomable/-/protvista-zoomable-3.8.22.tgz#7d36a44503261fb2e459412974f28c59ba30d582" - integrity sha512-wWeFEiRn1RVWin9RgmREAg2FOvx9zbZk8zWJHghzLRYpzAz+TMMR2v+vtSgYNijePEkhD6WHP0AlV1PVjC/Q5A== - dependencies: - lodash-es "^4.17.11" - protvista-utils "^3.8.22" - resize-observer-polyfill "^1.5.0" - proxy-addr@~2.0.7: version "2.0.7" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" @@ -8420,9 +8270,9 @@ regjsgen@^0.8.0: integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q== regjsparser@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.11.1.tgz#ae55c74f646db0c8fcb922d4da635e33da405149" - integrity sha512-1DHODs4B8p/mQHU9kr+jv8+wIC9mtG4eBHxWxIq5mhjE3D5oORhCc6deRKzTjs9DcfRFmj9BHSDguZklqCGFWQ== + version "0.11.2" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.11.2.tgz#7404ad42be00226d72bcf1f003f1f441861913d8" + integrity sha512-3OGZZ4HoLJkkAZx/48mTXJNlmqTGOzc0o9OWQPuWpkOlXXPbyN6OafCcoXUnBqE2D3f/T5L+pWc1kdEmnfnRsA== dependencies: jsesc "~3.0.2" @@ -8487,11 +8337,6 @@ requires-port@^1.0.0: resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== -resize-observer-polyfill@^1.5.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464" - integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg== - resolve-cwd@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" @@ -8610,16 +8455,16 @@ safe-array-concat@^1.0.0, safe-array-concat@^1.1.2: has-symbols "^1.0.3" isarray "^2.0.5" -safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + safe-regex-test@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" @@ -9457,9 +9302,9 @@ terser-webpack-plugin@^5.3.10: terser "^5.26.0" terser@^5.26.0: - version "5.34.1" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.34.1.tgz#af40386bdbe54af0d063e0670afd55c3105abeb6" - integrity sha512-FsJZ7iZLd/BXkz+4xrRTGJ26o/6VTjQytUk8b8OxkwcD2I+79VPJlz7qss1+zE7h8GNIScFqXcDyJ/KqBYZFVA== + version "5.36.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.36.0.tgz#8b0dbed459ac40ff7b4c9fd5a3a2029de105180e" + integrity sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w== dependencies: "@jridgewell/source-map" "^0.3.3" acorn "^8.8.2" @@ -9508,11 +9353,6 @@ tmpl@1.0.5: resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== -to-fast-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== - to-object-path@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" @@ -9593,9 +9433,9 @@ tslib@^1.8.1, tslib@^1.9.0: integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== tslib@^2.1.0, tslib@^2.6.2: - version "2.7.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01" - integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA== + version "2.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" + integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== tsutils@^3.21.0: version "3.21.0" @@ -9727,7 +9567,7 @@ unbox-primitive@^1.0.2: has-symbols "^1.0.3" which-boxed-primitive "^1.0.2" -undici-types@~6.19.2: +undici-types@~6.19.8: version "6.19.8" resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02" integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw== @@ -9853,7 +9693,7 @@ upath@^1.1.1: resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== -update-browserslist-db@^1.1.0: +update-browserslist-db@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5" integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== @@ -10117,17 +9957,17 @@ webpack-sources@^3.2.3: integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== webpack@^5.91.0: - version "5.95.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.95.0.tgz#8fd8c454fa60dad186fbe36c400a55848307b4c0" - integrity sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q== + version "5.96.1" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.96.1.tgz#3676d1626d8312b6b10d0c18cc049fba7ac01f0c" + integrity sha512-l2LlBSvVZGhL4ZrPwyr8+37AunkcYj5qh8o6u2/2rzoPc8gxFJkLj1WxNgooi9pnoc06jh0BjuXnamM4qlujZA== dependencies: - "@types/estree" "^1.0.5" + "@types/eslint-scope" "^3.7.7" + "@types/estree" "^1.0.6" "@webassemblyjs/ast" "^1.12.1" "@webassemblyjs/wasm-edit" "^1.12.1" "@webassemblyjs/wasm-parser" "^1.12.1" - acorn "^8.7.1" - acorn-import-attributes "^1.9.5" - browserslist "^4.21.10" + acorn "^8.14.0" + browserslist "^4.24.0" chrome-trace-event "^1.0.2" enhanced-resolve "^5.17.1" es-module-lexer "^1.2.1" From a998a470aedcfec3944d2e5cdcd50ccbfac95123 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 13:14:37 +0000 Subject: [PATCH 08/32] Remove types already in nightingale. --- src/adapters/types/variants.ts | 198 -------------------- src/adapters/variation-adapter.ts | 8 +- src/config.json | 2 +- src/filter-config.ts | 24 ++- src/tooltips/variationTooltip.ts | 11 +- src/types/protvista-feature-adapter.d.ts | 1 - src/types/protvista-interpro-adapter.d.ts | 1 - src/types/protvista-proteomics-adapter.d.ts | 1 - src/types/protvista-structure-adapter.d.ts | 1 - src/types/protvista-variation.d.ts | 15 -- 10 files changed, 26 insertions(+), 236 deletions(-) delete mode 100644 src/adapters/types/variants.ts delete mode 100644 src/types/protvista-feature-adapter.d.ts delete mode 100644 src/types/protvista-interpro-adapter.d.ts delete mode 100644 src/types/protvista-proteomics-adapter.d.ts delete mode 100644 src/types/protvista-structure-adapter.d.ts delete mode 100644 src/types/protvista-variation.d.ts diff --git a/src/adapters/types/variants.ts b/src/adapters/types/variants.ts deleted file mode 100644 index c43b96d..0000000 --- a/src/adapters/types/variants.ts +++ /dev/null @@ -1,198 +0,0 @@ -export type ProteinsAPIVariation = { - accession: string; - entryName: string; - proteinName: string; - geneName: string; - organismName: string; - proteinExistence: string; - sequence: string; - sequenceChecksum: string; - sequenceVersion: number; - taxid: number; - features: Variant[]; -}; - -export type Variant = { - type: string; - // Note: one of the 2 following fields will be deprecated - don't know yet - alternativeSequence?: AminoAcid; - mutatedType?: AminoAcid; - begin: string; - end: string; - xrefs: Xref[]; - cytogeneticBand: string; - genomicLocation: string[]; - locations: Location[]; - codon?: string; - consequenceType: ConsequenceType; - wildType: AminoAcid; - predictions?: Prediction[]; - somaticStatus: number; - sourceType: SourceType; - descriptions?: Description[]; - clinicalSignificances?: ClinicalSignificance[]; - association?: Association[]; - populationFrequencies?: PopulationFrequency[]; - evidences?: Evidence[]; - ftId?: string; -}; - -export enum AminoAcid { - A = 'A', - C = 'C', - D = 'D', - E = 'E', - Empty = '*', - F = 'F', - G = 'G', - H = 'H', - I = 'I', - K = 'K', - L = 'L', - M = 'M', - N = 'N', - Nl = 'NL', - P = 'P', - Q = 'Q', - R = 'R', - S = 'S', - T = 'T', - V = 'V', - W = 'W', - Y = 'Y', -} - -export type Association = { - name: string; - dbReferences?: Xref[]; - evidences: Evidence[]; - disease: boolean; - description?: string; -}; - -export type Xref = { - name: string; - id: string; - url: string; - alternativeUrl?: string; -}; - -/* - * This has been imported from the backend enums but - * might be best kept as a string... - */ -export enum Source { - CLINVAR = 'ClinVar', - ESP = 'ESP', - EXAC = 'ExAC', - GENOMES1K = '1000Genomes', - BOVINE_SNP50 = 'BovineSNP50', - BOVINE_LD = 'BovineLD', - BOVINE_HD = 'BovineHD', - EQUINE_SNP50 = 'EquineSNP50', - CHICKEN_600K = 'Chicken600K', - KG_HQ = '1kg_hq', - COSMIC = 'cosmic curated', - REVIEWED = 'reviewed', - UNIPROT = 'UniProt', - DBSNP = 'dbSNP', - ENSEMBL = 'Ensembl', - ENSEMBL_PLANTS = 'EnsemblPlants', - VECTORBASE = 'VectorBase', - REFSEQ = 'RefSeq', - DBGAP = 'dbGaP', - DDD = 'DDD', - PHARMCOGKB = 'PharmGKB', - ENSEMBL_FUNGI = 'EnsemblFungi', - ENSEMBL_METAZOA = 'EnsemblMetazoa', - GNOMAD_V2 = 'gnomAD_v2.0', - GNOMAD_V3 = 'gnomAD_v3.0', - TCGA = 'NCI-TCGA', - TCGA_COSMIC = 'NCI-TCGA Cosmic', - DECIPHER = 'ddG2P', - TOPMED = 'TOPMed', - GNOMAD = 'gnomAD', - PHARMGKB = 'pharmgkb', - SGRP = 'SGRP', - SGD = 'SGD', - JEFFARES_SNPS = 'Jeffares_SNPs', - JEFFARES_INDELS = 'Jeffares_Indels', - ENSEMBL_VIRUSES = 'EnsemblViruses', -} - -export type Evidence = { - code: string; - source: Xref; -}; - -export type ClinicalSignificance = { - type: ClinicalSignificanceType; - sources: Source[]; -}; - -export enum ClinicalSignificanceType { - Benign = 'Benign', - Disease = 'Disease', - LikelyBenign = 'Likely benign', - LikelyPathogenic = 'Likely pathogenic', - Pathogenic = 'Pathogenic', - Protective = 'Protective', - VariantOfUncertainSignificance = 'Variant of uncertain significance', -} - -export enum ConsequenceType { - Empty = '-', - Frameshift = 'frameshift', - InframeDeletion = 'inframe deletion', - Insertion = 'insertion', - Missense = 'missense', - StopGained = 'stop gained', -} - -export type Description = { - value: string; - sources: Source[]; -}; - -export type Location = { - loc: string; - seqId: string; - source: Source; -}; - -export type PopulationFrequency = { - populationName: string; - frequency: number; - source: Source; -}; - -export type Prediction = { - predictionValType: PredictionValType; - predictorType: string; - score: number; - predAlgorithmNameType: PredAlgorithmNameType; - sources: Source[]; - version?: string; -}; - -export enum PredAlgorithmNameType { - PolyPhen = 'PolyPhen', - Sift = 'SIFT', -} - -export enum PredictionValType { - Benign = 'benign', - Deleterious = 'deleterious', - DeleteriousLowConfidence = 'deleterious - low confidence', - PossiblyDamaging = 'possibly damaging', - ProbablyDamaging = 'probably damaging', - Tolerated = 'tolerated', - ToleratedLowConfidence = 'tolerated - low confidence', - Unknown = 'unknown', -} - -export enum SourceType { - LargeScaleStudy = 'large_scale_study', - Mixed = 'mixed', - UniProt = 'uniprot', -} diff --git a/src/adapters/variation-adapter.ts b/src/adapters/variation-adapter.ts index 3d3a603..d89d20c 100644 --- a/src/adapters/variation-adapter.ts +++ b/src/adapters/variation-adapter.ts @@ -2,11 +2,15 @@ import { ProteinsAPIVariation, VariationDatum, } from '@nightingale-elements/nightingale-variation'; +import { + AminoAcid, + SourceType, + Variant, + Xref, +} from '@nightingale-elements/nightingale-variation/dist/proteinAPI'; import formatTooltip from '../tooltips/variationTooltip'; -import { Xref, SourceType, Variant, AminoAcid } from './types/variants'; - export type TransformedVariant = VariationDatum & Variant; const getSourceType = (xrefs: Xref[], sourceType: SourceType) => { diff --git a/src/config.json b/src/config.json index 7c3b63a..e95f3e6 100644 --- a/src/config.json +++ b/src/config.json @@ -573,7 +573,7 @@ }, { "name": "variation", - "filterComponent": "protvista-filter", + "filterComponent": "nightingale-filter", "trackType": "nightingale-variation", "data": [ { diff --git a/src/filter-config.ts b/src/filter-config.ts index 764fbf8..6e2c0e4 100644 --- a/src/filter-config.ts +++ b/src/filter-config.ts @@ -1,4 +1,8 @@ -import { ClinicalSignificance } from 'variation-adapter/dist/es/variants'; +import { VariationData } from '@nightingale-elements/nightingale-variation/dist/nightingale-variation'; +import { + ClinicalSignificance, + Variant, +} from '@nightingale-elements/nightingale-variation/dist/proteinAPI'; const scaleColors = { UPDiseaseColor: '#990000', @@ -20,8 +24,8 @@ const significanceMatches = ( }); export const getFilteredVariants = ( - variants: ProtvistaVariationData, - callbackFilter: (variantPos: ProtvistaVariant) => void + variants: VariationData, + callbackFilter: (variantPos: Variant) => void ) => variants.map((variant) => { const matchingVariants = variant.variants.filter((variantPos) => @@ -74,7 +78,7 @@ const filterConfig = [ color: scaleColors.UPDiseaseColor, }, filterPredicate: filterPredicates['disease'], - filterData: (variants: ProtvistaVariationData) => + filterData: (variants: VariationData) => getFilteredVariants(variants, filterPredicates['disease']), }, { @@ -88,7 +92,7 @@ const filterConfig = [ color: scaleColors.predictedColor, }, filterPredicate: filterPredicates['predicted'], - filterData: (variants: ProtvistaVariationData) => + filterData: (variants: VariationData) => getFilteredVariants(variants, filterPredicates['predicted']), }, { @@ -102,7 +106,7 @@ const filterConfig = [ color: scaleColors.UPNonDiseaseColor, }, filterPredicate: filterPredicates['nonDisease'], - filterData: (variants: ProtvistaVariationData) => + filterData: (variants: VariationData) => getFilteredVariants(variants, filterPredicates['nonDisease']), }, { @@ -116,7 +120,7 @@ const filterConfig = [ color: scaleColors.othersColor, }, filterPredicate: filterPredicates['uncertain'], - filterData: (variants: ProtvistaVariationData) => + filterData: (variants: VariationData) => getFilteredVariants(variants, filterPredicates['uncertain']), }, { @@ -130,7 +134,7 @@ const filterConfig = [ color: '#9f9f9f', }, filterPredicate: filterPredicates['UniProt'], - filterData: (variants: ProtvistaVariationData) => + filterData: (variants: VariationData) => getFilteredVariants(variants, filterPredicates['UniProt']), }, { @@ -144,7 +148,7 @@ const filterConfig = [ color: '#9f9f9f', }, filterPredicate: filterPredicates['ClinVar'], - filterData: (variants: ProtvistaVariationData) => + filterData: (variants: VariationData) => getFilteredVariants(variants, filterPredicates['ClinVar']), }, { @@ -158,7 +162,7 @@ const filterConfig = [ color: '#9f9f9f', }, filterPredicate: filterPredicates['LSS'], - filterData: (variants: ProtvistaVariationData) => + filterData: (variants: VariationData) => getFilteredVariants(variants, filterPredicates['LSS']), }, ]; diff --git a/src/tooltips/variationTooltip.ts b/src/tooltips/variationTooltip.ts index 91e5a8d..7e593ef 100644 --- a/src/tooltips/variationTooltip.ts +++ b/src/tooltips/variationTooltip.ts @@ -1,14 +1,13 @@ -import groupBy from 'lodash-es/groupBy'; - -import { formatXrefs, getEvidenceFromCodes } from './featureTooltip'; - import { Association, Description, PopulationFrequency, - Prediction, Variant, -} from '../adapters/types/variants'; + Prediction, +} from '@nightingale-elements/nightingale-variation/dist/proteinAPI'; +import groupBy from 'lodash-es/groupBy'; + +import { formatXrefs, getEvidenceFromCodes } from './featureTooltip'; const getDiseaseAssociations = (associations: Association[]): string => associations diff --git a/src/types/protvista-feature-adapter.d.ts b/src/types/protvista-feature-adapter.d.ts deleted file mode 100644 index 40627c6..0000000 --- a/src/types/protvista-feature-adapter.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare module 'protvista-feature-adapter'; diff --git a/src/types/protvista-interpro-adapter.d.ts b/src/types/protvista-interpro-adapter.d.ts deleted file mode 100644 index 7709ef3..0000000 --- a/src/types/protvista-interpro-adapter.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare module 'protvista-interpro-adapter'; diff --git a/src/types/protvista-proteomics-adapter.d.ts b/src/types/protvista-proteomics-adapter.d.ts deleted file mode 100644 index 60b3bf6..0000000 --- a/src/types/protvista-proteomics-adapter.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare module 'protvista-proteomics-adapter'; diff --git a/src/types/protvista-structure-adapter.d.ts b/src/types/protvista-structure-adapter.d.ts deleted file mode 100644 index dccff2b..0000000 --- a/src/types/protvista-structure-adapter.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare module 'protvista-structure-adapter'; diff --git a/src/types/protvista-variation.d.ts b/src/types/protvista-variation.d.ts deleted file mode 100644 index 49f4255..0000000 --- a/src/types/protvista-variation.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -declare module 'protvista-variation'; - -type ProtvistaVariant = - import('protvista-variation-adapter/dist/es/variants').Variant & { - hasPredictions?: boolean; - xrefNames?: string[]; - }; - -type ProtvistaVariationData = { - variants: ProtvistaVariant[]; -}[]; - -declare class ProtvistaVariation extends HTMLElement { - colorConfig: (variant: any) => string; -} From d3f50e07de67b73a28af6330ac522424b26ace0e Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 13:17:49 +0000 Subject: [PATCH 09/32] Fix proteomics-ptm-adapter import. --- src/config.json | 2 +- src/protvista-uniprot.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/config.json b/src/config.json index e95f3e6..6e56bc3 100644 --- a/src/config.json +++ b/src/config.json @@ -424,7 +424,7 @@ "trackType": "nightingale-track", "data": [ { - "adapter": "protvista-proteomics-ptm-adapter", + "adapter": "proteomics-ptm-adapter", "url": "https://www.ebi.ac.uk/proteins/api/proteomics-ptm/{accession}" } ], diff --git a/src/protvista-uniprot.ts b/src/protvista-uniprot.ts index 6dd456c..8c55533 100644 --- a/src/protvista-uniprot.ts +++ b/src/protvista-uniprot.ts @@ -47,7 +47,7 @@ const adapters = { 'structure-adapter': structureAdapter, 'variation-adapter': variationAdapter, 'variation-graph-adapter': variationGraphAdapter, - 'protvista-proteomics-ptm-adapter': proteomicsPTMApdapter, + 'proteomics-ptm-adapter': proteomicsPTMApdapter, 'alphafold-confidence-adapter': alphaFoldConfidenceAdapter, 'alphamissense-pathogenicity-adapter': alphaMissensePathogenicityAdapter, 'alphamissense-heatmap-adapter': alphaMissenseHeatmapAdapter, From 2ef789816abf28912fbd67667b195239395782d7 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 13:25:52 +0000 Subject: [PATCH 10/32] Fix type imports for variants. --- src/adapters/variation-adapter.ts | 6 ++---- src/filter-config.ts | 2 +- src/tooltips/variationTooltip.ts | 2 +- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/adapters/variation-adapter.ts b/src/adapters/variation-adapter.ts index d89d20c..7dc1bd1 100644 --- a/src/adapters/variation-adapter.ts +++ b/src/adapters/variation-adapter.ts @@ -1,13 +1,11 @@ import { ProteinsAPIVariation, - VariationDatum, -} from '@nightingale-elements/nightingale-variation'; -import { AminoAcid, SourceType, Variant, Xref, -} from '@nightingale-elements/nightingale-variation/dist/proteinAPI'; + VariationDatum, +} from '@nightingale-elements/nightingale-variation'; import formatTooltip from '../tooltips/variationTooltip'; diff --git a/src/filter-config.ts b/src/filter-config.ts index 6e2c0e4..4ec8b86 100644 --- a/src/filter-config.ts +++ b/src/filter-config.ts @@ -2,7 +2,7 @@ import { VariationData } from '@nightingale-elements/nightingale-variation/dist/ import { ClinicalSignificance, Variant, -} from '@nightingale-elements/nightingale-variation/dist/proteinAPI'; +} from '@nightingale-elements/nightingale-variation'; const scaleColors = { UPDiseaseColor: '#990000', diff --git a/src/tooltips/variationTooltip.ts b/src/tooltips/variationTooltip.ts index 7e593ef..51ae7e2 100644 --- a/src/tooltips/variationTooltip.ts +++ b/src/tooltips/variationTooltip.ts @@ -4,7 +4,7 @@ import { PopulationFrequency, Variant, Prediction, -} from '@nightingale-elements/nightingale-variation/dist/proteinAPI'; +} from '@nightingale-elements/nightingale-variation'; import groupBy from 'lodash-es/groupBy'; import { formatXrefs, getEvidenceFromCodes } from './featureTooltip'; From e26c0533d1ff22e141853a98164b0dd906da1525 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 23:00:26 +0000 Subject: [PATCH 11/32] Type fixes. --- src/adapters/proteomics-adapter.ts | 2 +- src/adapters/variation-adapter.ts | 2 +- src/filter-config.ts | 35 ++++++++++++++++-------------- src/protvista-uniprot.ts | 6 +++-- src/utils.ts | 17 +++++---------- 5 files changed, 30 insertions(+), 32 deletions(-) diff --git a/src/adapters/proteomics-adapter.ts b/src/adapters/proteomics-adapter.ts index a2a2183..52ad373 100644 --- a/src/adapters/proteomics-adapter.ts +++ b/src/adapters/proteomics-adapter.ts @@ -17,7 +17,7 @@ const transformData = (data) => { Once they are available in the data, there is no need for the below merging */ // To merge PTM data present in same residue in a same length peptide, have a map [key: start-end-phospho site 1-... phosphosite n, value: corresponding feature elements] - const ptmMap = {}; + const ptmMap: Record = {}; data.features.forEach((feature) => { let ft = `${feature.begin}-${feature.end}`; if (feature.ptms) { diff --git a/src/adapters/variation-adapter.ts b/src/adapters/variation-adapter.ts index 7dc1bd1..b9e53f2 100644 --- a/src/adapters/variation-adapter.ts +++ b/src/adapters/variation-adapter.ts @@ -32,7 +32,7 @@ const transformData = ( variant: variant.alternativeSequence ? variant.alternativeSequence : AminoAcid.Empty, - start: variant.begin, + start: +variant.begin, xrefNames: getSourceType(variant.xrefs, variant.sourceType), hasPredictions: variant.predictions && variant.predictions.length > 0, tooltipContent: formatTooltip(variant), diff --git a/src/filter-config.ts b/src/filter-config.ts index 4ec8b86..dece6d4 100644 --- a/src/filter-config.ts +++ b/src/filter-config.ts @@ -1,8 +1,5 @@ -import { VariationData } from '@nightingale-elements/nightingale-variation/dist/nightingale-variation'; -import { - ClinicalSignificance, - Variant, -} from '@nightingale-elements/nightingale-variation'; +import { VariationDatum } from '@nightingale-elements/nightingale-variation'; +import { ClinicalSignificance } from '@nightingale-elements/nightingale-variation'; const scaleColors = { UPDiseaseColor: '#990000', @@ -23,9 +20,15 @@ const significanceMatches = ( return values.some((rx) => rx.test(type)); }); +type VariantsForFilter = [ + { + variants: VariationDatum[]; + } +]; + export const getFilteredVariants = ( - variants: VariationData, - callbackFilter: (variantPos: Variant) => void + variants: VariantsForFilter, + callbackFilter: (variantPos: VariationDatum) => void ) => variants.map((variant) => { const matchingVariants = variant.variants.filter((variantPos) => @@ -78,7 +81,7 @@ const filterConfig = [ color: scaleColors.UPDiseaseColor, }, filterPredicate: filterPredicates['disease'], - filterData: (variants: VariationData) => + filterData: (variants: VariantsForFilter) => getFilteredVariants(variants, filterPredicates['disease']), }, { @@ -92,7 +95,7 @@ const filterConfig = [ color: scaleColors.predictedColor, }, filterPredicate: filterPredicates['predicted'], - filterData: (variants: VariationData) => + filterData: (variants: VariantsForFilter) => getFilteredVariants(variants, filterPredicates['predicted']), }, { @@ -106,7 +109,7 @@ const filterConfig = [ color: scaleColors.UPNonDiseaseColor, }, filterPredicate: filterPredicates['nonDisease'], - filterData: (variants: VariationData) => + filterData: (variants: VariantsForFilter) => getFilteredVariants(variants, filterPredicates['nonDisease']), }, { @@ -120,7 +123,7 @@ const filterConfig = [ color: scaleColors.othersColor, }, filterPredicate: filterPredicates['uncertain'], - filterData: (variants: VariationData) => + filterData: (variants: VariantsForFilter) => getFilteredVariants(variants, filterPredicates['uncertain']), }, { @@ -134,7 +137,7 @@ const filterConfig = [ color: '#9f9f9f', }, filterPredicate: filterPredicates['UniProt'], - filterData: (variants: VariationData) => + filterData: (variants: VariantsForFilter) => getFilteredVariants(variants, filterPredicates['UniProt']), }, { @@ -148,7 +151,7 @@ const filterConfig = [ color: '#9f9f9f', }, filterPredicate: filterPredicates['ClinVar'], - filterData: (variants: VariationData) => + filterData: (variants: VariantsForFilter) => getFilteredVariants(variants, filterPredicates['ClinVar']), }, { @@ -162,16 +165,16 @@ const filterConfig = [ color: '#9f9f9f', }, filterPredicate: filterPredicates['LSS'], - filterData: (variants: VariationData) => + filterData: (variants: VariantsForFilter) => getFilteredVariants(variants, filterPredicates['LSS']), }, ]; const countVariantsForFilter = ( filterName: 'disease' | 'nonDisease' | 'uncertain' | 'predicted', - variant: ProtvistaVariant + variant: VariationDatum ) => { - const variantWrapper = [{ variants: [variant] }]; + const variantWrapper: VariantsForFilter = [{ variants: [variant] }]; const filter = filterConfig.find((filter) => filter.name === filterName); if (filter) { return filter.filterData(variantWrapper)[0].variants.length > 0; diff --git a/src/protvista-uniprot.ts b/src/protvista-uniprot.ts index 8c55533..44dbe83 100644 --- a/src/protvista-uniprot.ts +++ b/src/protvista-uniprot.ts @@ -18,7 +18,9 @@ import NightingaleFilter from '@nightingale-elements/nightingale-filter'; import featureAdapter from './adapters/feature-adapter'; import proteomicsAdapter from './adapters/proteomics-adapter'; import structureAdapter from './adapters/structure-adapter'; -import variationAdapter from './adapters/variation-adapter'; +import variationAdapter, { + TransformedVariant, +} from './adapters/variation-adapter'; import interproAdapter from './adapters/interpro-adapter'; import variationGraphAdapter from './adapters/variation-graph-adapter'; import proteomicsPTMApdapter from './adapters/ptm-exchange-adapter'; @@ -224,7 +226,7 @@ class ProtvistaUniprot extends LitElement { // 1. Convert data let transformedData = adapter - ? await adapters[adapter](...trackData) + ? await adapters[adapter].apply(null, trackData) : trackData; if (adapter === 'interpro-adapter') { diff --git a/src/utils.ts b/src/utils.ts index 231063a..62c1ad0 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -1,15 +1,8 @@ -export const renameProperties = (features) => { - return features.map((ft) => { - const obj = {}; - if (ft.begin) { - obj.start = ft.begin; - } - return { - ...ft, - ...obj, - }; - }); -}; +export const renameProperties = (features) => + features.map((ft) => ({ + ...ft, + start: ft.begin || undefined, + })); export const loadComponent = function ( name: string, From 7740f0c494bd05a5a7e3085601dbc3c2a148a19d Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 23:24:21 +0000 Subject: [PATCH 12/32] Update test. --- .../__mocks__/uniprotkb-features-data.ts | 79 --------- .../structure-adapter.spec.js.snap | 157 ++++++++++++++++++ .../__tests__/structure-adapter.spec.js | 4 +- 3 files changed, 159 insertions(+), 81 deletions(-) delete mode 100644 src/adapters/__tests__/__mocks__/uniprotkb-features-data.ts create mode 100644 src/adapters/__tests__/__snapshots__/structure-adapter.spec.js.snap diff --git a/src/adapters/__tests__/__mocks__/uniprotkb-features-data.ts b/src/adapters/__tests__/__mocks__/uniprotkb-features-data.ts deleted file mode 100644 index 9475620..0000000 --- a/src/adapters/__tests__/__mocks__/uniprotkb-features-data.ts +++ /dev/null @@ -1,79 +0,0 @@ -const data = { - accession: 'P01234', - sequence: - 'MLPGLALLLLAAWTARALEVPTDGNAGLLAEPQIAMFCGRLNMHMNVQNGKWDSDPSGTKTCIDTKEGILQYCQEVYPELQITNVVEANQPVTIQNWCKRGRKQCKTHPHFVIPYRCLVGEFVSDALLVPDKCKFLHQERMDVCETHLHWHTVAKETCSEKSTNLHDYGMLLPCGIDKFRGVEFVCCPLAEESDNVDSADAEEDDSDVWWGGADTDYADGSEDKVVEVAEEEEVAEVEEEEADDDEDDEDGDEVEEEAEEPYEEATERTTSIATTTTTTTESVEEVVREVCSEQAETGPCRAMISRWYFDVTEGKCAPFFYGGCGGNRNNFDTEEYCMAVCGSAMSQSLLKTTQEPLARDPVKLPTTAASTPDAVDKYLETPGDENEHAHFQKAKERLEAKHRERMSQVMREWEEAERQAKNLPKADKKAVIQHFQEKVESLEQEAANERQQLVETHMARVEAMLNDRRRLALENYITALQAVPPRPRHVFNMLKKYVRAEQKDRQHTLKHFEHVRMVDPKKAAQIRSQVMTHLRVIYERMNQSLSLLYNVPAVAEEIQDEVDELLQKEQNYSDDVLANMISEPRISYGNDALMPSLTETKTTVELLPVNGEFSLDDLQPWHSFGADSVPANTENEVEPVDARPAADRGLTTRPGSGLTNIKTEEISEVKMDAEFRHDSGYEVHHQKLVFFAEDVGSNKGAIIGLMVGGVVIATVIVITLVMLKKKQYTSIHHGVVEVDAAVTPEERHLSKMQQNGYENPTYKFFEQMQN', - features: [ - { - type: 'PDB_STRUCTURE', - category: 'STRUCTURAL', - description: 'Method: X-ray. Resolution: 1.50 A. ', - begin: 0, - end: 0, - xrefs: [ - { - name: 'PDB', - id: '1AAP', - url: 'http://www.ebi.ac.uk/pdbe-srv/view/entry/1AAP', - }, - ], - }, - { - type: 'PDB_STRUCTURE', - category: 'STRUCTURAL', - description: 'Method: NMR. Chains: A=672-699. ', - begin: 672, - end: 699, - xrefs: [ - { - name: 'PDB', - id: '1AMB', - url: 'http://www.ebi.ac.uk/pdbe-srv/view/entry/1AMB', - }, - ], - }, - { - type: 'PDB_STRUCTURE', - category: 'STRUCTURAL', - description: 'Method: NMR. Chains: A=672-699. ', - begin: 672, - end: 699, - xrefs: [ - { - name: 'PDB', - id: '1AMC', - url: 'http://www.ebi.ac.uk/pdbe-srv/view/entry/1AMC', - }, - ], - }, - { - type: 'PDB_STRUCTURE', - category: 'STRUCTURAL', - description: 'Method: NMR. Chains: A=672-711. ', - begin: 672, - end: 711, - xrefs: [ - { - name: 'PDB', - id: '1AML', - url: 'http://www.ebi.ac.uk/pdbe-srv/view/entry/1AML', - }, - ], - }, - { - type: 'PDB_STRUCTURE', - category: 'STRUCTURAL', - description: 'Method: NMR. Chains: A=672-711. ', - begin: 672, - end: 711, - xrefs: [ - { - name: 'PDB', - id: '1BA4', - url: 'http://www.ebi.ac.uk/pdbe-srv/view/entry/1BA4', - }, - ], - }, - ], -}; - -export default data; diff --git a/src/adapters/__tests__/__snapshots__/structure-adapter.spec.js.snap b/src/adapters/__tests__/__snapshots__/structure-adapter.spec.js.snap new file mode 100644 index 0000000..cee7de7 --- /dev/null +++ b/src/adapters/__tests__/__snapshots__/structure-adapter.spec.js.snap @@ -0,0 +1,157 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`structure data should merge Overlapping Intervals 1`] = ` +Array [ + Object { + "category": "STRUCTURE_COVERAGE", + "end": 0, + "start": 0, + "structures": Array [ + Object { + "description": "Method: X-ray. Resolution: 1.50 A. ", + "end": 0, + "source": Object { + "id": "1AAP", + "url": "http://www.ebi.ac.uk/pdbe-srv/view/entry/1AAP", + }, + "start": 0, + }, + ], + "type": "PDBE_COVER", + }, + Object { + "category": "STRUCTURE_COVERAGE", + "end": 711, + "start": 672, + "structures": Array [ + Object { + "description": "Method: NMR. Chains: A=672-699. ", + "end": 699, + "source": Object { + "id": "1AMB", + "url": "http://www.ebi.ac.uk/pdbe-srv/view/entry/1AMB", + }, + "start": 672, + }, + Object { + "description": "Method: NMR. Chains: A=672-699. ", + "end": 699, + "source": Object { + "id": "1AMC", + "url": "http://www.ebi.ac.uk/pdbe-srv/view/entry/1AMC", + }, + "start": 672, + }, + Object { + "description": "Method: NMR. Chains: A=672-711. ", + "end": 711, + "source": Object { + "id": "1AML", + "url": "http://www.ebi.ac.uk/pdbe-srv/view/entry/1AML", + }, + "start": 672, + }, + Object { + "description": "Method: NMR. Chains: A=672-711. ", + "end": 711, + "source": Object { + "id": "1BA4", + "url": "http://www.ebi.ac.uk/pdbe-srv/view/entry/1BA4", + }, + "start": 672, + }, + ], + "type": "PDBE_COVER", + }, +] +`; + +exports[`structure data should turn structures into features 1`] = ` +Array [ + Object { + "category": "STRUCTURE_COVERAGE", + "end": 0, + "start": 0, + "structures": Array [ + Object { + "description": "Method: X-ray. Resolution: 1.50 A. ", + "end": 0, + "source": Object { + "id": "1AAP", + "url": "http://www.ebi.ac.uk/pdbe-srv/view/entry/1AAP", + }, + "start": 0, + }, + ], + "type": "PDBE_COVER", + }, + Object { + "category": "STRUCTURE_COVERAGE", + "end": 699, + "start": 672, + "structures": Array [ + Object { + "description": "Method: NMR. Chains: A=672-699. ", + "end": 699, + "source": Object { + "id": "1AMB", + "url": "http://www.ebi.ac.uk/pdbe-srv/view/entry/1AMB", + }, + "start": 672, + }, + ], + "type": "PDBE_COVER", + }, + Object { + "category": "STRUCTURE_COVERAGE", + "end": 699, + "start": 672, + "structures": Array [ + Object { + "description": "Method: NMR. Chains: A=672-699. ", + "end": 699, + "source": Object { + "id": "1AMC", + "url": "http://www.ebi.ac.uk/pdbe-srv/view/entry/1AMC", + }, + "start": 672, + }, + ], + "type": "PDBE_COVER", + }, + Object { + "category": "STRUCTURE_COVERAGE", + "end": 711, + "start": 672, + "structures": Array [ + Object { + "description": "Method: NMR. Chains: A=672-711. ", + "end": 711, + "source": Object { + "id": "1AML", + "url": "http://www.ebi.ac.uk/pdbe-srv/view/entry/1AML", + }, + "start": 672, + }, + ], + "type": "PDBE_COVER", + }, + Object { + "category": "STRUCTURE_COVERAGE", + "end": 711, + "start": 672, + "structures": Array [ + Object { + "description": "Method: NMR. Chains: A=672-711. ", + "end": 711, + "source": Object { + "id": "1BA4", + "url": "http://www.ebi.ac.uk/pdbe-srv/view/entry/1BA4", + }, + "start": 672, + }, + ], + "type": "PDBE_COVER", + }, +] +`; diff --git a/src/adapters/__tests__/structure-adapter.spec.js b/src/adapters/__tests__/structure-adapter.spec.js index 67d3f33..17d3699 100644 --- a/src/adapters/__tests__/structure-adapter.spec.js +++ b/src/adapters/__tests__/structure-adapter.spec.js @@ -4,7 +4,6 @@ import { } from '../structure-adapter'; import entryData from './__mocks__/uniprotkb-entry-data'; -import featuresData from './__mocks__/uniprotkb-features-data'; describe('structure data', () => { it('should turn structures into features', () => { @@ -13,7 +12,8 @@ describe('structure data', () => { }); it('should merge Overlapping Intervals', () => { - const overlapping = mergeOverlappingIntervals(featuresData); + const features = getAllFeatureStructures(entryData); + const overlapping = mergeOverlappingIntervals(features); expect(overlapping).toMatchSnapshot(); }); }); From 8b390385434807a07d06f5e69a2c017c0720fc63 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Tue, 5 Nov 2024 23:28:16 +0000 Subject: [PATCH 13/32] Move tests around and save as ts. --- test/filterConfig.spec.js => src/__spec__/filter-config.spec.ts | 2 +- .../{structure-adapter.spec.js => structure-adapter.spec.ts} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename test/filterConfig.spec.js => src/__spec__/filter-config.spec.ts (97%) rename src/adapters/__tests__/{structure-adapter.spec.js => structure-adapter.spec.ts} (100%) diff --git a/test/filterConfig.spec.js b/src/__spec__/filter-config.spec.ts similarity index 97% rename from test/filterConfig.spec.js rename to src/__spec__/filter-config.spec.ts index 2e9c8ab..43c6ba3 100644 --- a/test/filterConfig.spec.js +++ b/src/__spec__/filter-config.spec.ts @@ -1,4 +1,4 @@ -import { colorConfig, getFilteredVariants } from '../src/filterConfig'; +import { colorConfig, getFilteredVariants } from '../filter-config'; const transformedVariantPositions = [ { diff --git a/src/adapters/__tests__/structure-adapter.spec.js b/src/adapters/__tests__/structure-adapter.spec.ts similarity index 100% rename from src/adapters/__tests__/structure-adapter.spec.js rename to src/adapters/__tests__/structure-adapter.spec.ts From 5aebddef4dfb65dfd178f36afc3f0a91781c2745 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 12:27:55 +0000 Subject: [PATCH 14/32] Fix filter-config types. --- src/__spec__/filter-config.spec.ts | 22 +++++++++++++++------- src/filter-config.ts | 22 +++++++++++++--------- 2 files changed, 28 insertions(+), 16 deletions(-) diff --git a/src/__spec__/filter-config.spec.ts b/src/__spec__/filter-config.spec.ts index 43c6ba3..bb74332 100644 --- a/src/__spec__/filter-config.spec.ts +++ b/src/__spec__/filter-config.spec.ts @@ -1,4 +1,8 @@ -import { colorConfig, getFilteredVariants } from '../filter-config'; +import { + colorConfig, + getFilteredVariants, + VariantsForFilter, +} from '../filter-config'; const transformedVariantPositions = [ { @@ -7,7 +11,7 @@ const transformedVariantPositions = [ accession: 'A', begin: 1, end: 1, - start: '1', + start: 1, tooltipContent: '', sourceType: 'source', variant: 'V', @@ -24,12 +28,13 @@ const transformedVariantPositions = [ }, ], xrefs: [], + hasPredictions: false, }, { accession: 'B', begin: 1, end: 1, - start: '1', + start: 1, tooltipContent: '', sourceType: 'source', variant: 'D', @@ -40,6 +45,7 @@ const transformedVariantPositions = [ alternativeSequence: 'D', consequenceType: 'disease', xrefs: [], + hasPredictions: false, }, ], }, @@ -49,7 +55,7 @@ const transformedVariantPositions = [ accession: 'C', begin: 2, end: 2, - start: '2', + start: 2, tooltipContent: '', sourceType: 'source', variant: 'V', @@ -60,6 +66,7 @@ const transformedVariantPositions = [ alternativeSequence: 'V', consequenceType: 'disease', xrefs: [], + hasPredictions: false, }, ], }, @@ -69,7 +76,7 @@ const transformedVariantPositions = [ accession: 'D', begin: 3, end: 3, - start: '3', + start: 3, tooltipContent: '', sourceType: 'source', variant: 'V', @@ -81,6 +88,7 @@ const transformedVariantPositions = [ consequenceType: 'disease', siftScore: 0.5, xrefs: [], + hasPredictions: false, }, ], }, @@ -89,7 +97,7 @@ const transformedVariantPositions = [ describe('Variation filter config', () => { test('it should filter according to the callback function', () => { const filteredVariants = getFilteredVariants( - transformedVariantPositions, + transformedVariantPositions as VariantsForFilter, (variant) => variant.accession === 'A' ); expect(filteredVariants).toEqual([ @@ -121,7 +129,7 @@ describe('Variation filter config', () => { test('it should get the right colour for other', () => { const thirdVariant = colorConfig( - transformedVariantPositions[1].variants[0] + transformedVariantPositions?.[1].variants[0] ); expect(thirdVariant).toEqual('#009e73'); }); diff --git a/src/filter-config.ts b/src/filter-config.ts index dece6d4..7e652d5 100644 --- a/src/filter-config.ts +++ b/src/filter-config.ts @@ -20,11 +20,9 @@ const significanceMatches = ( return values.some((rx) => rx.test(type)); }); -type VariantsForFilter = [ - { - variants: VariationDatum[]; - } -]; +export type VariantsForFilter = { + variants: VariationDatum[]; +}[]; export const getFilteredVariants = ( variants: VariantsForFilter, @@ -95,8 +93,12 @@ const filterConfig = [ color: scaleColors.predictedColor, }, filterPredicate: filterPredicates['predicted'], - filterData: (variants: VariantsForFilter) => - getFilteredVariants(variants, filterPredicates['predicted']), + filterData: (variants: VariantsForFilter) => { + const foo = getFilteredVariants(variants, filterPredicates['predicted']); + console.log(variants); + console.log(foo); + return foo; + }, }, { name: 'nonDisease', @@ -137,8 +139,10 @@ const filterConfig = [ color: '#9f9f9f', }, filterPredicate: filterPredicates['UniProt'], - filterData: (variants: VariantsForFilter) => - getFilteredVariants(variants, filterPredicates['UniProt']), + filterData: (variants: VariantsForFilter) => { + console.log(variants); + return getFilteredVariants(variants, filterPredicates['UniProt']); + }, }, { name: 'ClinVar', From cc9d03bce052b9e35e090c668ceea73fff2412a7 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 12:40:27 +0000 Subject: [PATCH 15/32] Update snapshot. --- package.json | 38 +- ...js.snap => structure-adapter.spec.ts.snap} | 0 yarn.lock | 338 ++++++++++++++++-- 3 files changed, 326 insertions(+), 50 deletions(-) rename src/adapters/__tests__/__snapshots__/{structure-adapter.spec.js.snap => structure-adapter.spec.ts.snap} (100%) diff --git a/package.json b/package.json index 3d6f03d..f5672ec 100644 --- a/package.json +++ b/package.json @@ -25,17 +25,25 @@ "author": "Xavier Watkins <xwatkins@ebi.ac.uk>", "license": "MIT", "dependencies": { - "@nightingale-elements/nightingale-colored-sequence": "5.2.0", - "@nightingale-elements/nightingale-filter": "5.2.0", - "@nightingale-elements/nightingale-interpro-track": "5.2.0", - "@nightingale-elements/nightingale-linegraph-track": "5.2.0", - "@nightingale-elements/nightingale-manager": "5.2.0", - "@nightingale-elements/nightingale-navigation": "5.2.0", - "@nightingale-elements/nightingale-sequence": "5.2.0", - "@nightingale-elements/nightingale-sequence-heatmap": "5.1.0", - "@nightingale-elements/nightingale-structure": "5.2.0", - "@nightingale-elements/nightingale-track": "5.2.0", - "@nightingale-elements/nightingale-variation": "5.2.0", + "@nightingale-elements/nightingale-colored-sequence": "file:.yalc/@nightingale-elements/nightingale-colored-sequence", + "@nightingale-elements/nightingale-filter": "file:.yalc/@nightingale-elements/nightingale-filter", + "@nightingale-elements/nightingale-heatmap": "file:.yalc/@nightingale-elements/nightingale-heatmap", + "@nightingale-elements/nightingale-interpro-track": "file:.yalc/@nightingale-elements/nightingale-interpro-track", + "@nightingale-elements/nightingale-linegraph-track": "file:.yalc/@nightingale-elements/nightingale-linegraph-track", + "@nightingale-elements/nightingale-links": "file:.yalc/@nightingale-elements/nightingale-links", + "@nightingale-elements/nightingale-manager": "file:.yalc/@nightingale-elements/nightingale-manager", + "@nightingale-elements/nightingale-msa": "file:.yalc/@nightingale-elements/nightingale-msa", + "@nightingale-elements/nightingale-navigation": "file:.yalc/@nightingale-elements/nightingale-navigation", + "@nightingale-elements/nightingale-new-core": "file:.yalc/@nightingale-elements/nightingale-new-core", + "@nightingale-elements/nightingale-overlay": "file:.yalc/@nightingale-elements/nightingale-overlay", + "@nightingale-elements/nightingale-saver": "file:.yalc/@nightingale-elements/nightingale-saver", + "@nightingale-elements/nightingale-sequence": "file:.yalc/@nightingale-elements/nightingale-sequence", + "@nightingale-elements/nightingale-sequence-heatmap": "file:.yalc/@nightingale-elements/nightingale-sequence-heatmap", + "@nightingale-elements/nightingale-structure": "file:.yalc/@nightingale-elements/nightingale-structure", + "@nightingale-elements/nightingale-sunburst": "file:.yalc/@nightingale-elements/nightingale-sunburst", + "@nightingale-elements/nightingale-textarea-sequence": "file:.yalc/@nightingale-elements/nightingale-textarea-sequence", + "@nightingale-elements/nightingale-track": "file:.yalc/@nightingale-elements/nightingale-track", + "@nightingale-elements/nightingale-variation": "file:.yalc/@nightingale-elements/nightingale-variation", "color-hash": "^2.0.2", "core-js": "^3.13.0", "data-loader": "^2.9.1", @@ -52,6 +60,7 @@ "@babel/preset-typescript": "^7.13.0", "@babel/runtime-corejs3": "^7.14.0", "@types/file-saver": "^2.0.2", + "@types/jest": "^29.5.14", "@types/url-join": "^4.0.0", "@typescript-eslint/eslint-plugin": "4.26.1", "@typescript-eslint/parser": "4.26.1", @@ -75,5 +84,12 @@ "peerDependencies": { "d3": "5.X" }, + "jest": { + "testRegex": "(/__tests__/.*|(\\.|/))spec\\.ts$", + "testPathIgnorePatterns": [ + "/__mocks__/", + "/dist/" + ] + }, "gitHead": "5a756316482fa31d085602d46438861fb45e5178" } diff --git a/src/adapters/__tests__/__snapshots__/structure-adapter.spec.js.snap b/src/adapters/__tests__/__snapshots__/structure-adapter.spec.ts.snap similarity index 100% rename from src/adapters/__tests__/__snapshots__/structure-adapter.spec.js.snap rename to src/adapters/__tests__/__snapshots__/structure-adapter.spec.ts.snap diff --git a/yarn.lock b/yarn.lock index 7a9bc56..63fb06d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -17,7 +17,7 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0": version "7.26.2" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== @@ -1096,6 +1096,13 @@ "@types/node" "*" jest-mock "^26.6.2" +"@jest/expect-utils@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.7.0.tgz#023efe5d26a8a70f21677d0a1afc0f0a44e3a1c6" + integrity sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA== + dependencies: + jest-get-type "^29.6.3" + "@jest/fake-timers@^26.6.2": version "26.6.2" resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" @@ -1149,6 +1156,13 @@ optionalDependencies: node-notifier "^8.0.0" +"@jest/schemas@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" + integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== + dependencies: + "@sinclair/typebox" "^0.27.8" + "@jest/source-map@^26.6.2": version "26.6.2" resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" @@ -1243,6 +1257,18 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" +"@jest/types@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" + integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== + dependencies: + "@jest/schemas" "^29.6.3" + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^17.0.8" + chalk "^4.0.0" + "@jridgewell/gen-mapping@^0.3.5": version "0.3.5" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" @@ -1317,53 +1343,68 @@ semver "^7.3.5" tar "^6.1.11" -"@nightingale-elements/nightingale-colored-sequence@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-colored-sequence/-/nightingale-colored-sequence-5.2.0.tgz#585bf78f4ad7bea9aac68da103c069937c16726a" - integrity sha512-PXoDbLW9W5XKe74GhrYrGJLpkxmNEhjd99lXWFKzd6v90Dnwffpuv7qYgKOEjlSkMXf/vGg0LUmC/FjBrHlbxg== +"@nightingale-elements/nightingale-colored-sequence@file:.yalc/@nightingale-elements/nightingale-colored-sequence": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-sequence" "^5.2.0" d3 "7.9.0" -"@nightingale-elements/nightingale-filter@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-filter/-/nightingale-filter-5.2.0.tgz#b243a441feb8cc0ffee18962f090aae90889ee21" - integrity sha512-4KLE5kl0lO2o/oIbTRxid1teqGXmgpjT2BMOSG8JZruukJ3jc6I1amf5lriiCDOxgbCk5/Y8VFhjTOdJsO1S8Q== +"@nightingale-elements/nightingale-filter@file:.yalc/@nightingale-elements/nightingale-filter": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-manager" "^5.2.0" "@nightingale-elements/nightingale-new-core" "^5.2.0" lodash-es "^4.17.11" -"@nightingale-elements/nightingale-interpro-track@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-interpro-track/-/nightingale-interpro-track-5.2.0.tgz#52e798c8c3cefa3660732394ee9a103417b50b6e" - integrity sha512-twEXjyG90PaZ+Onsf+xhFkxytdBUz/BqF3ecTA//EnxUZ0Is88TEqHT+26wSZBjs5AnNQnPV6O2WYCsvdLb1pg== +"@nightingale-elements/nightingale-heatmap@file:.yalc/@nightingale-elements/nightingale-heatmap": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + +"@nightingale-elements/nightingale-interpro-track@file:.yalc/@nightingale-elements/nightingale-interpro-track": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-track" "^5.2.0" d3 "7.9.0" lodash-es "^4.17.15" -"@nightingale-elements/nightingale-linegraph-track@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-linegraph-track/-/nightingale-linegraph-track-5.2.0.tgz#070697ddc23f794396523fecdf94be1d34b75e01" - integrity sha512-xVJmzxgRqQCQ4muZE4pNLrsr+fhMbriilfMyYiQypzfrsFkHM3sD2/fLxDeOkXMRl5dArwkcfESx7QohKz03uQ== +"@nightingale-elements/nightingale-linegraph-track@file:.yalc/@nightingale-elements/nightingale-linegraph-track": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + +"@nightingale-elements/nightingale-links@file:.yalc/@nightingale-elements/nightingale-links": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" + "@nightingale-elements/nightingale-track" "^5.2.0" d3 "7.9.0" + lodash-es "^4.17.15" -"@nightingale-elements/nightingale-manager@5.2.0", "@nightingale-elements/nightingale-manager@^5.2.0": +"@nightingale-elements/nightingale-manager@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-manager/-/nightingale-manager-5.2.0.tgz#76fa38ffed08e7e31af2827481fd9ce948003dd5" integrity sha512-WC8JJg5uWZtgt6HHbQ0Bg6N+qxFmIVoFa/FtT+RQwosHjSqvBgfglvy0uFUn2+37LzR4Egg/6ZxYGt1gw1l8og== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" -"@nightingale-elements/nightingale-navigation@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-navigation/-/nightingale-navigation-5.2.0.tgz#5e5d982a07eeef7135886d4dfc3ea661081f229d" - integrity sha512-bRuLijeiyKNj8DV91mwg7zTKz5ldeFZyKZWDWz6mZQy/8NeArE268xRn8XrIk+Y4uHhRYYUAAK/eulKnWnSysw== +"@nightingale-elements/nightingale-manager@file:.yalc/@nightingale-elements/nightingale-manager": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + +"@nightingale-elements/nightingale-msa@file:.yalc/@nightingale-elements/nightingale-msa": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + +"@nightingale-elements/nightingale-navigation@file:.yalc/@nightingale-elements/nightingale-navigation": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" @@ -1384,16 +1425,31 @@ d3 "7.9.0" lit "3.1.3" -"@nightingale-elements/nightingale-sequence-heatmap@5.1.0": - version "5.1.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-sequence-heatmap/-/nightingale-sequence-heatmap-5.1.0.tgz#bb84a140843256f233fe7c83ad2a3521bea5bd8a" - integrity sha512-r/sOvkRZYKHL5XWRRYrFEoYeF1c9cXGui6T8SQUfBVawC/KQ5TwyOLbX7x3p9eoZvqqUBmgCSuHjImCir1ySfA== +"@nightingale-elements/nightingale-new-core@file:.yalc/@nightingale-elements/nightingale-new-core": + version "5.2.5" + dependencies: + d3 "7.9.0" + lit "3.1.3" + +"@nightingale-elements/nightingale-overlay@file:.yalc/@nightingale-elements/nightingale-overlay": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + +"@nightingale-elements/nightingale-saver@file:.yalc/@nightingale-elements/nightingale-saver": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + rasterizehtml "1.3.1" + +"@nightingale-elements/nightingale-sequence-heatmap@file:.yalc/@nightingale-elements/nightingale-sequence-heatmap": + version "5.1.5" dependencies: "@nightingale-elements/nightingale-new-core" "^4.5.0" d3 "7.8.5" heatmap-component "^1.0.1" -"@nightingale-elements/nightingale-sequence@5.2.0", "@nightingale-elements/nightingale-sequence@^5.2.0": +"@nightingale-elements/nightingale-sequence@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-sequence/-/nightingale-sequence-5.2.0.tgz#d22c1ce64ffc686c193ac4da626b04ecb72f97c0" integrity sha512-oOqteICf5n7CT8JPvcZKiYytiQPZFQFTRm2V5nENSEVHp9O4vTtKB8RgH3ZbLrtCdBhJl4deANcA5PitlmhgUg== @@ -1401,16 +1457,34 @@ "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" -"@nightingale-elements/nightingale-structure@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-structure/-/nightingale-structure-5.2.0.tgz#95ef76f2ad7009cf54be867b7cbe1f9b400f3db1" - integrity sha512-0I4TECkncgi0fzt+b2U9zTHC3g7kebUq74yOixZOq2KSDAwuh6YTavvLnvKM9LBdKYGOKUrioZNWQNs/pahyVg== +"@nightingale-elements/nightingale-sequence@file:.yalc/@nightingale-elements/nightingale-sequence": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + +"@nightingale-elements/nightingale-structure@file:.yalc/@nightingale-elements/nightingale-structure": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" molstar "3.44.0" -"@nightingale-elements/nightingale-track@5.2.0", "@nightingale-elements/nightingale-track@^5.2.0": +"@nightingale-elements/nightingale-sunburst@file:.yalc/@nightingale-elements/nightingale-sunburst": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + lodash-es "^4.17.15" + +"@nightingale-elements/nightingale-textarea-sequence@file:.yalc/@nightingale-elements/nightingale-textarea-sequence": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + lodash-es "^4.17.11" + quill "1.3.7" + +"@nightingale-elements/nightingale-track@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-track/-/nightingale-track-5.2.0.tgz#a6a7c3150a1c844eb053677023832b95c7cb8fa4" integrity sha512-GAUyfH/O5+RNly1ZJXERTPi37FwKx7OgSfifXg+QB7m31yxGrjWQzi7ivkBE6X9V0LbSZFcudqfxddYJPmIsrg== @@ -1419,10 +1493,15 @@ d3 "7.9.0" lodash-es "^4.17.15" -"@nightingale-elements/nightingale-variation@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-variation/-/nightingale-variation-5.2.0.tgz#88815187286624baa63cd0f305bde4e9dd6839f7" - integrity sha512-3uISJtw3ZI6j/b8PTvR+ekbZNbn8cDkNWZwkbW3h2EQQ1qJRlCux7tMyN8J8XzAVHhKEDN8FQ45oVu2MSLHs2g== +"@nightingale-elements/nightingale-track@file:.yalc/@nightingale-elements/nightingale-track": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + lodash-es "^4.17.15" + +"@nightingale-elements/nightingale-variation@file:.yalc/@nightingale-elements/nightingale-variation": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-track" "^5.2.0" @@ -1466,6 +1545,11 @@ mkdirp "^1.0.4" rimraf "^3.0.2" +"@sinclair/typebox@^0.27.8": + version "0.27.8" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" + integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== + "@sinonjs/commons@^1.7.0": version "1.8.6" resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" @@ -1681,6 +1765,14 @@ dependencies: "@types/istanbul-lib-report" "*" +"@types/jest@^29.5.14": + version "29.5.14" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.5.14.tgz#2b910912fa1d6856cadcd0c1f95af7df1d6049e5" + integrity sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ== + dependencies: + expect "^29.0.0" + pretty-format "^29.0.0" + "@types/json-schema@*", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" @@ -1826,6 +1918,13 @@ dependencies: "@types/yargs-parser" "*" +"@types/yargs@^17.0.8": + version "17.0.33" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.33.tgz#8c32303da83eec050a84b3c7ae7b9f922d13e32d" + integrity sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA== + dependencies: + "@types/yargs-parser" "*" + "@typescript-eslint/eslint-plugin@4.26.1": version "4.26.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.26.1.tgz#b9c7313321cb837e2bf8bebe7acc2220659e67d3" @@ -2203,6 +2302,11 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" +ansi-styles@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== + anymatch@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" @@ -2918,6 +3022,11 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" +clone@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" + integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -3161,6 +3270,11 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" +css-font-face-src@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/css-font-face-src/-/css-font-face-src-1.0.0.tgz#a8c6307d48d9afc84a404082cb1776cd458864b1" + integrity sha512-kUl2r9ZMiLKY+04SM83Rk6dLnUU/hk30aN5CSZ+ZMGWT2COCU8I7yVu8fHbfCQu7Gx1ce45W0Q9hRaw2awqlww== + css-loader@^5.2.6: version "5.2.7" resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.7.tgz#9b9f111edf6fb2be5dc62525644cbc9c232064ae" @@ -3985,6 +4099,11 @@ diff-sequences@^26.6.2: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== +diff-sequences@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" + integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -4396,6 +4515,11 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== +eventemitter3@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-2.0.3.tgz#b5e1079b59fb5e1ba2771c0a993be060a58c99ba" + integrity sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg== + eventemitter3@^4.0.0: version "4.0.7" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" @@ -4479,6 +4603,17 @@ expect@^26.6.2: jest-message-util "^26.6.2" jest-regex-util "^26.0.0" +expect@^29.0.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc" + integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw== + dependencies: + "@jest/expect-utils" "^29.7.0" + jest-get-type "^29.6.3" + jest-matcher-utils "^29.7.0" + jest-message-util "^29.7.0" + jest-util "^29.7.0" + exponential-backoff@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/exponential-backoff/-/exponential-backoff-3.1.1.tgz#64ac7526fe341ab18a39016cd22c787d01e00bf6" @@ -4536,7 +4671,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@^3.0.0: +extend@^3.0.0, extend@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -4560,6 +4695,11 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== +fast-diff@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.1.2.tgz#4b62c42b8e03de3f848460b639079920695d0154" + integrity sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig== + fast-glob@^3.2.7, fast-glob@^3.2.9: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" @@ -5409,6 +5549,14 @@ inline-style-parser@0.2.4: resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.2.4.tgz#f4af5fe72e612839fcd453d989a586566d695f22" integrity sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q== +inlineresources@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/inlineresources/-/inlineresources-1.0.1.tgz#a8b71e8908036e940f62aff40b18aec9a4205a07" + integrity sha512-r0TMecufaxuZva1tqvTR50hxud4wEAOAe0lWRp+kxWKAjGPYUxYDl+IFcOgWE8jMxVIJQl14vuJfhtMYdomPjw== + dependencies: + css-font-face-src "^1.0.0" + url "~0.11.0" + internal-ip@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" @@ -5952,6 +6100,16 @@ jest-diff@^26.6.2: jest-get-type "^26.3.0" pretty-format "^26.6.2" +jest-diff@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.7.0.tgz#017934a66ebb7ecf6f205e84699be10afd70458a" + integrity sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw== + dependencies: + chalk "^4.0.0" + diff-sequences "^29.6.3" + jest-get-type "^29.6.3" + pretty-format "^29.7.0" + jest-docblock@^26.0.0: version "26.0.0" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" @@ -6000,6 +6158,11 @@ jest-get-type@^26.3.0: resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== +jest-get-type@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1" + integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw== + jest-haste-map@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" @@ -6083,6 +6246,16 @@ jest-matcher-utils@^26.6.2: jest-get-type "^26.3.0" pretty-format "^26.6.2" +jest-matcher-utils@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz#ae8fec79ff249fd592ce80e3ee474e83a6c44f12" + integrity sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g== + dependencies: + chalk "^4.0.0" + jest-diff "^29.7.0" + jest-get-type "^29.6.3" + pretty-format "^29.7.0" + jest-message-util@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" @@ -6098,6 +6271,21 @@ jest-message-util@^26.6.2: slash "^3.0.0" stack-utils "^2.0.2" +jest-message-util@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3" + integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w== + dependencies: + "@babel/code-frame" "^7.12.13" + "@jest/types" "^29.6.3" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.9" + micromatch "^4.0.4" + pretty-format "^29.7.0" + slash "^3.0.0" + stack-utils "^2.0.3" + jest-mock@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" @@ -6265,6 +6453,18 @@ jest-util@^27.5.1: graceful-fs "^4.2.9" picomatch "^2.2.3" +jest-util@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" + integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA== + dependencies: + "@jest/types" "^29.6.3" + "@types/node" "*" + chalk "^4.0.0" + ci-info "^3.2.0" + graceful-fs "^4.2.9" + picomatch "^2.2.3" + jest-validate@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" @@ -7683,6 +7883,11 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +parchment@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/parchment/-/parchment-1.1.4.tgz#aeded7ab938fe921d4c34bc339ce1168bc2ffde5" + integrity sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg== + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -7962,6 +8167,15 @@ pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" +pretty-format@^29.0.0, pretty-format@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" + integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== + dependencies: + "@jest/schemas" "^29.6.3" + ansi-styles "^5.0.0" + react-is "^18.0.0" + process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -8067,6 +8281,27 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== +quill-delta@^3.6.2: + version "3.6.3" + resolved "https://registry.yarnpkg.com/quill-delta/-/quill-delta-3.6.3.tgz#b19fd2b89412301c60e1ff213d8d860eac0f1032" + integrity sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg== + dependencies: + deep-equal "^1.0.1" + extend "^3.0.2" + fast-diff "1.1.2" + +quill@1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/quill/-/quill-1.3.7.tgz#da5b2f3a2c470e932340cdbf3668c9f21f9286e8" + integrity sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g== + dependencies: + clone "^2.1.1" + deep-equal "^1.0.1" + eventemitter3 "^2.0.3" + extend "^3.0.2" + parchment "^1.1.4" + quill-delta "^3.6.2" + randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -8079,6 +8314,16 @@ range-parser@^1.2.1, range-parser@~1.2.1: resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== +rasterizehtml@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/rasterizehtml/-/rasterizehtml-1.3.1.tgz#c205d63e0c46ea11ad5fb7b20e9262571255b52f" + integrity sha512-YfFxHJgyBWe6fGKQwiZQKWb5IYICQabg2iCyzjMzOXFKj2g+AfntlOxkM4f1+I0I6XjRp7bVOAxqXbfzsqjqTA== + dependencies: + inlineresources "^1.0.1" + sane-domparser-error "~0.2.0" + url "~0.11.0" + xmlserializer "~0.6.0" + raw-body@2.5.2: version "2.5.2" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" @@ -8104,6 +8349,11 @@ react-is@^17.0.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== +react-is@^18.0.0: + version "18.3.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e" + integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== + react-markdown@^9.0.1: version "9.0.1" resolved "https://registry.yarnpkg.com/react-markdown/-/react-markdown-9.0.1.tgz#c05ddbff67fd3b3f839f8c648e6fb35d022397d1" @@ -8486,6 +8736,11 @@ safe-regex@^1.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +sane-domparser-error@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/sane-domparser-error/-/sane-domparser-error-0.2.0.tgz#adec5360c8a394526c204e61b00ea125f7b2b01f" + integrity sha512-wxjDV5jty95tNv8N/4WA15UNGqqaor/xX7rnNYY961hifN3bheYoKqtXN+V/M6EUgmUAs6pMul3klwUPMEiVXA== + sane@^4.0.3: version "4.1.0" resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" @@ -8960,7 +9215,7 @@ ssri@^9.0.0: dependencies: minipass "^3.1.1" -stack-utils@^2.0.2: +stack-utils@^2.0.2, stack-utils@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== @@ -9726,7 +9981,7 @@ url-parse@^1.5.10, url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -url@^0.11.0: +url@^0.11.0, url@~0.11.0: version "0.11.4" resolved "https://registry.yarnpkg.com/url/-/url-0.11.4.tgz#adca77b3562d56b72746e76b330b7f27b6721f3c" integrity sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg== @@ -10154,6 +10409,11 @@ xmlchars@^2.2.0: resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== +xmlserializer@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/xmlserializer/-/xmlserializer-0.6.1.tgz#14099f60272e16cb608be3758992f998070cc29a" + integrity sha512-FNb0eEqqUUbnuvxuHqNuKH8qCGKqxu+558Zi8UzOoQk8Z9LdvpONK+v7m3gpKVHrk5Aq+0nNLsKxu/6OYh7Umw== + "xtend@>=4.0.0 <4.1.0-0": version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" From 51d651a791c57ed15c7755ee418b6053dda9339a Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 12:42:51 +0000 Subject: [PATCH 16/32] Remove unused code. --- src/adapters/alphafold-confidence-adapter.ts | 2 +- src/protvista-uniprot.ts | 2 +- src/types/nightingale-components.d.ts | 6 +----- 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/src/adapters/alphafold-confidence-adapter.ts b/src/adapters/alphafold-confidence-adapter.ts index ad20be3..ed90ab4 100644 --- a/src/adapters/alphafold-confidence-adapter.ts +++ b/src/adapters/alphafold-confidence-adapter.ts @@ -6,7 +6,7 @@ type AlphafoldConfidencePayload = { confidenceCategory: Array; }; -export const getConfidenceURLFromPayload = (data: AlphafoldPayload) => { +const getConfidenceURLFromPayload = (data: AlphafoldPayload) => { const cifURL = data?.[0]?.cifUrl; return cifURL?.length ? cifURL.replace('-model', '-confidence').replace('.cif', '.json') diff --git a/src/protvista-uniprot.ts b/src/protvista-uniprot.ts index 44dbe83..746b4f6 100644 --- a/src/protvista-uniprot.ts +++ b/src/protvista-uniprot.ts @@ -101,7 +101,7 @@ type ProtvistaCategory = { 'color-range'?: string; }; -export type DownloadConfig = { +type DownloadConfig = { type: string; url: string; }[]; diff --git a/src/types/nightingale-components.d.ts b/src/types/nightingale-components.d.ts index bd76d99..3e4d715 100644 --- a/src/types/nightingale-components.d.ts +++ b/src/types/nightingale-components.d.ts @@ -2,12 +2,8 @@ export type NightingaleEvent = Event & { detail?: { displaystart?: number; displayend?: number; - eventType?: "click" | "mouseover" | "mouseout" | "reset"; + eventType?: 'click' | 'mouseover' | 'mouseout' | 'reset'; feature?: any; coords?: [number, number]; }; }; - -type NightingaleDataAdapter = { - transformData; -}; From 4985ca7a7f7d28cdd0314fb05229019e27271fb6 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 12:47:54 +0000 Subject: [PATCH 17/32] Remove yalc references. --- package.json | 30 +++---- yarn.lock | 226 ++++++++++++--------------------------------------- 2 files changed, 64 insertions(+), 192 deletions(-) diff --git a/package.json b/package.json index f5672ec..ac12f5f 100644 --- a/package.json +++ b/package.json @@ -25,25 +25,17 @@ "author": "Xavier Watkins <xwatkins@ebi.ac.uk>", "license": "MIT", "dependencies": { - "@nightingale-elements/nightingale-colored-sequence": "file:.yalc/@nightingale-elements/nightingale-colored-sequence", - "@nightingale-elements/nightingale-filter": "file:.yalc/@nightingale-elements/nightingale-filter", - "@nightingale-elements/nightingale-heatmap": "file:.yalc/@nightingale-elements/nightingale-heatmap", - "@nightingale-elements/nightingale-interpro-track": "file:.yalc/@nightingale-elements/nightingale-interpro-track", - "@nightingale-elements/nightingale-linegraph-track": "file:.yalc/@nightingale-elements/nightingale-linegraph-track", - "@nightingale-elements/nightingale-links": "file:.yalc/@nightingale-elements/nightingale-links", - "@nightingale-elements/nightingale-manager": "file:.yalc/@nightingale-elements/nightingale-manager", - "@nightingale-elements/nightingale-msa": "file:.yalc/@nightingale-elements/nightingale-msa", - "@nightingale-elements/nightingale-navigation": "file:.yalc/@nightingale-elements/nightingale-navigation", - "@nightingale-elements/nightingale-new-core": "file:.yalc/@nightingale-elements/nightingale-new-core", - "@nightingale-elements/nightingale-overlay": "file:.yalc/@nightingale-elements/nightingale-overlay", - "@nightingale-elements/nightingale-saver": "file:.yalc/@nightingale-elements/nightingale-saver", - "@nightingale-elements/nightingale-sequence": "file:.yalc/@nightingale-elements/nightingale-sequence", - "@nightingale-elements/nightingale-sequence-heatmap": "file:.yalc/@nightingale-elements/nightingale-sequence-heatmap", - "@nightingale-elements/nightingale-structure": "file:.yalc/@nightingale-elements/nightingale-structure", - "@nightingale-elements/nightingale-sunburst": "file:.yalc/@nightingale-elements/nightingale-sunburst", - "@nightingale-elements/nightingale-textarea-sequence": "file:.yalc/@nightingale-elements/nightingale-textarea-sequence", - "@nightingale-elements/nightingale-track": "file:.yalc/@nightingale-elements/nightingale-track", - "@nightingale-elements/nightingale-variation": "file:.yalc/@nightingale-elements/nightingale-variation", + "@nightingale-elements/nightingale-colored-sequence": "5.2.0", + "@nightingale-elements/nightingale-filter": "5.2.0", + "@nightingale-elements/nightingale-interpro-track": "5.2.0", + "@nightingale-elements/nightingale-linegraph-track": "5.2.0", + "@nightingale-elements/nightingale-manager": "5.2.0", + "@nightingale-elements/nightingale-navigation": "5.2.0", + "@nightingale-elements/nightingale-sequence": "5.2.0", + "@nightingale-elements/nightingale-sequence-heatmap": "5.1.0", + "@nightingale-elements/nightingale-structure": "5.2.0", + "@nightingale-elements/nightingale-track": "5.2.0", + "@nightingale-elements/nightingale-variation": "5.2.0", "color-hash": "^2.0.2", "core-js": "^3.13.0", "data-loader": "^2.9.1", diff --git a/yarn.lock b/yarn.lock index 63fb06d..e3a2a27 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1343,68 +1343,53 @@ semver "^7.3.5" tar "^6.1.11" -"@nightingale-elements/nightingale-colored-sequence@file:.yalc/@nightingale-elements/nightingale-colored-sequence": - version "5.2.5" +"@nightingale-elements/nightingale-colored-sequence@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-colored-sequence/-/nightingale-colored-sequence-5.2.0.tgz#585bf78f4ad7bea9aac68da103c069937c16726a" + integrity sha512-PXoDbLW9W5XKe74GhrYrGJLpkxmNEhjd99lXWFKzd6v90Dnwffpuv7qYgKOEjlSkMXf/vGg0LUmC/FjBrHlbxg== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-sequence" "^5.2.0" d3 "7.9.0" -"@nightingale-elements/nightingale-filter@file:.yalc/@nightingale-elements/nightingale-filter": - version "5.2.5" +"@nightingale-elements/nightingale-filter@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-filter/-/nightingale-filter-5.2.0.tgz#b243a441feb8cc0ffee18962f090aae90889ee21" + integrity sha512-4KLE5kl0lO2o/oIbTRxid1teqGXmgpjT2BMOSG8JZruukJ3jc6I1amf5lriiCDOxgbCk5/Y8VFhjTOdJsO1S8Q== dependencies: "@nightingale-elements/nightingale-manager" "^5.2.0" "@nightingale-elements/nightingale-new-core" "^5.2.0" lodash-es "^4.17.11" -"@nightingale-elements/nightingale-heatmap@file:.yalc/@nightingale-elements/nightingale-heatmap": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - -"@nightingale-elements/nightingale-interpro-track@file:.yalc/@nightingale-elements/nightingale-interpro-track": - version "5.2.5" +"@nightingale-elements/nightingale-interpro-track@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-interpro-track/-/nightingale-interpro-track-5.2.0.tgz#52e798c8c3cefa3660732394ee9a103417b50b6e" + integrity sha512-twEXjyG90PaZ+Onsf+xhFkxytdBUz/BqF3ecTA//EnxUZ0Is88TEqHT+26wSZBjs5AnNQnPV6O2WYCsvdLb1pg== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-track" "^5.2.0" d3 "7.9.0" lodash-es "^4.17.15" -"@nightingale-elements/nightingale-linegraph-track@file:.yalc/@nightingale-elements/nightingale-linegraph-track": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - -"@nightingale-elements/nightingale-links@file:.yalc/@nightingale-elements/nightingale-links": - version "5.2.5" +"@nightingale-elements/nightingale-linegraph-track@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-linegraph-track/-/nightingale-linegraph-track-5.2.0.tgz#070697ddc23f794396523fecdf94be1d34b75e01" + integrity sha512-xVJmzxgRqQCQ4muZE4pNLrsr+fhMbriilfMyYiQypzfrsFkHM3sD2/fLxDeOkXMRl5dArwkcfESx7QohKz03uQ== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" - "@nightingale-elements/nightingale-track" "^5.2.0" d3 "7.9.0" - lodash-es "^4.17.15" -"@nightingale-elements/nightingale-manager@^5.2.0": +"@nightingale-elements/nightingale-manager@5.2.0", "@nightingale-elements/nightingale-manager@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-manager/-/nightingale-manager-5.2.0.tgz#76fa38ffed08e7e31af2827481fd9ce948003dd5" integrity sha512-WC8JJg5uWZtgt6HHbQ0Bg6N+qxFmIVoFa/FtT+RQwosHjSqvBgfglvy0uFUn2+37LzR4Egg/6ZxYGt1gw1l8og== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" -"@nightingale-elements/nightingale-manager@file:.yalc/@nightingale-elements/nightingale-manager": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - -"@nightingale-elements/nightingale-msa@file:.yalc/@nightingale-elements/nightingale-msa": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - -"@nightingale-elements/nightingale-navigation@file:.yalc/@nightingale-elements/nightingale-navigation": - version "5.2.5" +"@nightingale-elements/nightingale-navigation@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-navigation/-/nightingale-navigation-5.2.0.tgz#5e5d982a07eeef7135886d4dfc3ea661081f229d" + integrity sha512-bRuLijeiyKNj8DV91mwg7zTKz5ldeFZyKZWDWz6mZQy/8NeArE268xRn8XrIk+Y4uHhRYYUAAK/eulKnWnSysw== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" @@ -1425,31 +1410,16 @@ d3 "7.9.0" lit "3.1.3" -"@nightingale-elements/nightingale-new-core@file:.yalc/@nightingale-elements/nightingale-new-core": - version "5.2.5" - dependencies: - d3 "7.9.0" - lit "3.1.3" - -"@nightingale-elements/nightingale-overlay@file:.yalc/@nightingale-elements/nightingale-overlay": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - -"@nightingale-elements/nightingale-saver@file:.yalc/@nightingale-elements/nightingale-saver": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - rasterizehtml "1.3.1" - -"@nightingale-elements/nightingale-sequence-heatmap@file:.yalc/@nightingale-elements/nightingale-sequence-heatmap": - version "5.1.5" +"@nightingale-elements/nightingale-sequence-heatmap@5.1.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-sequence-heatmap/-/nightingale-sequence-heatmap-5.1.0.tgz#bb84a140843256f233fe7c83ad2a3521bea5bd8a" + integrity sha512-r/sOvkRZYKHL5XWRRYrFEoYeF1c9cXGui6T8SQUfBVawC/KQ5TwyOLbX7x3p9eoZvqqUBmgCSuHjImCir1ySfA== dependencies: "@nightingale-elements/nightingale-new-core" "^4.5.0" d3 "7.8.5" heatmap-component "^1.0.1" -"@nightingale-elements/nightingale-sequence@^5.2.0": +"@nightingale-elements/nightingale-sequence@5.2.0", "@nightingale-elements/nightingale-sequence@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-sequence/-/nightingale-sequence-5.2.0.tgz#d22c1ce64ffc686c193ac4da626b04ecb72f97c0" integrity sha512-oOqteICf5n7CT8JPvcZKiYytiQPZFQFTRm2V5nENSEVHp9O4vTtKB8RgH3ZbLrtCdBhJl4deANcA5PitlmhgUg== @@ -1457,34 +1427,16 @@ "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" -"@nightingale-elements/nightingale-sequence@file:.yalc/@nightingale-elements/nightingale-sequence": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - -"@nightingale-elements/nightingale-structure@file:.yalc/@nightingale-elements/nightingale-structure": - version "5.2.5" +"@nightingale-elements/nightingale-structure@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-structure/-/nightingale-structure-5.2.0.tgz#95ef76f2ad7009cf54be867b7cbe1f9b400f3db1" + integrity sha512-0I4TECkncgi0fzt+b2U9zTHC3g7kebUq74yOixZOq2KSDAwuh6YTavvLnvKM9LBdKYGOKUrioZNWQNs/pahyVg== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" molstar "3.44.0" -"@nightingale-elements/nightingale-sunburst@file:.yalc/@nightingale-elements/nightingale-sunburst": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - lodash-es "^4.17.15" - -"@nightingale-elements/nightingale-textarea-sequence@file:.yalc/@nightingale-elements/nightingale-textarea-sequence": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - lodash-es "^4.17.11" - quill "1.3.7" - -"@nightingale-elements/nightingale-track@^5.2.0": +"@nightingale-elements/nightingale-track@5.2.0", "@nightingale-elements/nightingale-track@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-track/-/nightingale-track-5.2.0.tgz#a6a7c3150a1c844eb053677023832b95c7cb8fa4" integrity sha512-GAUyfH/O5+RNly1ZJXERTPi37FwKx7OgSfifXg+QB7m31yxGrjWQzi7ivkBE6X9V0LbSZFcudqfxddYJPmIsrg== @@ -1493,15 +1445,10 @@ d3 "7.9.0" lodash-es "^4.17.15" -"@nightingale-elements/nightingale-track@file:.yalc/@nightingale-elements/nightingale-track": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - lodash-es "^4.17.15" - -"@nightingale-elements/nightingale-variation@file:.yalc/@nightingale-elements/nightingale-variation": - version "5.2.5" +"@nightingale-elements/nightingale-variation@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-variation/-/nightingale-variation-5.2.0.tgz#88815187286624baa63cd0f305bde4e9dd6839f7" + integrity sha512-3uISJtw3ZI6j/b8PTvR+ekbZNbn8cDkNWZwkbW3h2EQQ1qJRlCux7tMyN8J8XzAVHhKEDN8FQ45oVu2MSLHs2g== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-track" "^5.2.0" @@ -1545,6 +1492,11 @@ mkdirp "^1.0.4" rimraf "^3.0.2" +"@scarf/scarf@=1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@scarf/scarf/-/scarf-1.3.0.tgz#f8c75560d0dace4452dee1e31995e6396e61f3ee" + integrity sha512-lHKK8M5CTcpFj2hZDB3wIjb0KAbEOgDmiJGDv1WBRfQgRm/a8/XMEkG/N1iM01xgbUDsPQwi42D+dFo1XPAKew== + "@sinclair/typebox@^0.27.8": version "0.27.8" resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" @@ -1843,9 +1795,9 @@ integrity sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA== "@types/qs@*": - version "6.9.16" - resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.16.tgz#52bba125a07c0482d26747d5d4947a64daf8f794" - integrity sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A== + version "6.9.17" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.17.tgz#fc560f60946d0aeff2f914eb41679659d3310e1a" + integrity sha512-rX4/bPcfmvxHDv0XjfJELTTr+iB+tn032nPILqHm5wbthUUUuVtNGGqzhya9XUxjTP8Fpr0qYgSZZKxGY++svQ== "@types/range-parser@*": version "1.2.7" @@ -3022,11 +2974,6 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" -clone@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== - co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -3270,11 +3217,6 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" -css-font-face-src@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/css-font-face-src/-/css-font-face-src-1.0.0.tgz#a8c6307d48d9afc84a404082cb1776cd458864b1" - integrity sha512-kUl2r9ZMiLKY+04SM83Rk6dLnUU/hk30aN5CSZ+ZMGWT2COCU8I7yVu8fHbfCQu7Gx1ce45W0Q9hRaw2awqlww== - css-loader@^5.2.6: version "5.2.7" resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.7.tgz#9b9f111edf6fb2be5dc62525644cbc9c232064ae" @@ -4151,9 +4093,9 @@ ee-first@1.1.1: integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.5.41: - version "1.5.51" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.51.tgz#bb99216fed4892d131a8585a8593b00739310163" - integrity sha512-kKeWV57KSS8jH4alKt/jKnvHPmJgBxXzGUSbMd4eQF+iOsVPl7bz2KUmu6eo80eMP8wVioTfTyTzdMgM15WXNg== + version "1.5.52" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.52.tgz#2bed832c95a56a195504f918150e548474687da8" + integrity sha512-xtoijJTZ+qeucLBDNztDOuQBE1ksqjvNjvqFoST3nGC7fSpqJ+X6BdTBaY5BHG+IhWWmpc6b/KfpeuEDupEPOQ== emittery@^0.7.1: version "0.7.2" @@ -4515,11 +4457,6 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== -eventemitter3@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-2.0.3.tgz#b5e1079b59fb5e1ba2771c0a993be060a58c99ba" - integrity sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg== - eventemitter3@^4.0.0: version "4.0.7" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" @@ -4671,7 +4608,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@^3.0.0, extend@^3.0.2: +extend@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -4695,11 +4632,6 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-diff@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.1.2.tgz#4b62c42b8e03de3f848460b639079920695d0154" - integrity sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig== - fast-glob@^3.2.7, fast-glob@^3.2.9: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" @@ -5549,14 +5481,6 @@ inline-style-parser@0.2.4: resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.2.4.tgz#f4af5fe72e612839fcd453d989a586566d695f22" integrity sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q== -inlineresources@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/inlineresources/-/inlineresources-1.0.1.tgz#a8b71e8908036e940f62aff40b18aec9a4205a07" - integrity sha512-r0TMecufaxuZva1tqvTR50hxud4wEAOAe0lWRp+kxWKAjGPYUxYDl+IFcOgWE8jMxVIJQl14vuJfhtMYdomPjw== - dependencies: - css-font-face-src "^1.0.0" - url "~0.11.0" - internal-ip@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" @@ -7883,11 +7807,6 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== -parchment@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/parchment/-/parchment-1.1.4.tgz#aeded7ab938fe921d4c34bc339ce1168bc2ffde5" - integrity sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg== - parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -8281,27 +8200,6 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== -quill-delta@^3.6.2: - version "3.6.3" - resolved "https://registry.yarnpkg.com/quill-delta/-/quill-delta-3.6.3.tgz#b19fd2b89412301c60e1ff213d8d860eac0f1032" - integrity sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg== - dependencies: - deep-equal "^1.0.1" - extend "^3.0.2" - fast-diff "1.1.2" - -quill@1.3.7: - version "1.3.7" - resolved "https://registry.yarnpkg.com/quill/-/quill-1.3.7.tgz#da5b2f3a2c470e932340cdbf3668c9f21f9286e8" - integrity sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g== - dependencies: - clone "^2.1.1" - deep-equal "^1.0.1" - eventemitter3 "^2.0.3" - extend "^3.0.2" - parchment "^1.1.4" - quill-delta "^3.6.2" - randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -8314,16 +8212,6 @@ range-parser@^1.2.1, range-parser@~1.2.1: resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -rasterizehtml@1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/rasterizehtml/-/rasterizehtml-1.3.1.tgz#c205d63e0c46ea11ad5fb7b20e9262571255b52f" - integrity sha512-YfFxHJgyBWe6fGKQwiZQKWb5IYICQabg2iCyzjMzOXFKj2g+AfntlOxkM4f1+I0I6XjRp7bVOAxqXbfzsqjqTA== - dependencies: - inlineresources "^1.0.1" - sane-domparser-error "~0.2.0" - url "~0.11.0" - xmlserializer "~0.6.0" - raw-body@2.5.2: version "2.5.2" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" @@ -8736,11 +8624,6 @@ safe-regex@^1.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sane-domparser-error@~0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/sane-domparser-error/-/sane-domparser-error-0.2.0.tgz#adec5360c8a394526c204e61b00ea125f7b2b01f" - integrity sha512-wxjDV5jty95tNv8N/4WA15UNGqqaor/xX7rnNYY961hifN3bheYoKqtXN+V/M6EUgmUAs6pMul3klwUPMEiVXA== - sane@^4.0.3: version "4.1.0" resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" @@ -9479,9 +9362,11 @@ svg-inline-loader@^0.8.0: simple-html-tokenizer "^0.1.1" swagger-ui-dist@^5.10.5: - version "5.17.14" - resolved "https://registry.yarnpkg.com/swagger-ui-dist/-/swagger-ui-dist-5.17.14.tgz#e2c222e5bf9e15ccf80ec4bc08b4aaac09792fd6" - integrity sha512-CVbSfaLpstV65OnSjbXfVd6Sta3q3F7Cj/yYuvHMp1P90LztOLs6PfUnKEVAeiIVQt9u2SaPwv0LiH/OyMjHRw== + version "5.18.1" + resolved "https://registry.yarnpkg.com/swagger-ui-dist/-/swagger-ui-dist-5.18.1.tgz#3a58ddf788ec514604331255c58d0a032310fbfd" + integrity sha512-nOUpYnU6HZ5Eq2+xmptFti4RX/Vcbe+6PDtQGnSiGT2j9ImgcrJsjsX3OEl8TZV+48y8Wfn0gcjxyoXsMFHr/w== + dependencies: + "@scarf/scarf" "=1.3.0" symbol-tree@^3.2.4: version "3.2.4" @@ -9981,7 +9866,7 @@ url-parse@^1.5.10, url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -url@^0.11.0, url@~0.11.0: +url@^0.11.0: version "0.11.4" resolved "https://registry.yarnpkg.com/url/-/url-0.11.4.tgz#adca77b3562d56b72746e76b330b7f27b6721f3c" integrity sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg== @@ -10409,11 +10294,6 @@ xmlchars@^2.2.0: resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== -xmlserializer@~0.6.0: - version "0.6.1" - resolved "https://registry.yarnpkg.com/xmlserializer/-/xmlserializer-0.6.1.tgz#14099f60272e16cb608be3758992f998070cc29a" - integrity sha512-FNb0eEqqUUbnuvxuHqNuKH8qCGKqxu+558Zi8UzOoQk8Z9LdvpONK+v7m3gpKVHrk5Aq+0nNLsKxu/6OYh7Umw== - "xtend@>=4.0.0 <4.1.0-0": version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" From 36ae0633ccaf00448fd132888170981fc50a954f Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 12:54:44 +0000 Subject: [PATCH 18/32] Export tooltips from index. --- src/adapters/feature-adapter.ts | 2 +- src/adapters/proteomics-adapter.ts | 2 +- src/adapters/structure-adapter.ts | 2 +- src/index.ts | 7 +++++++ src/tooltips/featureTooltip.ts | 4 +++- src/tooltips/structureTooltip.ts | 4 +++- 6 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/adapters/feature-adapter.ts b/src/adapters/feature-adapter.ts index d4402e5..a775f68 100644 --- a/src/adapters/feature-adapter.ts +++ b/src/adapters/feature-adapter.ts @@ -1,5 +1,5 @@ import { renameProperties } from '../utils'; -import { formatTooltip } from '../tooltips/featureTooltip'; +import formatTooltip from '../tooltips/featureTooltip'; const transformData = (data) => { let transformedData = []; diff --git a/src/adapters/proteomics-adapter.ts b/src/adapters/proteomics-adapter.ts index 52ad373..cd29dab 100644 --- a/src/adapters/proteomics-adapter.ts +++ b/src/adapters/proteomics-adapter.ts @@ -1,5 +1,5 @@ import { renameProperties } from '../utils'; -import { formatTooltip } from '../tooltips/featureTooltip'; +import formatTooltip from '../tooltips/featureTooltip'; const proteomicsTrackProperties = (feature) => { return { diff --git a/src/adapters/structure-adapter.ts b/src/adapters/structure-adapter.ts index 9363383..1d52ed8 100644 --- a/src/adapters/structure-adapter.ts +++ b/src/adapters/structure-adapter.ts @@ -1,4 +1,4 @@ -import { formatTooltip } from '../tooltips/structureTooltip'; +import formatTooltip from '../tooltips/structureTooltip'; const featureType = 'PDBE_COVER'; const featureCategory = 'STRUCTURE_COVERAGE'; diff --git a/src/index.ts b/src/index.ts index 648da9c..3aaf5c1 100644 --- a/src/index.ts +++ b/src/index.ts @@ -5,6 +5,10 @@ import ProtvistaUniprotStructure from './protvista-uniprot-structure'; import filterConfig, { colorConfig } from './filter-config'; +import getFeatureTooltip from './tooltips/featureTooltip'; +import getStructureTooltip from './tooltips/structureTooltip'; +import getVariationTooltip from './tooltips/variationTooltip'; + loadComponent('protvista-uniprot', ProtvistaUniprot); loadComponent('protvista-uniprot-structure', ProtvistaUniprotStructure); @@ -13,4 +17,7 @@ export { ProtvistaUniprotStructure, filterConfig, colorConfig, + getFeatureTooltip, + getStructureTooltip, + getVariationTooltip, }; diff --git a/src/tooltips/featureTooltip.ts b/src/tooltips/featureTooltip.ts index db6304b..3c6a17c 100644 --- a/src/tooltips/featureTooltip.ts +++ b/src/tooltips/featureTooltip.ts @@ -103,7 +103,7 @@ const findModifiedResidueName = (feature, ptm) => { return `${proteinLocation} phospho${AAPhosphoSites[modifiedResidue]}`; }; -export const formatTooltip = (feature) => { +const formatTooltip = (feature) => { const evidenceHTML = feature.type === 'PROTEOMICS_PTM' ? getPTMEvidence(feature.ptms) @@ -219,3 +219,5 @@ export const formatTooltip = (feature) => { return ''; } }; + +export default formatTooltip; diff --git a/src/tooltips/structureTooltip.ts b/src/tooltips/structureTooltip.ts index 811d7dc..bde3660 100644 --- a/src/tooltips/structureTooltip.ts +++ b/src/tooltips/structureTooltip.ts @@ -12,7 +12,9 @@ const getStructuresHTML = (structureList) => { `; }; -export const formatTooltip = (feature) => { +const formatTooltip = (feature) => { const structuresHTML = getStructuresHTML(feature.structures); return `${structuresHTML ? `
Structures
${structuresHTML}` : ``}`; }; + +export default formatTooltip; From a8ebd5b932056fa6b839b897c5171fc511419ed7 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 13:06:52 +0000 Subject: [PATCH 19/32] Tweak index.html title, remove unused d3 v4 load. --- public/index.html | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/public/index.html b/public/index.html index b8f8c6f..a936c6b 100644 --- a/public/index.html +++ b/public/index.html @@ -3,7 +3,7 @@ - UniProt - ProtVista + protvista-uniprot @@ -46,7 +46,6 @@ - From cda1741c87d04b39c0ddcef35360a3f1dff65840 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 13:31:05 +0000 Subject: [PATCH 20/32] Have lit register the web components. --- .babelrc | 13 +- package.json | 1 + src/index.ts | 5 - src/protvista-uniprot-structure.ts | 4 + src/protvista-uniprot.ts | 3 + src/utils.ts | 9 -- tsconfig.json | 4 +- yarn.lock | 217 ++++++++++++++++++++++++----- 8 files changed, 199 insertions(+), 57 deletions(-) diff --git a/.babelrc b/.babelrc index bdd05c1..55c4629 100644 --- a/.babelrc +++ b/.babelrc @@ -1,16 +1,21 @@ { "presets": [ [ - "@babel/preset-env", { + "@babel/preset-env", + { "useBuiltIns": "usage", - "corejs": "3" + "corejs": "3" } ], "@babel/preset-typescript" ], "plugins": [ - ["@babel/plugin-transform-runtime", { + [ + "@babel/plugin-transform-runtime", + { "corejs": "3" - }] + } + ], + ["@babel/plugin-proposal-decorators", { "version": "2023-11" }] ] } diff --git a/package.json b/package.json index ac12f5f..6ac99b7 100644 --- a/package.json +++ b/package.json @@ -47,6 +47,7 @@ }, "devDependencies": { "@babel/core": "^7.14.3", + "@babel/plugin-proposal-decorators": "^7.25.9", "@babel/plugin-transform-runtime": "^7.14.3", "@babel/preset-env": "^7.14.2", "@babel/preset-typescript": "^7.13.0", diff --git a/src/index.ts b/src/index.ts index 3aaf5c1..5faee2e 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,5 +1,3 @@ -import { loadComponent } from './utils'; - import ProtvistaUniprot from './protvista-uniprot'; import ProtvistaUniprotStructure from './protvista-uniprot-structure'; @@ -9,9 +7,6 @@ import getFeatureTooltip from './tooltips/featureTooltip'; import getStructureTooltip from './tooltips/structureTooltip'; import getVariationTooltip from './tooltips/variationTooltip'; -loadComponent('protvista-uniprot', ProtvistaUniprot); -loadComponent('protvista-uniprot-structure', ProtvistaUniprotStructure); - export { ProtvistaUniprot as default, ProtvistaUniprotStructure, diff --git a/src/protvista-uniprot-structure.ts b/src/protvista-uniprot-structure.ts index dd34b42..3a2c7ae 100644 --- a/src/protvista-uniprot-structure.ts +++ b/src/protvista-uniprot-structure.ts @@ -1,4 +1,6 @@ import { LitElement, html, svg, TemplateResult, css } from 'lit'; +// eslint-disable-next-line @typescript-eslint/no-unused-vars +import { customElement } from 'lit/decorators.js'; import { unsafeHTML } from 'lit/directives/unsafe-html.js'; import { load } from 'data-loader'; import NightingaleStructure, { @@ -140,6 +142,8 @@ const foldseekURL = (accession, sourceDB) => { }; const styleId = 'protvista-styles'; + +@customElement('protvista-uniprot-structure') class ProtvistaUniprotStructure extends LitElement { accession?: string; data?: ProcessedStructureData[]; diff --git a/src/protvista-uniprot.ts b/src/protvista-uniprot.ts index 746b4f6..bf8e708 100644 --- a/src/protvista-uniprot.ts +++ b/src/protvista-uniprot.ts @@ -1,4 +1,6 @@ import { LitElement, html, svg } from 'lit'; +// eslint-disable-next-line @typescript-eslint/no-unused-vars +import { customElement } from 'lit/decorators.js'; import { unsafeHTML } from 'lit/directives/unsafe-html.js'; import { frame } from 'timing-functions'; @@ -111,6 +113,7 @@ type ProtvistaConfig = { download: DownloadConfig; }; +@customElement('protvista-uniprot') class ProtvistaUniprot extends LitElement { private openCategories: string[]; private nostructure: boolean; diff --git a/src/utils.ts b/src/utils.ts index 62c1ad0..0438d26 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -3,12 +3,3 @@ export const renameProperties = (features) => ...ft, start: ft.begin || undefined, })); - -export const loadComponent = function ( - name: string, - elementConstructor: CustomElementConstructor -) { - if (!customElements.get(name)) { - customElements.define(name, elementConstructor); - } -}; diff --git a/tsconfig.json b/tsconfig.json index 3c23c2f..3fa4f54 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -7,7 +7,7 @@ "target": "es2019", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', 'ES2021', or 'ESNEXT'. */ // "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */ // "lib": [], /* Specify library files to be included in the compilation. */ - // "allowJs": true, /* Allow javascript files to be compiled. */ + "allowJs": true, /* Allow javascript files to be compiled. */ // "checkJs": true, /* Report errors in .js files. */ // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', 'react', 'react-jsx' or 'react-jsxdev'. */ "declaration": true, /* Generates corresponding '.d.ts' file. */ @@ -62,7 +62,7 @@ // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ /* Experimental Options */ - // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ + "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ /* Advanced Options */ diff --git a/yarn.lock b/yarn.lock index e3a2a27..044c917 100644 --- a/yarn.lock +++ b/yarn.lock @@ -281,6 +281,15 @@ "@babel/helper-plugin-utils" "^7.25.9" "@babel/traverse" "^7.25.9" +"@babel/plugin-proposal-decorators@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.25.9.tgz#8680707f943d1a3da2cd66b948179920f097e254" + integrity sha512-smkNLL/O1ezy9Nhy4CNosc4Va+1wo5w4gzSZeLe6y6dM4mmHfYOCPolXQPHQxonZCF+ZyebxN9vqOolkYrSn5g== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/plugin-syntax-decorators" "^7.25.9" + "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" @@ -314,6 +323,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" +"@babel/plugin-syntax-decorators@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.25.9.tgz#986b4ca8b7b5df3f67cee889cedeffc2e2bf14b3" + integrity sha512-ryzI0McXUPJnRCvMo4lumIKZUzhYUO/ScI+Mz4YVaTLt04DHNSjEUjKVvbzQjZFLuod/cYEc07mJWhzl6v4DPg== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/plugin-syntax-import-assertions@^7.26.0": version "7.26.0" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz#620412405058efa56e4a564903b79355020f445f" @@ -1343,53 +1359,68 @@ semver "^7.3.5" tar "^6.1.11" -"@nightingale-elements/nightingale-colored-sequence@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-colored-sequence/-/nightingale-colored-sequence-5.2.0.tgz#585bf78f4ad7bea9aac68da103c069937c16726a" - integrity sha512-PXoDbLW9W5XKe74GhrYrGJLpkxmNEhjd99lXWFKzd6v90Dnwffpuv7qYgKOEjlSkMXf/vGg0LUmC/FjBrHlbxg== +"@nightingale-elements/nightingale-colored-sequence@file:.yalc/@nightingale-elements/nightingale-colored-sequence": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-sequence" "^5.2.0" d3 "7.9.0" -"@nightingale-elements/nightingale-filter@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-filter/-/nightingale-filter-5.2.0.tgz#b243a441feb8cc0ffee18962f090aae90889ee21" - integrity sha512-4KLE5kl0lO2o/oIbTRxid1teqGXmgpjT2BMOSG8JZruukJ3jc6I1amf5lriiCDOxgbCk5/Y8VFhjTOdJsO1S8Q== +"@nightingale-elements/nightingale-filter@file:.yalc/@nightingale-elements/nightingale-filter": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-manager" "^5.2.0" "@nightingale-elements/nightingale-new-core" "^5.2.0" lodash-es "^4.17.11" -"@nightingale-elements/nightingale-interpro-track@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-interpro-track/-/nightingale-interpro-track-5.2.0.tgz#52e798c8c3cefa3660732394ee9a103417b50b6e" - integrity sha512-twEXjyG90PaZ+Onsf+xhFkxytdBUz/BqF3ecTA//EnxUZ0Is88TEqHT+26wSZBjs5AnNQnPV6O2WYCsvdLb1pg== +"@nightingale-elements/nightingale-heatmap@file:.yalc/@nightingale-elements/nightingale-heatmap": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + +"@nightingale-elements/nightingale-interpro-track@file:.yalc/@nightingale-elements/nightingale-interpro-track": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-track" "^5.2.0" d3 "7.9.0" lodash-es "^4.17.15" -"@nightingale-elements/nightingale-linegraph-track@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-linegraph-track/-/nightingale-linegraph-track-5.2.0.tgz#070697ddc23f794396523fecdf94be1d34b75e01" - integrity sha512-xVJmzxgRqQCQ4muZE4pNLrsr+fhMbriilfMyYiQypzfrsFkHM3sD2/fLxDeOkXMRl5dArwkcfESx7QohKz03uQ== +"@nightingale-elements/nightingale-linegraph-track@file:.yalc/@nightingale-elements/nightingale-linegraph-track": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" -"@nightingale-elements/nightingale-manager@5.2.0", "@nightingale-elements/nightingale-manager@^5.2.0": +"@nightingale-elements/nightingale-links@file:.yalc/@nightingale-elements/nightingale-links": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + "@nightingale-elements/nightingale-track" "^5.2.0" + d3 "7.9.0" + lodash-es "^4.17.15" + +"@nightingale-elements/nightingale-manager@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-manager/-/nightingale-manager-5.2.0.tgz#76fa38ffed08e7e31af2827481fd9ce948003dd5" integrity sha512-WC8JJg5uWZtgt6HHbQ0Bg6N+qxFmIVoFa/FtT+RQwosHjSqvBgfglvy0uFUn2+37LzR4Egg/6ZxYGt1gw1l8og== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" -"@nightingale-elements/nightingale-navigation@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-navigation/-/nightingale-navigation-5.2.0.tgz#5e5d982a07eeef7135886d4dfc3ea661081f229d" - integrity sha512-bRuLijeiyKNj8DV91mwg7zTKz5ldeFZyKZWDWz6mZQy/8NeArE268xRn8XrIk+Y4uHhRYYUAAK/eulKnWnSysw== +"@nightingale-elements/nightingale-manager@file:.yalc/@nightingale-elements/nightingale-manager": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + +"@nightingale-elements/nightingale-msa@file:.yalc/@nightingale-elements/nightingale-msa": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + +"@nightingale-elements/nightingale-navigation@file:.yalc/@nightingale-elements/nightingale-navigation": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" @@ -1410,16 +1441,31 @@ d3 "7.9.0" lit "3.1.3" -"@nightingale-elements/nightingale-sequence-heatmap@5.1.0": - version "5.1.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-sequence-heatmap/-/nightingale-sequence-heatmap-5.1.0.tgz#bb84a140843256f233fe7c83ad2a3521bea5bd8a" - integrity sha512-r/sOvkRZYKHL5XWRRYrFEoYeF1c9cXGui6T8SQUfBVawC/KQ5TwyOLbX7x3p9eoZvqqUBmgCSuHjImCir1ySfA== +"@nightingale-elements/nightingale-new-core@file:.yalc/@nightingale-elements/nightingale-new-core": + version "5.2.5" + dependencies: + d3 "7.9.0" + lit "3.1.3" + +"@nightingale-elements/nightingale-overlay@file:.yalc/@nightingale-elements/nightingale-overlay": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + +"@nightingale-elements/nightingale-saver@file:.yalc/@nightingale-elements/nightingale-saver": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + rasterizehtml "1.3.1" + +"@nightingale-elements/nightingale-sequence-heatmap@file:.yalc/@nightingale-elements/nightingale-sequence-heatmap": + version "5.1.5" dependencies: "@nightingale-elements/nightingale-new-core" "^4.5.0" d3 "7.8.5" heatmap-component "^1.0.1" -"@nightingale-elements/nightingale-sequence@5.2.0", "@nightingale-elements/nightingale-sequence@^5.2.0": +"@nightingale-elements/nightingale-sequence@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-sequence/-/nightingale-sequence-5.2.0.tgz#d22c1ce64ffc686c193ac4da626b04ecb72f97c0" integrity sha512-oOqteICf5n7CT8JPvcZKiYytiQPZFQFTRm2V5nENSEVHp9O4vTtKB8RgH3ZbLrtCdBhJl4deANcA5PitlmhgUg== @@ -1427,16 +1473,34 @@ "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" -"@nightingale-elements/nightingale-structure@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-structure/-/nightingale-structure-5.2.0.tgz#95ef76f2ad7009cf54be867b7cbe1f9b400f3db1" - integrity sha512-0I4TECkncgi0fzt+b2U9zTHC3g7kebUq74yOixZOq2KSDAwuh6YTavvLnvKM9LBdKYGOKUrioZNWQNs/pahyVg== +"@nightingale-elements/nightingale-sequence@file:.yalc/@nightingale-elements/nightingale-sequence": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + +"@nightingale-elements/nightingale-structure@file:.yalc/@nightingale-elements/nightingale-structure": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" molstar "3.44.0" -"@nightingale-elements/nightingale-track@5.2.0", "@nightingale-elements/nightingale-track@^5.2.0": +"@nightingale-elements/nightingale-sunburst@file:.yalc/@nightingale-elements/nightingale-sunburst": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + lodash-es "^4.17.15" + +"@nightingale-elements/nightingale-textarea-sequence@file:.yalc/@nightingale-elements/nightingale-textarea-sequence": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + lodash-es "^4.17.11" + quill "1.3.7" + +"@nightingale-elements/nightingale-track@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-track/-/nightingale-track-5.2.0.tgz#a6a7c3150a1c844eb053677023832b95c7cb8fa4" integrity sha512-GAUyfH/O5+RNly1ZJXERTPi37FwKx7OgSfifXg+QB7m31yxGrjWQzi7ivkBE6X9V0LbSZFcudqfxddYJPmIsrg== @@ -1445,10 +1509,15 @@ d3 "7.9.0" lodash-es "^4.17.15" -"@nightingale-elements/nightingale-variation@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-variation/-/nightingale-variation-5.2.0.tgz#88815187286624baa63cd0f305bde4e9dd6839f7" - integrity sha512-3uISJtw3ZI6j/b8PTvR+ekbZNbn8cDkNWZwkbW3h2EQQ1qJRlCux7tMyN8J8XzAVHhKEDN8FQ45oVu2MSLHs2g== +"@nightingale-elements/nightingale-track@file:.yalc/@nightingale-elements/nightingale-track": + version "5.2.5" + dependencies: + "@nightingale-elements/nightingale-new-core" "^5.2.0" + d3 "7.9.0" + lodash-es "^4.17.15" + +"@nightingale-elements/nightingale-variation@file:.yalc/@nightingale-elements/nightingale-variation": + version "5.2.5" dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-track" "^5.2.0" @@ -2974,6 +3043,11 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" +clone@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" + integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -3217,6 +3291,11 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" +css-font-face-src@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/css-font-face-src/-/css-font-face-src-1.0.0.tgz#a8c6307d48d9afc84a404082cb1776cd458864b1" + integrity sha512-kUl2r9ZMiLKY+04SM83Rk6dLnUU/hk30aN5CSZ+ZMGWT2COCU8I7yVu8fHbfCQu7Gx1ce45W0Q9hRaw2awqlww== + css-loader@^5.2.6: version "5.2.7" resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.7.tgz#9b9f111edf6fb2be5dc62525644cbc9c232064ae" @@ -4457,6 +4536,11 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== +eventemitter3@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-2.0.3.tgz#b5e1079b59fb5e1ba2771c0a993be060a58c99ba" + integrity sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg== + eventemitter3@^4.0.0: version "4.0.7" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" @@ -4608,7 +4692,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@^3.0.0: +extend@^3.0.0, extend@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -4632,6 +4716,11 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== +fast-diff@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.1.2.tgz#4b62c42b8e03de3f848460b639079920695d0154" + integrity sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig== + fast-glob@^3.2.7, fast-glob@^3.2.9: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" @@ -5481,6 +5570,14 @@ inline-style-parser@0.2.4: resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.2.4.tgz#f4af5fe72e612839fcd453d989a586566d695f22" integrity sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q== +inlineresources@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/inlineresources/-/inlineresources-1.0.1.tgz#a8b71e8908036e940f62aff40b18aec9a4205a07" + integrity sha512-r0TMecufaxuZva1tqvTR50hxud4wEAOAe0lWRp+kxWKAjGPYUxYDl+IFcOgWE8jMxVIJQl14vuJfhtMYdomPjw== + dependencies: + css-font-face-src "^1.0.0" + url "~0.11.0" + internal-ip@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" @@ -7807,6 +7904,11 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +parchment@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/parchment/-/parchment-1.1.4.tgz#aeded7ab938fe921d4c34bc339ce1168bc2ffde5" + integrity sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg== + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -8200,6 +8302,27 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== +quill-delta@^3.6.2: + version "3.6.3" + resolved "https://registry.yarnpkg.com/quill-delta/-/quill-delta-3.6.3.tgz#b19fd2b89412301c60e1ff213d8d860eac0f1032" + integrity sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg== + dependencies: + deep-equal "^1.0.1" + extend "^3.0.2" + fast-diff "1.1.2" + +quill@1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/quill/-/quill-1.3.7.tgz#da5b2f3a2c470e932340cdbf3668c9f21f9286e8" + integrity sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g== + dependencies: + clone "^2.1.1" + deep-equal "^1.0.1" + eventemitter3 "^2.0.3" + extend "^3.0.2" + parchment "^1.1.4" + quill-delta "^3.6.2" + randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -8212,6 +8335,16 @@ range-parser@^1.2.1, range-parser@~1.2.1: resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== +rasterizehtml@1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/rasterizehtml/-/rasterizehtml-1.3.1.tgz#c205d63e0c46ea11ad5fb7b20e9262571255b52f" + integrity sha512-YfFxHJgyBWe6fGKQwiZQKWb5IYICQabg2iCyzjMzOXFKj2g+AfntlOxkM4f1+I0I6XjRp7bVOAxqXbfzsqjqTA== + dependencies: + inlineresources "^1.0.1" + sane-domparser-error "~0.2.0" + url "~0.11.0" + xmlserializer "~0.6.0" + raw-body@2.5.2: version "2.5.2" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" @@ -8624,6 +8757,11 @@ safe-regex@^1.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +sane-domparser-error@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/sane-domparser-error/-/sane-domparser-error-0.2.0.tgz#adec5360c8a394526c204e61b00ea125f7b2b01f" + integrity sha512-wxjDV5jty95tNv8N/4WA15UNGqqaor/xX7rnNYY961hifN3bheYoKqtXN+V/M6EUgmUAs6pMul3klwUPMEiVXA== + sane@^4.0.3: version "4.1.0" resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" @@ -9866,7 +10004,7 @@ url-parse@^1.5.10, url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -url@^0.11.0: +url@^0.11.0, url@~0.11.0: version "0.11.4" resolved "https://registry.yarnpkg.com/url/-/url-0.11.4.tgz#adca77b3562d56b72746e76b330b7f27b6721f3c" integrity sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg== @@ -10294,6 +10432,11 @@ xmlchars@^2.2.0: resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== +xmlserializer@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/xmlserializer/-/xmlserializer-0.6.1.tgz#14099f60272e16cb608be3758992f998070cc29a" + integrity sha512-FNb0eEqqUUbnuvxuHqNuKH8qCGKqxu+558Zi8UzOoQk8Z9LdvpONK+v7m3gpKVHrk5Aq+0nNLsKxu/6OYh7Umw== + "xtend@>=4.0.0 <4.1.0-0": version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" From ae9253e385b7195ac908d72adb009561305653ff Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 13:34:25 +0000 Subject: [PATCH 21/32] Remove gitHead from package.json. --- package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/package.json b/package.json index 6ac99b7..626406b 100644 --- a/package.json +++ b/package.json @@ -83,6 +83,5 @@ "/__mocks__/", "/dist/" ] - }, - "gitHead": "5a756316482fa31d085602d46438861fb45e5178" + } } From 0081a39f52780217503392072578a75c034a6902 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 13:51:20 +0000 Subject: [PATCH 22/32] Still need loadComponent though for the individual tracks. --- src/utils.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/utils.ts b/src/utils.ts index 0438d26..62c1ad0 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -3,3 +3,12 @@ export const renameProperties = (features) => ...ft, start: ft.begin || undefined, })); + +export const loadComponent = function ( + name: string, + elementConstructor: CustomElementConstructor +) { + if (!customElements.get(name)) { + customElements.define(name, elementConstructor); + } +}; From 2ddcf7b457ff9c06fa582644739f4e8ebceb86e2 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 14:11:12 +0000 Subject: [PATCH 23/32] Tidy up debugging statements. --- src/filter-config.ts | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/filter-config.ts b/src/filter-config.ts index 7e652d5..77b9dae 100644 --- a/src/filter-config.ts +++ b/src/filter-config.ts @@ -93,12 +93,8 @@ const filterConfig = [ color: scaleColors.predictedColor, }, filterPredicate: filterPredicates['predicted'], - filterData: (variants: VariantsForFilter) => { - const foo = getFilteredVariants(variants, filterPredicates['predicted']); - console.log(variants); - console.log(foo); - return foo; - }, + filterData: (variants: VariantsForFilter) => + getFilteredVariants(variants, filterPredicates['predicted']), }, { name: 'nonDisease', @@ -139,10 +135,8 @@ const filterConfig = [ color: '#9f9f9f', }, filterPredicate: filterPredicates['UniProt'], - filterData: (variants: VariantsForFilter) => { - console.log(variants); - return getFilteredVariants(variants, filterPredicates['UniProt']); - }, + filterData: (variants: VariantsForFilter) => + getFilteredVariants(variants, filterPredicates['UniProt']), }, { name: 'ClinVar', From 11a09928b6511ec96f5a3c3817e9b7b06d08922a Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Wed, 6 Nov 2024 16:51:47 +0000 Subject: [PATCH 24/32] Remove unused types and move a few others around. --- src/protvista-uniprot.ts | 21 +++++++++++++++------ src/types/nightingale-components.d.ts | 9 --------- src/types/nightingale-sequence-heatmap.d.ts | 1 - src/types/protvista-structure.d.ts | 1 - 4 files changed, 15 insertions(+), 17 deletions(-) delete mode 100644 src/types/nightingale-components.d.ts delete mode 100644 src/types/nightingale-sequence-heatmap.d.ts delete mode 100644 src/types/protvista-structure.d.ts diff --git a/src/protvista-uniprot.ts b/src/protvista-uniprot.ts index bf8e708..df7d443 100644 --- a/src/protvista-uniprot.ts +++ b/src/protvista-uniprot.ts @@ -38,8 +38,6 @@ import { loadComponent } from './utils'; import filterConfig, { colorConfig } from './filter-config'; import defaultConfig from './config.json'; -import { NightingaleEvent } from './types/nightingale-components'; - import loaderIcon from './icons/spinner.svg'; import protvistaStyles from './styles/protvista-styles'; import loaderStyles from './styles/loader-styles'; @@ -113,6 +111,16 @@ type ProtvistaConfig = { download: DownloadConfig; }; +type NightingaleEvent = Event & { + detail?: { + displaystart?: number; + displayend?: number; + eventType?: 'click' | 'mouseover' | 'mouseout' | 'reset'; + feature?: any; + coords?: [number, number]; + }; +}; + @customElement('protvista-uniprot') class ProtvistaUniprot extends LitElement { private openCategories: string[]; @@ -329,9 +337,10 @@ class ProtvistaUniprot extends LitElement { ) { for (const track of currentCategory.tracks) { if (track.trackType === 'nightingale-sequence-heatmap') { - const heatmapComponent = this.querySelector< - typeof NightingaleSequenceHeatmap - >('nightingale-sequence-heatmap'); + const heatmapComponent = + this.querySelector( + 'nightingale-sequence-heatmap' + ); if (heatmapComponent) { const heatmapData = this.data[`${id}-${track.name}`]; const xDomain = Array.from( @@ -340,7 +349,7 @@ class ProtvistaUniprot extends LitElement { ); const yDomain = [ ...new Set(heatmapData.map((hotMapItem) => hotMapItem.yValue)), - ]; + ] as string[]; heatmapComponent.setHeatmapData(xDomain, yDomain, heatmapData); } } diff --git a/src/types/nightingale-components.d.ts b/src/types/nightingale-components.d.ts deleted file mode 100644 index 3e4d715..0000000 --- a/src/types/nightingale-components.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export type NightingaleEvent = Event & { - detail?: { - displaystart?: number; - displayend?: number; - eventType?: 'click' | 'mouseover' | 'mouseout' | 'reset'; - feature?: any; - coords?: [number, number]; - }; -}; diff --git a/src/types/nightingale-sequence-heatmap.d.ts b/src/types/nightingale-sequence-heatmap.d.ts deleted file mode 100644 index c6a5b72..0000000 --- a/src/types/nightingale-sequence-heatmap.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare module '@nightingale-elements/nightingale-sequence-heatmap'; \ No newline at end of file diff --git a/src/types/protvista-structure.d.ts b/src/types/protvista-structure.d.ts deleted file mode 100644 index 2568ec7..0000000 --- a/src/types/protvista-structure.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare module 'protvista-structure'; From a124e7e887ba042d37265152cbfcbc79dc02a08f Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Thu, 7 Nov 2024 11:12:41 +0000 Subject: [PATCH 25/32] Remove link-all and add-all package.json scripts as only yalc is used. --- package.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/package.json b/package.json index 626406b..7b0cb1a 100644 --- a/package.json +++ b/package.json @@ -10,8 +10,6 @@ "build:es": "tsc", "build": "webpack --mode=production && yarn build:es", "watch": "webpack --mode=development -w", - "link-all": "yarn link protvista-interpro-adapter protvista-feature-adapter protvista-interpro-track nightingale-filter nightingale-manager nightingale-navigation protvista-proteomics-adapter nightingale-sequence protvista-structure-adapter nightingale-track nightingale-variation protvista-variation-adapter nightingale-linegraph-track protvista-datatable nightingale-structure data-loader", - "add-all": "yarn add protvista-feature-adapter nightingale-filter nightingale-manager nightingale-navigation protvista-proteomics-adapter nightingale-sequence protvista-structure-adapter nightingale-track nightingale-variation protvista-variation-adapter nightingale-linegraph-track protvista-datatable nightingale-structure data-loader", "start": "webpack serve --mode=development", "test:lint": "eslint src --ext .ts ", "test:types": "tsc", From 7bb8e170485009009c3e6fba137d5b5943be68a8 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Fri, 8 Nov 2024 12:44:35 +0000 Subject: [PATCH 26/32] Remove unused DownloadConfig. --- src/protvista-uniprot.ts | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/protvista-uniprot.ts b/src/protvista-uniprot.ts index df7d443..00e0f14 100644 --- a/src/protvista-uniprot.ts +++ b/src/protvista-uniprot.ts @@ -101,14 +101,8 @@ type ProtvistaCategory = { 'color-range'?: string; }; -type DownloadConfig = { - type: string; - url: string; -}[]; - type ProtvistaConfig = { categories: ProtvistaCategory[]; - download: DownloadConfig; }; type NightingaleEvent = Event & { From fe6d6f91e5b9bad3729a7446e14a75a3145a5059 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Fri, 8 Nov 2024 12:45:10 +0000 Subject: [PATCH 27/32] Pin color-hash version. --- package.json | 2 +- yarn.lock | 433 ++++++++++++++++++--------------------------------- 2 files changed, 155 insertions(+), 280 deletions(-) diff --git a/package.json b/package.json index 7b0cb1a..75283c0 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "@nightingale-elements/nightingale-structure": "5.2.0", "@nightingale-elements/nightingale-track": "5.2.0", "@nightingale-elements/nightingale-variation": "5.2.0", - "color-hash": "^2.0.2", + "color-hash": "2.0.2", "core-js": "^3.13.0", "data-loader": "^2.9.1", "file-saver": "^2.0.2", diff --git a/yarn.lock b/yarn.lock index 044c917..a64ccdf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1359,68 +1359,53 @@ semver "^7.3.5" tar "^6.1.11" -"@nightingale-elements/nightingale-colored-sequence@file:.yalc/@nightingale-elements/nightingale-colored-sequence": - version "5.2.5" +"@nightingale-elements/nightingale-colored-sequence@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-colored-sequence/-/nightingale-colored-sequence-5.2.0.tgz#585bf78f4ad7bea9aac68da103c069937c16726a" + integrity sha512-PXoDbLW9W5XKe74GhrYrGJLpkxmNEhjd99lXWFKzd6v90Dnwffpuv7qYgKOEjlSkMXf/vGg0LUmC/FjBrHlbxg== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-sequence" "^5.2.0" d3 "7.9.0" -"@nightingale-elements/nightingale-filter@file:.yalc/@nightingale-elements/nightingale-filter": - version "5.2.5" +"@nightingale-elements/nightingale-filter@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-filter/-/nightingale-filter-5.2.0.tgz#b243a441feb8cc0ffee18962f090aae90889ee21" + integrity sha512-4KLE5kl0lO2o/oIbTRxid1teqGXmgpjT2BMOSG8JZruukJ3jc6I1amf5lriiCDOxgbCk5/Y8VFhjTOdJsO1S8Q== dependencies: "@nightingale-elements/nightingale-manager" "^5.2.0" "@nightingale-elements/nightingale-new-core" "^5.2.0" lodash-es "^4.17.11" -"@nightingale-elements/nightingale-heatmap@file:.yalc/@nightingale-elements/nightingale-heatmap": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - -"@nightingale-elements/nightingale-interpro-track@file:.yalc/@nightingale-elements/nightingale-interpro-track": - version "5.2.5" +"@nightingale-elements/nightingale-interpro-track@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-interpro-track/-/nightingale-interpro-track-5.2.0.tgz#52e798c8c3cefa3660732394ee9a103417b50b6e" + integrity sha512-twEXjyG90PaZ+Onsf+xhFkxytdBUz/BqF3ecTA//EnxUZ0Is88TEqHT+26wSZBjs5AnNQnPV6O2WYCsvdLb1pg== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-track" "^5.2.0" d3 "7.9.0" lodash-es "^4.17.15" -"@nightingale-elements/nightingale-linegraph-track@file:.yalc/@nightingale-elements/nightingale-linegraph-track": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - -"@nightingale-elements/nightingale-links@file:.yalc/@nightingale-elements/nightingale-links": - version "5.2.5" +"@nightingale-elements/nightingale-linegraph-track@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-linegraph-track/-/nightingale-linegraph-track-5.2.0.tgz#070697ddc23f794396523fecdf94be1d34b75e01" + integrity sha512-xVJmzxgRqQCQ4muZE4pNLrsr+fhMbriilfMyYiQypzfrsFkHM3sD2/fLxDeOkXMRl5dArwkcfESx7QohKz03uQ== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" - "@nightingale-elements/nightingale-track" "^5.2.0" d3 "7.9.0" - lodash-es "^4.17.15" -"@nightingale-elements/nightingale-manager@^5.2.0": +"@nightingale-elements/nightingale-manager@5.2.0", "@nightingale-elements/nightingale-manager@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-manager/-/nightingale-manager-5.2.0.tgz#76fa38ffed08e7e31af2827481fd9ce948003dd5" integrity sha512-WC8JJg5uWZtgt6HHbQ0Bg6N+qxFmIVoFa/FtT+RQwosHjSqvBgfglvy0uFUn2+37LzR4Egg/6ZxYGt1gw1l8og== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" -"@nightingale-elements/nightingale-manager@file:.yalc/@nightingale-elements/nightingale-manager": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - -"@nightingale-elements/nightingale-msa@file:.yalc/@nightingale-elements/nightingale-msa": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - -"@nightingale-elements/nightingale-navigation@file:.yalc/@nightingale-elements/nightingale-navigation": - version "5.2.5" +"@nightingale-elements/nightingale-navigation@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-navigation/-/nightingale-navigation-5.2.0.tgz#5e5d982a07eeef7135886d4dfc3ea661081f229d" + integrity sha512-bRuLijeiyKNj8DV91mwg7zTKz5ldeFZyKZWDWz6mZQy/8NeArE268xRn8XrIk+Y4uHhRYYUAAK/eulKnWnSysw== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" @@ -1441,31 +1426,16 @@ d3 "7.9.0" lit "3.1.3" -"@nightingale-elements/nightingale-new-core@file:.yalc/@nightingale-elements/nightingale-new-core": - version "5.2.5" - dependencies: - d3 "7.9.0" - lit "3.1.3" - -"@nightingale-elements/nightingale-overlay@file:.yalc/@nightingale-elements/nightingale-overlay": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - -"@nightingale-elements/nightingale-saver@file:.yalc/@nightingale-elements/nightingale-saver": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - rasterizehtml "1.3.1" - -"@nightingale-elements/nightingale-sequence-heatmap@file:.yalc/@nightingale-elements/nightingale-sequence-heatmap": - version "5.1.5" +"@nightingale-elements/nightingale-sequence-heatmap@5.1.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-sequence-heatmap/-/nightingale-sequence-heatmap-5.1.0.tgz#bb84a140843256f233fe7c83ad2a3521bea5bd8a" + integrity sha512-r/sOvkRZYKHL5XWRRYrFEoYeF1c9cXGui6T8SQUfBVawC/KQ5TwyOLbX7x3p9eoZvqqUBmgCSuHjImCir1ySfA== dependencies: "@nightingale-elements/nightingale-new-core" "^4.5.0" d3 "7.8.5" heatmap-component "^1.0.1" -"@nightingale-elements/nightingale-sequence@^5.2.0": +"@nightingale-elements/nightingale-sequence@5.2.0", "@nightingale-elements/nightingale-sequence@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-sequence/-/nightingale-sequence-5.2.0.tgz#d22c1ce64ffc686c193ac4da626b04ecb72f97c0" integrity sha512-oOqteICf5n7CT8JPvcZKiYytiQPZFQFTRm2V5nENSEVHp9O4vTtKB8RgH3ZbLrtCdBhJl4deANcA5PitlmhgUg== @@ -1473,34 +1443,16 @@ "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" -"@nightingale-elements/nightingale-sequence@file:.yalc/@nightingale-elements/nightingale-sequence": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - -"@nightingale-elements/nightingale-structure@file:.yalc/@nightingale-elements/nightingale-structure": - version "5.2.5" +"@nightingale-elements/nightingale-structure@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-structure/-/nightingale-structure-5.2.0.tgz#95ef76f2ad7009cf54be867b7cbe1f9b400f3db1" + integrity sha512-0I4TECkncgi0fzt+b2U9zTHC3g7kebUq74yOixZOq2KSDAwuh6YTavvLnvKM9LBdKYGOKUrioZNWQNs/pahyVg== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" d3 "7.9.0" molstar "3.44.0" -"@nightingale-elements/nightingale-sunburst@file:.yalc/@nightingale-elements/nightingale-sunburst": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - lodash-es "^4.17.15" - -"@nightingale-elements/nightingale-textarea-sequence@file:.yalc/@nightingale-elements/nightingale-textarea-sequence": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - lodash-es "^4.17.11" - quill "1.3.7" - -"@nightingale-elements/nightingale-track@^5.2.0": +"@nightingale-elements/nightingale-track@5.2.0", "@nightingale-elements/nightingale-track@^5.2.0": version "5.2.0" resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-track/-/nightingale-track-5.2.0.tgz#a6a7c3150a1c844eb053677023832b95c7cb8fa4" integrity sha512-GAUyfH/O5+RNly1ZJXERTPi37FwKx7OgSfifXg+QB7m31yxGrjWQzi7ivkBE6X9V0LbSZFcudqfxddYJPmIsrg== @@ -1509,15 +1461,10 @@ d3 "7.9.0" lodash-es "^4.17.15" -"@nightingale-elements/nightingale-track@file:.yalc/@nightingale-elements/nightingale-track": - version "5.2.5" - dependencies: - "@nightingale-elements/nightingale-new-core" "^5.2.0" - d3 "7.9.0" - lodash-es "^4.17.15" - -"@nightingale-elements/nightingale-variation@file:.yalc/@nightingale-elements/nightingale-variation": - version "5.2.5" +"@nightingale-elements/nightingale-variation@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@nightingale-elements/nightingale-variation/-/nightingale-variation-5.2.0.tgz#88815187286624baa63cd0f305bde4e9dd6839f7" + integrity sha512-3uISJtw3ZI6j/b8PTvR+ekbZNbn8cDkNWZwkbW3h2EQQ1qJRlCux7tMyN8J8XzAVHhKEDN8FQ45oVu2MSLHs2g== dependencies: "@nightingale-elements/nightingale-new-core" "^5.2.0" "@nightingale-elements/nightingale-track" "^5.2.0" @@ -1561,10 +1508,10 @@ mkdirp "^1.0.4" rimraf "^3.0.2" -"@scarf/scarf@=1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@scarf/scarf/-/scarf-1.3.0.tgz#f8c75560d0dace4452dee1e31995e6396e61f3ee" - integrity sha512-lHKK8M5CTcpFj2hZDB3wIjb0KAbEOgDmiJGDv1WBRfQgRm/a8/XMEkG/N1iM01xgbUDsPQwi42D+dFo1XPAKew== +"@scarf/scarf@=1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@scarf/scarf/-/scarf-1.4.0.tgz#3bbb984085dbd6d982494538b523be1ce6562972" + integrity sha512-xxeapPiUXdZAE3che6f3xogoJPeZgig6omHEy1rIY5WVsB3H2BHNnZH+gHG6x91SCWyQCzWGsuL2Hh3ClO5/qQ== "@sinclair/typebox@^0.27.8": version "0.27.8" @@ -2021,125 +1968,125 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== -"@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.12.1.tgz#bb16a0e8b1914f979f45864c23819cc3e3f0d4bb" - integrity sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg== +"@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.12.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.14.1.tgz#a9f6a07f2b03c95c8d38c4536a1fdfb521ff55b6" + integrity sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ== dependencies: - "@webassemblyjs/helper-numbers" "1.11.6" - "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/helper-numbers" "1.13.2" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" -"@webassemblyjs/floating-point-hex-parser@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#dacbcb95aff135c8260f77fa3b4c5fea600a6431" - integrity sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw== +"@webassemblyjs/floating-point-hex-parser@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz#fcca1eeddb1cc4e7b6eed4fc7956d6813b21b9fb" + integrity sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA== -"@webassemblyjs/helper-api-error@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768" - integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q== +"@webassemblyjs/helper-api-error@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz#e0a16152248bc38daee76dd7e21f15c5ef3ab1e7" + integrity sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ== -"@webassemblyjs/helper-buffer@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz#6df20d272ea5439bf20ab3492b7fb70e9bfcb3f6" - integrity sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw== +"@webassemblyjs/helper-buffer@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz#822a9bc603166531f7d5df84e67b5bf99b72b96b" + integrity sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA== -"@webassemblyjs/helper-numbers@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#cbce5e7e0c1bd32cf4905ae444ef64cea919f1b5" - integrity sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g== +"@webassemblyjs/helper-numbers@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz#dbd932548e7119f4b8a7877fd5a8d20e63490b2d" + integrity sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA== dependencies: - "@webassemblyjs/floating-point-hex-parser" "1.11.6" - "@webassemblyjs/helper-api-error" "1.11.6" + "@webassemblyjs/floating-point-hex-parser" "1.13.2" + "@webassemblyjs/helper-api-error" "1.13.2" "@xtuc/long" "4.2.2" -"@webassemblyjs/helper-wasm-bytecode@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9" - integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA== +"@webassemblyjs/helper-wasm-bytecode@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz#e556108758f448aae84c850e593ce18a0eb31e0b" + integrity sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA== -"@webassemblyjs/helper-wasm-section@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz#3da623233ae1a60409b509a52ade9bc22a37f7bf" - integrity sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g== +"@webassemblyjs/helper-wasm-section@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz#9629dda9c4430eab54b591053d6dc6f3ba050348" + integrity sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw== dependencies: - "@webassemblyjs/ast" "1.12.1" - "@webassemblyjs/helper-buffer" "1.12.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.6" - "@webassemblyjs/wasm-gen" "1.12.1" + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-buffer" "1.14.1" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/wasm-gen" "1.14.1" -"@webassemblyjs/ieee754@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a" - integrity sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg== +"@webassemblyjs/ieee754@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz#1c5eaace1d606ada2c7fd7045ea9356c59ee0dba" + integrity sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw== dependencies: "@xtuc/ieee754" "^1.2.0" -"@webassemblyjs/leb128@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7" - integrity sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ== +"@webassemblyjs/leb128@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.13.2.tgz#57c5c3deb0105d02ce25fa3fd74f4ebc9fd0bbb0" + integrity sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw== dependencies: "@xtuc/long" "4.2.2" -"@webassemblyjs/utf8@1.11.6": - version "1.11.6" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a" - integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA== +"@webassemblyjs/utf8@1.13.2": + version "1.13.2" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.13.2.tgz#917a20e93f71ad5602966c2d685ae0c6c21f60f1" + integrity sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ== "@webassemblyjs/wasm-edit@^1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz#9f9f3ff52a14c980939be0ef9d5df9ebc678ae3b" - integrity sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g== - dependencies: - "@webassemblyjs/ast" "1.12.1" - "@webassemblyjs/helper-buffer" "1.12.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.6" - "@webassemblyjs/helper-wasm-section" "1.12.1" - "@webassemblyjs/wasm-gen" "1.12.1" - "@webassemblyjs/wasm-opt" "1.12.1" - "@webassemblyjs/wasm-parser" "1.12.1" - "@webassemblyjs/wast-printer" "1.12.1" - -"@webassemblyjs/wasm-gen@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz#a6520601da1b5700448273666a71ad0a45d78547" - integrity sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w== + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz#ac6689f502219b59198ddec42dcd496b1004d597" + integrity sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ== + dependencies: + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-buffer" "1.14.1" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/helper-wasm-section" "1.14.1" + "@webassemblyjs/wasm-gen" "1.14.1" + "@webassemblyjs/wasm-opt" "1.14.1" + "@webassemblyjs/wasm-parser" "1.14.1" + "@webassemblyjs/wast-printer" "1.14.1" + +"@webassemblyjs/wasm-gen@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz#991e7f0c090cb0bb62bbac882076e3d219da9570" + integrity sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg== dependencies: - "@webassemblyjs/ast" "1.12.1" - "@webassemblyjs/helper-wasm-bytecode" "1.11.6" - "@webassemblyjs/ieee754" "1.11.6" - "@webassemblyjs/leb128" "1.11.6" - "@webassemblyjs/utf8" "1.11.6" + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/ieee754" "1.13.2" + "@webassemblyjs/leb128" "1.13.2" + "@webassemblyjs/utf8" "1.13.2" -"@webassemblyjs/wasm-opt@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz#9e6e81475dfcfb62dab574ac2dda38226c232bc5" - integrity sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg== +"@webassemblyjs/wasm-opt@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz#e6f71ed7ccae46781c206017d3c14c50efa8106b" + integrity sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw== dependencies: - "@webassemblyjs/ast" "1.12.1" - "@webassemblyjs/helper-buffer" "1.12.1" - "@webassemblyjs/wasm-gen" "1.12.1" - "@webassemblyjs/wasm-parser" "1.12.1" + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-buffer" "1.14.1" + "@webassemblyjs/wasm-gen" "1.14.1" + "@webassemblyjs/wasm-parser" "1.14.1" -"@webassemblyjs/wasm-parser@1.12.1", "@webassemblyjs/wasm-parser@^1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz#c47acb90e6f083391e3fa61d113650eea1e95937" - integrity sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ== +"@webassemblyjs/wasm-parser@1.14.1", "@webassemblyjs/wasm-parser@^1.12.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz#b3e13f1893605ca78b52c68e54cf6a865f90b9fb" + integrity sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ== dependencies: - "@webassemblyjs/ast" "1.12.1" - "@webassemblyjs/helper-api-error" "1.11.6" - "@webassemblyjs/helper-wasm-bytecode" "1.11.6" - "@webassemblyjs/ieee754" "1.11.6" - "@webassemblyjs/leb128" "1.11.6" - "@webassemblyjs/utf8" "1.11.6" + "@webassemblyjs/ast" "1.14.1" + "@webassemblyjs/helper-api-error" "1.13.2" + "@webassemblyjs/helper-wasm-bytecode" "1.13.2" + "@webassemblyjs/ieee754" "1.13.2" + "@webassemblyjs/leb128" "1.13.2" + "@webassemblyjs/utf8" "1.13.2" -"@webassemblyjs/wast-printer@1.12.1": - version "1.12.1" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz#bcecf661d7d1abdaf989d8341a4833e33e2b31ac" - integrity sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA== +"@webassemblyjs/wast-printer@1.14.1": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz#3bb3e9638a8ae5fdaf9610e7a06b4d9f9aa6fe07" + integrity sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw== dependencies: - "@webassemblyjs/ast" "1.12.1" + "@webassemblyjs/ast" "1.14.1" "@xtuc/long" "4.2.2" "@webpack-cli/configtest@^1.2.0": @@ -2876,9 +2823,9 @@ camelcase@^6.0.0: integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-lite@^1.0.30001669: - version "1.0.30001677" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001677.tgz#27c2e2c637e007cfa864a16f7dfe7cde66b38b5f" - integrity sha512-fmfjsOlJUpMWu+mAAtZZZHz7UEwsUxIIvu1TJfO1HqFQvB/B+ii0xr9B5HpbZY/mC4XZ8SvjHJqtAY6pDPQEog== + version "1.0.30001679" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001679.tgz#18c573b72f72ba70822194f6c39e7888597f9e32" + integrity sha512-j2YqID/YwpLnKzCmBOS4tlZdWprXm3ZmQLBH9ZBXFOhoxLA46fwyBvx6toCBWBmnuwUY/qB3kEU6gFx8qgCroA== canvas@^2.11.2: version "2.11.2" @@ -3043,11 +2990,6 @@ clone-deep@^4.0.1: kind-of "^6.0.2" shallow-clone "^3.0.0" -clone@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== - co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -3085,7 +3027,7 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-hash@^2.0.2: +color-hash@2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/color-hash/-/color-hash-2.0.2.tgz#abf735705da71874ddec7dcef50cd7479e7d64e9" integrity sha512-6exeENAqBTuIR1wIo36mR8xVVBv6l1hSLd7Qmvf6158Ld1L15/dbahR9VUOiX7GmGJBCnQyS0EY+I8x+wa7egg== @@ -3283,19 +3225,14 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5: which "^1.2.9" cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + version "7.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.5.tgz#910aac880ff5243da96b728bc6521a5f6c2f2f82" + integrity sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug== dependencies: path-key "^3.1.0" shebang-command "^2.0.0" which "^2.0.1" -css-font-face-src@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/css-font-face-src/-/css-font-face-src-1.0.0.tgz#a8c6307d48d9afc84a404082cb1776cd458864b1" - integrity sha512-kUl2r9ZMiLKY+04SM83Rk6dLnUU/hk30aN5CSZ+ZMGWT2COCU8I7yVu8fHbfCQu7Gx1ce45W0Q9hRaw2awqlww== - css-loader@^5.2.6: version "5.2.7" resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.7.tgz#9b9f111edf6fb2be5dc62525644cbc9c232064ae" @@ -4172,9 +4109,9 @@ ee-first@1.1.1: integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== electron-to-chromium@^1.5.41: - version "1.5.52" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.52.tgz#2bed832c95a56a195504f918150e548474687da8" - integrity sha512-xtoijJTZ+qeucLBDNztDOuQBE1ksqjvNjvqFoST3nGC7fSpqJ+X6BdTBaY5BHG+IhWWmpc6b/KfpeuEDupEPOQ== + version "1.5.55" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.55.tgz#73684752aa2e1aa49cafb355a41386c6637e76a9" + integrity sha512-6maZ2ASDOTBtjt9FhqYPRnbvKU5tjG0IN9SztUOWYw2AzNDNpKJYLJmlK0/En4Hs/aiWnB+JZ+gW19PIGszgKg== emittery@^0.7.1: version "0.7.2" @@ -4536,11 +4473,6 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== -eventemitter3@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-2.0.3.tgz#b5e1079b59fb5e1ba2771c0a993be060a58c99ba" - integrity sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg== - eventemitter3@^4.0.0: version "4.0.7" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" @@ -4692,7 +4624,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@^3.0.0, extend@^3.0.2: +extend@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -4716,11 +4648,6 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== -fast-diff@1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.1.2.tgz#4b62c42b8e03de3f848460b639079920695d0154" - integrity sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig== - fast-glob@^3.2.7, fast-glob@^3.2.9: version "3.3.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" @@ -5570,14 +5497,6 @@ inline-style-parser@0.2.4: resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.2.4.tgz#f4af5fe72e612839fcd453d989a586566d695f22" integrity sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q== -inlineresources@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/inlineresources/-/inlineresources-1.0.1.tgz#a8b71e8908036e940f62aff40b18aec9a4205a07" - integrity sha512-r0TMecufaxuZva1tqvTR50hxud4wEAOAe0lWRp+kxWKAjGPYUxYDl+IFcOgWE8jMxVIJQl14vuJfhtMYdomPjw== - dependencies: - css-font-face-src "^1.0.0" - url "~0.11.0" - internal-ip@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907" @@ -7904,11 +7823,6 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== -parchment@^1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/parchment/-/parchment-1.1.4.tgz#aeded7ab938fe921d4c34bc339ce1168bc2ffde5" - integrity sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg== - parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -8263,9 +8177,11 @@ prr@~1.0.1: integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== psl@^1.1.33: - version "1.9.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" - integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== + version "1.10.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.10.0.tgz#1450f7e16f922c3beeb7bd9db3f312635018fa15" + integrity sha512-KSKHEbjAnpUuAUserOq0FxGXCUrzC3WniuSJhvdbs102rL55266ZcHBqLWOsG30spQMlPdpy7icATiAQehg/iA== + dependencies: + punycode "^2.3.1" pump@^3.0.0: version "3.0.2" @@ -8280,7 +8196,7 @@ punycode@^1.4.1: resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== -punycode@^2.1.0, punycode@^2.1.1: +punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== @@ -8302,27 +8218,6 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== -quill-delta@^3.6.2: - version "3.6.3" - resolved "https://registry.yarnpkg.com/quill-delta/-/quill-delta-3.6.3.tgz#b19fd2b89412301c60e1ff213d8d860eac0f1032" - integrity sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg== - dependencies: - deep-equal "^1.0.1" - extend "^3.0.2" - fast-diff "1.1.2" - -quill@1.3.7: - version "1.3.7" - resolved "https://registry.yarnpkg.com/quill/-/quill-1.3.7.tgz#da5b2f3a2c470e932340cdbf3668c9f21f9286e8" - integrity sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g== - dependencies: - clone "^2.1.1" - deep-equal "^1.0.1" - eventemitter3 "^2.0.3" - extend "^3.0.2" - parchment "^1.1.4" - quill-delta "^3.6.2" - randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -8335,16 +8230,6 @@ range-parser@^1.2.1, range-parser@~1.2.1: resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -rasterizehtml@1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/rasterizehtml/-/rasterizehtml-1.3.1.tgz#c205d63e0c46ea11ad5fb7b20e9262571255b52f" - integrity sha512-YfFxHJgyBWe6fGKQwiZQKWb5IYICQabg2iCyzjMzOXFKj2g+AfntlOxkM4f1+I0I6XjRp7bVOAxqXbfzsqjqTA== - dependencies: - inlineresources "^1.0.1" - sane-domparser-error "~0.2.0" - url "~0.11.0" - xmlserializer "~0.6.0" - raw-body@2.5.2: version "2.5.2" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" @@ -8757,11 +8642,6 @@ safe-regex@^1.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sane-domparser-error@~0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/sane-domparser-error/-/sane-domparser-error-0.2.0.tgz#adec5360c8a394526c204e61b00ea125f7b2b01f" - integrity sha512-wxjDV5jty95tNv8N/4WA15UNGqqaor/xX7rnNYY961hifN3bheYoKqtXN+V/M6EUgmUAs6pMul3klwUPMEiVXA== - sane@^4.0.3: version "4.1.0" resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" @@ -9500,11 +9380,11 @@ svg-inline-loader@^0.8.0: simple-html-tokenizer "^0.1.1" swagger-ui-dist@^5.10.5: - version "5.18.1" - resolved "https://registry.yarnpkg.com/swagger-ui-dist/-/swagger-ui-dist-5.18.1.tgz#3a58ddf788ec514604331255c58d0a032310fbfd" - integrity sha512-nOUpYnU6HZ5Eq2+xmptFti4RX/Vcbe+6PDtQGnSiGT2j9ImgcrJsjsX3OEl8TZV+48y8Wfn0gcjxyoXsMFHr/w== + version "5.18.2" + resolved "https://registry.yarnpkg.com/swagger-ui-dist/-/swagger-ui-dist-5.18.2.tgz#62013074374d272c04ed3030704b88db5aa8c0b7" + integrity sha512-J+y4mCw/zXh1FOj5wGJvnAajq6XgHOyywsa9yITmwxIlJbMqITq3gYRZHaeqLVH/eV/HOPphE6NjF+nbSNC5Zw== dependencies: - "@scarf/scarf" "=1.3.0" + "@scarf/scarf" "=1.4.0" symbol-tree@^3.2.4: version "3.2.4" @@ -10004,7 +9884,7 @@ url-parse@^1.5.10, url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -url@^0.11.0, url@~0.11.0: +url@^0.11.0: version "0.11.4" resolved "https://registry.yarnpkg.com/url/-/url-0.11.4.tgz#adca77b3562d56b72746e76b330b7f27b6721f3c" integrity sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg== @@ -10432,11 +10312,6 @@ xmlchars@^2.2.0: resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== -xmlserializer@~0.6.0: - version "0.6.1" - resolved "https://registry.yarnpkg.com/xmlserializer/-/xmlserializer-0.6.1.tgz#14099f60272e16cb608be3758992f998070cc29a" - integrity sha512-FNb0eEqqUUbnuvxuHqNuKH8qCGKqxu+558Zi8UzOoQk8Z9LdvpONK+v7m3gpKVHrk5Aq+0nNLsKxu/6OYh7Umw== - "xtend@>=4.0.0 <4.1.0-0": version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" From 7908abeb45c105691ad6d62ef6bfde63c59cd535 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Fri, 8 Nov 2024 12:58:25 +0000 Subject: [PATCH 28/32] Remove data-loader from protvista-uniprot-structure. --- src/protvista-uniprot-structure.ts | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/protvista-uniprot-structure.ts b/src/protvista-uniprot-structure.ts index 3a2c7ae..50648e0 100644 --- a/src/protvista-uniprot-structure.ts +++ b/src/protvista-uniprot-structure.ts @@ -2,7 +2,6 @@ import { LitElement, html, svg, TemplateResult, css } from 'lit'; // eslint-disable-next-line @typescript-eslint/no-unused-vars import { customElement } from 'lit/decorators.js'; import { unsafeHTML } from 'lit/directives/unsafe-html.js'; -import { load } from 'data-loader'; import NightingaleStructure, { PredictionData, StructureData, @@ -179,19 +178,23 @@ class ProtvistaUniprotStructure extends LitElement { const pdbUrl = `https://www.ebi.ac.uk/proteins/api/proteins/${this.accession}`; const alphaFoldURl = `https://alphafold.ebi.ac.uk/api/prediction/${this.accession}`; - const rawData: { [key: string]: any } = []; - - await Promise.all( - [pdbUrl, alphaFoldURl].map((url: string) => - load(url).then( - (data) => (rawData[url] = data.payload), - // TODO handle this better based on error code - // Fail silently for now - (error) => console.warn(error) - ) + const rawData = Object.fromEntries( + await Promise.all( + [pdbUrl, alphaFoldURl].map(async (url) => { + const response = await fetch(url); + if (!response.ok) { + // TODO handle this better based on error code + // Fail silently for now + console.warn(`HTTP error status: ${response.status} at ${url}`); + return [url, null]; + } + return [url, await response.json()]; + }) ) ); + console.log(rawData); + this.loading = false; // TODO: return if no data at all // if (!payload) return; From 0651215f42edc8819312f1d1ddf3c3a465b9235f Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Fri, 8 Nov 2024 15:20:41 +0000 Subject: [PATCH 29/32] Create fetchAll util fn and use to replace data-loader. --- src/protvista-uniprot-structure.ts | 18 ++---------------- src/protvista-uniprot.ts | 30 +++++++++--------------------- src/utils.ts | 27 +++++++++++++++++++++++++-- 3 files changed, 36 insertions(+), 39 deletions(-) diff --git a/src/protvista-uniprot-structure.ts b/src/protvista-uniprot-structure.ts index 50648e0..b6b6e96 100644 --- a/src/protvista-uniprot-structure.ts +++ b/src/protvista-uniprot-structure.ts @@ -7,7 +7,7 @@ import NightingaleStructure, { StructureData, } from '@nightingale-elements/nightingale-structure'; import ProtvistaDatatable from 'protvista-datatable'; -import { loadComponent } from './utils'; +import { fetchAll, loadComponent } from './utils'; import loaderIcon from './icons/spinner.svg'; import downloadIcon from './icons/download.svg'; @@ -178,21 +178,7 @@ class ProtvistaUniprotStructure extends LitElement { const pdbUrl = `https://www.ebi.ac.uk/proteins/api/proteins/${this.accession}`; const alphaFoldURl = `https://alphafold.ebi.ac.uk/api/prediction/${this.accession}`; - const rawData = Object.fromEntries( - await Promise.all( - [pdbUrl, alphaFoldURl].map(async (url) => { - const response = await fetch(url); - if (!response.ok) { - // TODO handle this better based on error code - // Fail silently for now - console.warn(`HTTP error status: ${response.status} at ${url}`); - return [url, null]; - } - return [url, await response.json()]; - }) - ) - ); - + const rawData = await fetchAll([pdbUrl, alphaFoldURl]); console.log(rawData); this.loading = false; diff --git a/src/protvista-uniprot.ts b/src/protvista-uniprot.ts index 00e0f14..ff1afef 100644 --- a/src/protvista-uniprot.ts +++ b/src/protvista-uniprot.ts @@ -32,8 +32,7 @@ import alphaMissenseHeatmapAdapter from './adapters/alphamissense-heatmap-adapte import ProtvistaUniprotStructure from './protvista-uniprot-structure'; -import { load } from 'data-loader'; -import { loadComponent } from './utils'; +import { fetchAll, loadComponent } from './utils'; import filterConfig, { colorConfig } from './filter-config'; import defaultConfig from './config.json'; @@ -189,28 +188,17 @@ class ProtvistaUniprot extends LitElement { const urls = this.config.categories.flatMap(({ tracks }) => tracks.flatMap(({ data }) => data[0].url) ); - const uniqueUrls = [...new Set(urls)]; + // Get the data for all urls and store it - await Promise.all( - uniqueUrls.map((url: string) => - load(url.replace('{accession}', accession)) - .then( - (data) => { - this.rawData[url] = data.payload; - // Some endpoints return empty arrays, while most fail 🙄 - if (!this.hasData && data.payload?.features?.length) - this.hasData = true; - }, - // TODO handle this better based on error code - // Fail silently for now - (error) => console.warn(error) - ) - .catch((e) => { - console.log(e); - }) - ) + this.rawData = await fetchAll([...new Set(urls)], (url) => + url.replace('{accession}', accession) ); + // Some endpoints return empty arrays, while most fail 🙄 + this.hasData = + this.hasData || + Object.values(this.rawData).some((d) => !!d?.features?.length); + // Now iterate over tracks and categories, transforming the data // and assigning it as adequate for (const { name: categoryName, tracks, trackType } of this.config diff --git a/src/utils.ts b/src/utils.ts index 62c1ad0..80a4d09 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -4,11 +4,34 @@ export const renameProperties = (features) => start: ft.begin || undefined, })); -export const loadComponent = function ( +export const loadComponent = ( name: string, elementConstructor: CustomElementConstructor -) { +) => { if (!customElements.get(name)) { customElements.define(name, elementConstructor); } }; + +// Returns an object of the form url => payload json +// getUrl optional function modifies url string +export const fetchAll = async (urls: string[], getUrl = null) => + Object.fromEntries( + await Promise.all( + urls.map(async (url) => { + try { + const response = await fetch(getUrl ? getUrl(url) : url); + if (!response.ok) { + // TODO handle this better based on error code + // Fail silently for now + console.warn(`HTTP error status: ${response.status} at ${url}`); + return [url, null]; + } + return [url, await response.json()]; + } catch (error) { + console.warn(`Failed to fetch or parse JSON from ${url}:`, error); + return [url, null]; // or handle error data as needed + } + }) + ) + ); From 3412e06d9091f4ce3e8cd08761dc2299ceace42e Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Fri, 8 Nov 2024 15:21:34 +0000 Subject: [PATCH 30/32] Remove data-loader. --- package.json | 1 - yarn.lock | 20 -------------------- 2 files changed, 21 deletions(-) diff --git a/package.json b/package.json index 75283c0..b19de19 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,6 @@ "@nightingale-elements/nightingale-variation": "5.2.0", "color-hash": "2.0.2", "core-js": "^3.13.0", - "data-loader": "^2.9.1", "file-saver": "^2.0.2", "lit": "3.1.3", "protvista-datatable": "3.8.22", diff --git a/yarn.lock b/yarn.lock index a64ccdf..05c9f98 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1746,18 +1746,6 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== -"@types/lodash-es@4.17.3": - version "4.17.3" - resolved "https://registry.yarnpkg.com/@types/lodash-es/-/lodash-es-4.17.3.tgz#87eb0b3673b076b8ee655f1890260a136af09a2d" - integrity sha512-iHI0i7ZAL1qepz1Y7f3EKg/zUMDwDfTzitx+AlHhJJvXwenP682ZyGbgPSc5Ej3eEAKVbNWKFuwOadCj5vBbYQ== - dependencies: - "@types/lodash" "*" - -"@types/lodash@*": - version "4.17.13" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.13.tgz#786e2d67cfd95e32862143abe7463a7f90c300eb" - integrity sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg== - "@types/mdast@^4.0.0": version "4.0.4" resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.4.tgz#7ccf72edd2f1aa7dd3437e180c64373585804dd6" @@ -3799,14 +3787,6 @@ d3@7.9.0, d3@^7.9.0: d3-transition "3" d3-zoom "3" -data-loader@^2.9.1: - version "2.12.0" - resolved "https://registry.yarnpkg.com/data-loader/-/data-loader-2.12.0.tgz#e14158ed1c6ffa5314590871a7b8758da9617add" - integrity sha512-HhFGutLwfMIfz96ctq4FZ03WMQ9W8zdMBHkEKJGaaTaChKhczVIoRtldWd4MkERHNIFWJJkTgi+pjNAZjzwfeA== - dependencies: - "@types/lodash-es" "4.17.3" - lodash-es "^4.17.11" - data-urls@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" From b2d8f9d2287bf438596664f06877c3573b54cf28 Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Fri, 8 Nov 2024 15:37:46 +0000 Subject: [PATCH 31/32] Remove debugging statement. --- src/protvista-uniprot-structure.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/protvista-uniprot-structure.ts b/src/protvista-uniprot-structure.ts index b6b6e96..102692f 100644 --- a/src/protvista-uniprot-structure.ts +++ b/src/protvista-uniprot-structure.ts @@ -179,7 +179,6 @@ class ProtvistaUniprotStructure extends LitElement { const alphaFoldURl = `https://alphafold.ebi.ac.uk/api/prediction/${this.accession}`; const rawData = await fetchAll([pdbUrl, alphaFoldURl]); - console.log(rawData); this.loading = false; // TODO: return if no data at all From c3c779d8a7e80f36111a6c388927947e1ca4143e Mon Sep 17 00:00:00 2001 From: Daniel Rice Date: Fri, 8 Nov 2024 15:39:08 +0000 Subject: [PATCH 32/32] Remove D3 and file-saver; remove D3 peerDep; pin dep versions. --- package.json | 12 +-- yarn.lock | 282 +++------------------------------------------------ 2 files changed, 15 insertions(+), 279 deletions(-) diff --git a/package.json b/package.json index b19de19..ddf1132 100644 --- a/package.json +++ b/package.json @@ -35,12 +35,11 @@ "@nightingale-elements/nightingale-track": "5.2.0", "@nightingale-elements/nightingale-variation": "5.2.0", "color-hash": "2.0.2", - "core-js": "^3.13.0", - "file-saver": "^2.0.2", + "core-js": "3.13.0", "lit": "3.1.3", "protvista-datatable": "3.8.22", - "timing-functions": "^2.0.1", - "url-join": "^4.0.1" + "timing-functions": "2.0.1", + "url-join": "4.0.1" }, "devDependencies": { "@babel/core": "^7.14.3", @@ -49,7 +48,6 @@ "@babel/preset-env": "^7.14.2", "@babel/preset-typescript": "^7.13.0", "@babel/runtime-corejs3": "^7.14.0", - "@types/file-saver": "^2.0.2", "@types/jest": "^29.5.14", "@types/url-join": "^4.0.0", "@typescript-eslint/eslint-plugin": "4.26.1", @@ -59,7 +57,6 @@ "concurrently": "^4.1.0", "copy-webpack-plugin": "^9.0.1", "css-loader": "^5.2.6", - "d3": "5.X", "eslint": "^7.27.0", "eslint-config-prettier": "^8.3.0", "jest": "^26.4.2", @@ -71,9 +68,6 @@ "webpack-cli": "^4.7.0", "webpack-dev-server": "^3.11.2" }, - "peerDependencies": { - "d3": "5.X" - }, "jest": { "testRegex": "(/__tests__/.*|(\\.|/))spec\\.ts$", "testPathIgnorePatterns": [ diff --git a/yarn.lock b/yarn.lock index 05c9f98..7f78c3a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1682,11 +1682,6 @@ "@types/qs" "*" "@types/serve-static" "*" -"@types/file-saver@^2.0.2": - version "2.0.7" - resolved "https://registry.yarnpkg.com/@types/file-saver/-/file-saver-2.0.7.tgz#8dbb2f24bdc7486c54aa854eb414940bbd056f7d" - integrity sha512-dNKVfHd/jk0SkR/exKGj2ggkB45MAkzvWCaqLUUgkyjITkGNzH8H+yUwr+BLJUBjZOe9w8X3wgmXhZDRg1ED6A== - "@types/glob@^7.1.1": version "7.2.0" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" @@ -3052,16 +3047,16 @@ comma-separated-tokens@^2.0.0: resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee" integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== -commander@2, commander@^2.20.0: - version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== - commander@7, commander@^7.0.0: version "7.2.0" resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== +commander@^2.20.0: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" @@ -3183,10 +3178,10 @@ core-js-pure@^3.30.2: resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.39.0.tgz#aa0d54d70a15bdc13e7c853db87c10abc30d68f3" integrity sha512-7fEcWwKI4rJinnK+wLTezeg2smbFFdSBP6E2kQZNbnzM2s1rpKQ6aaRteZSSg7FLU3P0HGGVo/gbpfanU36urg== -core-js@^3.13.0: - version "3.39.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.39.0.tgz#57f7647f4d2d030c32a72ea23a0555b2eaa30f83" - integrity sha512-raM0ew0/jJUqkJ0E6e8UDtl+y/7ktFivgWvqw8dNSQeNWoSDLvQ1H/RN3aPXB9tBd4/FhyR4RDPGhsNIMsAn7g== +core-js@3.13.0: + version "3.13.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.13.0.tgz#58ca436bf01d6903aee3d364089868d0d89fe58d" + integrity sha512-iWDbiyha1M5vFwPFmQnvRv+tJzGbFAm6XimJUT0NgHYW3xZEs1SkCAcasWSVFxpI2Xb/V1DDJckq3v90+bQnog== core-util-is@~1.0.0: version "1.0.3" @@ -3259,11 +3254,6 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -d3-array@1, d3-array@^1.1.1, d3-array@^1.2.0: - version "1.2.4" - resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.4.tgz#635ce4d5eea759f6f605863dbcfc30edc737f71f" - integrity sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw== - "d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3, d3-array@^3.2.0: version "3.2.4" resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-3.2.4.tgz#15fec33b237f97ac5d7c986dc77da273a8ed0bb5" @@ -3271,27 +3261,11 @@ d3-array@1, d3-array@^1.1.1, d3-array@^1.2.0: dependencies: internmap "1 - 2" -d3-axis@1: - version "1.0.12" - resolved "https://registry.yarnpkg.com/d3-axis/-/d3-axis-1.0.12.tgz#cdf20ba210cfbb43795af33756886fb3638daac9" - integrity sha512-ejINPfPSNdGFKEOAtnBtdkpr24c4d4jsei6Lg98mxf424ivoDP2956/5HDpIAtmHo85lqT4pruy+zEgvRUBqaQ== - d3-axis@3: version "3.0.0" resolved "https://registry.yarnpkg.com/d3-axis/-/d3-axis-3.0.0.tgz#c42a4a13e8131d637b745fc2973824cfeaf93322" integrity sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw== -d3-brush@1: - version "1.1.6" - resolved "https://registry.yarnpkg.com/d3-brush/-/d3-brush-1.1.6.tgz#b0a22c7372cabec128bdddf9bddc058592f89e9b" - integrity sha512-7RW+w7HfMCPyZLifTz/UnJmI5kdkXtpCbombUSs8xniAyo0vIbrDzDwUJB6eJOgl9u5DQOt2TQlYumxzD1SvYA== - dependencies: - d3-dispatch "1" - d3-drag "1" - d3-interpolate "1" - d3-selection "1" - d3-transition "1" - d3-brush@3: version "3.0.0" resolved "https://registry.yarnpkg.com/d3-brush/-/d3-brush-3.0.0.tgz#6f767c4ed8dcb79de7ede3e1c0f89e63ef64d31c" @@ -3303,14 +3277,6 @@ d3-brush@3: d3-selection "3" d3-transition "3" -d3-chord@1: - version "1.0.6" - resolved "https://registry.yarnpkg.com/d3-chord/-/d3-chord-1.0.6.tgz#309157e3f2db2c752f0280fedd35f2067ccbb15f" - integrity sha512-JXA2Dro1Fxw9rJe33Uv+Ckr5IrAa74TlfDEhE/jfLOaXegMQFQTAgAw9WnZL8+HxVBRXaRGCkrNU7pJeylRIuA== - dependencies: - d3-array "1" - d3-path "1" - d3-chord@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-chord/-/d3-chord-3.0.1.tgz#d156d61f485fce8327e6abf339cb41d8cbba6966" @@ -3318,28 +3284,11 @@ d3-chord@3: dependencies: d3-path "1 - 3" -d3-collection@1: - version "1.0.7" - resolved "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.7.tgz#349bd2aa9977db071091c13144d5e4f16b5b310e" - integrity sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A== - -d3-color@1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-1.4.1.tgz#c52002bf8846ada4424d55d97982fef26eb3bc8a" - integrity sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q== - "d3-color@1 - 3", d3-color@3: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-3.1.0.tgz#395b2833dfac71507f12ac2f7af23bf819de24e2" integrity sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA== -d3-contour@1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/d3-contour/-/d3-contour-1.3.2.tgz#652aacd500d2264cb3423cee10db69f6f59bead3" - integrity sha512-hoPp4K/rJCu0ladiH6zmJUEz6+u3lgR+GSm/QdM2BBvDraU39Vr7YdDCicJcxP1z8i9B/2dJLgDC1NcvlF8WCg== - dependencies: - d3-array "^1.1.1" - d3-contour@4: version "4.0.2" resolved "https://registry.yarnpkg.com/d3-contour/-/d3-contour-4.0.2.tgz#bb92063bc8c5663acb2422f99c73cbb6c6ae3bcc" @@ -3354,24 +3303,11 @@ d3-delaunay@6: dependencies: delaunator "5" -d3-dispatch@1: - version "1.0.6" - resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-1.0.6.tgz#00d37bcee4dd8cd97729dd893a0ac29caaba5d58" - integrity sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA== - "d3-dispatch@1 - 3", d3-dispatch@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-3.0.1.tgz#5fc75284e9c2375c36c839411a0cf550cbfc4d5e" integrity sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg== -d3-drag@1: - version "1.2.5" - resolved "https://registry.yarnpkg.com/d3-drag/-/d3-drag-1.2.5.tgz#2537f451acd39d31406677b7dc77c82f7d988f70" - integrity sha512-rD1ohlkKQwMZYkQlYVCrSFxsWPzI97+W+PaEIBNTMxRuxz9RF0Hi5nJWHGVJ3Om9d2fRTe1yOBINJyy/ahV95w== - dependencies: - d3-dispatch "1" - d3-selection "1" - "d3-drag@2 - 3", d3-drag@3: version "3.0.0" resolved "https://registry.yarnpkg.com/d3-drag/-/d3-drag-3.0.0.tgz#994aae9cd23c719f53b5e10e3a0a6108c69607ba" @@ -3380,15 +3316,6 @@ d3-drag@1: d3-dispatch "1 - 3" d3-selection "3" -d3-dsv@1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-1.2.0.tgz#9d5f75c3a5f8abd611f74d3f5847b0d4338b885c" - integrity sha512-9yVlqvZcSOMhCYzniHE7EVUws7Fa1zgw+/EAV2BxJoG3ME19V6BQFBwI855XQDsxyOuG7NibqRMTtiF/Qup46g== - dependencies: - commander "2" - iconv-lite "0.4" - rw "1" - "d3-dsv@1 - 3", d3-dsv@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-3.0.1.tgz#c63af978f4d6a0d084a52a673922be2160789b73" @@ -3398,23 +3325,11 @@ d3-dsv@1: iconv-lite "0.6" rw "1" -d3-ease@1: - version "1.0.7" - resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-1.0.7.tgz#9a834890ef8b8ae8c558b2fe55bd57f5993b85e2" - integrity sha512-lx14ZPYkhNx0s/2HX5sLFUI3mbasHjSSpwO/KaaNACweVwxUruKyWVcb293wMv1RqTPZyZ8kSZ2NogUZNcLOFQ== - "d3-ease@1 - 3", d3-ease@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-3.0.1.tgz#9658ac38a2140d59d346160f1f6c30fda0bd12f4" integrity sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w== -d3-fetch@1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/d3-fetch/-/d3-fetch-1.2.0.tgz#15ce2ecfc41b092b1db50abd2c552c2316cf7fc7" - integrity sha512-yC78NBVcd2zFAyR/HnUiBS7Lf6inSCoWcSxFfw8FYL7ydiqe80SazNwoffcqOfs95XaLo7yebsmQqDKSsXUtvA== - dependencies: - d3-dsv "1" - d3-fetch@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-fetch/-/d3-fetch-3.0.1.tgz#83141bff9856a0edb5e38de89cdcfe63d0a60a22" @@ -3422,16 +3337,6 @@ d3-fetch@3: dependencies: d3-dsv "1 - 3" -d3-force@1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/d3-force/-/d3-force-1.2.1.tgz#fd29a5d1ff181c9e7f0669e4bd72bdb0e914ec0b" - integrity sha512-HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg== - dependencies: - d3-collection "1" - d3-dispatch "1" - d3-quadtree "1" - d3-timer "1" - d3-force@3: version "3.0.0" resolved "https://registry.yarnpkg.com/d3-force/-/d3-force-3.0.0.tgz#3e2ba1a61e70888fe3d9194e30d6d14eece155c4" @@ -3441,23 +3346,11 @@ d3-force@3: d3-quadtree "1 - 3" d3-timer "1 - 3" -d3-format@1: - version "1.4.5" - resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-1.4.5.tgz#374f2ba1320e3717eb74a9356c67daee17a7edb4" - integrity sha512-J0piedu6Z8iB6TbIGfZgDzfXxUFN3qQRMofy2oPdXzQibYGqPB/9iMcxr/TGalU+2RsyDO+U4f33id8tbnSRMQ== - "d3-format@1 - 3", d3-format@3: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-3.1.0.tgz#9260e23a28ea5cb109e93b21a06e24e2ebd55641" integrity sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA== -d3-geo@1: - version "1.12.1" - resolved "https://registry.yarnpkg.com/d3-geo/-/d3-geo-1.12.1.tgz#7fc2ab7414b72e59fbcbd603e80d9adc029b035f" - integrity sha512-XG4d1c/UJSEX9NfU02KwBL6BYPj8YKHxgBEw5om2ZnTRSbIcego6dhHwcxuSR3clxh0EpE38os1DVPOmnYtTPg== - dependencies: - d3-array "1" - d3-geo@3: version "3.1.1" resolved "https://registry.yarnpkg.com/d3-geo/-/d3-geo-3.1.1.tgz#6027cf51246f9b2ebd64f99e01dc7c3364033a4d" @@ -3465,23 +3358,11 @@ d3-geo@3: dependencies: d3-array "2.5.0 - 3" -d3-hierarchy@1: - version "1.1.9" - resolved "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-1.1.9.tgz#2f6bee24caaea43f8dc37545fa01628559647a83" - integrity sha512-j8tPxlqh1srJHAtxfvOUwKNYJkQuBFdM1+JAUfq6xqH5eAqf93L7oG1NVqDa4CpFZNvnNKtCYEUC8KY9yEn9lQ== - d3-hierarchy@3: version "3.1.2" resolved "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz#b01cd42c1eed3d46db77a5966cf726f8c09160c6" integrity sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA== -d3-interpolate@1: - version "1.4.0" - resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-1.4.0.tgz#526e79e2d80daa383f9e0c1c1c7dcc0f0583e987" - integrity sha512-V9znK0zc3jOPV4VD2zZn0sDhZU3WAE2bmlxdIwwQPPzPjvyLkd8B3JUVdS1IDUFDkWZ72c9qnv1GK2ZagTZ8EA== - dependencies: - d3-color "1" - "d3-interpolate@1 - 3", "d3-interpolate@1.2.0 - 3", d3-interpolate@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-3.0.1.tgz#3c47aa5b32c5b3dfb56ef3fd4342078a632b400d" @@ -3489,54 +3370,26 @@ d3-interpolate@1: dependencies: d3-color "1 - 3" -d3-path@1: - version "1.0.9" - resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.9.tgz#48c050bb1fe8c262493a8caf5524e3e9591701cf" - integrity sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg== - "d3-path@1 - 3", d3-path@3, d3-path@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-3.1.0.tgz#22df939032fb5a71ae8b1800d61ddb7851c42526" integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ== -d3-polygon@1: - version "1.0.6" - resolved "https://registry.yarnpkg.com/d3-polygon/-/d3-polygon-1.0.6.tgz#0bf8cb8180a6dc107f518ddf7975e12abbfbd38e" - integrity sha512-k+RF7WvI08PC8reEoXa/w2nSg5AUMTi+peBD9cmFc+0ixHfbs4QmxxkarVal1IkVkgxVuk9JSHhJURHiyHKAuQ== - d3-polygon@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-polygon/-/d3-polygon-3.0.1.tgz#0b45d3dd1c48a29c8e057e6135693ec80bf16398" integrity sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg== -d3-quadtree@1: - version "1.0.7" - resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-1.0.7.tgz#ca8b84df7bb53763fe3c2f24bd435137f4e53135" - integrity sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA== - "d3-quadtree@1 - 3", d3-quadtree@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-3.0.1.tgz#6dca3e8be2b393c9a9d514dabbd80a92deef1a4f" integrity sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw== -d3-random@1: - version "1.1.2" - resolved "https://registry.yarnpkg.com/d3-random/-/d3-random-1.1.2.tgz#2833be7c124360bf9e2d3fd4f33847cfe6cab291" - integrity sha512-6AK5BNpIFqP+cx/sreKzNjWbwZQCSUatxq+pPRmFIQaWuoD+NrbVWw7YWpHiXpCQ/NanKdtGDuB+VQcZDaEmYQ== - d3-random@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-random/-/d3-random-3.0.1.tgz#d4926378d333d9c0bfd1e6fa0194d30aebaa20f4" integrity sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ== -d3-scale-chromatic@1: - version "1.5.0" - resolved "https://registry.yarnpkg.com/d3-scale-chromatic/-/d3-scale-chromatic-1.5.0.tgz#54e333fc78212f439b14641fb55801dd81135a98" - integrity sha512-ACcL46DYImpRFMBcpk9HhtIyC7bTBR4fNOPxwVSl0LfulDAwyiHyPOTqcDG1+t5d4P9W7t/2NAuWu59aKko/cg== - dependencies: - d3-color "1" - d3-interpolate "1" - d3-scale-chromatic@3: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz#34c39da298b23c20e02f1a4b239bd0f22e7f1314" @@ -3545,18 +3398,6 @@ d3-scale-chromatic@3: d3-color "1 - 3" d3-interpolate "1 - 3" -d3-scale@2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-2.2.2.tgz#4e880e0b2745acaaddd3ede26a9e908a9e17b81f" - integrity sha512-LbeEvGgIb8UMcAa0EATLNX0lelKWGYDQiPdHj+gLblGVhGLyNbaCn3EvrJf0A3Y/uOOU5aD6MTh5ZFCdEwGiCw== - dependencies: - d3-array "^1.2.0" - d3-collection "1" - d3-format "1" - d3-interpolate "1" - d3-time "1" - d3-time-format "2" - d3-scale@4: version "4.0.2" resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-4.0.2.tgz#82b38e8e8ff7080764f8dcec77bd4be393689396" @@ -3568,23 +3409,11 @@ d3-scale@4: d3-time "2.1.1 - 3" d3-time-format "2 - 4" -d3-selection@1, d3-selection@^1.1.0: - version "1.4.2" - resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-1.4.2.tgz#dcaa49522c0dbf32d6c1858afc26b6094555bc5c" - integrity sha512-SJ0BqYihzOjDnnlfyeHT0e30k0K1+5sR3d5fNueCNeuhZTnGw4M4o8mqJchSwgKMXCNFo+e2VTChiSJ0vYtXkg== - "d3-selection@2 - 3", d3-selection@3: version "3.0.0" resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-3.0.0.tgz#c25338207efa72cc5b9bd1458a1a41901f1e1b31" integrity sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ== -d3-shape@1: - version "1.3.7" - resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.3.7.tgz#df63801be07bc986bc54f63789b4fe502992b5d7" - integrity sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw== - dependencies: - d3-path "1" - d3-shape@3: version "3.2.0" resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-3.2.0.tgz#a1a839cbd9ba45f28674c69d7f855bcf91dfc6a5" @@ -3592,13 +3421,6 @@ d3-shape@3: dependencies: d3-path "^3.1.0" -d3-time-format@2: - version "2.3.0" - resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-2.3.0.tgz#107bdc028667788a8924ba040faf1fbccd5a7850" - integrity sha512-guv6b2H37s2Uq/GefleCDtbe0XZAuy7Wa49VGkPVPMfLL9qObgBST3lEHJBMUp8S7NdLQAGIvr2KXk8Hc98iKQ== - dependencies: - d3-time "1" - "d3-time-format@2 - 4", d3-time-format@4: version "4.1.0" resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-4.1.0.tgz#7ab5257a5041d11ecb4fe70a5c7d16a195bb408a" @@ -3606,11 +3428,6 @@ d3-time-format@2: dependencies: d3-time "1 - 3" -d3-time@1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-1.1.0.tgz#b1e19d307dae9c900b7e5b25ffc5dcc249a8a0f1" - integrity sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA== - "d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@3: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-3.1.0.tgz#9310db56e992e3c0175e1ef385e545e48a9bb5c7" @@ -3618,28 +3435,11 @@ d3-time@1: dependencies: d3-array "2 - 3" -d3-timer@1: - version "1.0.10" - resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-1.0.10.tgz#dfe76b8a91748831b13b6d9c793ffbd508dd9de5" - integrity sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw== - "d3-timer@1 - 3", d3-timer@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-3.0.1.tgz#6284d2a2708285b1abb7e201eda4380af35e63b0" integrity sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA== -d3-transition@1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/d3-transition/-/d3-transition-1.3.2.tgz#a98ef2151be8d8600543434c1ca80140ae23b398" - integrity sha512-sc0gRU4PFqZ47lPVHloMn9tlPcv8jxgOQg+0zjhfZXMQuvppjG6YuwdMBE0TuqCZjeJkLecku/l9R0JPcRhaDA== - dependencies: - d3-color "1" - d3-dispatch "1" - d3-ease "1" - d3-interpolate "1" - d3-selection "^1.1.0" - d3-timer "1" - "d3-transition@2 - 3", d3-transition@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-transition/-/d3-transition-3.0.1.tgz#6869fdde1448868077fdd5989200cb61b2a1645f" @@ -3651,22 +3451,6 @@ d3-transition@1: d3-interpolate "1 - 3" d3-timer "1 - 3" -d3-voronoi@1: - version "1.1.4" - resolved "https://registry.yarnpkg.com/d3-voronoi/-/d3-voronoi-1.1.4.tgz#dd3c78d7653d2bb359284ae478645d95944c8297" - integrity sha512-dArJ32hchFsrQ8uMiTBLq256MpnZjeuBtdHpaDlYuQyjU0CVzCJl/BVW+SkszaAeH95D/8gxqAhgx0ouAWAfRg== - -d3-zoom@1: - version "1.8.3" - resolved "https://registry.yarnpkg.com/d3-zoom/-/d3-zoom-1.8.3.tgz#b6a3dbe738c7763121cd05b8a7795ffe17f4fc0a" - integrity sha512-VoLXTK4wvy1a0JpH2Il+F2CiOhVu7VRXWF5M/LroMIh3/zBAC3WAt7QoIvPibOavVo20hN6/37vwAsdBejLyKQ== - dependencies: - d3-dispatch "1" - d3-drag "1" - d3-interpolate "1" - d3-selection "1" - d3-transition "1" - d3-zoom@3: version "3.0.0" resolved "https://registry.yarnpkg.com/d3-zoom/-/d3-zoom-3.0.0.tgz#d13f4165c73217ffeaa54295cd6969b3e7aee8f3" @@ -3678,43 +3462,6 @@ d3-zoom@3: d3-selection "2 - 3" d3-transition "2 - 3" -d3@5.X: - version "5.16.0" - resolved "https://registry.yarnpkg.com/d3/-/d3-5.16.0.tgz#9c5e8d3b56403c79d4ed42fbd62f6113f199c877" - integrity sha512-4PL5hHaHwX4m7Zr1UapXW23apo6pexCgdetdJ5kTmADpG/7T9Gkxw0M0tf/pjoB63ezCCm0u5UaFYy2aMt0Mcw== - dependencies: - d3-array "1" - d3-axis "1" - d3-brush "1" - d3-chord "1" - d3-collection "1" - d3-color "1" - d3-contour "1" - d3-dispatch "1" - d3-drag "1" - d3-dsv "1" - d3-ease "1" - d3-fetch "1" - d3-force "1" - d3-format "1" - d3-geo "1" - d3-hierarchy "1" - d3-interpolate "1" - d3-path "1" - d3-polygon "1" - d3-quadtree "1" - d3-random "1" - d3-scale "2" - d3-scale-chromatic "1" - d3-selection "1" - d3-shape "1" - d3-time "1" - d3-time-format "2" - d3-timer "1" - d3-transition "1" - d3-voronoi "1" - d3-zoom "1" - d3@7.8.5: version "7.8.5" resolved "https://registry.yarnpkg.com/d3/-/d3-7.8.5.tgz#fde4b760d4486cdb6f0cc8e2cbff318af844635c" @@ -4687,11 +4434,6 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" -file-saver@^2.0.2: - version "2.0.5" - resolved "https://registry.yarnpkg.com/file-saver/-/file-saver-2.0.5.tgz#d61cfe2ce059f414d899e9dd6d4107ee25670c38" - integrity sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA== - file-uri-to-path@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" @@ -5366,7 +5108,7 @@ humanize-ms@^1.2.1: dependencies: ms "^2.0.0" -iconv-lite@0.4, iconv-lite@0.4.24: +iconv-lite@0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -9481,7 +9223,7 @@ thunky@^1.0.2: resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== -timing-functions@^2.0.1: +timing-functions@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/timing-functions/-/timing-functions-2.0.1.tgz#84145da4f68de95051ea96b57b9d9d76383d7140" integrity sha512-3sLJqeghQTekD7DmrH3Xpp6/PIJ7gj9ldqn7gfaoBiQGHSsCE17qnvoFLcNQTTv8lJzzKZyiBO6IBiilJVW8Qg== @@ -9851,7 +9593,7 @@ urix@^0.1.0: resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== -url-join@^4.0.1: +url-join@4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7" integrity sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==