diff --git a/package.json b/package.json index 3b477a43..e3630911 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "@azure/msal-browser": "^2.32.2", "@azure/msal-react": "^1.5.2", "@equinor/eds-core-react": "^0.34.0", - "@equinor/eds-data-grid-react": "^0.1.0-beta.2", + "@equinor/eds-data-grid-react": "0.3.0", "@equinor/eds-icons": "^0.19.1", "@equinor/eds-tokens": "^0.9.0", "@hookform/resolvers": "^3.3.2", diff --git a/src/api/generated/models/GetVariogramResultsDto.ts b/src/api/generated/models/GetVariogramResultsDto.ts index c588d6b4..62d33e7d 100644 --- a/src/api/generated/models/GetVariogramResultsDto.ts +++ b/src/api/generated/models/GetVariogramResultsDto.ts @@ -17,9 +17,10 @@ export type GetVariogramResultsDto = { rvertical: number; sigma: number; quality: number; - family?: string | null; + family: string; archelFilter?: string | null; indicator?: string | null; + customIndicator?: string | null; attribute?: string | null; box: Array; }; diff --git a/src/features/Results/CaseResult/CaseResultView/CaseResultView.tsx b/src/features/Results/CaseResult/CaseResultView/CaseResultView.tsx index 9375e90e..dd6464e3 100644 --- a/src/features/Results/CaseResult/CaseResultView/CaseResultView.tsx +++ b/src/features/Results/CaseResult/CaseResultView/CaseResultView.tsx @@ -8,7 +8,7 @@ import { GetVariogramResultsDto, } from '../../../../api/generated'; import { ChannelResult } from './ObjectCaseResult/ChannelResult'; -import { VariogramCaseResult } from './VariogramCaseResult/VariogramCaseResult'; +import { VariogramResultTable } from './VariogramCaseResult/VariogramResultTable/VariogramResultTable'; export const CaseResultView = ({ channelResultList, @@ -37,9 +37,9 @@ export const CaseResultView = ({ {variogramResultList && ( - + > )} {channelResultList && channelResultList.map((obj, index) => ( diff --git a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/ImageResult/ImageResult.styled.ts b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/ImageResult/ImageResult.styled.ts new file mode 100644 index 00000000..d93c9614 --- /dev/null +++ b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/ImageResult/ImageResult.styled.ts @@ -0,0 +1,18 @@ +import { Dialog } from '@equinor/eds-core-react'; +import styled from 'styled-components'; +import { spacings } from '../../../../../../tokens/spacings'; + +export const StyledDialog = styled(Dialog)` + width: fit-content; + min-width: 500px; + min-height: 500px; +`; + +export const Content = styled(Dialog.CustomContent)` + display: flex; + flex-direction: column; + + row-gap: ${spacings.SMALL}; +`; + +export { StyledDialog as Dialog }; diff --git a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/ImageResult/ImageResult.tsx b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/ImageResult/ImageResult.tsx index c1a71631..db552b8f 100644 --- a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/ImageResult/ImageResult.tsx +++ b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/ImageResult/ImageResult.tsx @@ -1,33 +1,47 @@ +import { Button, Dialog } from '@equinor/eds-core-react'; import { useQuery } from '@tanstack/react-query'; import { getVariogramImage } from '../../../../../../api/custom/getImageById'; -import { GetVariogramResultsVariogramResultFileDto } from '../../../../../../api/generated'; import { ImageView } from '../../../../../../components/ImageView/ImageView'; +import * as Styled from './ImageResult.styled'; export const ImageResult = ({ - resultFiels, + imageId, + open, + setOpen, }: { - resultFiels: GetVariogramResultsVariogramResultFileDto[]; + imageId: string; + open: boolean; + setOpen: React.Dispatch>; }) => { - const wantedResultFile = resultFiels.find((x) => - x.fileName.includes('variogram_slices_'), - ); - - const imageId = wantedResultFile - ? wantedResultFile.variogramResultFileId - : ''; - - const { data } = useQuery({ + const { data, isLoading } = useQuery({ queryKey: ['case-image', imageId], queryFn: () => getVariogramImage(imageId), + enabled: open, }); return ( <> - + + + Result image + + + {isLoading && <>Loading ...} + {data && ( + + )} + + + + + + ); }; diff --git a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramCaseResult.styled.tsx b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramCaseResult.styled.tsx deleted file mode 100644 index bb681a28..00000000 --- a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramCaseResult.styled.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import styled from 'styled-components'; -import { spacings } from '../../../../../tokens/spacings'; - -export const CaseResultCard = styled.div` - display: flex; - flex-direction: row; - column-gap: ${spacings.XXX_LARGE}; - - padding: ${spacings.X_LARGE}; - - > div { - width: 70vw; - } -`; - -export const CaseLeftDiv = styled.div` - display: flex; - flex-direction: column; - row-gap: ${spacings.LARGE}; - - > table { - width: 80%; - } -`; diff --git a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramCaseResult.tsx b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramCaseResult.tsx deleted file mode 100644 index 13d4c596..00000000 --- a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramCaseResult.tsx +++ /dev/null @@ -1,26 +0,0 @@ -import { GetVariogramResultsDto } from '../../../../../api/generated'; -import { CaseCardComponent } from '../../../../../components/CaseCardComponent/CaseCardComponent'; -import { ImageResult } from './ImageResult/ImageResult'; -import * as Styled from './VariogramCaseResult.styled'; -import { VariogramResultTable } from './VariogramResultTable'; - -export const VariogramCaseResult = ({ - resultList, -}: { - resultList: GetVariogramResultsDto[]; -}) => { - return ( - <> - {resultList.map((item) => ( - - - - - - - - - ))} - - ); -}; diff --git a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramResultTable.tsx b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramResultTable.tsx deleted file mode 100644 index 73f64c1c..00000000 --- a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramResultTable.tsx +++ /dev/null @@ -1,57 +0,0 @@ -import { Table } from '@equinor/eds-core-react'; -import { GetVariogramResultsDto } from '../../../../../api/generated'; -import { useFetchCases } from '../../../../../hooks/useFetchCases'; - -const NumberOfDecimals = 3; - -export const VariogramResultTable = ({ - data, -}: { - data: GetVariogramResultsDto; -}) => { - const roundResultString = (value?: number) => { - if (value) { - return value.toFixed(NumberOfDecimals); - } - }; - const caseList = useFetchCases(); - const resultCase = caseList.data?.data.filter( - (c) => c.computeCaseId === data.computeCaseId, - ); - - // console.log(data); - // console.log(resultCase && resultCase[0]); - - return ( - - - - Quality factor - {roundResultString(data.quality)} - - - Model area - {resultCase && resultCase[0].modelArea.name} - - - Compute method - - {resultCase && resultCase[0].computeMethod.name} - - - - Attribute - {data.attribute ? data.attribute : '--'} - - - Variogram model - {data.family} - - - Sigma - {roundResultString(data.sigma)} - - -
- ); -}; diff --git a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramResultTable/VariogramResultTable.styled.ts b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramResultTable/VariogramResultTable.styled.ts new file mode 100644 index 00000000..26ebc4ff --- /dev/null +++ b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramResultTable/VariogramResultTable.styled.ts @@ -0,0 +1,41 @@ +import { Dialog } from '@equinor/eds-core-react'; +import styled from 'styled-components'; +import { spacings } from '../../../../../../tokens/spacings'; + +export const Table = styled.div` + overflow-x: auto; + padding-bottom: ${spacings.MEDIUM}; + + > div { + > table { + min-width: 1150px; + } + > div { + margin-top: 2rem; + min-width: 1150px; + } + + @media (max-width: 1750px) { + > table { + min-width: 100% !important; + } + > div { + min-width: 100% !important; + } + } + } +`; + +export const StyledDialog = styled(Dialog)` + min-width: 500px; + min-height: 500px; +`; + +export const Content = styled(Dialog.CustomContent)` + display: flex; + flex-direction: column; + + row-gap: ${spacings.SMALL}; +`; + +export { StyledDialog as Dialog }; diff --git a/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramResultTable/VariogramResultTable.tsx b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramResultTable/VariogramResultTable.tsx new file mode 100644 index 00000000..70e5701a --- /dev/null +++ b/src/features/Results/CaseResult/CaseResultView/VariogramCaseResult/VariogramResultTable/VariogramResultTable.tsx @@ -0,0 +1,142 @@ +/* eslint-disable max-lines-per-function */ +import { Typography } from '@equinor/eds-core-react'; +import { EdsDataGrid } from '@equinor/eds-data-grid-react'; +import { useState } from 'react'; +import { GetVariogramResultsDto } from '../../../../../../api/generated'; +import { useFetchCases } from '../../../../../../hooks/useFetchCases'; +import { ImageResult } from '../ImageResult/ImageResult'; +import * as Styled from './VariogramResultTable.styled'; + +interface ResultObjectType { + computeCaseId: string; + method: string; + parameter: string; + archelFilter: string; + modelArea: string; + variogramModel: string; + quality: string | number; +} + +const NumberOfDecimals = 3; + +export const VariogramResultTable = ({ + resultList, +}: { + resultList: GetVariogramResultsDto[]; +}) => { + const [open, setOpen] = useState(false); + const [imageId, setImageId] = useState(''); + + const caseList = useFetchCases(); + const roundResultString = (value: number) => { + if (value) { + return value.toFixed(NumberOfDecimals); + } else return value; + }; + + const resultElementsList: ResultObjectType[] = resultList.map((e) => { + const method = caseList.data?.data.filter( + (c) => c.computeCaseId === e.computeCaseId, + )[0].computeMethod.name; + let parameter = ''; + if (method === 'Indicator') { + parameter = e.indicator ? e.indicator : ''; + } else if (method === 'Net-To-Gross') { + parameter = e.customIndicator ? e.customIndicator : ''; + } else if (method === 'ContiniousParameter') { + parameter = e.attribute ? e.attribute : ''; + } + + const modelArea = caseList.data?.data.filter( + (c) => c.computeCaseId === e.computeCaseId, + )[0].modelArea.name; + + const element: ResultObjectType = { + computeCaseId: e.computeCaseId, + method: method ? method : '', + parameter: parameter, + archelFilter: e.archelFilter ? e.archelFilter : '', + modelArea: modelArea ? modelArea : '', + variogramModel: e.family ? e.family : '', + quality: roundResultString(e.quality) + ? roundResultString(e.quality) + : e.quality, + }; + return element; + }); + + const handleImageDialog = (id: string) => { + const resultRow = resultList.find((e) => e.computeCaseId === id); + const resultFile = resultRow?.variogramResultFiles.find((x) => + x.fileName.includes('variogram_slices_'), + ); + + const imageId = resultFile ? resultFile.variogramResultFileId : ''; + setImageId(imageId); + setOpen(!open); + }; + + return ( + <> + + ( +
+ + handleImageDialog(row.original.computeCaseId) + } + link + > + {row.original.variogramModel} + +
+ ), + }, + { + accessorKey: 'quality', + header: 'Quality factor', + id: 'quality', + }, + ]} + /> +
+ + + ); +}; diff --git a/src/pages/ModelPages/Results/ObjectResult/ObjectResult.tsx b/src/pages/ModelPages/Results/ObjectResult/ObjectResult.tsx index 07d6e90c..c48fd94d 100644 --- a/src/pages/ModelPages/Results/ObjectResult/ObjectResult.tsx +++ b/src/pages/ModelPages/Results/ObjectResult/ObjectResult.tsx @@ -5,9 +5,11 @@ import { useFetchChannelResults } from '../../../../hooks/useFetchChannelResults export const ObjectResult = () => { const cases = useFetchCases(); - const { data } = useFetchChannelResults(); + const { data, isLoading } = useFetchChannelResults(); const objectResults = data?.data; + if (isLoading) return <>Loading ...; + return ( <> {objectResults !== undefined && objectResults.length > 0 ? ( diff --git a/src/pages/ModelPages/Results/VariogramResults/VariogramResults.tsx b/src/pages/ModelPages/Results/VariogramResults/VariogramResults.tsx index 66ae27f9..07ea5b17 100644 --- a/src/pages/ModelPages/Results/VariogramResults/VariogramResults.tsx +++ b/src/pages/ModelPages/Results/VariogramResults/VariogramResults.tsx @@ -4,10 +4,12 @@ import { useFetchCases } from '../../../../hooks/useFetchCases'; import { useFetchVariogramResults } from '../../../../hooks/useFetchVariogramResults'; export const VariogramResults = () => { - const { data } = useFetchVariogramResults(); + const { data, isLoading } = useFetchVariogramResults(); const cases = useFetchCases(); const variogramResults = data?.data; + if (isLoading) return <>Loading ...; + return ( <> {variogramResults !== undefined && variogramResults?.length > 0 ? ( diff --git a/yarn.lock b/yarn.lock index 6b11f90b..f912ab64 100644 --- a/yarn.lock +++ b/yarn.lock @@ -74,7 +74,7 @@ resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz" integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ== -"@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.16.0", "@babel/core@^7.7.2", "@babel/core@^7.8.0": +"@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.12.3", "@babel/core@^7.16.0", "@babel/core@^7.7.2", "@babel/core@^7.8.0": version "7.22.19" resolved "https://registry.npmjs.org/@babel/core/-/core-7.22.19.tgz" integrity sha512-Q8Yj5X4LHVYTbLCKVz0//2D2aDmHF4xzCdEttYvKOnWvErGsa6geHXD6w46x64n5tP69VfeH+IfSrdyH3MLhwA== @@ -1133,7 +1133,7 @@ resolved "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz" integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== -"@babel/runtime@^7.11.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.16.3", "@babel/runtime@^7.20.7", "@babel/runtime@^7.22.15", "@babel/runtime@^7.22.5", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.11.2", "@babel/runtime@^7.12.5", "@babel/runtime@^7.16.3", "@babel/runtime@^7.20.7", "@babel/runtime@^7.22.15", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": version "7.22.15" resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.15.tgz" integrity sha512-T0O+aa+4w0u06iNmapipJXMV4HoUir03hpx3/YqXXhu9xim3w+dVphjFWl1OH8NbZHw5Lbm9k45drDkgq2VNNA== @@ -1147,6 +1147,13 @@ dependencies: regenerator-runtime "^0.14.0" +"@babel/runtime@^7.23.8": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.9.tgz#47791a15e4603bb5f905bc0753801cf21d6345f7" + integrity sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw== + dependencies: + regenerator-runtime "^0.14.0" + "@babel/template@^7.22.15", "@babel/template@^7.22.5", "@babel/template@^7.3.3": version "7.22.15" resolved "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz" @@ -1319,19 +1326,6 @@ resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz" integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== -"@equinor/eds-core-react@^0.32.2": - version "0.32.4" - resolved "https://registry.npmjs.org/@equinor/eds-core-react/-/eds-core-react-0.32.4.tgz" - integrity sha512-UTUE8TImQkVxl3srR0dOkPHTkLtmqsp+lcZz509sl3WRaGFlBseBiPgWrCTdgfT4EtAKRimmXhqsrAHllhGgJA== - dependencies: - "@babel/runtime" "^7.22.5" - "@equinor/eds-icons" "^0.19.3" - "@equinor/eds-tokens" "0.9.2" - "@equinor/eds-utils" "0.8.1" - "@floating-ui/react" "^0.25.1" - "@tanstack/react-virtual" "3.0.0-beta.54" - downshift "^8.1.0" - "@equinor/eds-core-react@^0.34.0": version "0.34.0" resolved "https://registry.yarnpkg.com/@equinor/eds-core-react/-/eds-core-react-0.34.0.tgz#ca965022851bf6d7565bb210d063a5368774b692" @@ -1345,37 +1339,32 @@ "@tanstack/react-virtual" "3.0.0-beta.54" downshift "^8.2.3" -"@equinor/eds-data-grid-react@^0.1.0-beta.2": - version "0.1.0-beta.2" - resolved "https://registry.npmjs.org/@equinor/eds-data-grid-react/-/eds-data-grid-react-0.1.0-beta.2.tgz" - integrity sha512-nxXXniq9v3XumvS1lOhDTnofHJV7T0CEjQ+SAw/zL3KM9Nfyy9izUPkK0oKF2k4h/DiY2j4g+/2y83MmoHbsAQ== +"@equinor/eds-data-grid-react@0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@equinor/eds-data-grid-react/-/eds-data-grid-react-0.3.0.tgz#076140aa18b80f7d8945fb560480aff4139440ad" + integrity sha512-y9V/+MwHUqx+u/ugFN0qM8SPN+RoEIwbT6pwaGob9xHusx7ZurvuBSVroWvCc7eSURhae2mng6S8N9OYurtPiA== dependencies: - "@equinor/eds-core-react" "^0.32.2" - "@equinor/eds-icons" "^0.19.2" + "@equinor/eds-icons" "^0.21.0" "@equinor/eds-tokens" "0.9.2" - "@equinor/eds-utils" "^0.8.0" - "@tanstack/react-table" "^8.8.5" - "@tanstack/react-virtual" "^3.0.0-beta.54" + "@equinor/eds-utils" "^0.8.4" + "@tanstack/react-table" "^8.10.7" + "@tanstack/react-virtual" "^3.0.4" -"@equinor/eds-icons@^0.19.1", "@equinor/eds-icons@^0.19.2", "@equinor/eds-icons@^0.19.3": +"@equinor/eds-icons@^0.19.1", "@equinor/eds-icons@^0.19.3": version "0.19.3" resolved "https://registry.npmjs.org/@equinor/eds-icons/-/eds-icons-0.19.3.tgz" integrity sha512-Sh0W01PrwXPCi8/p9YKj0qKNtRU9R/xYJORinIzsNNRllpiu9wvuGAsQNE0gQaDDnrprsiRBH3+MdMSRXVs3Wg== +"@equinor/eds-icons@^0.21.0": + version "0.21.0" + resolved "https://registry.yarnpkg.com/@equinor/eds-icons/-/eds-icons-0.21.0.tgz#9adb994d2cd74011474a6d354458ffedcf7afc2f" + integrity sha512-k2keACHou9h9D5QLfSBeojTApqbPCkHNBWplUA/B9FQv8FMCMSBbjJAo2L/3yAExMylQN9LdwKo81T2tijRXoA== + "@equinor/eds-tokens@0.9.2", "@equinor/eds-tokens@^0.9.0": version "0.9.2" resolved "https://registry.npmjs.org/@equinor/eds-tokens/-/eds-tokens-0.9.2.tgz" integrity sha512-pDIFei0vsfN3GN12NKWqxskAkYBQd6+Dzjga2liuY81LfnlJs5g9NblamU9WY5w5YdVE5Z8FNjsMKDLs2JIWcw== -"@equinor/eds-utils@0.8.1", "@equinor/eds-utils@^0.8.0": - version "0.8.1" - resolved "https://registry.npmjs.org/@equinor/eds-utils/-/eds-utils-0.8.1.tgz" - integrity sha512-MqKqHhfOxGxbZPhHlZqiR58ei11CQ+UGJ/qEa7wC5pA/c+W9kyu7OveiK9OVvaswRiOmLaahnhSEC9JTFa7ICw== - dependencies: - "@babel/runtime" "^7.22.5" - "@equinor/eds-tokens" "0.9.2" - babel-jest "^29.5.0" - "@equinor/eds-utils@0.8.3": version "0.8.3" resolved "https://registry.yarnpkg.com/@equinor/eds-utils/-/eds-utils-0.8.3.tgz#c13db2f6a738a6d21206acd8ddb06a77c0cbf841" @@ -1384,6 +1373,14 @@ "@babel/runtime" "^7.23.2" "@equinor/eds-tokens" "0.9.2" +"@equinor/eds-utils@^0.8.4": + version "0.8.4" + resolved "https://registry.yarnpkg.com/@equinor/eds-utils/-/eds-utils-0.8.4.tgz#f2c33c4a04784aaff2a2b42f52b247312e8cd1dd" + integrity sha512-njvqXd3Hzfy5vkEqnx+uEBAu00vnG/5R+gDgWCReVDjjUoHdQNcrqfjBLsGF2UungtO0LbYV8YuBP+9l4V7ywQ== + dependencies: + "@babel/runtime" "^7.23.8" + "@equinor/eds-tokens" "0.9.2" + "@eslint-community/eslint-utils@^4.2.0": version "4.4.0" resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz" @@ -1431,13 +1428,6 @@ "@floating-ui/core" "^1.4.2" "@floating-ui/utils" "^0.1.3" -"@floating-ui/react-dom@^2.0.2": - version "2.0.2" - resolved "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.2.tgz" - integrity sha512-5qhlDvjaLmAst/rKb3VdlCinwTF4EYMiVxuuc/HVUjs46W0zgtbMmAZ1UTsDrRTxRmUEzl92mOtWbeeXL26lSQ== - dependencies: - "@floating-ui/dom" "^1.5.1" - "@floating-ui/react-dom@^2.0.3": version "2.0.4" resolved "https://registry.yarnpkg.com/@floating-ui/react-dom/-/react-dom-2.0.4.tgz#b076fafbdfeb881e1d86ae748b7ff95150e9f3ec" @@ -1445,15 +1435,6 @@ dependencies: "@floating-ui/dom" "^1.5.1" -"@floating-ui/react@^0.25.1": - version "0.25.4" - resolved "https://registry.npmjs.org/@floating-ui/react/-/react-0.25.4.tgz" - integrity sha512-lWRQ/UiTvSIBxohn0/2HFHEmnmOVRjl7j6XcRJuLH0ls6f/9AyHMWVzkAJFuwx0n9gaEeCmg9VccCSCJzbEJig== - dependencies: - "@floating-ui/react-dom" "^2.0.2" - "@floating-ui/utils" "^0.1.1" - tabbable "^6.0.1" - "@floating-ui/react@^0.26.2": version "0.26.3" resolved "https://registry.yarnpkg.com/@floating-ui/react/-/react-0.26.3.tgz#1ec435f35e37d5e34577ee89c7abb1eedb3a0c5d" @@ -1463,7 +1444,7 @@ "@floating-ui/utils" "^0.1.5" tabbable "^6.0.1" -"@floating-ui/utils@^0.1.1", "@floating-ui/utils@^0.1.3": +"@floating-ui/utils@^0.1.3": version "0.1.4" resolved "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.4.tgz" integrity sha512-qprfWkn82Iw821mcKofJ5Pk9wgioHicxcQMxx+5zt5GSKoqdWvgG5AxVmpmUUjzTLPVSH5auBrhI93Deayn/DA== @@ -1714,27 +1695,6 @@ source-map "^0.6.1" write-file-atomic "^3.0.0" -"@jest/transform@^29.7.0": - version "29.7.0" - resolved "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz" - integrity sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw== - dependencies: - "@babel/core" "^7.11.6" - "@jest/types" "^29.6.3" - "@jridgewell/trace-mapping" "^0.3.18" - babel-plugin-istanbul "^6.1.1" - chalk "^4.0.0" - convert-source-map "^2.0.0" - fast-json-stable-stringify "^2.1.0" - graceful-fs "^4.2.9" - jest-haste-map "^29.7.0" - jest-regex-util "^29.6.3" - jest-util "^29.7.0" - micromatch "^4.0.4" - pirates "^4.0.4" - slash "^3.0.0" - write-file-atomic "^4.0.2" - "@jest/types@^27.5.1": version "27.5.1" resolved "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz" @@ -1802,7 +1762,7 @@ resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== -"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.9": +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": version "0.3.19" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz" integrity sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw== @@ -2081,7 +2041,14 @@ "@tanstack/query-core" "4.36.1" use-sync-external-store "^1.2.0" -"@tanstack/react-table@^8.8.5", "@tanstack/react-table@^8.9.1": +"@tanstack/react-table@^8.10.7": + version "8.12.0" + resolved "https://registry.yarnpkg.com/@tanstack/react-table/-/react-table-8.12.0.tgz#069210657f9f6c6c17584cc955a8ebb25b8642f8" + integrity sha512-LlEQ1Gpz4bfpiET+qmle4BhKDgKN3Y/sssc+O/wLqX8HRtjV+nhusYbllZlutZfMR8oeef83whKTj/VhaV8EeA== + dependencies: + "@tanstack/table-core" "8.12.0" + +"@tanstack/react-table@^8.9.1": version "8.9.10" resolved "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.9.10.tgz" integrity sha512-iwlZz4pjNHsYbfxYhJrpXz1vY3d2R2LFrVhCIVNYMnEsnnMfBXDuYrlFTtnf+NQy+rLCf+YGeoq84B87II3ETA== @@ -2095,28 +2062,33 @@ dependencies: "@tanstack/virtual-core" "3.0.0-beta.54" -"@tanstack/react-virtual@^3.0.0-beta.54": - version "3.0.0-beta.60" - resolved "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.0-beta.60.tgz" - integrity sha512-F0wL9+byp7lf/tH6U5LW0ZjBqs+hrMXJrj5xcIGcklI0pggvjzMNW9DdIBcyltPNr6hmHQ0wt8FDGe1n1ZAThA== +"@tanstack/react-virtual@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@tanstack/react-virtual/-/react-virtual-3.0.4.tgz#32a90aa6faa2eeebb5f4ca561d26bae9f3435e45" + integrity sha512-tiqKW/e2MJVCr7/pRUXulpkyxllaOclkHNfhKTo4pmHjJIqnhMfwIjc1Q1R0Un3PI3kQywywu/791c8z9u0qeA== dependencies: - "@tanstack/virtual-core" "3.0.0-beta.60" + "@tanstack/virtual-core" "3.0.0" + +"@tanstack/table-core@8.12.0": + version "8.12.0" + resolved "https://registry.yarnpkg.com/@tanstack/table-core/-/table-core-8.12.0.tgz#ada34e17ca761fed99353b48e8cb7deacc971025" + integrity sha512-cq/ylWVrOwixmwNXQjgZaQw1Izf7+nPxjczum7paAnMtwPg1S2qRAJU+Jb8rEBUWm69voC/zcChmePlk2hc6ug== "@tanstack/table-core@8.9.10": version "8.9.10" resolved "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.9.10.tgz" integrity sha512-02JhSZWl60ZlldOlUuCNiTvmV/R+ufCTVDB3spNjjtfZCryQsmvvQsbOK2UOgjHHtZKZORPJcjYXTua6G04qiw== +"@tanstack/virtual-core@3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@tanstack/virtual-core/-/virtual-core-3.0.0.tgz#637bee36f0cabf96a1d436887c90f138a7e9378b" + integrity sha512-SYXOBTjJb05rXa2vl55TTwO40A6wKu0R5i1qQwhJYNDIqaIGF7D0HsLw+pJAyi2OvntlEIVusx3xtbbgSUi6zg== + "@tanstack/virtual-core@3.0.0-beta.54": version "3.0.0-beta.54" resolved "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.0.0-beta.54.tgz" integrity sha512-jtkwqdP2rY2iCCDVAFuaNBH3fiEi29aTn2RhtIoky8DTTiCdc48plpHHreLwmv1PICJ4AJUUESaq3xa8fZH8+g== -"@tanstack/virtual-core@3.0.0-beta.60": - version "3.0.0-beta.60" - resolved "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.0.0-beta.60.tgz" - integrity sha512-QlCdhsV1+JIf0c0U6ge6SQmpwsyAT0oQaOSZk50AtEeAyQl9tQrd6qCHAslxQpgphrfe945abvKG8uYvw3hIGA== - "@testing-library/dom@^8.5.0": version "8.20.1" resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.1.tgz" @@ -2286,7 +2258,7 @@ "@types/qs" "*" "@types/serve-static" "*" -"@types/graceful-fs@^4.1.2", "@types/graceful-fs@^4.1.3": +"@types/graceful-fs@^4.1.2": version "4.1.6" resolved "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz" integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw== @@ -3152,19 +3124,6 @@ babel-jest@^27.4.2, babel-jest@^27.5.1: graceful-fs "^4.2.9" slash "^3.0.0" -babel-jest@^29.5.0: - version "29.7.0" - resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz" - integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg== - dependencies: - "@jest/transform" "^29.7.0" - "@types/babel__core" "^7.1.14" - babel-plugin-istanbul "^6.1.1" - babel-preset-jest "^29.6.3" - chalk "^4.0.0" - graceful-fs "^4.2.9" - slash "^3.0.0" - babel-loader@^8.2.3: version "8.3.0" resolved "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz" @@ -3196,16 +3155,6 @@ babel-plugin-jest-hoist@^27.5.1: "@types/babel__core" "^7.0.0" "@types/babel__traverse" "^7.0.6" -babel-plugin-jest-hoist@^29.6.3: - version "29.6.3" - resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz" - integrity sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg== - dependencies: - "@babel/template" "^7.3.3" - "@babel/types" "^7.3.3" - "@types/babel__core" "^7.1.14" - "@types/babel__traverse" "^7.0.6" - babel-plugin-macros@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz" @@ -3286,14 +3235,6 @@ babel-preset-jest@^27.5.1: babel-plugin-jest-hoist "^27.5.1" babel-preset-current-node-syntax "^1.0.0" -babel-preset-jest@^29.6.3: - version "29.6.3" - resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz" - integrity sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA== - dependencies: - babel-plugin-jest-hoist "^29.6.3" - babel-preset-current-node-syntax "^1.0.0" - babel-preset-react-app@^10.0.1: version "10.0.1" resolved "https://registry.npmjs.org/babel-preset-react-app/-/babel-preset-react-app-10.0.1.tgz" @@ -3785,11 +3726,6 @@ convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== -convert-source-map@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz" - integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== - cookie-signature@1.0.6: version "1.0.6" resolved "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz" @@ -4367,17 +4303,6 @@ dotenv@^10.0.0: resolved "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz" integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== -downshift@^8.1.0: - version "8.2.1" - resolved "https://registry.npmjs.org/downshift/-/downshift-8.2.1.tgz" - integrity sha512-mHQUQMWCliXkoWvhxlRyEyKcdlbs8rZjZ+nSqGi8dKIv26gWtbQ8yVTPuYSHT7X8ff+FkEcskT9ktLuNKNoEHA== - dependencies: - "@babel/runtime" "^7.22.15" - compute-scroll-into-view "^3.0.3" - prop-types "^15.8.1" - react-is "^18.2.0" - tslib "^2.6.2" - downshift@^8.2.3: version "8.2.3" resolved "https://registry.yarnpkg.com/downshift/-/downshift-8.2.3.tgz#27106a5d9f408a6f6f9350ca465801d07e52db87" @@ -6313,25 +6238,6 @@ jest-haste-map@^27.5.1: optionalDependencies: fsevents "^2.3.2" -jest-haste-map@^29.7.0: - version "29.7.0" - resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz" - integrity sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA== - dependencies: - "@jest/types" "^29.6.3" - "@types/graceful-fs" "^4.1.3" - "@types/node" "*" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.9" - jest-regex-util "^29.6.3" - jest-util "^29.7.0" - jest-worker "^29.7.0" - micromatch "^4.0.4" - walker "^1.0.8" - optionalDependencies: - fsevents "^2.3.2" - jest-jasmine2@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz" @@ -6451,11 +6357,6 @@ jest-regex-util@^28.0.0: resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-28.0.2.tgz" integrity sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw== -jest-regex-util@^29.6.3: - version "29.6.3" - resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz" - integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg== - jest-resolve-dependencies@^27.5.1: version "27.5.1" resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz" @@ -6687,16 +6588,6 @@ jest-worker@^28.0.2: merge-stream "^2.0.0" supports-color "^8.0.0" -jest-worker@^29.7.0: - version "29.7.0" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz" - integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw== - dependencies: - "@types/node" "*" - jest-util "^29.7.0" - merge-stream "^2.0.0" - supports-color "^8.0.0" - jest@^27.4.3: version "27.5.1" resolved "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz" @@ -10026,7 +9917,7 @@ w3c-xmlserializer@^2.0.0: dependencies: xml-name-validator "^3.0.0" -walker@^1.0.7, walker@^1.0.8: +walker@^1.0.7: version "1.0.8" resolved "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz" integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== @@ -10499,14 +10390,6 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" -write-file-atomic@^4.0.2: - version "4.0.2" - resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz" - integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== - dependencies: - imurmurhash "^0.1.4" - signal-exit "^3.0.7" - ws@^7.4.6: version "7.5.9" resolved "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz"