From 279e36ef843de3b8407bb24adfb8d8f5bb66b02a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 5 Apr 2025 18:06:56 +0200 Subject: [PATCH 1/4] chore(deps-dev): bump vite from 6.2.4 to 6.2.5 in /src/Serilog.Ui.Web (#172) Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.4 to 6.2.5. - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v6.2.5/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v6.2.5/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-version: 6.2.5 dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/Serilog.Ui.Web/package.json | 2 +- src/Serilog.Ui.Web/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Serilog.Ui.Web/package.json b/src/Serilog.Ui.Web/package.json index 8eed4c9b..a30766f0 100644 --- a/src/Serilog.Ui.Web/package.json +++ b/src/Serilog.Ui.Web/package.json @@ -65,7 +65,7 @@ "testing-library-selector": "^0.3.1", "typescript": "^5.8.2", "typescript-eslint": "^8.26.1", - "vite": "^6.2.4", + "vite": "^6.2.5", "vite-plugin-checker": "^0.9.0", "vite-plugin-mkcert": "^1.17.8", "vite-tsconfig-paths": "^5.1.4", diff --git a/src/Serilog.Ui.Web/yarn.lock b/src/Serilog.Ui.Web/yarn.lock index b5323637..2f412b02 100644 --- a/src/Serilog.Ui.Web/yarn.lock +++ b/src/Serilog.Ui.Web/yarn.lock @@ -4634,10 +4634,10 @@ vite-tsconfig-paths@^5.1.4: globrex "^0.1.2" tsconfck "^3.0.3" -"vite@^5.0.0 || ^6.0.0", vite@^6.2.4: - version "6.2.4" - resolved "https://registry.yarnpkg.com/vite/-/vite-6.2.4.tgz#05809de3f918fded87f73a838761995a4d66a680" - integrity sha512-veHMSew8CcRzhL5o8ONjy8gkfmFJAd5Ac16oxBUjlwgX3Gq2Wqr+qNC3TjPIpy7TPV/KporLga5GT9HqdrCizw== +"vite@^5.0.0 || ^6.0.0", vite@^6.2.5: + version "6.2.5" + resolved "https://registry.yarnpkg.com/vite/-/vite-6.2.5.tgz#d093b5fe8eb96e594761584a966ab13f24457820" + integrity sha512-j023J/hCAa4pRIUH6J9HemwYfjB5llR2Ps0CWeikOtdR8+pAURAk0DoJC5/mm9kd+UgdnIy7d6HE4EAvlYhPhA== dependencies: esbuild "^0.25.0" postcss "^8.5.3" From 87d8b975417c645810dfdf7c80b660348bee1ee8 Mon Sep 17 00:00:00 2001 From: Matteo Gregoricchio <32459930+followynne@users.noreply.github.com> Date: Wed, 16 Apr 2025 19:07:10 +0200 Subject: [PATCH 2/4] feat #162: live feed button (#173) --- src/Serilog.Ui.Web/.prettierrc.yml | 2 +- src/Serilog.Ui.Web/package.json | 40 +- .../src/__tests__/_setup/mocks/fetch.ts | 6 +- .../components/Refresh/RefreshButton.spec.tsx | 81 +++ .../components/ShellStructure/Header.spec.tsx | 6 +- .../__tests__/hooks/useLiveRefresh.spec.ts | 76 +++ .../Authorization/AuthorizeButton.tsx | 3 +- .../app/components/Refresh/RefreshButton.tsx | 61 ++ .../app/components/ShellStructure/Header.tsx | 3 + .../src/app/hooks/useLiveRefresh.ts | 54 ++ .../src/app/hooks/useQueryLogs.ts | 56 +- .../src/style/search.module.css | 29 + src/Serilog.Ui.Web/yarn.lock | 583 +++++++++--------- 13 files changed, 662 insertions(+), 338 deletions(-) create mode 100644 src/Serilog.Ui.Web/src/__tests__/components/Refresh/RefreshButton.spec.tsx create mode 100644 src/Serilog.Ui.Web/src/__tests__/hooks/useLiveRefresh.spec.ts create mode 100644 src/Serilog.Ui.Web/src/app/components/Refresh/RefreshButton.tsx create mode 100644 src/Serilog.Ui.Web/src/app/hooks/useLiveRefresh.ts diff --git a/src/Serilog.Ui.Web/.prettierrc.yml b/src/Serilog.Ui.Web/.prettierrc.yml index 04c1b775..0a477d60 100644 --- a/src/Serilog.Ui.Web/.prettierrc.yml +++ b/src/Serilog.Ui.Web/.prettierrc.yml @@ -6,4 +6,4 @@ trailingComma: all printWidth: 90 plugins: - - "prettier-plugin-organize-imports" \ No newline at end of file + - 'prettier-plugin-organize-imports' diff --git a/src/Serilog.Ui.Web/package.json b/src/Serilog.Ui.Web/package.json index a30766f0..c732dd2c 100644 --- a/src/Serilog.Ui.Web/package.json +++ b/src/Serilog.Ui.Web/package.json @@ -1,5 +1,5 @@ { - "version": "3.1.0", + "version": "3.2.0", "name": "serilog-ui", "private": true, "type": "module", @@ -15,41 +15,41 @@ }, "dependencies": { "@fontsource/mononoki": "^5.2.5", - "@mantine/core": "^7.17.2", - "@mantine/dates": "^7.17.2", - "@mantine/hooks": "^7.17.2", - "@mantine/notifications": "^7.17.2", + "@mantine/core": "^7.17.3", + "@mantine/dates": "^7.17.3", + "@mantine/hooks": "^7.17.3", + "@mantine/notifications": "^7.17.3", "@tabler/icons-react": "^3.31.0", - "@tanstack/react-query": "^5.68.0", + "@tanstack/react-query": "^5.71.10", "dayjs": "^1.11.13", "jose": "^6.0.10", "react": "^18.3.1", "react-dom": "^18.3.1", - "react-hook-form": "^7.54.2", - "react-router": "^7.3.0", - "xml-formatter": "^3.6.4" + "react-hook-form": "^7.55.0", + "react-router": "^7.5.0", + "xml-formatter": "^3.6.5" }, "devDependencies": { "@faker-js/faker": "^9.6.0", "@testing-library/dom": "^10.4.0", "@testing-library/jest-dom": "^6.6.3", - "@testing-library/react": "^16.2.0", + "@testing-library/react": "^16.3.0", "@testing-library/user-event": "^14.6.1", - "@types/node": "^22.13.10", + "@types/node": "^22.14.0", "@types/react": "^18.3.11", "@types/react-dom": "^18.3.0", - "@vitejs/plugin-react-swc": "^3.8.0", - "@vitest/coverage-istanbul": "^3.0.8", - "@vitest/ui": "^3.0.8", + "@vitejs/plugin-react-swc": "^3.8.1", + "@vitest/coverage-istanbul": "^3.1.1", + "@vitest/ui": "^3.1.1", "@welldone-software/why-did-you-render": "^10.0.1", "eslint": "^8.57.0", "eslint-config-prettier": "^10.1.1", "eslint-plugin-html": "^8.1.2", "eslint-plugin-import": "^2.31.0", "eslint-plugin-jsx-a11y": "^6.10.2", - "eslint-plugin-prettier": "^5.2.3", + "eslint-plugin-prettier": "^5.2.6", "eslint-plugin-promise": "^7.2.1", - "eslint-plugin-react": "^7.37.4", + "eslint-plugin-react": "^7.37.5", "eslint-plugin-react-hooks": "^5.2.0", "eslint-plugin-testing-library": "^7.1.1", "eslint-plugin-vitest": "^0.5.4", @@ -63,13 +63,13 @@ "prettier-plugin-organize-imports": "^4.1.0", "shiki": "^3.2.1", "testing-library-selector": "^0.3.1", - "typescript": "^5.8.2", - "typescript-eslint": "^8.26.1", + "typescript": "^5.8.3", + "typescript-eslint": "^8.29.0", "vite": "^6.2.5", - "vite-plugin-checker": "^0.9.0", + "vite-plugin-checker": "^0.9.1", "vite-plugin-mkcert": "^1.17.8", "vite-tsconfig-paths": "^5.1.4", - "vitest": "^3.0.8", + "vitest": "^3.1.1", "vitest-sonar-reporter": "^2.0.0" }, "engines": { diff --git a/src/Serilog.Ui.Web/src/__tests__/_setup/mocks/fetch.ts b/src/Serilog.Ui.Web/src/__tests__/_setup/mocks/fetch.ts index 27d0cd9e..36c8c87a 100644 --- a/src/Serilog.Ui.Web/src/__tests__/_setup/mocks/fetch.ts +++ b/src/Serilog.Ui.Web/src/__tests__/_setup/mocks/fetch.ts @@ -1,5 +1,6 @@ import dayjs from 'dayjs'; import { http, HttpResponse } from 'msw'; +import { defaultAuthType } from '../../../app/hooks/useSerilogUiProps.tsx'; import { AuthType, EncodedSeriLogObject, @@ -9,7 +10,6 @@ import { SortPropertyOptions, } from '../../../types/types'; import { dbKeysMock, fakeLogs, fakeLogs2ndTable, fakeLogs3rdTable } from './samples'; -import { defaultAuthType } from '../../../app/hooks/useSerilogUiProps.tsx'; export const developmentListenersHost = ['https://localhost:3001']; @@ -51,7 +51,9 @@ export const handlers = developmentListenersHost.flatMap((dlh) => [ http.get(`${dlh}/api/keys`, ({ request }) => { const auth = request.headers.get('authorization'); - return defaultAuthType !== AuthType.Custom && !auth ? HttpResponse.error() : HttpResponse.json(dbKeysMock); + return defaultAuthType !== AuthType.Custom && !auth + ? HttpResponse.error() + : HttpResponse.json(dbKeysMock); }), ]); diff --git a/src/Serilog.Ui.Web/src/__tests__/components/Refresh/RefreshButton.spec.tsx b/src/Serilog.Ui.Web/src/__tests__/components/Refresh/RefreshButton.spec.tsx new file mode 100644 index 00000000..10c41b76 --- /dev/null +++ b/src/Serilog.Ui.Web/src/__tests__/components/Refresh/RefreshButton.spec.tsx @@ -0,0 +1,81 @@ +import { act, render, screen, userEvent } from '__tests__/_setup/testing-utils'; +import { RefreshButton } from 'app/components/Refresh/RefreshButton'; +import { liveRefreshOptions } from 'app/hooks/useLiveRefresh'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; + +vi.mock('react-hook-form', async () => { + const actual = + await vi.importActual('react-hook-form'); + + return { ...actual, useWatch: () => 'page' }; +}); + +const headers = () => { + const head = new Headers(); + head.append('authorization', 'test'); + return head; +}; +vi.mock('../../../app/hooks/useAuthProperties', () => ({ + useAuthProperties: () => ({ + fetchInfo: { + headers: { headers: headers() }, + routePrefix: '', + }, + isHeaderReady: true, + }), +})); + +describe('RefreshButton', () => { + beforeEach(() => { + vi.useFakeTimers({ shouldAdvanceTime: true }); + }); + afterEach(vi.useRealTimers); + + it('renders', async () => { + render(); + + const durationSelector = screen.getByLabelText('refresh-duration-selector'); + expect(durationSelector).toBeInTheDocument(); + + await userEvent.click(durationSelector); + await act(vi.advanceTimersToNextTimerAsync); + + const times = liveRefreshOptions.map((lro) => lro.value); + times.forEach((time) => { + expect(screen.getByLabelText('refresh-duration-' + time)).toBeInTheDocument(); + }); + }); + + it('runs live feed activies with refetch sample', async () => { + const spy = vi.spyOn(global, 'fetch'); + render(); + + const durationSelector = screen.getByLabelText('refresh-duration-selector'); + await userEvent.click(durationSelector); + await act(vi.advanceTimersToNextTimerAsync); + + const sampleOpt = liveRefreshOptions[5]; + const timeSelector = screen.getByLabelText('refresh-duration-' + sampleOpt.value); + await userEvent.click(timeSelector); + await act(vi.advanceTimersToNextTimerAsync); + + expect(spy).toHaveBeenCalledOnce(); + + await act(async () => { + await vi.advanceTimersByTimeAsync(1000 * 300 + 1); + }); + expect(spy).toHaveBeenCalledTimes(2); + + const durationStopper = screen.getByLabelText('refresh-duration-cancel-button'); + expect(screen.queryByLabelText('refresh-duration-selector')).not.toBeInTheDocument(); + expect(durationStopper).toBeInTheDocument(); + + await userEvent.click(durationStopper); + await act(vi.advanceTimersToNextTimerAsync); + + expect( + screen.queryByLabelText('refresh-duration-cancel-button'), + ).not.toBeInTheDocument(); + expect(screen.getByLabelText('refresh-duration-selector')).toBeInTheDocument(); + }); +}); diff --git a/src/Serilog.Ui.Web/src/__tests__/components/ShellStructure/Header.spec.tsx b/src/Serilog.Ui.Web/src/__tests__/components/ShellStructure/Header.spec.tsx index adcdf6b5..5030eed1 100644 --- a/src/Serilog.Ui.Web/src/__tests__/components/ShellStructure/Header.spec.tsx +++ b/src/Serilog.Ui.Web/src/__tests__/components/ShellStructure/Header.spec.tsx @@ -23,8 +23,8 @@ describe('Header', () => { await waitFor(() => { expect(screen.getByRole('button', { name: 'Filter' })).toBeInTheDocument(); }); - await waitFor(() => { - expect(screen.getByText('Serilog UI')).toBeInTheDocument(); - }); + + expect(screen.getByText('Serilog UI')).toBeInTheDocument(); + expect(screen.getByLabelText('refresh-duration-selector')).toBeInTheDocument(); }); }); diff --git a/src/Serilog.Ui.Web/src/__tests__/hooks/useLiveRefresh.spec.ts b/src/Serilog.Ui.Web/src/__tests__/hooks/useLiveRefresh.spec.ts new file mode 100644 index 00000000..719ae1aa --- /dev/null +++ b/src/Serilog.Ui.Web/src/__tests__/hooks/useLiveRefresh.spec.ts @@ -0,0 +1,76 @@ +import { act, renderHook } from '__tests__/_setup/testing-utils'; +import { describe, expect, it } from 'vitest'; +import { useLiveRefresh } from '../../app/hooks/useLiveRefresh'; + +describe('useLiveRefresh', () => { + it('returns base properties', () => { + const { result } = renderHook(() => useLiveRefresh()); + + expect(result.current.isLiveRefreshRunning).toBeFalsy(); + expect(result.current.liveRefreshLabel).toBe(''); + expect(result.current.refetchInterval).toBe(0); + }); + + it.each([ + { refetch: 5000, label: '5s', time: 'five' }, + { refetch: 15000, label: '15s', time: 'fifteen' }, + { refetch: 30000, label: '30s', time: 'thirty' }, + { refetch: 60000, label: '1m', time: 'sixty' }, + { refetch: 120000, label: '2m', time: 'onehundredtwenty' }, + { refetch: 300000, label: '5m', time: 'threehundred' }, + { refetch: 900000, label: '15m', time: 'ninehundred' }, + ])('starts fetch interval', ({ label, refetch, time }) => { + const { result } = renderHook(() => useLiveRefresh()); + + act(() => { + result.current.startLiveRefresh(time); + }); + + expect(result.current.isLiveRefreshRunning).toBeTruthy(); + expect(result.current.liveRefreshLabel).toBe(label); + expect(result.current.refetchInterval).toBe(refetch); + }); + + it('stops fetch interval', () => { + const { result } = renderHook(() => useLiveRefresh()); + + act(() => { + result.current.startLiveRefresh('five'); + }); + expect(result.current.refetchInterval).toBe(5000); + + act(() => { + result.current.stopLiveRefresh(); + }); + + expect(result.current.isLiveRefreshRunning).toBeFalsy(); + expect(result.current.refetchInterval).toBe(0); + }); + + it('does not activate on invalid time', () => { + const { result } = renderHook(() => useLiveRefresh()); + + act(() => { + result.current.startLiveRefresh('five'); + }); + expect(result.current.refetchInterval).toBe(5000); + + act(() => { + result.current.startLiveRefresh(null); + }); + + expect(result.current.isLiveRefreshRunning).toBeFalsy(); + expect(result.current.refetchInterval).toBe(0); + }); + + it('set activation time to 0 on unexpected time', () => { + const { result } = renderHook(() => useLiveRefresh()); + + act(() => { + result.current.startLiveRefresh('uhm'); + }); + + expect(result.current.isLiveRefreshRunning).toBeFalsy(); + expect(result.current.refetchInterval).toBe(0); + }); +}); diff --git a/src/Serilog.Ui.Web/src/app/components/Authorization/AuthorizeButton.tsx b/src/Serilog.Ui.Web/src/app/components/Authorization/AuthorizeButton.tsx index 9495b22b..f22a2723 100644 --- a/src/Serilog.Ui.Web/src/app/components/Authorization/AuthorizeButton.tsx +++ b/src/Serilog.Ui.Web/src/app/components/Authorization/AuthorizeButton.tsx @@ -3,6 +3,7 @@ import { useDisclosure } from '@mantine/hooks'; import { IconLockCheck, IconLockOpen } from '@tabler/icons-react'; import { useSerilogUiProps } from 'app/hooks/useSerilogUiProps'; import { lazy, memo, Suspense } from 'react'; +import { theme } from 'style/theme'; import { AuthType } from 'types/types'; import { useAuthProperties } from '../../hooks/useAuthProperties'; @@ -18,7 +19,7 @@ const AuthorizeButton = () => { return ( <> - diff --git a/src/Serilog.Ui.Web/src/app/components/Refresh/RefreshButton.tsx b/src/Serilog.Ui.Web/src/app/components/Refresh/RefreshButton.tsx new file mode 100644 index 00000000..6b1fb809 --- /dev/null +++ b/src/Serilog.Ui.Web/src/app/components/Refresh/RefreshButton.tsx @@ -0,0 +1,61 @@ +import { Button, Popover, Tooltip } from '@mantine/core'; +import { IconRefresh } from '@tabler/icons-react'; +import { liveRefreshOptions } from 'app/hooks/useLiveRefresh'; +import useQueryLogs from 'app/hooks/useQueryLogs'; +import classes from 'style/search.module.css'; +import { theme } from 'style/theme'; + +export const RefreshButton = () => { + const { isLiveRefreshRunning, liveRefreshLabel, startLiveRefresh, stopLiveRefresh } = + useQueryLogs(); + + if (isLiveRefreshRunning) + return ( + + + + ); + + return ( + + + + + + + + + {liveRefreshOptions.map((p) => ( + + ))} + + + + ); +}; diff --git a/src/Serilog.Ui.Web/src/app/components/ShellStructure/Header.tsx b/src/Serilog.Ui.Web/src/app/components/ShellStructure/Header.tsx index 0820e954..dd224620 100644 --- a/src/Serilog.Ui.Web/src/app/components/ShellStructure/Header.tsx +++ b/src/Serilog.Ui.Web/src/app/components/ShellStructure/Header.tsx @@ -11,6 +11,7 @@ import { useSerilogUiProps } from 'app/hooks/useSerilogUiProps'; import { isStringGuard } from 'app/util/guards'; import { Suspense, lazy } from 'react'; import classes from 'style/header.module.css'; +import { RefreshButton } from '../Refresh/RefreshButton'; import BrandBadge from './BrandBadge'; const HeaderActivity = lazy(() => import('./HeaderActivity')); @@ -69,6 +70,8 @@ const Head = ({ isMobileOpen, toggleMobile }: IProps) => { )} + + diff --git a/src/Serilog.Ui.Web/src/app/hooks/useLiveRefresh.ts b/src/Serilog.Ui.Web/src/app/hooks/useLiveRefresh.ts new file mode 100644 index 00000000..0e742932 --- /dev/null +++ b/src/Serilog.Ui.Web/src/app/hooks/useLiveRefresh.ts @@ -0,0 +1,54 @@ +import { useState } from 'react'; + +enum options { + 'zero' = 0, + 'five' = 5, + 'fifteen' = 15, + 'thirty' = 30, + 'sixty' = 60, + 'onehundredtwenty' = 120, + 'threehundred' = 300, + 'ninehundred' = 900, +} + +export const liveRefreshOptions = [ + { label: '5s', value: 'five' }, + { label: '15s', value: 'fifteen' }, + { label: '30s', value: 'thirty' }, + { label: '1m', value: 'sixty' }, + { label: '2m', value: 'onehundredtwenty' }, + { label: '5m', value: 'threehundred' }, + { label: '15m', value: 'ninehundred' }, +]; + +export const useLiveRefresh = () => { + const [refetchInterval, setRefetchInterval] = useState(0); + + const isLiveRefreshRunning = refetchInterval > 0; + const liveRefreshLabel = !isLiveRefreshRunning + ? '' + : liveRefreshOptions.find((lr) => lr.value === options[refetchInterval / 1000]) + ?.label; + + const startLiveRefresh = (v: string | null) => { + if (v === null) { + return setRefetchInterval(0); + } + + const eachSecond = options[v]; + const isNan = Number.isNaN(Number.parseInt(eachSecond, 10)); + setRefetchInterval(isNan ? 0 : eachSecond * 1000); + }; + + const stopLiveRefresh = () => { + setRefetchInterval(0); + }; + + return { + isLiveRefreshRunning, + liveRefreshLabel, + refetchInterval, + startLiveRefresh, + stopLiveRefresh, + }; +}; diff --git a/src/Serilog.Ui.Web/src/app/hooks/useQueryLogs.ts b/src/Serilog.Ui.Web/src/app/hooks/useQueryLogs.ts index 7356a975..5329391e 100644 --- a/src/Serilog.Ui.Web/src/app/hooks/useQueryLogs.ts +++ b/src/Serilog.Ui.Web/src/app/hooks/useQueryLogs.ts @@ -1,34 +1,50 @@ import { keepPreviousData, useQuery } from '@tanstack/react-query'; +import { useWatch } from 'react-hook-form'; import { fetchLogs } from '../queries/logs'; import { useAuthProperties } from './useAuthProperties'; +import { useLiveRefresh } from './useLiveRefresh'; import { useSearchForm } from './useSearchForm'; -import { useWatch } from 'react-hook-form'; const useQueryLogs = () => { const { fetchInfo, isHeaderReady } = useAuthProperties(); const { getValues } = useSearchForm(); + const { + isLiveRefreshRunning, + liveRefreshLabel, + refetchInterval, + startLiveRefresh, + stopLiveRefresh, + } = useLiveRefresh(); - const currentDbKey = useWatch({ name: 'table' }) - const entriesPerPage = useWatch({ name: 'entriesPerPage' }) - const page = useWatch({ name: 'page' }) - const sortBy = useWatch({ name: 'sortBy' }) - const sortOn = useWatch({ name: 'sortOn' }) + const currentDbKey = useWatch({ name: 'table' }); + const entriesPerPage = useWatch({ name: 'entriesPerPage' }); + const page = useWatch({ name: 'page' }); + const sortBy = useWatch({ name: 'sortBy' }); + const sortOn = useWatch({ name: 'sortOn' }); - return useQuery({ - enabled: true, - queryKey: ['get-logs', entriesPerPage, page, sortBy, sortOn, currentDbKey], - queryFn: async () => { - if (!isHeaderReady) return null; + return { + ...useQuery({ + enabled: true, + queryKey: ['get-logs', entriesPerPage, page, sortBy, sortOn, currentDbKey], + queryFn: async () => { + if (!isHeaderReady) return null; + const values = getValues(); - return currentDbKey - ? await fetchLogs(getValues(), fetchInfo.headers, fetchInfo.routePrefix) - : null; - }, - placeholderData: keepPreviousData, - refetchOnMount: false, - refetchOnWindowFocus: false, - retry: false, - }); + return currentDbKey + ? await fetchLogs(values, fetchInfo.headers, fetchInfo.routePrefix) + : null; + }, + placeholderData: keepPreviousData, + refetchOnMount: false, + refetchOnWindowFocus: false, + retry: false, + refetchInterval, + }), + isLiveRefreshRunning, + liveRefreshLabel, + startLiveRefresh, + stopLiveRefresh, + }; }; export default useQueryLogs; diff --git a/src/Serilog.Ui.Web/src/style/search.module.css b/src/Serilog.Ui.Web/src/style/search.module.css index 80f57371..9190340a 100644 --- a/src/Serilog.Ui.Web/src/style/search.module.css +++ b/src/Serilog.Ui.Web/src/style/search.module.css @@ -30,3 +30,32 @@ justify-self: end; } } + +.refreshButton { + @keyframes blink { + 0% { + box-shadow: 'transparent'; + } + 50% { + box-shadow: 0 0 0.7em #efeff0; + } + 100% { + box-shadow: 'transparent'; + } + } + + border: 4px solid transparent; + animation: blink 2.5s ease-in infinite; + border-radius: 50%; + height: 30px; + padding: 2px; + width: 30px; +} + +.activateRefreshButton { + border: 4px solid transparent; + border-radius: 50%; + height: 30px; + padding: 2px; + width: 30px; +} diff --git a/src/Serilog.Ui.Web/yarn.lock b/src/Serilog.Ui.Web/yarn.lock index 2f412b02..770f5f92 100644 --- a/src/Serilog.Ui.Web/yarn.lock +++ b/src/Serilog.Ui.Web/yarn.lock @@ -481,10 +481,10 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@mantine/core@^7.17.2": - version "7.17.2" - resolved "https://registry.yarnpkg.com/@mantine/core/-/core-7.17.2.tgz#027fe3c8d43abefc318b7b9229a8e5146635c7b8" - integrity sha512-R6MYhitJ0JEgrhadd31Nw9FhRaQwDHjXUs5YIlitKH/fTOz9gKSxKjzmNng3bEBQCcbEDOkZj3FRcBgTUh/F0Q== +"@mantine/core@^7.17.3": + version "7.17.3" + resolved "https://registry.yarnpkg.com/@mantine/core/-/core-7.17.3.tgz#78ee30bb4493c6117d6d381fbfc374d773eedf8b" + integrity sha512-N/AfV5eMnfEMx9WzI7AU5pNFBEzAfT/KtE2XDKS+0ht6RifUmolIxyIvoGMYz2yUEsCBMJZqmBq33Rabf5W7Ug== dependencies: "@floating-ui/react" "^0.26.28" clsx "^2.1.1" @@ -493,30 +493,30 @@ react-textarea-autosize "8.5.6" type-fest "^4.27.0" -"@mantine/dates@^7.17.2": - version "7.17.2" - resolved "https://registry.yarnpkg.com/@mantine/dates/-/dates-7.17.2.tgz#4cd7834fcb6e338c359796bf23eb60ba78ab8737" - integrity sha512-7bB992j8f+uEi280jab0/8i5yfsN/3oSrMDFwatZ+7XSDUwiP0YFib/FVX0pNSSqdFpbXhUmsZEECX71QtHw+Q== +"@mantine/dates@^7.17.3": + version "7.17.3" + resolved "https://registry.yarnpkg.com/@mantine/dates/-/dates-7.17.3.tgz#b1f4308df560d6980c4104108a9e30b8958b6c1e" + integrity sha512-gegLSlK7mi3jAaL/JMLdy6oK9CmY08nXoLvbeO03i+751bmbbbzpoFAaxMzbR6vkP9tPuoapOxJqgDzn2Jm+Dw== dependencies: clsx "^2.1.1" -"@mantine/hooks@^7.17.2": - version "7.17.2" - resolved "https://registry.yarnpkg.com/@mantine/hooks/-/hooks-7.17.2.tgz#bfd10e65cb5a83326ecfdd339e56558ea6045c44" - integrity sha512-tbErVcGZu0E4dSmE6N0k6Tv1y9R3SQmmQgwqorcc+guEgKMdamc36lucZGlJnSGUmGj+WLUgELkEQ0asdfYBDA== +"@mantine/hooks@^7.17.3": + version "7.17.3" + resolved "https://registry.yarnpkg.com/@mantine/hooks/-/hooks-7.17.3.tgz#fe8c32edaeffb43f0fa5d984f6373fcef47f1ff8" + integrity sha512-6o65Rbfl8jd1C1nF9icvungqL0qZViEOmrZgkyKXxBYkC3x91fz4zftwQgNjt1tZHWDNO6Bo4GpRjJyAdwl48g== -"@mantine/notifications@^7.17.2": - version "7.17.2" - resolved "https://registry.yarnpkg.com/@mantine/notifications/-/notifications-7.17.2.tgz#f534a1387d187b605c2840d85c56da03282bdba2" - integrity sha512-vg0L8cmihz0ODg4WJ9MAyK06WPt/6g67ksIUFxd4F8RfdJbIMLTsNG9yWoSfuhtXenUg717KaA917IWLjDSaqw== +"@mantine/notifications@^7.17.3": + version "7.17.3" + resolved "https://registry.yarnpkg.com/@mantine/notifications/-/notifications-7.17.3.tgz#156d74b5b5acd6d14028a5e77c3ec622413ab1ae" + integrity sha512-MqakDqu/CZzO4arZGpXs3TmGTajqL4xm28vtqW4qWFSU5HZWQ4EosqipqvIJ+swC6YbxNiWvFcfnxxPlHdYk9g== dependencies: - "@mantine/store" "7.17.2" + "@mantine/store" "7.17.3" react-transition-group "4.4.5" -"@mantine/store@7.17.2": - version "7.17.2" - resolved "https://registry.yarnpkg.com/@mantine/store/-/store-7.17.2.tgz#c954d23aab2c208a39c129131f2d7d109578753f" - integrity sha512-UoMUYQK/z58hMueCkpDIXc49gPgrVO/zcpb0k+B7MFU51EIUiFzHLxLFBmWrgCAM6rzJORqN8JjyCd/PB9j4aw== +"@mantine/store@7.17.3": + version "7.17.3" + resolved "https://registry.yarnpkg.com/@mantine/store/-/store-7.17.3.tgz#6f2b623d28bd8f4b74c8f2e013544c858fc999d9" + integrity sha512-wXQXe/Ljv2N6TDRsoVwOHmTGZey7Nt/SS6VeeMujKeNnAybPPXaP1jIbN50MKJoDS4qVPCHJNaHwVKIgMur2aQ== "@mswjs/interceptors@^0.37.0": version "0.37.6" @@ -574,10 +574,10 @@ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== -"@pkgr/core@^0.1.0": - version "0.1.1" - resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.1.tgz#1ec17e2edbec25c8306d424ecfbf13c7de1aaa31" - integrity sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA== +"@pkgr/core@^0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.2.0.tgz#8dff61038cb5884789d8b323d9869e5363b976f7" + integrity sha512-vsJDAkYR6qCPu+ioGScGiMYR7LvZYIXh/dlQeviqoTWNCVfKTLYD/LkNWH4Mxsv2a5vpIRc77FN5DnmK1eBggQ== "@polka/url@^1.0.0-next.24": version "1.0.0-next.28" @@ -738,84 +738,84 @@ resolved "https://registry.yarnpkg.com/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz#a90ab31d0cc1dfb54c66a69e515bf624fa7b2224" integrity sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg== -"@swc/core-darwin-arm64@1.11.8": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.11.8.tgz#46e49bae73f0a11b62518184b715a3ab0230006b" - integrity sha512-rrSsunyJWpHN+5V1zumndwSSifmIeFQBK9i2RMQQp15PgbgUNxHK5qoET1n20pcUrmZeT6jmJaEWlQchkV//Og== - -"@swc/core-darwin-x64@1.11.8": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.11.8.tgz#90c98dbee1b02526d54a6a7200e612577dbfc203" - integrity sha512-44goLqQuuo0HgWnG8qC+ZFw/qnjCVVeqffhzFr9WAXXotogVaxM8ze6egE58VWrfEc8me8yCcxOYL9RbtjhS/Q== - -"@swc/core-linux-arm-gnueabihf@1.11.8": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.11.8.tgz#22a2ac29fb2aa7f42d8b0d7ddff915878b237be8" - integrity sha512-Mzo8umKlhTWwF1v8SLuTM1z2A+P43UVhf4R8RZDhzIRBuB2NkeyE+c0gexIOJBuGSIATryuAF4O4luDu727D1w== - -"@swc/core-linux-arm64-gnu@1.11.8": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.11.8.tgz#4244951dc7b720ada906418684b0aecf2a508864" - integrity sha512-EyhO6U+QdoGYC1MeHOR0pyaaSaKYyNuT4FQNZ1eZIbnuueXpuICC7iNmLIOfr3LE5bVWcZ7NKGVPlM2StJEcgA== - -"@swc/core-linux-arm64-musl@1.11.8": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.11.8.tgz#9b27cd4dd2964128a02cc0ed93cf33cec3ff210d" - integrity sha512-QU6wOkZnS6/QuBN1MHD6G2BgFxB0AclvTVGbqYkRA7MsVkcC29PffESqzTXnypzB252/XkhQjoB2JIt9rPYf6A== - -"@swc/core-linux-x64-gnu@1.11.8": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.11.8.tgz#da381f4ec26b5d24555622a5baa94bd953e19b1e" - integrity sha512-r72onUEIU1iJi9EUws3R28pztQ/eM3EshNpsPRBfuLwKy+qn3et55vXOyDhIjGCUph5Eg2Yn8H3h6MTxDdLd+w== - -"@swc/core-linux-x64-musl@1.11.8": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.11.8.tgz#29155eaf4805835f45ac7294fc2e57e4b050677a" - integrity sha512-294k8cLpO103++f4ZUEDr3vnBeUfPitW6G0a3qeVZuoXFhFgaW7ANZIWknUc14WiLOMfMecphJAEiy9C8OeYSw== - -"@swc/core-win32-arm64-msvc@1.11.8": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.11.8.tgz#022c3876c91e201c17944339830d21f141c25c47" - integrity sha512-EbjOzQ+B85rumHyeesBYxZ+hq3ZQn+YAAT1ZNE9xW1/8SuLoBmHy/K9YniRGVDq/2NRmp5kI5+5h5TX0asIS9A== - -"@swc/core-win32-ia32-msvc@1.11.8": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.11.8.tgz#dbd2efd9c33a269c6eb2a513ad03b4a554a1ac94" - integrity sha512-Z+FF5kgLHfQWIZ1KPdeInToXLzbY0sMAashjd/igKeP1Lz0qKXVAK+rpn6ASJi85Fn8wTftCGCyQUkRVn0bTDg== - -"@swc/core-win32-x64-msvc@1.11.8": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.11.8.tgz#65ee7cf1eda2cf236e0f5481e0ffde3b1801cf0d" - integrity sha512-j6B6N0hChCeAISS6xp/hh6zR5CSCr037BAjCxNLsT8TGe5D+gYZ57heswUWXRH8eMKiRDGiLCYpPB2pkTqxCSw== - -"@swc/core@^1.10.15": - version "1.11.8" - resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.11.8.tgz#63d2b0171285c0d8b641473fa16a9299b5087066" - integrity sha512-UAL+EULxrc0J73flwYHfu29mO8CONpDJiQv1QPDXsyCvDUcEhqAqUROVTgC+wtJCFFqMQdyr4stAA5/s0KSOmA== +"@swc/core-darwin-arm64@1.11.16": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.11.16.tgz#3001aaed6ec20e97a75064f09a391f1f2d811614" + integrity sha512-l6uWMU+MUdfLHCl3dJgtVEdsUHPskoA4BSu0L1hh9SGBwPZ8xeOz8iLIqZM27lTuXxL4KsYH6GQR/OdQ/vhLtg== + +"@swc/core-darwin-x64@1.11.16": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.11.16.tgz#2b06c2efbceda4577a82dae9692a2c140069aa1e" + integrity sha512-TH0IW8Ao1WZ4ARFHIh29dAQHYBEl4YnP74n++rjppmlCjY+8v3s5nXMA7IqxO3b5LVHyggWtU4+46DXTyMJM7g== + +"@swc/core-linux-arm-gnueabihf@1.11.16": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.11.16.tgz#d5ca1d3564c01a1d830baf2b0e8d47301030aae4" + integrity sha512-2IxD9t09oNZrbv37p4cJ9cTHMUAK6qNiShi9s2FJ9LcqSnZSN4iS4hvaaX6KZuG54d58vWnMU7yycjkdOTQcMg== + +"@swc/core-linux-arm64-gnu@1.11.16": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.11.16.tgz#18b60f2ab274fcf3b5df404c77e24cdd64d12bd1" + integrity sha512-AYkN23DOiPh1bf3XBf/xzZQDKSsgZTxlbyTyUIhprLJpAAAT0ZCGAUcS5mHqydk0nWQ13ABUymodvHoroutNzw== + +"@swc/core-linux-arm64-musl@1.11.16": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.11.16.tgz#66ca2d8689ececffe174b37f40e516efa9df0374" + integrity sha512-n/nWXDRCIhM51dDGELfBcTMNnCiFatE7LDvsbYxb7DJt1HGjaCNvHHCKURb/apJTh/YNtWfgFap9dbsTgw8yPA== + +"@swc/core-linux-x64-gnu@1.11.16": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.11.16.tgz#bd13bafd45ab847af9980cda3251bdd3c7f52187" + integrity sha512-xr182YQrF47n7Awxj+/ruI21bYw+xO/B26KFVnb+i3ezF9NOhqoqTX+33RL1ZLA/uFTq8ksPZO/y+ZVS/odtQA== + +"@swc/core-linux-x64-musl@1.11.16": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.11.16.tgz#c691175c0dd46ad4ff97ff5ed0b968d99832fbc7" + integrity sha512-k2JBfiwWfXCIKrBRjFO9/vEdLSYq0QLJ+iNSLdfrejZ/aENNkbEg8O7O2GKUSb30RBacn6k8HMfJrcPLFiEyCQ== + +"@swc/core-win32-arm64-msvc@1.11.16": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.11.16.tgz#944fbe37dc347634cb0d3f52ef5547b4a98616eb" + integrity sha512-taOb5U+abyEhQgex+hr6cI48BoqSvSdfmdirWcxprIEUBHCxa1dSriVwnJRAJOFI9T+5BEz88by6rgbB9MjbHA== + +"@swc/core-win32-ia32-msvc@1.11.16": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.11.16.tgz#4e0539c82bde71d8f2acf61f6cc732d39d944c67" + integrity sha512-b7yYggM9LBDiMY+XUt5kYWvs5sn0U3PXSOGvF3CbLufD/N/YQiDcYON2N3lrWHYL8aYnwbuZl45ojmQHSQPcdA== + +"@swc/core-win32-x64-msvc@1.11.16": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.11.16.tgz#98418776be552a5d1fcdccf3e73f16cd7c4d8a4a" + integrity sha512-/ibq/YDc3B5AROkpOKPGxVkSyCKOg+ml8k11RxrW7FAPy6a9y5y9KPcWIqV74Ahq4RuaMNslTQqHWAGSm0xJsQ== + +"@swc/core@^1.11.11": + version "1.11.16" + resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.11.16.tgz#c1ceba4ab2904576672eab0b650cea986e97bb2e" + integrity sha512-wgjrJqVUss8Lxqilg0vkiE0tkEKU3mZkoybQM1Ehy+PKWwwB6lFAwKi20cAEFlSSWo8jFR8hRo19ZELAoLDowg== dependencies: "@swc/counter" "^0.1.3" - "@swc/types" "^0.1.19" + "@swc/types" "^0.1.21" optionalDependencies: - "@swc/core-darwin-arm64" "1.11.8" - "@swc/core-darwin-x64" "1.11.8" - "@swc/core-linux-arm-gnueabihf" "1.11.8" - "@swc/core-linux-arm64-gnu" "1.11.8" - "@swc/core-linux-arm64-musl" "1.11.8" - "@swc/core-linux-x64-gnu" "1.11.8" - "@swc/core-linux-x64-musl" "1.11.8" - "@swc/core-win32-arm64-msvc" "1.11.8" - "@swc/core-win32-ia32-msvc" "1.11.8" - "@swc/core-win32-x64-msvc" "1.11.8" + "@swc/core-darwin-arm64" "1.11.16" + "@swc/core-darwin-x64" "1.11.16" + "@swc/core-linux-arm-gnueabihf" "1.11.16" + "@swc/core-linux-arm64-gnu" "1.11.16" + "@swc/core-linux-arm64-musl" "1.11.16" + "@swc/core-linux-x64-gnu" "1.11.16" + "@swc/core-linux-x64-musl" "1.11.16" + "@swc/core-win32-arm64-msvc" "1.11.16" + "@swc/core-win32-ia32-msvc" "1.11.16" + "@swc/core-win32-x64-msvc" "1.11.16" "@swc/counter@^0.1.3": version "0.1.3" resolved "https://registry.yarnpkg.com/@swc/counter/-/counter-0.1.3.tgz#cc7463bd02949611c6329596fccd2b0ec782b0e9" integrity sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ== -"@swc/types@^0.1.19": - version "0.1.19" - resolved "https://registry.yarnpkg.com/@swc/types/-/types-0.1.19.tgz#65d9fe81e0a1dc7e861ad698dd581abe3703a2d2" - integrity sha512-WkAZaAfj44kh/UFdAQcrMP1I0nwRqpt27u+08LMBYMqmQfwwMofYoMh/48NGkMMRfC4ynpfwRbJuu8ErfNloeA== +"@swc/types@^0.1.21": + version "0.1.21" + resolved "https://registry.yarnpkg.com/@swc/types/-/types-0.1.21.tgz#6fcadbeca1d8bc89e1ab3de4948cef12344a38c0" + integrity sha512-2YEtj5HJVbKivud9N4bpPBAyZhj4S2Ipe5LkUG94alTpr7in/GU/EARgPAd3BwU+YOmFVJC2+kjqhGRi3r0ZpQ== dependencies: "@swc/counter" "^0.1.3" @@ -831,17 +831,17 @@ resolved "https://registry.yarnpkg.com/@tabler/icons/-/icons-3.31.0.tgz#92d39dc336f2e3e312170420b00ffe9ca474925e" integrity sha512-dblAdeKY3+GA1U+Q9eziZ0ooVlZMHsE8dqP0RkwvRtEsAULoKOYaCUOcJ4oW1DjWegdxk++UAt2SlQVnmeHv+g== -"@tanstack/query-core@5.68.0": - version "5.68.0" - resolved "https://registry.yarnpkg.com/@tanstack/query-core/-/query-core-5.68.0.tgz#3765573de58741c68fb80b128d3e3ffb4d80cb68" - integrity sha512-r8rFYYo8/sY/LNaOqX84h12w7EQev4abFXDWy4UoDVUJzJ5d9Fbmb8ayTi7ScG+V0ap44SF3vNs/45mkzDGyGw== +"@tanstack/query-core@5.71.10": + version "5.71.10" + resolved "https://registry.yarnpkg.com/@tanstack/query-core/-/query-core-5.71.10.tgz#1f2dc5abf595156e7d9c5d6e4f47e805a7083c30" + integrity sha512-/fKEY8fO1nbszfrBatzmhJa1nEwIKn0c6Tv2A1ocSA5OiD2GukOIV8nnBbvJRgZb/VIoBy9/N4PVbABI8YQLow== -"@tanstack/react-query@^5.68.0": - version "5.68.0" - resolved "https://registry.yarnpkg.com/@tanstack/react-query/-/react-query-5.68.0.tgz#f7b242eb800ce7c36b4edbe26c9ba8478eb18826" - integrity sha512-mMOdGDKlwTP/WV72QqSNf4PAMeoBp/DqBHQ222wBfb51Looi8QUqnCnb9O98ZgvNISmy6fzxRGBJdZ+9IBvX2Q== +"@tanstack/react-query@^5.71.10": + version "5.71.10" + resolved "https://registry.yarnpkg.com/@tanstack/react-query/-/react-query-5.71.10.tgz#940d485a499b86aaa37764e26709ed79b393fe29" + integrity sha512-mQYM/ObpL8YMDz8vCoUuHkbe8Yu7NnVRH8aBaBa/3zlufjp1f1VuWjeO3TcumNHfuVMDwEAGinsgwrB7OKADiQ== dependencies: - "@tanstack/query-core" "5.68.0" + "@tanstack/query-core" "5.71.10" "@testing-library/dom@^10.4.0": version "10.4.0" @@ -870,10 +870,10 @@ lodash "^4.17.21" redent "^3.0.0" -"@testing-library/react@^16.2.0": - version "16.2.0" - resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-16.2.0.tgz#c96126ee01a49cdb47175721911b4a9432afc601" - integrity sha512-2cSskAvA1QNtKc8Y9VJQRv0tm3hLVgxRGDB+KYhIaPQJ1I+RHbhIXcM+zClKXzMes/wshsMVzf4B9vS4IZpqDQ== +"@testing-library/react@^16.3.0": + version "16.3.0" + resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-16.3.0.tgz#3a85bb9bdebf180cd76dba16454e242564d598a6" + integrity sha512-kFSyxiEDwv1WLl2fgsq6pPBbw5aWKrsY2/noi1Id0TK0UParSF62oFQFGHXIyaG4pp2tEub/Zlel+fjjZILDsw== dependencies: "@babel/runtime" "^7.12.5" @@ -916,12 +916,12 @@ dependencies: "@types/unist" "*" -"@types/node@^22.13.10": - version "22.13.10" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.13.10.tgz#df9ea358c5ed991266becc3109dc2dc9125d77e4" - integrity sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw== +"@types/node@^22.14.0": + version "22.14.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.14.0.tgz#d3bfa3936fef0dbacd79ea3eb17d521c628bb47e" + integrity sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA== dependencies: - undici-types "~6.20.0" + undici-types "~6.21.0" "@types/prop-types@*": version "15.7.14" @@ -956,30 +956,30 @@ resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c" integrity sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q== -"@typescript-eslint/eslint-plugin@8.26.1": - version "8.26.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.26.1.tgz#3e48eb847924161843b092c87a9b65176b53782f" - integrity sha512-2X3mwqsj9Bd3Ciz508ZUtoQQYpOhU/kWoUqIf49H8Z0+Vbh6UF/y0OEYp0Q0axOGzaBGs7QxRwq0knSQ8khQNA== +"@typescript-eslint/eslint-plugin@8.29.0": + version "8.29.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.29.0.tgz#151c4878700a5ad229ce6713d2674d58b626b3d9" + integrity sha512-PAIpk/U7NIS6H7TEtN45SPGLQaHNgB7wSjsQV/8+KYokAb2T/gloOA/Bee2yd4/yKVhPKe5LlaUGhAZk5zmSaQ== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "8.26.1" - "@typescript-eslint/type-utils" "8.26.1" - "@typescript-eslint/utils" "8.26.1" - "@typescript-eslint/visitor-keys" "8.26.1" + "@typescript-eslint/scope-manager" "8.29.0" + "@typescript-eslint/type-utils" "8.29.0" + "@typescript-eslint/utils" "8.29.0" + "@typescript-eslint/visitor-keys" "8.29.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^2.0.1" -"@typescript-eslint/parser@8.26.1": - version "8.26.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.26.1.tgz#0e2f915a497519fc43f52cf2ecbfa607ff56f72e" - integrity sha512-w6HZUV4NWxqd8BdeFf81t07d7/YV9s7TCWrQQbG5uhuvGUAW+fq1usZ1Hmz9UPNLniFnD8GLSsDpjP0hm1S4lQ== +"@typescript-eslint/parser@8.29.0": + version "8.29.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.29.0.tgz#b98841e0a8099728cb8583da92326fcb7f5be1d2" + integrity sha512-8C0+jlNJOwQso2GapCVWWfW/rzaq7Lbme+vGUFKE31djwNncIpgXD7Cd4weEsDdkoZDjH0lwwr3QDQFuyrMg9g== dependencies: - "@typescript-eslint/scope-manager" "8.26.1" - "@typescript-eslint/types" "8.26.1" - "@typescript-eslint/typescript-estree" "8.26.1" - "@typescript-eslint/visitor-keys" "8.26.1" + "@typescript-eslint/scope-manager" "8.29.0" + "@typescript-eslint/types" "8.29.0" + "@typescript-eslint/typescript-estree" "8.29.0" + "@typescript-eslint/visitor-keys" "8.29.0" debug "^4.3.4" "@typescript-eslint/scope-manager@7.18.0": @@ -998,21 +998,21 @@ "@typescript-eslint/types" "8.26.0" "@typescript-eslint/visitor-keys" "8.26.0" -"@typescript-eslint/scope-manager@8.26.1": - version "8.26.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.26.1.tgz#5e6ad0ac258ccf79462e91c3f43a3f1f7f31a6cc" - integrity sha512-6EIvbE5cNER8sqBu6V7+KeMZIC1664d2Yjt+B9EWUXrsyWpxx4lEZrmvxgSKRC6gX+efDL/UY9OpPZ267io3mg== +"@typescript-eslint/scope-manager@8.29.0": + version "8.29.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.29.0.tgz#8fd9872823aef65ff71d3f6d1ec9316ace0b6bf3" + integrity sha512-aO1PVsq7Gm+tcghabUpzEnVSFMCU4/nYIgC2GOatJcllvWfnhrgW0ZEbnTxm36QsikmCN1K/6ZgM7fok2I7xNw== dependencies: - "@typescript-eslint/types" "8.26.1" - "@typescript-eslint/visitor-keys" "8.26.1" + "@typescript-eslint/types" "8.29.0" + "@typescript-eslint/visitor-keys" "8.29.0" -"@typescript-eslint/type-utils@8.26.1": - version "8.26.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.26.1.tgz#462f0bae09de72ac6e8e1af2ebe588c23224d7f8" - integrity sha512-Kcj/TagJLwoY/5w9JGEFV0dclQdyqw9+VMndxOJKtoFSjfZhLXhYjzsQEeyza03rwHx2vFEGvrJWJBXKleRvZg== +"@typescript-eslint/type-utils@8.29.0": + version "8.29.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.29.0.tgz#98dcfd1193cb4e2b2d0294a8656ce5eb58c443a9" + integrity sha512-ahaWQ42JAOx+NKEf5++WC/ua17q5l+j1GFrbbpVKzFL/tKVc0aYY8rVSYUpUvt2hUP1YBr7mwXzx+E/DfUWI9Q== dependencies: - "@typescript-eslint/typescript-estree" "8.26.1" - "@typescript-eslint/utils" "8.26.1" + "@typescript-eslint/typescript-estree" "8.29.0" + "@typescript-eslint/utils" "8.29.0" debug "^4.3.4" ts-api-utils "^2.0.1" @@ -1026,10 +1026,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.26.0.tgz#c4e93a8faf3a38a8d8adb007dc7834f1c89ee7bf" integrity sha512-89B1eP3tnpr9A8L6PZlSjBvnJhWXtYfZhECqlBl1D9Lme9mHO6iWlsprBtVenQvY1HMhax1mWOjhtL3fh/u+pA== -"@typescript-eslint/types@8.26.1": - version "8.26.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.26.1.tgz#d5978721670cff263348d5062773389231a64132" - integrity sha512-n4THUQW27VmQMx+3P+B0Yptl7ydfceUj4ON/AQILAASwgYdZ/2dhfymRMh5egRUrvK5lSmaOm77Ry+lmXPOgBQ== +"@typescript-eslint/types@8.29.0": + version "8.29.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.29.0.tgz#65add70ab4ef66beaa42a5addf87dab2b05b1f33" + integrity sha512-wcJL/+cOXV+RE3gjCyl/V2G877+2faqvlgtso/ZRbTCnZazh0gXhe+7gbAnfubzN2bNsBtZjDvlh7ero8uIbzg== "@typescript-eslint/typescript-estree@7.18.0": version "7.18.0" @@ -1059,13 +1059,13 @@ semver "^7.6.0" ts-api-utils "^2.0.1" -"@typescript-eslint/typescript-estree@8.26.1": - version "8.26.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.26.1.tgz#eb0e4ce31753683d83be53441a409fd5f0b34afd" - integrity sha512-yUwPpUHDgdrv1QJ7YQal3cMVBGWfnuCdKbXw1yyjArax3353rEJP1ZA+4F8nOlQ3RfS2hUN/wze3nlY+ZOhvoA== +"@typescript-eslint/typescript-estree@8.29.0": + version "8.29.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.29.0.tgz#d201a4f115327ec90496307c9958262285065b00" + integrity sha512-yOfen3jE9ISZR/hHpU/bmNvTtBW1NjRbkSFdZOksL1N+ybPEE7UVGMwqvS6CP022Rp00Sb0tdiIkhSCe6NI8ow== dependencies: - "@typescript-eslint/types" "8.26.1" - "@typescript-eslint/visitor-keys" "8.26.1" + "@typescript-eslint/types" "8.29.0" + "@typescript-eslint/visitor-keys" "8.29.0" debug "^4.3.4" fast-glob "^3.3.2" is-glob "^4.0.3" @@ -1073,15 +1073,15 @@ semver "^7.6.0" ts-api-utils "^2.0.1" -"@typescript-eslint/utils@8.26.1": - version "8.26.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.26.1.tgz#54cc58469955f25577f659753b71a0e117a0539f" - integrity sha512-V4Urxa/XtSUroUrnI7q6yUTD3hDtfJ2jzVfeT3VK0ciizfK2q/zGC0iDh1lFMUZR8cImRrep6/q0xd/1ZGPQpg== +"@typescript-eslint/utils@8.29.0": + version "8.29.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.29.0.tgz#d6d22b19c8c4812a874f00341f686b45b9fe895f" + integrity sha512-gX/A0Mz9Bskm8avSWFcK0gP7cZpbY4AIo6B0hWYFCaIsz750oaiWR4Jr2CI+PQhfW1CpcQr9OlfPS+kMFegjXA== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "8.26.1" - "@typescript-eslint/types" "8.26.1" - "@typescript-eslint/typescript-estree" "8.26.1" + "@typescript-eslint/scope-manager" "8.29.0" + "@typescript-eslint/types" "8.29.0" + "@typescript-eslint/typescript-estree" "8.29.0" "@typescript-eslint/utils@^7.7.1": version "7.18.0" @@ -1119,12 +1119,12 @@ "@typescript-eslint/types" "8.26.0" eslint-visitor-keys "^4.2.0" -"@typescript-eslint/visitor-keys@8.26.1": - version "8.26.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.26.1.tgz#c5267fcc82795cf10280363023837deacad2647c" - integrity sha512-AjOC3zfnxd6S4Eiy3jwktJPclqhFHNyd8L6Gycf9WUPoKZpgM5PjkxY1X7uSy61xVpiJDhhk7XT2NVsN3ALTWg== +"@typescript-eslint/visitor-keys@8.29.0": + version "8.29.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.29.0.tgz#2356336c9efdc3597ffcd2aa1ce95432852b743d" + integrity sha512-Sne/pVz8ryR03NFK21VpN88dZ2FdQXOlq3VIklbrTYEt8yXtRFr9tvUhqvCeKjqYk5FSim37sHbooT6vzBTZcg== dependencies: - "@typescript-eslint/types" "8.26.1" + "@typescript-eslint/types" "8.29.0" eslint-visitor-keys "^4.2.0" "@ungap/structured-clone@^1.0.0", "@ungap/structured-clone@^1.2.0": @@ -1132,17 +1132,17 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.3.0.tgz#d06bbb384ebcf6c505fde1c3d0ed4ddffe0aaff8" integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== -"@vitejs/plugin-react-swc@^3.8.0": - version "3.8.0" - resolved "https://registry.yarnpkg.com/@vitejs/plugin-react-swc/-/plugin-react-swc-3.8.0.tgz#3af56d6dbfe3734e2970d8b9345f261353e2d676" - integrity sha512-T4sHPvS+DIqDP51ifPqa9XIRAz/kIvIi8oXcnOZZgHmMotgmmdxe/DD5tMFlt5nuIRzT0/QuiwmKlH0503Aapw== +"@vitejs/plugin-react-swc@^3.8.1": + version "3.8.1" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-react-swc/-/plugin-react-swc-3.8.1.tgz#663f14b72b1f42f6e61f412ea320e287b3065c41" + integrity sha512-aEUPCckHDcFyxpwFm0AIkbtv6PpUp3xTb9wYGFjtABynXjCYKkWoxX0AOK9NT9XCrdk6mBBUOeHQS+RKdcNO1A== dependencies: - "@swc/core" "^1.10.15" + "@swc/core" "^1.11.11" -"@vitest/coverage-istanbul@^3.0.8": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@vitest/coverage-istanbul/-/coverage-istanbul-3.0.8.tgz#bc7459e3c7bfa962193f35658c323220982f09d9" - integrity sha512-v/frNs3RF//gQP/+AkXG2Bk51qiK1bGRubq/vgM7CxEw40Jl3N9rMpgAOAz8ELL9HAWvAZ9fswR8YyHhO1HxSQ== +"@vitest/coverage-istanbul@^3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@vitest/coverage-istanbul/-/coverage-istanbul-3.1.1.tgz#950edf782bbff0f7d6113d62728717eed338b00a" + integrity sha512-uSoMeVcF5fMGcjWJOeG28nBPO2OuCNMRr+BcpF71gc1r/+EQnU7EeRM1hihs3EsSAOcjgw9w+TCMv/2lVvB4RA== dependencies: "@istanbuljs/schema" "^0.1.3" debug "^4.4.0" @@ -1155,62 +1155,62 @@ test-exclude "^7.0.1" tinyrainbow "^2.0.0" -"@vitest/expect@3.0.8": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-3.0.8.tgz#53c408180d6476c7363eb976dcaae8e7b1f1a078" - integrity sha512-Xu6TTIavTvSSS6LZaA3EebWFr6tsoXPetOWNMOlc7LO88QVVBwq2oQWBoDiLCN6YTvNYsGSjqOO8CAdjom5DCQ== +"@vitest/expect@3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-3.1.1.tgz#d64ddfdcf9e877d805e1eee67bd845bf0708c6c2" + integrity sha512-q/zjrW9lgynctNbwvFtQkGK9+vvHA5UzVi2V8APrp1C6fG6/MuYYkmlx4FubuqLycCeSdHD5aadWfua/Vr0EUA== dependencies: - "@vitest/spy" "3.0.8" - "@vitest/utils" "3.0.8" + "@vitest/spy" "3.1.1" + "@vitest/utils" "3.1.1" chai "^5.2.0" tinyrainbow "^2.0.0" -"@vitest/mocker@3.0.8": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-3.0.8.tgz#01638859e7dd422a8aaf04ef63dca9e1bbb9838d" - integrity sha512-n3LjS7fcW1BCoF+zWZxG7/5XvuYH+lsFg+BDwwAz0arIwHQJFUEsKBQ0BLU49fCxuM/2HSeBPHQD8WjgrxMfow== +"@vitest/mocker@3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-3.1.1.tgz#7689d99f87498684c71e9fe9defdbd13ffb7f1ac" + integrity sha512-bmpJJm7Y7i9BBELlLuuM1J1Q6EQ6K5Ye4wcyOpOMXMcePYKSIYlpcrCm4l/O6ja4VJA5G2aMJiuZkZdnxlC3SA== dependencies: - "@vitest/spy" "3.0.8" + "@vitest/spy" "3.1.1" estree-walker "^3.0.3" magic-string "^0.30.17" -"@vitest/pretty-format@3.0.8", "@vitest/pretty-format@^3.0.8": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-3.0.8.tgz#89f6111d141142689871f5a4e62ad679bb6b6357" - integrity sha512-BNqwbEyitFhzYMYHUVbIvepOyeQOSFA/NeJMIP9enMntkkxLgOcgABH6fjyXG85ipTgvero6noreavGIqfJcIg== +"@vitest/pretty-format@3.1.1", "@vitest/pretty-format@^3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-3.1.1.tgz#5b4d577771daccfced47baf3bf026ad59b52c283" + integrity sha512-dg0CIzNx+hMMYfNmSqJlLSXEmnNhMswcn3sXO7Tpldr0LiGmg3eXdLLhwkv2ZqgHb/d5xg5F7ezNFRA1fA13yA== dependencies: tinyrainbow "^2.0.0" -"@vitest/runner@3.0.8": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-3.0.8.tgz#dda7223c25a89a829a29c3f0c037a99e028a9c64" - integrity sha512-c7UUw6gEcOzI8fih+uaAXS5DwjlBaCJUo7KJ4VvJcjL95+DSR1kova2hFuRt3w41KZEFcOEiq098KkyrjXeM5w== +"@vitest/runner@3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-3.1.1.tgz#76b598700737089d66c74272b2e1c94ca2891a49" + integrity sha512-X/d46qzJuEDO8ueyjtKfxffiXraPRfmYasoC4i5+mlLEJ10UvPb0XH5M9C3gWuxd7BAQhpK42cJgJtq53YnWVA== dependencies: - "@vitest/utils" "3.0.8" + "@vitest/utils" "3.1.1" pathe "^2.0.3" -"@vitest/snapshot@3.0.8": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-3.0.8.tgz#b65d738c00ff052a323125ad7dfb001927049c78" - integrity sha512-x8IlMGSEMugakInj44nUrLSILh/zy1f2/BgH0UeHpNyOocG18M9CWVIFBaXPt8TrqVZWmcPjwfG/ht5tnpba8A== +"@vitest/snapshot@3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-3.1.1.tgz#42b6aa0d0e2b3b48b95a5c76efdcc66a44cb11f3" + integrity sha512-bByMwaVWe/+1WDf9exFxWWgAixelSdiwo2p33tpqIlM14vW7PRV5ppayVXtfycqze4Qhtwag5sVhX400MLBOOw== dependencies: - "@vitest/pretty-format" "3.0.8" + "@vitest/pretty-format" "3.1.1" magic-string "^0.30.17" pathe "^2.0.3" -"@vitest/spy@3.0.8": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-3.0.8.tgz#2a31ce28858aae50286644d64f886c72d55ae2ce" - integrity sha512-MR+PzJa+22vFKYb934CejhR4BeRpMSoxkvNoDit68GQxRLSf11aT6CTj3XaqUU9rxgWJFnqicN/wxw6yBRkI1Q== +"@vitest/spy@3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-3.1.1.tgz#deca0b025e151302ab514f38390fd7777e294837" + integrity sha512-+EmrUOOXbKzLkTDwlsc/xrwOlPDXyVk3Z6P6K4oiCndxz7YLpp/0R0UsWVOKT0IXWjjBJuSMk6D27qipaupcvQ== dependencies: tinyspy "^3.0.2" -"@vitest/ui@^3.0.8": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@vitest/ui/-/ui-3.0.8.tgz#7eb38960a8cf9cc10c1de407575e316562b99680" - integrity sha512-MfTjaLU+Gw/lYorgwFZ06Cym+Mj9hPfZh/Q91d4JxyAHiicAakPTvS7zYCSHF+5cErwu2PVBe1alSjuh6L/UiA== +"@vitest/ui@^3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@vitest/ui/-/ui-3.1.1.tgz#c832d9e07ee728b9464042458ba9b2638d8bd8bf" + integrity sha512-2HpiRIYg3dlvAJBV9RtsVswFgUSJK4Sv7QhpxoP0eBGkYwzGIKP34PjaV00AULQi9Ovl6LGyZfsetxDWY5BQdQ== dependencies: - "@vitest/utils" "3.0.8" + "@vitest/utils" "3.1.1" fflate "^0.8.2" flatted "^3.3.3" pathe "^2.0.3" @@ -1218,12 +1218,12 @@ tinyglobby "^0.2.12" tinyrainbow "^2.0.0" -"@vitest/utils@3.0.8": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-3.0.8.tgz#289277fbd8e733dff69cfa993c34665415c9b66b" - integrity sha512-nkBC3aEhfX2PdtQI/QwAWp8qZWwzASsU4Npbcd5RdMPBSSLCpkZp52P3xku3s3uA0HIEhGvEcF8rNkBsz9dQ4Q== +"@vitest/utils@3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-3.1.1.tgz#2893c30219ab6bdf109f07ce5cd287fe8058438d" + integrity sha512-1XIjflyaU2k3HMArJ50bwSh3wKWPD6Q47wz/NUSmRV0zNywPc4w79ARjg/i/aNINHwA+mIALhUVqD9/aUvZNgg== dependencies: - "@vitest/pretty-format" "3.0.8" + "@vitest/pretty-format" "3.1.1" loupe "^3.1.3" tinyrainbow "^2.0.0" @@ -2119,13 +2119,13 @@ eslint-plugin-jsx-a11y@^6.10.2: safe-regex-test "^1.0.3" string.prototype.includes "^2.0.1" -eslint-plugin-prettier@^5.2.3: - version "5.2.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.3.tgz#c4af01691a6fa9905207f0fbba0d7bea0902cce5" - integrity sha512-qJ+y0FfCp/mQYQ/vWQ3s7eUlFEL4PyKfAJxsnYTJ4YT73nsJBWqmEpFryxV9OeUiqmsTsYJ5Y+KDNaeP31wrRw== +eslint-plugin-prettier@^5.2.6: + version "5.2.6" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.6.tgz#be39e3bb23bb3eeb7e7df0927cdb46e4d7945096" + integrity sha512-mUcf7QG2Tjk7H055Jk0lGBjbgDnfrvqjhXh9t2xLMSCjZVcw9Rb1V6sVNXO0th3jgeO7zllWPTNRil3JW94TnQ== dependencies: prettier-linter-helpers "^1.0.0" - synckit "^0.9.1" + synckit "^0.11.0" eslint-plugin-promise@^7.2.1: version "7.2.1" @@ -2139,10 +2139,10 @@ eslint-plugin-react-hooks@^5.2.0: resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz#1be0080901e6ac31ce7971beed3d3ec0a423d9e3" integrity sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg== -eslint-plugin-react@^7.37.4: - version "7.37.4" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.37.4.tgz#1b6c80b6175b6ae4b26055ae4d55d04c414c7181" - integrity sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ== +eslint-plugin-react@^7.37.5: + version "7.37.5" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz#2975511472bdda1b272b34d779335c9b0e877065" + integrity sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA== dependencies: array-includes "^3.1.8" array.prototype.findlast "^1.2.5" @@ -2154,7 +2154,7 @@ eslint-plugin-react@^7.37.4: hasown "^2.0.2" jsx-ast-utils "^2.4.1 || ^3.0.0" minimatch "^3.1.2" - object.entries "^1.1.8" + object.entries "^1.1.9" object.fromentries "^2.0.8" object.values "^1.2.1" prop-types "^15.8.1" @@ -2285,10 +2285,10 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== -expect-type@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/expect-type/-/expect-type-1.2.0.tgz#b52a0a1117260f5a8dcf33aef66365be18c13415" - integrity sha512-80F22aiJ3GLyVnS/B3HzgR6RelZVumzj9jkL0Rhz4h0xYbNW9PjlQz5h3J/SShErbXBc295vseR4/MIbVmUbeA== +expect-type@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/expect-type/-/expect-type-1.2.1.tgz#af76d8b357cf5fa76c41c09dafb79c549e75f71f" + integrity sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw== fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" @@ -3334,14 +3334,15 @@ object.assign@^4.1.4, object.assign@^4.1.7: has-symbols "^1.1.0" object-keys "^1.1.1" -object.entries@^1.1.8: - version "1.1.8" - resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.8.tgz#bffe6f282e01f4d17807204a24f8edd823599c41" - integrity sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ== +object.entries@^1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.9.tgz#e4770a6a1444afb61bd39f984018b5bede25f8b3" + integrity sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw== dependencies: - call-bind "^1.0.7" + call-bind "^1.0.8" + call-bound "^1.0.4" define-properties "^1.2.1" - es-object-atoms "^1.0.0" + es-object-atoms "^1.1.1" object.fromentries@^2.0.8: version "2.0.8" @@ -3653,10 +3654,10 @@ react-dom@^18.3.1: loose-envify "^1.1.0" scheduler "^0.23.2" -react-hook-form@^7.54.2: - version "7.54.2" - resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-7.54.2.tgz#8c26ed54c71628dff57ccd3c074b1dd377cfb211" - integrity sha512-eHpAUgUjWbZocoQYUHposymRb4ZP6d0uwUnooL2uOybA9/3tPUvoAKqEWK1WaSiTxxOfTpffNZP7QwlnM3/gEg== +react-hook-form@^7.55.0: + version "7.55.0" + resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-7.55.0.tgz#df3c80a20a68f6811f49bec3406defaefb6dce80" + integrity sha512-XRnjsH3GVMQz1moZTW53MxfoWN7aDpUg/GpVNc4A3eXRVNdGXfbzJ4vM4aLQ8g6XCUh1nIbx70aaNCl7kxnjog== react-is@^16.13.1: version "16.13.1" @@ -3692,10 +3693,10 @@ react-remove-scroll@^2.6.2: use-callback-ref "^1.3.3" use-sidecar "^1.1.3" -react-router@^7.3.0: - version "7.3.0" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-7.3.0.tgz#14fb630f088d919386e97f91199a2bc4abcdd85d" - integrity sha512-466f2W7HIWaNXTKM5nHTqNxLrHTyXybm7R0eBlVSt0k/u55tTCDO194OIx/NrYD4TS5SXKTNekXfT37kMKUjgw== +react-router@^7.5.0: + version "7.5.0" + resolved "https://registry.yarnpkg.com/react-router/-/react-router-7.5.0.tgz#649568e7e3b4133dee1dcf333d8a3a37b1967f58" + integrity sha512-estOHrRlDMKdlQa6Mj32gIks4J+AxNsYoE0DbTTxiMy2mPzZuWSDU+N85/r1IlNR7kGfznF3VCUlvc5IUO+B9g== dependencies: "@types/cookie" "^0.6.0" cookie "^1.0.1" @@ -4070,10 +4071,10 @@ statuses@^2.0.1: resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== -std-env@^3.8.0: - version "3.8.1" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.8.1.tgz#2b81c631c62e3d0b964b87f099b8dcab6c9a5346" - integrity sha512-vj5lIj3Mwf9D79hBkltk5qmkFI+biIKWS2IBxEyEU3AX1tUf7AoL8nSazCOiiqQsGKIq01SClsKEzweu34uwvA== +std-env@^3.8.1: + version "3.9.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.9.0.tgz#1a6f7243b339dca4c9fd55e1c7504c77ef23e8f1" + integrity sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw== strict-event-emitter@^0.5.1: version "0.5.1" @@ -4238,13 +4239,13 @@ supports-preserve-symlinks-flag@^1.0.0: resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -synckit@^0.9.1: - version "0.9.2" - resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.9.2.tgz#a3a935eca7922d48b9e7d6c61822ee6c3ae4ec62" - integrity sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw== +synckit@^0.11.0: + version "0.11.2" + resolved "https://registry.yarnpkg.com/synckit/-/synckit-0.11.2.tgz#2a8015ce5df8d5eb0cc47ee55924ad8f8756c24b" + integrity sha512-1IUffI8zZ8qUMB3NUJIjk0RpLroG/8NkQDAWH1NbB2iJ0/5pn3M8rxfNzMz4GH9OnYaGYn31LEDSXJp/qIlxgA== dependencies: - "@pkgr/core" "^0.1.0" - tslib "^2.6.2" + "@pkgr/core" "^0.2.0" + tslib "^2.8.1" tabbable@^6.0.0: version "6.2.0" @@ -4360,7 +4361,7 @@ tsconfig-paths@^3.15.0: minimist "^1.2.6" strip-bom "^3.0.0" -tslib@^2.0.0, tslib@^2.1.0, tslib@^2.6.2: +tslib@^2.0.0, tslib@^2.1.0, tslib@^2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== @@ -4437,19 +4438,19 @@ typed-array-length@^1.0.7: possible-typed-array-names "^1.0.0" reflect.getprototypeof "^1.0.6" -typescript-eslint@^8.26.1: - version "8.26.1" - resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.26.1.tgz#d17a638a7543bc535157b83cdf5876513c71493b" - integrity sha512-t/oIs9mYyrwZGRpDv3g+3K6nZ5uhKEMt2oNmAPwaY4/ye0+EH4nXIPYNtkYFS6QHm+1DFg34DbglYBz5P9Xysg== +typescript-eslint@^8.29.0: + version "8.29.0" + resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.29.0.tgz#fc059b4c840889e5180dd822594eb46fa4619093" + integrity sha512-ep9rVd9B4kQsZ7ZnWCVxUE/xDLUUUsRzE0poAeNu+4CkFErLfuvPt/qtm2EpnSyfvsR0S6QzDFSrPCFBwf64fg== dependencies: - "@typescript-eslint/eslint-plugin" "8.26.1" - "@typescript-eslint/parser" "8.26.1" - "@typescript-eslint/utils" "8.26.1" + "@typescript-eslint/eslint-plugin" "8.29.0" + "@typescript-eslint/parser" "8.29.0" + "@typescript-eslint/utils" "8.29.0" -typescript@^5.8.2: - version "5.8.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.8.2.tgz#8170b3702f74b79db2e5a96207c15e65807999e4" - integrity sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ== +typescript@^5.8.3: + version "5.8.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.8.3.tgz#92f8a3e5e3cf497356f4178c34cd65a7f5e8440e" + integrity sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ== unbox-primitive@^1.1.0: version "1.1.0" @@ -4461,10 +4462,10 @@ unbox-primitive@^1.1.0: has-symbols "^1.1.0" which-boxed-primitive "^1.1.1" -undici-types@~6.20.0: - version "6.20.0" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.20.0.tgz#8171bf22c1f588d1554d55bf204bc624af388433" - integrity sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg== +undici-types@~6.21.0: + version "6.21.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb" + integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ== unicorn-magic@^0.3.0: version "0.3.0" @@ -4590,10 +4591,10 @@ vfile@^6.0.0: "@types/unist" "^3.0.0" vfile-message "^4.0.0" -vite-node@3.0.8: - version "3.0.8" - resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-3.0.8.tgz#69cd1e0b9c7c37a8e7ab3b87ce259cbbf9a7bd72" - integrity sha512-6PhR4H9VGlcwXZ+KWCdMqbtG649xCPZqfI9j2PsK1FcXgEzro5bGHcVKFCTqPLaNKZES8Evqv4LwvZARsq5qlg== +vite-node@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-3.1.1.tgz#ad186c07859a6e5fca7c7f563e55fb11b16557bc" + integrity sha512-V+IxPAE2FvXpTCHXyNem0M+gWm6J7eRyWPR6vYoG/Gl+IscNOjXzztUhimQgTxaAoUoj40Qqimaa0NLIOOAH4w== dependencies: cac "^6.7.14" debug "^4.4.0" @@ -4601,10 +4602,10 @@ vite-node@3.0.8: pathe "^2.0.3" vite "^5.0.0 || ^6.0.0" -vite-plugin-checker@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/vite-plugin-checker/-/vite-plugin-checker-0.9.0.tgz#9af2d6e28a8fda9278bad376e79edca81f0e6d42" - integrity sha512-gf/zc0KWX8ATEOgnpgAM1I+IbvWkkO80RB+FxlLtC5cabXSesbJmAUw6E+mMDDMGIT+VHAktmxJZpMTt3lSubQ== +vite-plugin-checker@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/vite-plugin-checker/-/vite-plugin-checker-0.9.1.tgz#9f2166047848cc9199ff05e61d12d0480b680604" + integrity sha512-neH3CSNWdkZ+zi+WPt/0y5+IO2I0UAI0NX6MaXqU/KxN1Lz6np/7IooRB6VVAMBa4nigqm1GRF6qNa4+EL5jDQ== dependencies: "@babel/code-frame" "^7.26.2" chokidar "^4.0.3" @@ -4650,30 +4651,30 @@ vitest-sonar-reporter@^2.0.0: resolved "https://registry.yarnpkg.com/vitest-sonar-reporter/-/vitest-sonar-reporter-2.0.0.tgz#6372e5faba2b2834eac0b2cd1283263d38d0e718" integrity sha512-LorC3NnmrBrryx4+l3BEsNQjD0Y7wfmrD1y/+tHDuZUuVj7w8nOxRXCBSppDfmgfpToOhwchh0JcL4IGMKUKDA== -vitest@^3.0.8: - version "3.0.8" - resolved "https://registry.yarnpkg.com/vitest/-/vitest-3.0.8.tgz#2b85e689d3067cf3b8e174626ecfcb8b24be0785" - integrity sha512-dfqAsNqRGUc8hB9OVR2P0w8PZPEckti2+5rdZip0WIz9WW0MnImJ8XiR61QhqLa92EQzKP2uPkzenKOAHyEIbA== - dependencies: - "@vitest/expect" "3.0.8" - "@vitest/mocker" "3.0.8" - "@vitest/pretty-format" "^3.0.8" - "@vitest/runner" "3.0.8" - "@vitest/snapshot" "3.0.8" - "@vitest/spy" "3.0.8" - "@vitest/utils" "3.0.8" +vitest@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/vitest/-/vitest-3.1.1.tgz#39fa2356e510513fccdc5d16465a9fc066ef1fc6" + integrity sha512-kiZc/IYmKICeBAZr9DQ5rT7/6bD9G7uqQEki4fxazi1jdVl2mWGzedtBs5s6llz59yQhVb7FFY2MbHzHCnT79Q== + dependencies: + "@vitest/expect" "3.1.1" + "@vitest/mocker" "3.1.1" + "@vitest/pretty-format" "^3.1.1" + "@vitest/runner" "3.1.1" + "@vitest/snapshot" "3.1.1" + "@vitest/spy" "3.1.1" + "@vitest/utils" "3.1.1" chai "^5.2.0" debug "^4.4.0" - expect-type "^1.1.0" + expect-type "^1.2.0" magic-string "^0.30.17" pathe "^2.0.3" - std-env "^3.8.0" + std-env "^3.8.1" tinybench "^2.9.0" tinyexec "^0.3.2" tinypool "^1.0.2" tinyrainbow "^2.0.0" vite "^5.0.0 || ^6.0.0" - vite-node "3.0.8" + vite-node "3.1.1" why-is-node-running "^2.3.0" vscode-uri@^3.1.0: @@ -4805,10 +4806,10 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -xml-formatter@^3.6.4: - version "3.6.4" - resolved "https://registry.yarnpkg.com/xml-formatter/-/xml-formatter-3.6.4.tgz#c9e70b9e4fc02f1ec9b9e561ef148418bfdbeeb0" - integrity sha512-vkvTNw4u9mp72lMmJHw771NE9EJLX0kfwIcP+ZEo9eJ6HmotX23vmykyROyIQ9Y3a+ckdUdhxIE2ZO66rYuPrg== +xml-formatter@^3.6.5: + version "3.6.5" + resolved "https://registry.yarnpkg.com/xml-formatter/-/xml-formatter-3.6.5.tgz#ef541394aa56de432ce5ead3f175640d8cd8a92e" + integrity sha512-5Dvux87y+abquO3Om8zRyOUdYkc22BnSS3zMhL2UgeCC+3lz9FbSBpAhzxmk+/qfTO3ypLRwTxJvByoG+FjTMA== dependencies: xml-parser-xo "^4.1.2" From 84c10251ea964f1e829e593154abd40a24a74e33 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 16 Apr 2025 19:19:38 +0200 Subject: [PATCH 3/4] chore(deps-dev): bump vite from 6.2.5 to 6.2.6 in /src/Serilog.Ui.Web (#174) Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.5 to 6.2.6. - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v6.2.6/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v6.2.6/packages/vite) --- updated-dependencies: - dependency-name: vite dependency-version: 6.2.6 dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- src/Serilog.Ui.Web/package.json | 2 +- src/Serilog.Ui.Web/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Serilog.Ui.Web/package.json b/src/Serilog.Ui.Web/package.json index c732dd2c..15381f72 100644 --- a/src/Serilog.Ui.Web/package.json +++ b/src/Serilog.Ui.Web/package.json @@ -65,7 +65,7 @@ "testing-library-selector": "^0.3.1", "typescript": "^5.8.3", "typescript-eslint": "^8.29.0", - "vite": "^6.2.5", + "vite": "^6.2.6", "vite-plugin-checker": "^0.9.1", "vite-plugin-mkcert": "^1.17.8", "vite-tsconfig-paths": "^5.1.4", diff --git a/src/Serilog.Ui.Web/yarn.lock b/src/Serilog.Ui.Web/yarn.lock index 770f5f92..48e0f063 100644 --- a/src/Serilog.Ui.Web/yarn.lock +++ b/src/Serilog.Ui.Web/yarn.lock @@ -4635,10 +4635,10 @@ vite-tsconfig-paths@^5.1.4: globrex "^0.1.2" tsconfck "^3.0.3" -"vite@^5.0.0 || ^6.0.0", vite@^6.2.5: - version "6.2.5" - resolved "https://registry.yarnpkg.com/vite/-/vite-6.2.5.tgz#d093b5fe8eb96e594761584a966ab13f24457820" - integrity sha512-j023J/hCAa4pRIUH6J9HemwYfjB5llR2Ps0CWeikOtdR8+pAURAk0DoJC5/mm9kd+UgdnIy7d6HE4EAvlYhPhA== +"vite@^5.0.0 || ^6.0.0", vite@^6.2.6: + version "6.2.6" + resolved "https://registry.yarnpkg.com/vite/-/vite-6.2.6.tgz#7f0ccf2fdc0c1eda079ce258508728e2473d3f61" + integrity sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw== dependencies: esbuild "^0.25.0" postcss "^8.5.3" From bbd70125d862ea152b804ba12ab11aceb11d5eab Mon Sep 17 00:00:00 2001 From: Matteo Gregoricchio <32459930+followynne@users.noreply.github.com> Date: Wed, 23 Apr 2025 21:38:52 +0200 Subject: [PATCH 4/4] chore: remove .NET7 support, release new SDK-compliant major versions for Postgres-Mongo-RavenDB --- build/_build.csproj | 2 +- samples/WebApi/WebApi.csproj | 14 +- .../WebApp/HostedServices/MongoDbService.cs | 21 +- samples/WebApp/WebApp.csproj | 25 +- .../Serilog.Ui.MongoDbProvider.csproj | 6 +- .../Serilog.Ui.MsSqlServerProvider.csproj | 4 +- .../Serilog.Ui.MySqlProvider.csproj | 6 +- .../Serilog.Ui.PostgreSqlProvider.csproj | 8 +- .../Serilog.Ui.RavenDbProvider.csproj | 4 +- .../Serilog.Ui.SqliteDataProvider.csproj | 5 +- src/Serilog.Ui.Web/Serilog.Ui.Web.csproj | 4 +- src/Serilog.Ui.Web/package.json | 28 +- src/Serilog.Ui.Web/src/mockServiceWorker.js | 2 +- src/Serilog.Ui.Web/yarn.lock | 593 +++++++++++------- tests/Directory.Build.props | 15 +- .../Serilog.Ui.Common.Tests.csproj | 4 +- .../Serilog.Ui.MongoDbProvider.Tests.csproj | 6 +- .../Util/BaseIntegrationTest.cs | 8 +- .../Builders/MongoDbDataProviderBuilder.cs | 29 +- .../Util/IntegrationDbGeneration.cs | 12 +- ...erilog.Ui.MsSqlServerProvider.Tests.csproj | 4 +- .../Util/MsSqlServerTestProvider.cs | 1 - .../Serilog.Ui.MySqlProvider.Tests.csproj | 4 +- ...Serilog.Ui.PostgreSqlProvider.Tests.csproj | 13 +- .../Serilog.Ui.RavenDbProvider.Tests.csproj | 2 +- .../Util/RavenDbTestProvider.cs | 19 +- .../Serilog.Ui.SqliteProvider.Tests.csproj | 5 +- .../Serilog.Ui.Web.Tests.csproj | 9 +- 28 files changed, 501 insertions(+), 352 deletions(-) diff --git a/build/_build.csproj b/build/_build.csproj index 35061507..6a4dada8 100644 --- a/build/_build.csproj +++ b/build/_build.csproj @@ -28,6 +28,6 @@ - + diff --git a/samples/WebApi/WebApi.csproj b/samples/WebApi/WebApi.csproj index 1d87072a..b14d6b6c 100644 --- a/samples/WebApi/WebApi.csproj +++ b/samples/WebApi/WebApi.csproj @@ -10,21 +10,21 @@ - + - - - + + + diff --git a/samples/WebApp/HostedServices/MongoDbService.cs b/samples/WebApp/HostedServices/MongoDbService.cs index 1c80194d..b09984dd 100644 --- a/samples/WebApp/HostedServices/MongoDbService.cs +++ b/samples/WebApp/HostedServices/MongoDbService.cs @@ -6,26 +6,13 @@ public class MongoDbService : IHostedService, IAsyncDisposable { private static IMongoRunner? _runner; - public Task StartAsync(CancellationToken cancellationToken) + public async Task StartAsync(CancellationToken cancellationToken) { - _runner ??= MongoRunner.Run(new MongoRunnerOptions + _runner ??= await MongoRunner.RunAsync(new() { UseSingleNodeReplicaSet = true, - StandardOuputLogger = Console.WriteLine, // Default: null - StandardErrorLogger = Console.WriteLine, // Default: null - ConnectionTimeout = TimeSpan.FromSeconds(10), // Default: 30 seconds - ReplicaSetSetupTimeout = TimeSpan.FromSeconds(5), // Default: 10 seconds - AdditionalArguments = "--quiet", // Default: null - MongoPort = 27099, // Default: random available port - - // EXPERIMENTAL - Only works on Windows and modern .NET (netcoreapp3.1, net5.0, net6.0, net7.0 and so on): - // Ensures that all MongoDB child processes are killed when the current process is prematurely killed, - // for instance when killed from the task manager or the IDE unit tests window. Processes are managed as a unit using - // job objects: https://learn.microsoft.com/en-us/windows/win32/procthread/job-objects - KillMongoProcessesWhenCurrentProcessExits = true // Default: false - }); - - return Task.CompletedTask; + MongoPort = 27099 + }, cancellationToken); } public Task StopAsync(CancellationToken cancellationToken) diff --git a/samples/WebApp/WebApp.csproj b/samples/WebApp/WebApp.csproj index 85205044..adee2c0d 100644 --- a/samples/WebApp/WebApp.csproj +++ b/samples/WebApp/WebApp.csproj @@ -1,7 +1,7 @@  - net6.0;net7.0;net8.0 + net6.0;net8.0 net8.0 enable @@ -13,33 +13,28 @@ - - - - - - + - + - - - - - + + + + + diff --git a/src/Serilog.Ui.MongoDbProvider/Serilog.Ui.MongoDbProvider.csproj b/src/Serilog.Ui.MongoDbProvider/Serilog.Ui.MongoDbProvider.csproj index df1e0435..ea8ef6ff 100644 --- a/src/Serilog.Ui.MongoDbProvider/Serilog.Ui.MongoDbProvider.csproj +++ b/src/Serilog.Ui.MongoDbProvider/Serilog.Ui.MongoDbProvider.csproj @@ -2,9 +2,9 @@ Serilog.UI.MongoDbProvider - netstandard2.0 + netstandard2.1 latest - 3.1.0 + 4.0.0 Christian Haase MongoDB data provider for Serilog UI. @@ -13,7 +13,7 @@ - + diff --git a/src/Serilog.Ui.MsSqlServerProvider/Serilog.Ui.MsSqlServerProvider.csproj b/src/Serilog.Ui.MsSqlServerProvider/Serilog.Ui.MsSqlServerProvider.csproj index c01d0388..50a2dff5 100644 --- a/src/Serilog.Ui.MsSqlServerProvider/Serilog.Ui.MsSqlServerProvider.csproj +++ b/src/Serilog.Ui.MsSqlServerProvider/Serilog.Ui.MsSqlServerProvider.csproj @@ -5,14 +5,14 @@ netstandard2.0 latest - 3.1.0 + 3.2.0 Microsoft SQL Server data provider for Serilog UI. serilog serilog-ui serilog.sinks.mssqlserver mssqlserver - + diff --git a/src/Serilog.Ui.MySqlProvider/Serilog.Ui.MySqlProvider.csproj b/src/Serilog.Ui.MySqlProvider/Serilog.Ui.MySqlProvider.csproj index 85f3e8ac..2419f3c1 100644 --- a/src/Serilog.Ui.MySqlProvider/Serilog.Ui.MySqlProvider.csproj +++ b/src/Serilog.Ui.MySqlProvider/Serilog.Ui.MySqlProvider.csproj @@ -4,15 +4,15 @@ Serilog.UI.MySqlProvider netstandard2.0 latest - 3.1.0 + 3.2.0 MySQL and MariaDB data provider for Serilog UI. serilog serilog-ui serilog.sinks.mysql serilog.sinks.mariadb - - + + diff --git a/src/Serilog.Ui.PostgreSqlProvider/Serilog.Ui.PostgreSqlProvider.csproj b/src/Serilog.Ui.PostgreSqlProvider/Serilog.Ui.PostgreSqlProvider.csproj index 47a97a7a..1f49532b 100644 --- a/src/Serilog.Ui.PostgreSqlProvider/Serilog.Ui.PostgreSqlProvider.csproj +++ b/src/Serilog.Ui.PostgreSqlProvider/Serilog.Ui.PostgreSqlProvider.csproj @@ -2,17 +2,17 @@ Serilog.UI.PostgreSqlProvider - netstandard2.0 + net6.0 latest - 3.1.0 + 4.0.0 True PostgreSQL data provider for Serilog UI. serilog serilog-ui serilog.sinks.postgresql postgresql - - + + diff --git a/src/Serilog.Ui.RavenDbProvider/Serilog.Ui.RavenDbProvider.csproj b/src/Serilog.Ui.RavenDbProvider/Serilog.Ui.RavenDbProvider.csproj index a055f756..75009a06 100644 --- a/src/Serilog.Ui.RavenDbProvider/Serilog.Ui.RavenDbProvider.csproj +++ b/src/Serilog.Ui.RavenDbProvider/Serilog.Ui.RavenDbProvider.csproj @@ -4,7 +4,7 @@ Serilog.Ui.RavenDbProvider netstandard2.0 latest - 2.1.0 + 3.0.0 enable enable @@ -15,7 +15,7 @@ - + diff --git a/src/Serilog.Ui.SqliteDataProvider/Serilog.Ui.SqliteDataProvider.csproj b/src/Serilog.Ui.SqliteDataProvider/Serilog.Ui.SqliteDataProvider.csproj index 9b25cc3e..ae667bae 100644 --- a/src/Serilog.Ui.SqliteDataProvider/Serilog.Ui.SqliteDataProvider.csproj +++ b/src/Serilog.Ui.SqliteDataProvider/Serilog.Ui.SqliteDataProvider.csproj @@ -4,7 +4,7 @@ Serilog.UI.SqliteProvider netstandard2.0 latest - 1.0.0 + 1.1.0 Tech Garage (team) SQLite data provider for Serilog UI. @@ -12,7 +12,8 @@ - + + diff --git a/src/Serilog.Ui.Web/Serilog.Ui.Web.csproj b/src/Serilog.Ui.Web/Serilog.Ui.Web.csproj index 09fc749b..98672a2e 100644 --- a/src/Serilog.Ui.Web/Serilog.Ui.Web.csproj +++ b/src/Serilog.Ui.Web/Serilog.Ui.Web.csproj @@ -2,9 +2,9 @@ Serilog.UI - net6.0;net7.0;net8.0 + net6.0;net8.0 latest - 3.1.1 + 3.2.0 diff --git a/src/Serilog.Ui.Web/package.json b/src/Serilog.Ui.Web/package.json index 15381f72..a0c2657b 100644 --- a/src/Serilog.Ui.Web/package.json +++ b/src/Serilog.Ui.Web/package.json @@ -15,35 +15,35 @@ }, "dependencies": { "@fontsource/mononoki": "^5.2.5", - "@mantine/core": "^7.17.3", - "@mantine/dates": "^7.17.3", - "@mantine/hooks": "^7.17.3", - "@mantine/notifications": "^7.17.3", + "@mantine/core": "^7.17.4", + "@mantine/dates": "^7.17.4", + "@mantine/hooks": "^7.17.4", + "@mantine/notifications": "^7.17.4", "@tabler/icons-react": "^3.31.0", - "@tanstack/react-query": "^5.71.10", + "@tanstack/react-query": "^5.74.4", "dayjs": "^1.11.13", "jose": "^6.0.10", "react": "^18.3.1", "react-dom": "^18.3.1", "react-hook-form": "^7.55.0", - "react-router": "^7.5.0", + "react-router": "^7.5.1", "xml-formatter": "^3.6.5" }, "devDependencies": { - "@faker-js/faker": "^9.6.0", + "@faker-js/faker": "^9.7.0", "@testing-library/dom": "^10.4.0", "@testing-library/jest-dom": "^6.6.3", "@testing-library/react": "^16.3.0", "@testing-library/user-event": "^14.6.1", - "@types/node": "^22.14.0", + "@types/node": "^22.14.1", "@types/react": "^18.3.11", "@types/react-dom": "^18.3.0", - "@vitejs/plugin-react-swc": "^3.8.1", + "@vitejs/plugin-react-swc": "^3.9.0", "@vitest/coverage-istanbul": "^3.1.1", "@vitest/ui": "^3.1.1", "@welldone-software/why-did-you-render": "^10.0.1", "eslint": "^8.57.0", - "eslint-config-prettier": "^10.1.1", + "eslint-config-prettier": "^10.1.2", "eslint-plugin-html": "^8.1.2", "eslint-plugin-import": "^2.31.0", "eslint-plugin-jsx-a11y": "^6.10.2", @@ -55,17 +55,17 @@ "eslint-plugin-vitest": "^0.5.4", "eslint-plugin-vitest-globals": "^1.5.0", "happy-dom": "^17.4.4", - "msw": "^2.7.3", + "msw": "^2.7.5", "postcss": "^8.5.3", "postcss-preset-mantine": "^1.17.0", "postcss-simple-vars": "^7.0.1", "prettier": "^3.5.3", "prettier-plugin-organize-imports": "^4.1.0", - "shiki": "^3.2.1", + "shiki": "^3.2.2", "testing-library-selector": "^0.3.1", "typescript": "^5.8.3", - "typescript-eslint": "^8.29.0", - "vite": "^6.2.6", + "typescript-eslint": "^8.30.1", + "vite": "^6.3.2", "vite-plugin-checker": "^0.9.1", "vite-plugin-mkcert": "^1.17.8", "vite-tsconfig-paths": "^5.1.4", diff --git a/src/Serilog.Ui.Web/src/mockServiceWorker.js b/src/Serilog.Ui.Web/src/mockServiceWorker.js index 34057e89..8b841baf 100644 --- a/src/Serilog.Ui.Web/src/mockServiceWorker.js +++ b/src/Serilog.Ui.Web/src/mockServiceWorker.js @@ -8,7 +8,7 @@ * - Please do NOT serve this file on production. */ -const PACKAGE_VERSION = '2.7.3' +const PACKAGE_VERSION = '2.7.5' const INTEGRITY_CHECKSUM = '00729d72e3b82faf54ca8b9621dbb96f' const IS_MOCKED_RESPONSE = Symbol('isMockedResponse') const activeClientIds = new Set() diff --git a/src/Serilog.Ui.Web/yarn.lock b/src/Serilog.Ui.Web/yarn.lock index 48e0f063..814ee604 100644 --- a/src/Serilog.Ui.Web/yarn.lock +++ b/src/Serilog.Ui.Web/yarn.lock @@ -335,10 +335,10 @@ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.1.tgz#de633db3ec2ef6a3c89e2f19038063e8a122e2c2" integrity sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q== -"@faker-js/faker@^9.6.0": - version "9.6.0" - resolved "https://registry.yarnpkg.com/@faker-js/faker/-/faker-9.6.0.tgz#64235d20330b142eef3d1d1638ba56c083b4bf1d" - integrity sha512-3vm4by+B5lvsFPSyep3ELWmZfE3kicDtmemVpuwl1yH7tqtnHdsA6hG8fbXedMVdkzgtvzWoRgjSB4Q+FHnZiw== +"@faker-js/faker@^9.7.0": + version "9.7.0" + resolved "https://registry.yarnpkg.com/@faker-js/faker/-/faker-9.7.0.tgz#1cf1fecfcad5e2da2332140bf3b5f23cc1c2a7f4" + integrity sha512-aozo5vqjCmDoXLNUJarFZx2IN/GgGaogY4TMJ6so/WLZOWpSV7fvj2dmrV6sEAnUm1O7aCrhTibjpzeDFgNqbg== "@floating-ui/core@^1.6.0": version "1.6.9" @@ -481,42 +481,42 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@mantine/core@^7.17.3": - version "7.17.3" - resolved "https://registry.yarnpkg.com/@mantine/core/-/core-7.17.3.tgz#78ee30bb4493c6117d6d381fbfc374d773eedf8b" - integrity sha512-N/AfV5eMnfEMx9WzI7AU5pNFBEzAfT/KtE2XDKS+0ht6RifUmolIxyIvoGMYz2yUEsCBMJZqmBq33Rabf5W7Ug== +"@mantine/core@^7.17.4": + version "7.17.4" + resolved "https://registry.yarnpkg.com/@mantine/core/-/core-7.17.4.tgz#a537cc673d3e052da5bbec01bdd77cd87cacd9e1" + integrity sha512-Ea4M/98jxgIWCuxCdM0YIotVYjfLTGQsfIA6zDg0LsClgjo/ZLnnh4zbi+bLNgM+GGjP4ju7gv4MZvaTKuLO8g== dependencies: "@floating-ui/react" "^0.26.28" clsx "^2.1.1" react-number-format "^5.4.3" react-remove-scroll "^2.6.2" - react-textarea-autosize "8.5.6" + react-textarea-autosize "8.5.9" type-fest "^4.27.0" -"@mantine/dates@^7.17.3": - version "7.17.3" - resolved "https://registry.yarnpkg.com/@mantine/dates/-/dates-7.17.3.tgz#b1f4308df560d6980c4104108a9e30b8958b6c1e" - integrity sha512-gegLSlK7mi3jAaL/JMLdy6oK9CmY08nXoLvbeO03i+751bmbbbzpoFAaxMzbR6vkP9tPuoapOxJqgDzn2Jm+Dw== +"@mantine/dates@^7.17.4": + version "7.17.4" + resolved "https://registry.yarnpkg.com/@mantine/dates/-/dates-7.17.4.tgz#d4a305c966e9ebc63eb1121ee6863e505bd502b2" + integrity sha512-6oqcmcJb0Pypju+/z6s9nEVa3B9Pdj5DTrdj/FP/RD7RFx4k7nHi+jFstn4qcso6nghRRROKMHErfqrBybjzKA== dependencies: clsx "^2.1.1" -"@mantine/hooks@^7.17.3": - version "7.17.3" - resolved "https://registry.yarnpkg.com/@mantine/hooks/-/hooks-7.17.3.tgz#fe8c32edaeffb43f0fa5d984f6373fcef47f1ff8" - integrity sha512-6o65Rbfl8jd1C1nF9icvungqL0qZViEOmrZgkyKXxBYkC3x91fz4zftwQgNjt1tZHWDNO6Bo4GpRjJyAdwl48g== +"@mantine/hooks@^7.17.4": + version "7.17.4" + resolved "https://registry.yarnpkg.com/@mantine/hooks/-/hooks-7.17.4.tgz#45f7e6b0ca7d6ed80c91972f8eaa34358c7792e6" + integrity sha512-PBcJxDAfGm8k1/JJmaDcxzRVQ3JSE1iXGktbgGz+qEOJmCxwbbAYe+CtGFFgi1xX2bPZ+7dtRr/+XFhnKtt/aw== -"@mantine/notifications@^7.17.3": - version "7.17.3" - resolved "https://registry.yarnpkg.com/@mantine/notifications/-/notifications-7.17.3.tgz#156d74b5b5acd6d14028a5e77c3ec622413ab1ae" - integrity sha512-MqakDqu/CZzO4arZGpXs3TmGTajqL4xm28vtqW4qWFSU5HZWQ4EosqipqvIJ+swC6YbxNiWvFcfnxxPlHdYk9g== +"@mantine/notifications@^7.17.4": + version "7.17.4" + resolved "https://registry.yarnpkg.com/@mantine/notifications/-/notifications-7.17.4.tgz#e82798cfa762c7e29306ff84a00abc34d53b5c7a" + integrity sha512-YxNmnZSfIG69lPMFItOZZsizYL3DsOLVUSPkkJILG5pW2F798dc4IA5mhRIbdmzDEx0ArWHJ7gsdd3Vmm5ubPg== dependencies: - "@mantine/store" "7.17.3" + "@mantine/store" "7.17.4" react-transition-group "4.4.5" -"@mantine/store@7.17.3": - version "7.17.3" - resolved "https://registry.yarnpkg.com/@mantine/store/-/store-7.17.3.tgz#6f2b623d28bd8f4b74c8f2e013544c858fc999d9" - integrity sha512-wXQXe/Ljv2N6TDRsoVwOHmTGZey7Nt/SS6VeeMujKeNnAybPPXaP1jIbN50MKJoDS4qVPCHJNaHwVKIgMur2aQ== +"@mantine/store@7.17.4": + version "7.17.4" + resolved "https://registry.yarnpkg.com/@mantine/store/-/store-7.17.4.tgz#8930a29da9d9d1a59f4d7fe36e4fa805c11bcb16" + integrity sha512-a/EecHPtYVxhu3oMX9uTymGolmOBWxW8Qs4fLCjiazEJbS1ScI4lS71GK/SuOa2rGuuOJkaotpyritbx3paIRg== "@mswjs/interceptors@^0.37.0": version "0.37.6" @@ -589,146 +589,246 @@ resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.35.0.tgz#e1d7700735f7e8de561ef7d1fa0362082a180c43" integrity sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ== +"@rollup/rollup-android-arm-eabi@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.0.tgz#d964ee8ce4d18acf9358f96adc408689b6e27fe3" + integrity sha512-+Fbls/diZ0RDerhE8kyC6hjADCXA1K4yVNlH0EYfd2XjyH0UGgzaQ8MlT0pCXAThfxv3QUAczHaL+qSv1E4/Cg== + "@rollup/rollup-android-arm64@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.35.0.tgz#fa6cdfb1fc9e2c8e227a7f35d524d8f7f90cf4db" integrity sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA== +"@rollup/rollup-android-arm64@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.0.tgz#9b5e130ecc32a5fc1e96c09ff371743ee71a62d3" + integrity sha512-PPA6aEEsTPRz+/4xxAmaoWDqh67N7wFbgFUJGMnanCFs0TV99M0M8QhhaSCks+n6EbQoFvLQgYOGXxlMGQe/6w== + "@rollup/rollup-darwin-arm64@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.35.0.tgz#6da5a1ddc4f11d4a7ae85ab443824cb6bf614e30" integrity sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q== +"@rollup/rollup-darwin-arm64@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.0.tgz#ef439182c739b20b3c4398cfc03e3c1249ac8903" + integrity sha512-GwYOcOakYHdfnjjKwqpTGgn5a6cUX7+Ra2HeNj/GdXvO2VJOOXCiYYlRFU4CubFM67EhbmzLOmACKEfvp3J1kQ== + "@rollup/rollup-darwin-x64@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.35.0.tgz#25b74ce2d8d3f9ea8e119b01384d44a1c0a0d3ae" integrity sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q== +"@rollup/rollup-darwin-x64@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.0.tgz#d7380c1531ab0420ca3be16f17018ef72dd3d504" + integrity sha512-CoLEGJ+2eheqD9KBSxmma6ld01czS52Iw0e2qMZNpPDlf7Z9mj8xmMemxEucinev4LgHalDPczMyxzbq+Q+EtA== + "@rollup/rollup-freebsd-arm64@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.35.0.tgz#be3d39e3441df5d6e187c83d158c60656c82e203" integrity sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ== +"@rollup/rollup-freebsd-arm64@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.0.tgz#cbcbd7248823c6b430ce543c59906dd3c6df0936" + integrity sha512-r7yGiS4HN/kibvESzmrOB/PxKMhPTlz+FcGvoUIKYoTyGd5toHp48g1uZy1o1xQvybwwpqpe010JrcGG2s5nkg== + "@rollup/rollup-freebsd-x64@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.35.0.tgz#cd932d3ec679711efd65ca25821fb318e25b7ce4" integrity sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw== +"@rollup/rollup-freebsd-x64@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.0.tgz#96bf6ff875bab5219c3472c95fa6eb992586a93b" + integrity sha512-mVDxzlf0oLzV3oZOr0SMJ0lSDd3xC4CmnWJ8Val8isp9jRGl5Dq//LLDSPFrasS7pSm6m5xAcKaw3sHXhBjoRw== + "@rollup/rollup-linux-arm-gnueabihf@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.35.0.tgz#d300b74c6f805474225632f185daaeae760ac2bb" integrity sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg== +"@rollup/rollup-linux-arm-gnueabihf@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.0.tgz#d80cd62ce6d40f8e611008d8dbf03b5e6bbf009c" + integrity sha512-y/qUMOpJxBMy8xCXD++jeu8t7kzjlOCkoxxajL58G62PJGBZVl/Gwpm7JK9+YvlB701rcQTzjUZ1JgUoPTnoQA== + "@rollup/rollup-linux-arm-musleabihf@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.35.0.tgz#2caac622380f314c41934ed1e68ceaf6cc380cc3" integrity sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A== +"@rollup/rollup-linux-arm-musleabihf@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.0.tgz#75440cfc1e8d0f87a239b4c31dfeaf4719b656b7" + integrity sha512-GoCsPibtVdJFPv/BOIvBKO/XmwZLwaNWdyD8TKlXuqp0veo2sHE+A/vpMQ5iSArRUz/uaoj4h5S6Pn0+PdhRjg== + "@rollup/rollup-linux-arm64-gnu@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.35.0.tgz#1ec841650b038cc15c194c26326483fd7ebff3e3" integrity sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A== +"@rollup/rollup-linux-arm64-gnu@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.0.tgz#ac527485ecbb619247fb08253ec8c551a0712e7c" + integrity sha512-L5ZLphTjjAD9leJzSLI7rr8fNqJMlGDKlazW2tX4IUF9P7R5TMQPElpH82Q7eNIDQnQlAyiNVfRPfP2vM5Avvg== + "@rollup/rollup-linux-arm64-musl@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.35.0.tgz#2fc70a446d986e27f6101ea74e81746987f69150" integrity sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg== +"@rollup/rollup-linux-arm64-musl@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.0.tgz#74d2b5cb11cf714cd7d1682e7c8b39140e908552" + integrity sha512-ATZvCRGCDtv1Y4gpDIXsS+wfFeFuLwVxyUBSLawjgXK2tRE6fnsQEkE4csQQYWlBlsFztRzCnBvWVfcae/1qxQ== + "@rollup/rollup-linux-loongarch64-gnu@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.35.0.tgz#561bd045cd9ce9e08c95f42e7a8688af8c93d764" integrity sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g== +"@rollup/rollup-linux-loongarch64-gnu@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.0.tgz#a0a310e51da0b5fea0e944b0abd4be899819aef6" + integrity sha512-wG9e2XtIhd++QugU5MD9i7OnpaVb08ji3P1y/hNbxrQ3sYEelKJOq1UJ5dXczeo6Hj2rfDEL5GdtkMSVLa/AOg== + "@rollup/rollup-linux-powerpc64le-gnu@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.35.0.tgz#45d849a0b33813f33fe5eba9f99e0ff15ab5caad" integrity sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA== +"@rollup/rollup-linux-powerpc64le-gnu@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.0.tgz#4077e2862b0ac9f61916d6b474d988171bd43b83" + integrity sha512-vgXfWmj0f3jAUvC7TZSU/m/cOE558ILWDzS7jBhiCAFpY2WEBn5jqgbqvmzlMjtp8KlLcBlXVD2mkTSEQE6Ixw== + "@rollup/rollup-linux-riscv64-gnu@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.35.0.tgz#78dde3e6fcf5b5733a97d0a67482d768aa1e83a5" integrity sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g== +"@rollup/rollup-linux-riscv64-gnu@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.0.tgz#5812a1a7a2f9581cbe12597307cc7ba3321cf2f3" + integrity sha512-uJkYTugqtPZBS3Z136arevt/FsKTF/J9dEMTX/cwR7lsAW4bShzI2R0pJVw+hcBTWF4dxVckYh72Hk3/hWNKvA== + +"@rollup/rollup-linux-riscv64-musl@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.0.tgz#973aaaf4adef4531375c36616de4e01647f90039" + integrity sha512-rKmSj6EXQRnhSkE22+WvrqOqRtk733x3p5sWpZilhmjnkHkpeCgWsFFo0dGnUGeA+OZjRl3+VYq+HyCOEuwcxQ== + "@rollup/rollup-linux-s390x-gnu@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.35.0.tgz#2e34835020f9e03dfb411473a5c2a0e8a9c5037b" integrity sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw== +"@rollup/rollup-linux-s390x-gnu@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.0.tgz#9bad59e907ba5bfcf3e9dbd0247dfe583112f70b" + integrity sha512-SpnYlAfKPOoVsQqmTFJ0usx0z84bzGOS9anAC0AZ3rdSo3snecihbhFTlJZ8XMwzqAcodjFU4+/SM311dqE5Sw== + "@rollup/rollup-linux-x64-gnu@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.35.0.tgz#4f9774beddc6f4274df57ac99862eb23040de461" integrity sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA== +"@rollup/rollup-linux-x64-gnu@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.0.tgz#68b045a720bd9b4d905f462b997590c2190a6de0" + integrity sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ== + "@rollup/rollup-linux-x64-musl@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.35.0.tgz#dfcff2c1aed518b3d23ccffb49afb349d74fb608" integrity sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg== +"@rollup/rollup-linux-x64-musl@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.0.tgz#8e703e2c2ad19ba7b2cb3d8c3a4ad11d4ee3a282" + integrity sha512-HZvjpiUmSNx5zFgwtQAV1GaGazT2RWvqeDi0hV+AtC8unqqDSsaFjPxfsO6qPtKRRg25SisACWnJ37Yio8ttaw== + "@rollup/rollup-win32-arm64-msvc@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.35.0.tgz#b0b37e2d77041e3aa772f519291309abf4c03a84" integrity sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg== +"@rollup/rollup-win32-arm64-msvc@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.0.tgz#c5bee19fa670ff5da5f066be6a58b4568e9c650b" + integrity sha512-UtZQQI5k/b8d7d3i9AZmA/t+Q4tk3hOC0tMOMSq2GlMYOfxbesxG4mJSeDp0EHs30N9bsfwUvs3zF4v/RzOeTQ== + "@rollup/rollup-win32-ia32-msvc@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.35.0.tgz#5b5a40e44a743ddc0e06b8e1b3982f856dc9ce0a" integrity sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw== +"@rollup/rollup-win32-ia32-msvc@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.0.tgz#846e02c17044bd922f6f483a3b4d36aac6e2b921" + integrity sha512-+m03kvI2f5syIqHXCZLPVYplP8pQch9JHyXKZ3AGMKlg8dCyr2PKHjwRLiW53LTrN/Nc3EqHOKxUxzoSPdKddA== + "@rollup/rollup-win32-x64-msvc@4.35.0": version "4.35.0" resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.35.0.tgz#05f25dbc9981bee1ae6e713daab10397044a46ca" integrity sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw== +"@rollup/rollup-win32-x64-msvc@4.40.0": + version "4.40.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.0.tgz#fd92d31a2931483c25677b9c6698106490cbbc76" + integrity sha512-lpPE1cLfP5oPzVjKMx10pgBmKELQnFJXHgvtHCtuJWOv8MxqdEIMNtgHgBFf7Ea2/7EuVwa9fodWUfXAlXZLZQ== + "@rtsao/scc@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g== -"@shikijs/core@3.2.1": - version "3.2.1" - resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-3.2.1.tgz#87b9255c469a5097fcec23ecba5a99ce073e8601" - integrity sha512-FhsdxMWYu/C11sFisEp7FMGBtX/OSSbnXZDMBhGuUDBNTdsoZlMSgQv5f90rwvzWAdWIW6VobD+G3IrazxA6dQ== +"@shikijs/core@3.2.2": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-3.2.2.tgz#d3c7f53d964ee68ec63f4ad55a62dcf9eb42a9f8" + integrity sha512-yvlSKVMLjddAGBa2Yu+vUZxuu3sClOWW1AG+UtJkvejYuGM5BVL35s6Ijiwb75O9QdEx6IkMxinHZSi8ZyrBaA== dependencies: - "@shikijs/types" "3.2.1" + "@shikijs/types" "3.2.2" "@shikijs/vscode-textmate" "^10.0.2" "@types/hast" "^3.0.4" hast-util-to-html "^9.0.5" -"@shikijs/engine-javascript@3.2.1": - version "3.2.1" - resolved "https://registry.yarnpkg.com/@shikijs/engine-javascript/-/engine-javascript-3.2.1.tgz#97220fba7cde24eb700ab41f2090061cfc95454e" - integrity sha512-eMdcUzN3FMQYxOmRf2rmU8frikzoSHbQDFH2hIuXsrMO+IBOCI9BeeRkCiBkcLDHeRKbOCtYMJK3D6U32ooU9Q== +"@shikijs/engine-javascript@3.2.2": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@shikijs/engine-javascript/-/engine-javascript-3.2.2.tgz#d9a02f07ef6f173d929520ee36442560cf229f86" + integrity sha512-tlDKfhWpF4jKLUyVAnmL+ggIC+0VyteNsUpBzh1iwWLZu4i+PelIRr0TNur6pRRo5UZIv3ss/PLMuwahg9S2hg== dependencies: - "@shikijs/types" "3.2.1" + "@shikijs/types" "3.2.2" "@shikijs/vscode-textmate" "^10.0.2" oniguruma-to-es "^4.1.0" -"@shikijs/engine-oniguruma@3.2.1": - version "3.2.1" - resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-3.2.1.tgz#be07d9f09a4b5e35af1896ff232001b9d4f5466e" - integrity sha512-wZZAkayEn6qu2+YjenEoFqj0OyQI64EWsNR6/71d1EkG4sxEOFooowKivsWPpaWNBu3sxAG+zPz5kzBL/SsreQ== +"@shikijs/engine-oniguruma@3.2.2": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-3.2.2.tgz#2a68e7be01960161615bcd6866a74f63c25578bc" + integrity sha512-vyXRnWVCSvokwbaUD/8uPn6Gqsf5Hv7XwcW4AgiU4Z2qwy19sdr6VGzMdheKKN58tJOOe5MIKiNb901bgcUXYQ== dependencies: - "@shikijs/types" "3.2.1" + "@shikijs/types" "3.2.2" "@shikijs/vscode-textmate" "^10.0.2" -"@shikijs/langs@3.2.1": - version "3.2.1" - resolved "https://registry.yarnpkg.com/@shikijs/langs/-/langs-3.2.1.tgz#662390328675e0244f18559bade4aac0e60e5b64" - integrity sha512-If0iDHYRSGbihiA8+7uRsgb1er1Yj11pwpX1c6HLYnizDsKAw5iaT3JXj5ZpaimXSWky/IhxTm7C6nkiYVym+A== +"@shikijs/langs@3.2.2": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@shikijs/langs/-/langs-3.2.2.tgz#b4db801a27e9e29191cac8766db610a048e66cdb" + integrity sha512-NY0Urg2dV9ETt3JIOWoMPuoDNwte3geLZ4M1nrPHbkDS8dWMpKcEwlqiEIGqtwZNmt5gKyWpR26ln2Bg2ecPgw== dependencies: - "@shikijs/types" "3.2.1" + "@shikijs/types" "3.2.2" -"@shikijs/themes@3.2.1": - version "3.2.1" - resolved "https://registry.yarnpkg.com/@shikijs/themes/-/themes-3.2.1.tgz#93d9c5fcc16649ec1e017217c0a88209cc619731" - integrity sha512-k5DKJUT8IldBvAm8WcrDT5+7GA7se6lLksR+2E3SvyqGTyFMzU2F9Gb7rmD+t+Pga1MKrYFxDIeyWjMZWM6uBQ== +"@shikijs/themes@3.2.2": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@shikijs/themes/-/themes-3.2.2.tgz#56b9d6f6803296e9cb7233e25334897496d40d9d" + integrity sha512-Zuq4lgAxVKkb0FFdhHSdDkALuRpsj1so1JdihjKNQfgM78EHxV2JhO10qPsMrm01FkE3mDRTdF68wfmsqjt6HA== dependencies: - "@shikijs/types" "3.2.1" + "@shikijs/types" "3.2.2" -"@shikijs/types@3.2.1": - version "3.2.1" - resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-3.2.1.tgz#8d289ad95d62833d7f9af536c073312d7afe8182" - integrity sha512-/NTWAk4KE2M8uac0RhOsIhYQf4pdU0OywQuYDGIGAJ6Mjunxl2cGiuLkvu4HLCMn+OTTLRWkjZITp+aYJv60yA== +"@shikijs/types@3.2.2": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-3.2.2.tgz#3718364c46965b15b767a38ef663877f4f7e6fa9" + integrity sha512-a5TiHk7EH5Lso8sHcLHbVNNhWKP0Wi3yVnXnu73g86n3WoDgEra7n3KszyeCGuyoagspQ2fzvy4cpSc8pKhb0A== dependencies: "@shikijs/vscode-textmate" "^10.0.2" "@types/hast" "^3.0.4" @@ -738,74 +838,74 @@ resolved "https://registry.yarnpkg.com/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz#a90ab31d0cc1dfb54c66a69e515bf624fa7b2224" integrity sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg== -"@swc/core-darwin-arm64@1.11.16": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.11.16.tgz#3001aaed6ec20e97a75064f09a391f1f2d811614" - integrity sha512-l6uWMU+MUdfLHCl3dJgtVEdsUHPskoA4BSu0L1hh9SGBwPZ8xeOz8iLIqZM27lTuXxL4KsYH6GQR/OdQ/vhLtg== - -"@swc/core-darwin-x64@1.11.16": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.11.16.tgz#2b06c2efbceda4577a82dae9692a2c140069aa1e" - integrity sha512-TH0IW8Ao1WZ4ARFHIh29dAQHYBEl4YnP74n++rjppmlCjY+8v3s5nXMA7IqxO3b5LVHyggWtU4+46DXTyMJM7g== - -"@swc/core-linux-arm-gnueabihf@1.11.16": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.11.16.tgz#d5ca1d3564c01a1d830baf2b0e8d47301030aae4" - integrity sha512-2IxD9t09oNZrbv37p4cJ9cTHMUAK6qNiShi9s2FJ9LcqSnZSN4iS4hvaaX6KZuG54d58vWnMU7yycjkdOTQcMg== - -"@swc/core-linux-arm64-gnu@1.11.16": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.11.16.tgz#18b60f2ab274fcf3b5df404c77e24cdd64d12bd1" - integrity sha512-AYkN23DOiPh1bf3XBf/xzZQDKSsgZTxlbyTyUIhprLJpAAAT0ZCGAUcS5mHqydk0nWQ13ABUymodvHoroutNzw== - -"@swc/core-linux-arm64-musl@1.11.16": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.11.16.tgz#66ca2d8689ececffe174b37f40e516efa9df0374" - integrity sha512-n/nWXDRCIhM51dDGELfBcTMNnCiFatE7LDvsbYxb7DJt1HGjaCNvHHCKURb/apJTh/YNtWfgFap9dbsTgw8yPA== - -"@swc/core-linux-x64-gnu@1.11.16": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.11.16.tgz#bd13bafd45ab847af9980cda3251bdd3c7f52187" - integrity sha512-xr182YQrF47n7Awxj+/ruI21bYw+xO/B26KFVnb+i3ezF9NOhqoqTX+33RL1ZLA/uFTq8ksPZO/y+ZVS/odtQA== - -"@swc/core-linux-x64-musl@1.11.16": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.11.16.tgz#c691175c0dd46ad4ff97ff5ed0b968d99832fbc7" - integrity sha512-k2JBfiwWfXCIKrBRjFO9/vEdLSYq0QLJ+iNSLdfrejZ/aENNkbEg8O7O2GKUSb30RBacn6k8HMfJrcPLFiEyCQ== - -"@swc/core-win32-arm64-msvc@1.11.16": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.11.16.tgz#944fbe37dc347634cb0d3f52ef5547b4a98616eb" - integrity sha512-taOb5U+abyEhQgex+hr6cI48BoqSvSdfmdirWcxprIEUBHCxa1dSriVwnJRAJOFI9T+5BEz88by6rgbB9MjbHA== - -"@swc/core-win32-ia32-msvc@1.11.16": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.11.16.tgz#4e0539c82bde71d8f2acf61f6cc732d39d944c67" - integrity sha512-b7yYggM9LBDiMY+XUt5kYWvs5sn0U3PXSOGvF3CbLufD/N/YQiDcYON2N3lrWHYL8aYnwbuZl45ojmQHSQPcdA== - -"@swc/core-win32-x64-msvc@1.11.16": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.11.16.tgz#98418776be552a5d1fcdccf3e73f16cd7c4d8a4a" - integrity sha512-/ibq/YDc3B5AROkpOKPGxVkSyCKOg+ml8k11RxrW7FAPy6a9y5y9KPcWIqV74Ahq4RuaMNslTQqHWAGSm0xJsQ== - -"@swc/core@^1.11.11": - version "1.11.16" - resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.11.16.tgz#c1ceba4ab2904576672eab0b650cea986e97bb2e" - integrity sha512-wgjrJqVUss8Lxqilg0vkiE0tkEKU3mZkoybQM1Ehy+PKWwwB6lFAwKi20cAEFlSSWo8jFR8hRo19ZELAoLDowg== +"@swc/core-darwin-arm64@1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.11.21.tgz#8bae966479e96481ff4b6ac285d6684cb7e31995" + integrity sha512-v6gjw9YFWvKulCw3ZA1dY+LGMafYzJksm1mD4UZFZ9b36CyHFowYVYug1ajYRIRqEvvfIhHUNV660zTLoVFR8g== + +"@swc/core-darwin-x64@1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.11.21.tgz#231ba71b64ddac14e9ca97f4622c9d2fb681f602" + integrity sha512-CUiTiqKlzskwswrx9Ve5NhNoab30L1/ScOfQwr1duvNlFvarC8fvQSgdtpw2Zh3MfnfNPpyLZnYg7ah4kbT9JQ== + +"@swc/core-linux-arm-gnueabihf@1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.11.21.tgz#0c73e3a3751898895db103bee5bad342da23d2ca" + integrity sha512-YyBTAFM/QPqt1PscD8hDmCLnqPGKmUZpqeE25HXY8OLjl2MUs8+O4KjwPZZ+OGxpdTbwuWFyMoxjcLy80JODvg== + +"@swc/core-linux-arm64-gnu@1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.11.21.tgz#678a6aaba5aa42d62fa3fdfa0b0e28a77ebc18d1" + integrity sha512-DQD+ooJmwpNsh4acrftdkuwl5LNxxg8U4+C/RJNDd7m5FP9Wo4c0URi5U0a9Vk/6sQNh9aSGcYChDpqCDWEcBw== + +"@swc/core-linux-arm64-musl@1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.11.21.tgz#f1b66df0a9f0a81c3a574f4b3e560deee56012bc" + integrity sha512-y1L49+snt1a1gLTYPY641slqy55QotPdtRK9Y6jMi4JBQyZwxC8swWYlQWb+MyILwxA614fi62SCNZNznB3XSA== + +"@swc/core-linux-x64-gnu@1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.11.21.tgz#5d3d83763cebc686cc0ef9fa6b3461118a3bfb6c" + integrity sha512-NesdBXv4CvVEaFUlqKj+GA4jJMNUzK2NtKOrUNEtTbXaVyNiXjFCSaDajMTedEB0jTAd9ybB0aBvwhgkJUWkWA== + +"@swc/core-linux-x64-musl@1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.11.21.tgz#5e0cc95bf89b74ba913afeb66cc93f35d59abea0" + integrity sha512-qFV60pwpKVOdmX67wqQzgtSrUGWX9Cibnp1CXyqZ9Mmt8UyYGvmGu7p6PMbTyX7vdpVUvWVRf8DzrW2//wmVHg== + +"@swc/core-win32-arm64-msvc@1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.11.21.tgz#070c70f5684b6f96e3d51f7ca3c70d7f971cffa9" + integrity sha512-DJJe9k6gXR/15ZZVLv1SKhXkFst8lYCeZRNHH99SlBodvu4slhh/MKQ6YCixINRhCwliHrpXPym8/5fOq8b7Ig== + +"@swc/core-win32-ia32-msvc@1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.11.21.tgz#e72ad415d18d7e4660a9ebb8529ffd68c02c61da" + integrity sha512-TqEXuy6wedId7bMwLIr9byds+mKsaXVHctTN88R1UIBPwJA92Pdk0uxDgip0pEFzHB/ugU27g6d8cwUH3h2eIw== + +"@swc/core-win32-x64-msvc@1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.11.21.tgz#7ff6dd290b36c013a98aea877cda288251e48119" + integrity sha512-BT9BNNbMxdpUM1PPAkYtviaV0A8QcXttjs2MDtOeSqqvSJaPtyM+Fof2/+xSwQDmDEFzbGCcn75M5+xy3lGqpA== + +"@swc/core@^1.11.21": + version "1.11.21" + resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.11.21.tgz#012dc73111e6ecea96cc30b522a50355eca4b35c" + integrity sha512-/Y3BJLcwd40pExmdar8MH2UGGvCBrqNN7hauOMckrEX2Ivcbv3IMhrbGX4od1dnF880Ed8y/E9aStZCIQi0EGw== dependencies: "@swc/counter" "^0.1.3" "@swc/types" "^0.1.21" optionalDependencies: - "@swc/core-darwin-arm64" "1.11.16" - "@swc/core-darwin-x64" "1.11.16" - "@swc/core-linux-arm-gnueabihf" "1.11.16" - "@swc/core-linux-arm64-gnu" "1.11.16" - "@swc/core-linux-arm64-musl" "1.11.16" - "@swc/core-linux-x64-gnu" "1.11.16" - "@swc/core-linux-x64-musl" "1.11.16" - "@swc/core-win32-arm64-msvc" "1.11.16" - "@swc/core-win32-ia32-msvc" "1.11.16" - "@swc/core-win32-x64-msvc" "1.11.16" + "@swc/core-darwin-arm64" "1.11.21" + "@swc/core-darwin-x64" "1.11.21" + "@swc/core-linux-arm-gnueabihf" "1.11.21" + "@swc/core-linux-arm64-gnu" "1.11.21" + "@swc/core-linux-arm64-musl" "1.11.21" + "@swc/core-linux-x64-gnu" "1.11.21" + "@swc/core-linux-x64-musl" "1.11.21" + "@swc/core-win32-arm64-msvc" "1.11.21" + "@swc/core-win32-ia32-msvc" "1.11.21" + "@swc/core-win32-x64-msvc" "1.11.21" "@swc/counter@^0.1.3": version "0.1.3" @@ -831,17 +931,17 @@ resolved "https://registry.yarnpkg.com/@tabler/icons/-/icons-3.31.0.tgz#92d39dc336f2e3e312170420b00ffe9ca474925e" integrity sha512-dblAdeKY3+GA1U+Q9eziZ0ooVlZMHsE8dqP0RkwvRtEsAULoKOYaCUOcJ4oW1DjWegdxk++UAt2SlQVnmeHv+g== -"@tanstack/query-core@5.71.10": - version "5.71.10" - resolved "https://registry.yarnpkg.com/@tanstack/query-core/-/query-core-5.71.10.tgz#1f2dc5abf595156e7d9c5d6e4f47e805a7083c30" - integrity sha512-/fKEY8fO1nbszfrBatzmhJa1nEwIKn0c6Tv2A1ocSA5OiD2GukOIV8nnBbvJRgZb/VIoBy9/N4PVbABI8YQLow== +"@tanstack/query-core@5.74.4": + version "5.74.4" + resolved "https://registry.yarnpkg.com/@tanstack/query-core/-/query-core-5.74.4.tgz#08c4f88f336738d822d9242c5e7d2be50f5c25b3" + integrity sha512-YuG0A0+3i9b2Gfo9fkmNnkUWh5+5cFhWBN0pJAHkHilTx6A0nv8kepkk4T4GRt4e5ahbtFj2eTtkiPcVU1xO4A== -"@tanstack/react-query@^5.71.10": - version "5.71.10" - resolved "https://registry.yarnpkg.com/@tanstack/react-query/-/react-query-5.71.10.tgz#940d485a499b86aaa37764e26709ed79b393fe29" - integrity sha512-mQYM/ObpL8YMDz8vCoUuHkbe8Yu7NnVRH8aBaBa/3zlufjp1f1VuWjeO3TcumNHfuVMDwEAGinsgwrB7OKADiQ== +"@tanstack/react-query@^5.74.4": + version "5.74.4" + resolved "https://registry.yarnpkg.com/@tanstack/react-query/-/react-query-5.74.4.tgz#d73ee1899c08a227519cbf53b9a0e0b1e67cd3fe" + integrity sha512-mAbxw60d4ffQ4qmRYfkO1xzRBPUEf/72Dgo3qqea0J66nIKuDTLEqQt0ku++SDFlMGMnB6uKDnEG1xD/TDse4Q== dependencies: - "@tanstack/query-core" "5.71.10" + "@tanstack/query-core" "5.74.4" "@testing-library/dom@^10.4.0": version "10.4.0" @@ -897,6 +997,11 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== +"@types/estree@1.0.7": + version "1.0.7" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.7.tgz#4158d3105276773d5b7695cd4834b1722e4f37a8" + integrity sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ== + "@types/hast@^3.0.0", "@types/hast@^3.0.4": version "3.0.4" resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.4.tgz#1d6b39993b82cea6ad783945b0508c25903e15aa" @@ -916,10 +1021,10 @@ dependencies: "@types/unist" "*" -"@types/node@^22.14.0": - version "22.14.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.14.0.tgz#d3bfa3936fef0dbacd79ea3eb17d521c628bb47e" - integrity sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA== +"@types/node@^22.14.1": + version "22.14.1" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.14.1.tgz#53b54585cec81c21eee3697521e31312d6ca1e6f" + integrity sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw== dependencies: undici-types "~6.21.0" @@ -956,30 +1061,30 @@ resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c" integrity sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q== -"@typescript-eslint/eslint-plugin@8.29.0": - version "8.29.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.29.0.tgz#151c4878700a5ad229ce6713d2674d58b626b3d9" - integrity sha512-PAIpk/U7NIS6H7TEtN45SPGLQaHNgB7wSjsQV/8+KYokAb2T/gloOA/Bee2yd4/yKVhPKe5LlaUGhAZk5zmSaQ== +"@typescript-eslint/eslint-plugin@8.30.1": + version "8.30.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.30.1.tgz#9beb9e4fbfdde40410e96587cc56dded1942cdf1" + integrity sha512-v+VWphxMjn+1t48/jO4t950D6KR8JaJuNXzi33Ve6P8sEmPr5k6CEXjdGwT6+LodVnEa91EQCtwjWNUCPweo+Q== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "8.29.0" - "@typescript-eslint/type-utils" "8.29.0" - "@typescript-eslint/utils" "8.29.0" - "@typescript-eslint/visitor-keys" "8.29.0" + "@typescript-eslint/scope-manager" "8.30.1" + "@typescript-eslint/type-utils" "8.30.1" + "@typescript-eslint/utils" "8.30.1" + "@typescript-eslint/visitor-keys" "8.30.1" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^2.0.1" -"@typescript-eslint/parser@8.29.0": - version "8.29.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.29.0.tgz#b98841e0a8099728cb8583da92326fcb7f5be1d2" - integrity sha512-8C0+jlNJOwQso2GapCVWWfW/rzaq7Lbme+vGUFKE31djwNncIpgXD7Cd4weEsDdkoZDjH0lwwr3QDQFuyrMg9g== +"@typescript-eslint/parser@8.30.1": + version "8.30.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.30.1.tgz#8a9fa650b046e64656e21d4fdff86535b6a084b6" + integrity sha512-H+vqmWwT5xoNrXqWs/fesmssOW70gxFlgcMlYcBaWNPIEWDgLa4W9nkSPmhuOgLnXq9QYgkZ31fhDyLhleCsAg== dependencies: - "@typescript-eslint/scope-manager" "8.29.0" - "@typescript-eslint/types" "8.29.0" - "@typescript-eslint/typescript-estree" "8.29.0" - "@typescript-eslint/visitor-keys" "8.29.0" + "@typescript-eslint/scope-manager" "8.30.1" + "@typescript-eslint/types" "8.30.1" + "@typescript-eslint/typescript-estree" "8.30.1" + "@typescript-eslint/visitor-keys" "8.30.1" debug "^4.3.4" "@typescript-eslint/scope-manager@7.18.0": @@ -998,21 +1103,21 @@ "@typescript-eslint/types" "8.26.0" "@typescript-eslint/visitor-keys" "8.26.0" -"@typescript-eslint/scope-manager@8.29.0": - version "8.29.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.29.0.tgz#8fd9872823aef65ff71d3f6d1ec9316ace0b6bf3" - integrity sha512-aO1PVsq7Gm+tcghabUpzEnVSFMCU4/nYIgC2GOatJcllvWfnhrgW0ZEbnTxm36QsikmCN1K/6ZgM7fok2I7xNw== +"@typescript-eslint/scope-manager@8.30.1": + version "8.30.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.30.1.tgz#f99c7efd53b5ff9fb57e55be71eb855603fd80b7" + integrity sha512-+C0B6ChFXZkuaNDl73FJxRYT0G7ufVPOSQkqkpM/U198wUwUFOtgo1k/QzFh1KjpBitaK7R1tgjVz6o9HmsRPg== dependencies: - "@typescript-eslint/types" "8.29.0" - "@typescript-eslint/visitor-keys" "8.29.0" + "@typescript-eslint/types" "8.30.1" + "@typescript-eslint/visitor-keys" "8.30.1" -"@typescript-eslint/type-utils@8.29.0": - version "8.29.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.29.0.tgz#98dcfd1193cb4e2b2d0294a8656ce5eb58c443a9" - integrity sha512-ahaWQ42JAOx+NKEf5++WC/ua17q5l+j1GFrbbpVKzFL/tKVc0aYY8rVSYUpUvt2hUP1YBr7mwXzx+E/DfUWI9Q== +"@typescript-eslint/type-utils@8.30.1": + version "8.30.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.30.1.tgz#151ee0529d6e6df19d8a3a23e81c809d2e4f6b1a" + integrity sha512-64uBF76bfQiJyHgZISC7vcNz3adqQKIccVoKubyQcOnNcdJBvYOILV1v22Qhsw3tw3VQu5ll8ND6hycgAR5fEA== dependencies: - "@typescript-eslint/typescript-estree" "8.29.0" - "@typescript-eslint/utils" "8.29.0" + "@typescript-eslint/typescript-estree" "8.30.1" + "@typescript-eslint/utils" "8.30.1" debug "^4.3.4" ts-api-utils "^2.0.1" @@ -1026,10 +1131,10 @@ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.26.0.tgz#c4e93a8faf3a38a8d8adb007dc7834f1c89ee7bf" integrity sha512-89B1eP3tnpr9A8L6PZlSjBvnJhWXtYfZhECqlBl1D9Lme9mHO6iWlsprBtVenQvY1HMhax1mWOjhtL3fh/u+pA== -"@typescript-eslint/types@8.29.0": - version "8.29.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.29.0.tgz#65add70ab4ef66beaa42a5addf87dab2b05b1f33" - integrity sha512-wcJL/+cOXV+RE3gjCyl/V2G877+2faqvlgtso/ZRbTCnZazh0gXhe+7gbAnfubzN2bNsBtZjDvlh7ero8uIbzg== +"@typescript-eslint/types@8.30.1": + version "8.30.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.30.1.tgz#20ff6d66ab3d8fe0533aeb7092a487393d53f925" + integrity sha512-81KawPfkuulyWo5QdyG/LOKbspyyiW+p4vpn4bYO7DM/hZImlVnFwrpCTnmNMOt8CvLRr5ojI9nU1Ekpw4RcEw== "@typescript-eslint/typescript-estree@7.18.0": version "7.18.0" @@ -1059,13 +1164,13 @@ semver "^7.6.0" ts-api-utils "^2.0.1" -"@typescript-eslint/typescript-estree@8.29.0": - version "8.29.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.29.0.tgz#d201a4f115327ec90496307c9958262285065b00" - integrity sha512-yOfen3jE9ISZR/hHpU/bmNvTtBW1NjRbkSFdZOksL1N+ybPEE7UVGMwqvS6CP022Rp00Sb0tdiIkhSCe6NI8ow== +"@typescript-eslint/typescript-estree@8.30.1": + version "8.30.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.30.1.tgz#f5c133e4a76a54d25607434f2c276409d7bec4ba" + integrity sha512-kQQnxymiUy9tTb1F2uep9W6aBiYODgq5EMSk6Nxh4Z+BDUoYUSa029ISs5zTzKBFnexQEh71KqwjKnRz58lusQ== dependencies: - "@typescript-eslint/types" "8.29.0" - "@typescript-eslint/visitor-keys" "8.29.0" + "@typescript-eslint/types" "8.30.1" + "@typescript-eslint/visitor-keys" "8.30.1" debug "^4.3.4" fast-glob "^3.3.2" is-glob "^4.0.3" @@ -1073,15 +1178,15 @@ semver "^7.6.0" ts-api-utils "^2.0.1" -"@typescript-eslint/utils@8.29.0": - version "8.29.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.29.0.tgz#d6d22b19c8c4812a874f00341f686b45b9fe895f" - integrity sha512-gX/A0Mz9Bskm8avSWFcK0gP7cZpbY4AIo6B0hWYFCaIsz750oaiWR4Jr2CI+PQhfW1CpcQr9OlfPS+kMFegjXA== +"@typescript-eslint/utils@8.30.1": + version "8.30.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.30.1.tgz#23d4824394765948fe73dc7113892f85fdc80efd" + integrity sha512-T/8q4R9En2tcEsWPQgB5BQ0XJVOtfARcUvOa8yJP3fh9M/mXraLxZrkCfGb6ChrO/V3W+Xbd04RacUEqk1CFEQ== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "8.29.0" - "@typescript-eslint/types" "8.29.0" - "@typescript-eslint/typescript-estree" "8.29.0" + "@typescript-eslint/scope-manager" "8.30.1" + "@typescript-eslint/types" "8.30.1" + "@typescript-eslint/typescript-estree" "8.30.1" "@typescript-eslint/utils@^7.7.1": version "7.18.0" @@ -1119,12 +1224,12 @@ "@typescript-eslint/types" "8.26.0" eslint-visitor-keys "^4.2.0" -"@typescript-eslint/visitor-keys@8.29.0": - version "8.29.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.29.0.tgz#2356336c9efdc3597ffcd2aa1ce95432852b743d" - integrity sha512-Sne/pVz8ryR03NFK21VpN88dZ2FdQXOlq3VIklbrTYEt8yXtRFr9tvUhqvCeKjqYk5FSim37sHbooT6vzBTZcg== +"@typescript-eslint/visitor-keys@8.30.1": + version "8.30.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.30.1.tgz#510955ef1fb56e08da4b7953a3377258e5942e36" + integrity sha512-aEhgas7aJ6vZnNFC7K4/vMGDGyOiqWcYZPpIWrTKuTAlsvDNKy2GFDqh9smL+iq069ZvR0YzEeq0B8NJlLzjFA== dependencies: - "@typescript-eslint/types" "8.29.0" + "@typescript-eslint/types" "8.30.1" eslint-visitor-keys "^4.2.0" "@ungap/structured-clone@^1.0.0", "@ungap/structured-clone@^1.2.0": @@ -1132,12 +1237,12 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.3.0.tgz#d06bbb384ebcf6c505fde1c3d0ed4ddffe0aaff8" integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== -"@vitejs/plugin-react-swc@^3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@vitejs/plugin-react-swc/-/plugin-react-swc-3.8.1.tgz#663f14b72b1f42f6e61f412ea320e287b3065c41" - integrity sha512-aEUPCckHDcFyxpwFm0AIkbtv6PpUp3xTb9wYGFjtABynXjCYKkWoxX0AOK9NT9XCrdk6mBBUOeHQS+RKdcNO1A== +"@vitejs/plugin-react-swc@^3.9.0": + version "3.9.0" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-react-swc/-/plugin-react-swc-3.9.0.tgz#4db7fc9a31c52b16cc778ddfd6fb6ade02e9b36a" + integrity sha512-jYFUSXhwMCYsh/aQTgSGLIN3Foz5wMbH9ahb0Zva//UzwZYbMiZd7oT3AU9jHT9DLswYDswsRwPU9jVF3yA48Q== dependencies: - "@swc/core" "^1.11.11" + "@swc/core" "^1.11.21" "@vitest/coverage-istanbul@^3.1.1": version "3.1.1" @@ -2045,10 +2150,10 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -eslint-config-prettier@^10.1.1: - version "10.1.1" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-10.1.1.tgz#cf0ff6e5c4e7e15f129f1f1ce2a5ecba92dec132" - integrity sha512-4EQQr6wXwS+ZJSzaR5ZCrYgLxqvUjdXctaEtBqHcbkW944B1NQyO4qpdHQbXBONfwxXdkAY81HH4+LUfrg+zPw== +eslint-config-prettier@^10.1.2: + version "10.1.2" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-10.1.2.tgz#31a4b393c40c4180202c27e829af43323bf85276" + integrity sha512-Epgp/EofAUeEpIdZkW60MHKvPyru1ruQJxPL+WIycnaPApuseK0Zpkrh/FwL9oIpQvIhJwV7ptOy0DWUjTlCiA== eslint-import-resolver-node@^0.3.9: version "0.3.9" @@ -3255,10 +3360,10 @@ ms@^2.1.1, ms@^2.1.3: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -msw@^2.7.3: - version "2.7.3" - resolved "https://registry.yarnpkg.com/msw/-/msw-2.7.3.tgz#5ad569fae7c7cdb8be2eeba3d041c185600b25a0" - integrity sha512-+mycXv8l2fEAjFZ5sjrtjJDmm2ceKGjrNbBr1durRg6VkU9fNUE/gsmQ51hWbHqs+l35W1iM+ZsmOD9Fd6lspw== +msw@^2.7.5: + version "2.7.5" + resolved "https://registry.yarnpkg.com/msw/-/msw-2.7.5.tgz#8e73e58ac84d490e819d30b2ad8ce4cb3f9b7f94" + integrity sha512-00MyTlY3TJutBa5kiU+jWiz2z5pNJDYHn2TgPkGkh92kMmNH43RqvMXd8y/7HxNn8RjzUbvZWYZjcS36fdb6sw== dependencies: "@bundled-es-modules/cookie" "^2.0.1" "@bundled-es-modules/statuses" "^1.0.1" @@ -3693,12 +3798,11 @@ react-remove-scroll@^2.6.2: use-callback-ref "^1.3.3" use-sidecar "^1.1.3" -react-router@^7.5.0: - version "7.5.0" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-7.5.0.tgz#649568e7e3b4133dee1dcf333d8a3a37b1967f58" - integrity sha512-estOHrRlDMKdlQa6Mj32gIks4J+AxNsYoE0DbTTxiMy2mPzZuWSDU+N85/r1IlNR7kGfznF3VCUlvc5IUO+B9g== +react-router@^7.5.1: + version "7.5.1" + resolved "https://registry.yarnpkg.com/react-router/-/react-router-7.5.1.tgz#e0bae54e913d139e727e7a88d165174a2cdbeb27" + integrity sha512-/jjU3fcYNd2bwz9Q0xt5TwyiyoO8XjSEFXJY4O/lMAlkGTHWuHRAbR9Etik+lSDqMC7A7mz3UlXzgYT6Vl58sA== dependencies: - "@types/cookie" "^0.6.0" cookie "^1.0.1" set-cookie-parser "^2.6.0" turbo-stream "2.4.0" @@ -3711,10 +3815,10 @@ react-style-singleton@^2.2.2, react-style-singleton@^2.2.3: get-nonce "^1.0.0" tslib "^2.0.0" -react-textarea-autosize@8.5.6: - version "8.5.6" - resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-8.5.6.tgz#e9205fb215eea7cbb6cba8f57dd874ab5d44a241" - integrity sha512-aT3ioKXMa8f6zHYGebhbdMD2L00tKeRX1zuVuDx9YQK/JLLRSaSxq3ugECEmUB9z2kvk6bFSIoRHLkkUv0RJiw== +react-textarea-autosize@8.5.9: + version "8.5.9" + resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-8.5.9.tgz#ab8627b09aa04d8a2f45d5b5cd94c84d1d4a8893" + integrity sha512-U1DGlIQN5AwgjTyOEnI1oCcMuEr1pv1qOtklB2l4nyMGbHzWrI0eFsYK0zos2YWqAolJyG0IWJaqWmWj5ETh0A== dependencies: "@babel/runtime" "^7.20.13" use-composed-ref "^1.3.0" @@ -3873,6 +3977,35 @@ rollup@^4.30.1: "@rollup/rollup-win32-x64-msvc" "4.35.0" fsevents "~2.3.2" +rollup@^4.34.9: + version "4.40.0" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.40.0.tgz#13742a615f423ccba457554f006873d5a4de1920" + integrity sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w== + dependencies: + "@types/estree" "1.0.7" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.40.0" + "@rollup/rollup-android-arm64" "4.40.0" + "@rollup/rollup-darwin-arm64" "4.40.0" + "@rollup/rollup-darwin-x64" "4.40.0" + "@rollup/rollup-freebsd-arm64" "4.40.0" + "@rollup/rollup-freebsd-x64" "4.40.0" + "@rollup/rollup-linux-arm-gnueabihf" "4.40.0" + "@rollup/rollup-linux-arm-musleabihf" "4.40.0" + "@rollup/rollup-linux-arm64-gnu" "4.40.0" + "@rollup/rollup-linux-arm64-musl" "4.40.0" + "@rollup/rollup-linux-loongarch64-gnu" "4.40.0" + "@rollup/rollup-linux-powerpc64le-gnu" "4.40.0" + "@rollup/rollup-linux-riscv64-gnu" "4.40.0" + "@rollup/rollup-linux-riscv64-musl" "4.40.0" + "@rollup/rollup-linux-s390x-gnu" "4.40.0" + "@rollup/rollup-linux-x64-gnu" "4.40.0" + "@rollup/rollup-linux-x64-musl" "4.40.0" + "@rollup/rollup-win32-arm64-msvc" "4.40.0" + "@rollup/rollup-win32-ia32-msvc" "4.40.0" + "@rollup/rollup-win32-x64-msvc" "4.40.0" + fsevents "~2.3.2" + run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -3973,17 +4106,17 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shiki@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/shiki/-/shiki-3.2.1.tgz#6b27ee9e7742e6c95f432031b78a8337e4be74ff" - integrity sha512-VML/2o1/KGYkEf/stJJ+s9Ypn7jUKQPomGLGYso4JJFMFxVDyPNsjsI3MB3KLjlMOeH44gyaPdXC6rik2WXvUQ== - dependencies: - "@shikijs/core" "3.2.1" - "@shikijs/engine-javascript" "3.2.1" - "@shikijs/engine-oniguruma" "3.2.1" - "@shikijs/langs" "3.2.1" - "@shikijs/themes" "3.2.1" - "@shikijs/types" "3.2.1" +shiki@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/shiki/-/shiki-3.2.2.tgz#aa231cc84efcf4f2a875de604aa7a45efe446fd2" + integrity sha512-0qWBkM2t/0NXPRcVgtLhtHv6Ak3Q5yI4K/ggMqcgLRKm4+pCs3namgZlhlat/7u2CuqNtlShNs9lENOG6n7UaQ== + dependencies: + "@shikijs/core" "3.2.2" + "@shikijs/engine-javascript" "3.2.2" + "@shikijs/engine-oniguruma" "3.2.2" + "@shikijs/langs" "3.2.2" + "@shikijs/themes" "3.2.2" + "@shikijs/types" "3.2.2" "@shikijs/vscode-textmate" "^10.0.2" "@types/hast" "^3.0.4" @@ -4438,14 +4571,14 @@ typed-array-length@^1.0.7: possible-typed-array-names "^1.0.0" reflect.getprototypeof "^1.0.6" -typescript-eslint@^8.29.0: - version "8.29.0" - resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.29.0.tgz#fc059b4c840889e5180dd822594eb46fa4619093" - integrity sha512-ep9rVd9B4kQsZ7ZnWCVxUE/xDLUUUsRzE0poAeNu+4CkFErLfuvPt/qtm2EpnSyfvsR0S6QzDFSrPCFBwf64fg== +typescript-eslint@^8.30.1: + version "8.30.1" + resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.30.1.tgz#c9ed49b459bd98e325fb78e2c86943dce7bb1cc0" + integrity sha512-D7lC0kcehVH7Mb26MRQi64LMyRJsj3dToJxM1+JVTl53DQSV5/7oUGWQLcKl1C1KnoVHxMMU2FNQMffr7F3Row== dependencies: - "@typescript-eslint/eslint-plugin" "8.29.0" - "@typescript-eslint/parser" "8.29.0" - "@typescript-eslint/utils" "8.29.0" + "@typescript-eslint/eslint-plugin" "8.30.1" + "@typescript-eslint/parser" "8.30.1" + "@typescript-eslint/utils" "8.30.1" typescript@^5.8.3: version "5.8.3" @@ -4635,7 +4768,7 @@ vite-tsconfig-paths@^5.1.4: globrex "^0.1.2" tsconfck "^3.0.3" -"vite@^5.0.0 || ^6.0.0", vite@^6.2.6: +"vite@^5.0.0 || ^6.0.0": version "6.2.6" resolved "https://registry.yarnpkg.com/vite/-/vite-6.2.6.tgz#7f0ccf2fdc0c1eda079ce258508728e2473d3f61" integrity sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw== @@ -4646,6 +4779,20 @@ vite-tsconfig-paths@^5.1.4: optionalDependencies: fsevents "~2.3.3" +vite@^6.3.2: + version "6.3.2" + resolved "https://registry.yarnpkg.com/vite/-/vite-6.3.2.tgz#4c1bb01b1cea853686a191657bbc14272a038f0a" + integrity sha512-ZSvGOXKGceizRQIZSz7TGJ0pS3QLlVY/9hwxVh17W3re67je1RKYzFHivZ/t0tubU78Vkyb9WnHPENSBCzbckg== + dependencies: + esbuild "^0.25.0" + fdir "^6.4.3" + picomatch "^4.0.2" + postcss "^8.5.3" + rollup "^4.34.9" + tinyglobby "^0.2.12" + optionalDependencies: + fsevents "~2.3.3" + vitest-sonar-reporter@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/vitest-sonar-reporter/-/vitest-sonar-reporter-2.0.0.tgz#6372e5faba2b2834eac0b2cd1283263d38d0e718" diff --git a/tests/Directory.Build.props b/tests/Directory.Build.props index 939207ef..604cff02 100644 --- a/tests/Directory.Build.props +++ b/tests/Directory.Build.props @@ -10,21 +10,22 @@ - - - + + + all runtime; build; native; contentfiles; analyzers - - - + + + + runtime; build; native; contentfiles; analyzers; buildtransitive all - + runtime; build; native; contentfiles; analyzers; buildtransitive all diff --git a/tests/Serilog.Ui.Common.Tests/Serilog.Ui.Common.Tests.csproj b/tests/Serilog.Ui.Common.Tests/Serilog.Ui.Common.Tests.csproj index 625cd480..52905e8b 100644 --- a/tests/Serilog.Ui.Common.Tests/Serilog.Ui.Common.Tests.csproj +++ b/tests/Serilog.Ui.Common.Tests/Serilog.Ui.Common.Tests.csproj @@ -5,8 +5,8 @@ - - + + diff --git a/tests/Serilog.Ui.MongoDbProvider.Tests/Serilog.Ui.MongoDbProvider.Tests.csproj b/tests/Serilog.Ui.MongoDbProvider.Tests/Serilog.Ui.MongoDbProvider.Tests.csproj index 40d116f1..a2817e04 100644 --- a/tests/Serilog.Ui.MongoDbProvider.Tests/Serilog.Ui.MongoDbProvider.Tests.csproj +++ b/tests/Serilog.Ui.MongoDbProvider.Tests/Serilog.Ui.MongoDbProvider.Tests.csproj @@ -3,13 +3,11 @@ MongoDb.Tests MongoDb.Tests - - false - - + + diff --git a/tests/Serilog.Ui.MongoDbProvider.Tests/Util/BaseIntegrationTest.cs b/tests/Serilog.Ui.MongoDbProvider.Tests/Util/BaseIntegrationTest.cs index db37d3bb..e256cfd3 100644 --- a/tests/Serilog.Ui.MongoDbProvider.Tests/Util/BaseIntegrationTest.cs +++ b/tests/Serilog.Ui.MongoDbProvider.Tests/Util/BaseIntegrationTest.cs @@ -23,11 +23,9 @@ public class BaseIntegrationTest : IIntegrationRunner public Task DisposeAsync() => Task.CompletedTask; - public virtual Task InitializeAsync() + public virtual async Task InitializeAsync() { - Builder = MongoDbDataProviderBuilder.Build(); - - return Task.CompletedTask; + Builder = await MongoDbDataProviderBuilder.Build(); } public IDataProvider GetDataProvider() => Guard.Against.Null(Builder?.Sut); @@ -38,7 +36,7 @@ protected virtual void Dispose(bool disposing) { if (!_disposedValue) { - if (disposing && Builder != null) + if (disposing && Builder != null && Builder.Runner != null) { Builder.Runner.Dispose(); } diff --git a/tests/Serilog.Ui.MongoDbProvider.Tests/Util/Builders/MongoDbDataProviderBuilder.cs b/tests/Serilog.Ui.MongoDbProvider.Tests/Util/Builders/MongoDbDataProviderBuilder.cs index 173fe973..7eb3a151 100644 --- a/tests/Serilog.Ui.MongoDbProvider.Tests/Util/Builders/MongoDbDataProviderBuilder.cs +++ b/tests/Serilog.Ui.MongoDbProvider.Tests/Util/Builders/MongoDbDataProviderBuilder.cs @@ -1,4 +1,5 @@ -using Mongo2Go; +using System.Threading.Tasks; +using EphemeralMongo; using MongoDB.Driver; using Serilog; using Serilog.Ui.Common.Tests.DataSamples; @@ -11,29 +12,33 @@ public class MongoDbDataProviderBuilder { private const string DefaultDbName = "IntegrationTests"; - internal readonly MongoDbRunner Runner; - internal readonly MongoDbOptions Options; - internal readonly IMongoClient Client; - internal readonly IMongoDatabase Database; + internal IMongoRunner? Runner; + internal MongoDbOptions Options; + private IMongoClient? Client; internal IDataProvider? Sut; internal LogModelPropsCollector? Collector; private MongoDbDataProviderBuilder(MongoDbOptions options) { Options = options; - (Runner, Client) = IntegrationDbGeneration.Generate(options); - Database = Client!.GetDatabase(options.DatabaseName); - - Sut = new MongoDbDataProvider(Client, Options); - Collector = Seed(Options.ConnectionString); } - public static MongoDbDataProviderBuilder Build() + public static Task Build() { var options = new MongoDbOptions() .WithCollectionName("LogCollection") .WithDatabaseName(DefaultDbName); - return new MongoDbDataProviderBuilder(options); + return new MongoDbDataProviderBuilder(options).Init(); + } + + private async Task Init() + { + (Runner, Client) = await IntegrationDbGeneration.Generate(Options); + + Sut = new MongoDbDataProvider(Client, Options); + Collector = Seed(Options.ConnectionString); + + return this; } private static LogModelPropsCollector Seed(string? connectionString) diff --git a/tests/Serilog.Ui.MongoDbProvider.Tests/Util/IntegrationDbGeneration.cs b/tests/Serilog.Ui.MongoDbProvider.Tests/Util/IntegrationDbGeneration.cs index 03a7a1a5..40037829 100644 --- a/tests/Serilog.Ui.MongoDbProvider.Tests/Util/IntegrationDbGeneration.cs +++ b/tests/Serilog.Ui.MongoDbProvider.Tests/Util/IntegrationDbGeneration.cs @@ -1,5 +1,6 @@ using System; -using Mongo2Go; +using System.Threading.Tasks; +using EphemeralMongo; using MongoDB.Driver; using Serilog.Ui.Core.Extensions; using Serilog.Ui.MongoDbProvider; @@ -8,9 +9,14 @@ namespace MongoDb.Tests.Util; public static class IntegrationDbGeneration { - public static (MongoDbRunner runner, IMongoClient client) Generate(MongoDbOptions options) + public static async Task<(IMongoRunner runner, IMongoClient client)> Generate(MongoDbOptions options) { - var runner = MongoDbRunner.Start(singleNodeReplSet: true); + // don't add an using here - runner should be disposed by the Generate invoker! + var runner = await MongoRunner.RunAsync(new() + { + UseSingleNodeReplicaSet = true, + MongoPort = 27098 + }); var settings = MongoClientSettings.FromConnectionString(runner.ConnectionString); settings.ServerSelectionTimeout = TimeSpan.FromSeconds(10); var client = new MongoClient(settings); diff --git a/tests/Serilog.Ui.MsSqlServerProvider.Tests/Serilog.Ui.MsSqlServerProvider.Tests.csproj b/tests/Serilog.Ui.MsSqlServerProvider.Tests/Serilog.Ui.MsSqlServerProvider.Tests.csproj index ac334f2b..f995d6c1 100644 --- a/tests/Serilog.Ui.MsSqlServerProvider.Tests/Serilog.Ui.MsSqlServerProvider.Tests.csproj +++ b/tests/Serilog.Ui.MsSqlServerProvider.Tests/Serilog.Ui.MsSqlServerProvider.Tests.csproj @@ -5,8 +5,8 @@ - - + + diff --git a/tests/Serilog.Ui.MsSqlServerProvider.Tests/Util/MsSqlServerTestProvider.cs b/tests/Serilog.Ui.MsSqlServerProvider.Tests/Util/MsSqlServerTestProvider.cs index 9ba7ec99..04fc5e7b 100644 --- a/tests/Serilog.Ui.MsSqlServerProvider.Tests/Util/MsSqlServerTestProvider.cs +++ b/tests/Serilog.Ui.MsSqlServerProvider.Tests/Util/MsSqlServerTestProvider.cs @@ -32,7 +32,6 @@ protected MsSqlServerTestProvider() .ForUnixContainer() .UntilCommandIsCompleted("/opt/mssql-tools18/bin/sqlcmd", "-C", "-Q", "SELECT 1;"); Container = new MsSqlBuilder() - .WithImage("mcr.microsoft.com/mssql/server:2022-CU14-ubuntu-22.04") .WithWaitStrategy(waitStrategy) .Build(); } diff --git a/tests/Serilog.Ui.MySqlProvider.Tests/Serilog.Ui.MySqlProvider.Tests.csproj b/tests/Serilog.Ui.MySqlProvider.Tests/Serilog.Ui.MySqlProvider.Tests.csproj index ee69e498..1c9e0ca0 100644 --- a/tests/Serilog.Ui.MySqlProvider.Tests/Serilog.Ui.MySqlProvider.Tests.csproj +++ b/tests/Serilog.Ui.MySqlProvider.Tests/Serilog.Ui.MySqlProvider.Tests.csproj @@ -7,8 +7,8 @@ - - + + diff --git a/tests/Serilog.Ui.PostgreSqlProvider.Tests/Serilog.Ui.PostgreSqlProvider.Tests.csproj b/tests/Serilog.Ui.PostgreSqlProvider.Tests/Serilog.Ui.PostgreSqlProvider.Tests.csproj index c5e708c9..f1a59ed2 100644 --- a/tests/Serilog.Ui.PostgreSqlProvider.Tests/Serilog.Ui.PostgreSqlProvider.Tests.csproj +++ b/tests/Serilog.Ui.PostgreSqlProvider.Tests/Serilog.Ui.PostgreSqlProvider.Tests.csproj @@ -1,12 +1,19 @@  - Postgres.Tests - Postgres.Tests + Postgres.Tests + Postgres.Tests + + + + - + + + + diff --git a/tests/Serilog.Ui.RavenDbProvider.Tests/Serilog.Ui.RavenDbProvider.Tests.csproj b/tests/Serilog.Ui.RavenDbProvider.Tests/Serilog.Ui.RavenDbProvider.Tests.csproj index 257a0a3e..68183373 100644 --- a/tests/Serilog.Ui.RavenDbProvider.Tests/Serilog.Ui.RavenDbProvider.Tests.csproj +++ b/tests/Serilog.Ui.RavenDbProvider.Tests/Serilog.Ui.RavenDbProvider.Tests.csproj @@ -8,7 +8,7 @@ - + diff --git a/tests/Serilog.Ui.RavenDbProvider.Tests/Util/RavenDbTestProvider.cs b/tests/Serilog.Ui.RavenDbProvider.Tests/Util/RavenDbTestProvider.cs index b31faa16..ba6e755b 100644 --- a/tests/Serilog.Ui.RavenDbProvider.Tests/Util/RavenDbTestProvider.cs +++ b/tests/Serilog.Ui.RavenDbProvider.Tests/Util/RavenDbTestProvider.cs @@ -1,5 +1,7 @@ using Ardalis.GuardClauses; using Raven.Client.Documents; +using Raven.Client.Documents.Operations; +using Raven.Client.Exceptions.Database; using Raven.Client.ServerWide; using Raven.Client.ServerWide.Operations; using Serilog; @@ -25,21 +27,30 @@ public sealed class RavenDbTestProvider : DatabaseInstance public RavenDbTestProvider() { _documentStore = new DocumentStore { Database = DbName }; - Container = new RavenDbBuilder().Build(); + Container = new RavenDbBuilder() + .WithImage("ravendb/ravendb:7.0-ubuntu-latest") + .Build(); } protected override string Name => nameof(RavenDbContainer); - protected override Task CheckDbReadinessAsync() + protected override async Task CheckDbReadinessAsync() { Guard.Against.Null(Container); var container = Container as RavenDbContainer; _documentStore.Urls = [container?.GetConnectionString()]; _documentStore.Initialize(); - _documentStore.Maintenance.Server.Send(new CreateDatabaseOperation(new DatabaseRecord(DbName))); - return Task.CompletedTask; + try + { + await _documentStore.Maintenance.ForDatabase(DbName).SendAsync(new GetStatisticsOperation()); + } + catch (DatabaseDoesNotExistException) + { + var record = new DatabaseRecord(DbName); + await _documentStore.Maintenance.Server.SendAsync(new CreateDatabaseOperation(record)); + } } protected override Task InitializeAdditionalAsync() diff --git a/tests/Serilog.Ui.SqliteProvider.Tests/Serilog.Ui.SqliteProvider.Tests.csproj b/tests/Serilog.Ui.SqliteProvider.Tests/Serilog.Ui.SqliteProvider.Tests.csproj index 182a83e5..a7d98876 100644 --- a/tests/Serilog.Ui.SqliteProvider.Tests/Serilog.Ui.SqliteProvider.Tests.csproj +++ b/tests/Serilog.Ui.SqliteProvider.Tests/Serilog.Ui.SqliteProvider.Tests.csproj @@ -3,6 +3,7 @@ Sqlite.Tests Sqlite.Tests + $(NoWarn);NETSDK1206 @@ -14,10 +15,6 @@ - - - - diff --git a/tests/Serilog.Ui.Web.Tests/Serilog.Ui.Web.Tests.csproj b/tests/Serilog.Ui.Web.Tests/Serilog.Ui.Web.Tests.csproj index 4e2c8dfc..4ac461fc 100644 --- a/tests/Serilog.Ui.Web.Tests/Serilog.Ui.Web.Tests.csproj +++ b/tests/Serilog.Ui.Web.Tests/Serilog.Ui.Web.Tests.csproj @@ -7,20 +7,17 @@ - - + - - - - + +