diff --git a/packages/ui/core-components/src/lib/themes.js b/packages/ui/core-components/src/lib/themes.js index 3a8b590de5..f8a481902a 100644 --- a/packages/ui/core-components/src/lib/themes.js +++ b/packages/ui/core-components/src/lib/themes.js @@ -4,7 +4,6 @@ import { getContext, setContext } from 'svelte'; import { derived, get, readable, readonly } from 'svelte/store'; import { browser } from '$app/environment'; import { localStorageStore } from '@evidence-dev/component-utilities/stores'; -import { isBuiltinColorPalette } from '@evidence-dev/tailwind'; import { themes, themesConfig } from '$evidence/themes'; /** @template T @typedef {import("svelte/store").Readable} Readable */ @@ -150,77 +149,92 @@ export class ThemeStores { }; /** - * @type {{ - * (input: T[]): Readable<(string | T)[]>; - * (input: Record): Readable>; - * (input: T): Readable; - * }} + * @param {unknown} input + * @returns {Readable} */ resolveColor = (input) => { if (typeof input === 'string') { - const trimmed = input.trim(); - const r = derived(this.#theme, ($theme) => $theme.colors[trimmed] ?? trimmed); - return /** @type {any} */ (r); + return derived(this.#theme, ($theme) => $theme.colors[input.trim()] ?? input); } - if (Array.isArray(input)) { - const r = derived(this.#theme, ($theme) => - input.map((color) => { - if (typeof color !== 'string') return color; - return $theme.colors[color] ?? color; - }) - ); - return /** @type {any} */ (r); + if (isStringTuple(input)) { + const [light, dark] = input; + return derived([this.#activeAppearance, this.#theme], ([$activeAppearance, $theme]) => { + const color = $activeAppearance === 'light' ? light : dark; + return $theme.colors[color] ?? color; + }); } - if (input) { - return derived(this.#theme, ($theme) => - Object.fromEntries( - Object.entries(input).map(([key, color]) => { - if (typeof color !== 'string') return [key, color]; - return [key, $theme.colors[color] ?? color]; - }) - ) - ); - } + return readable(undefined); + }; - const r = readable(input); - return /** @type {any} */ (r); + /** + * @template T + * @param {Record | undefined} input + * @returns {Readable | undefined>} + */ + resolveColorsObject = (input) => { + if (!input) return readable(undefined); + + return derived(this.#theme, ($theme) => + Object.fromEntries( + Object.entries(input).map(([key, color]) => { + if (typeof color !== 'string') return [key, color]; + return [key, $theme.colors[color.trim()] ?? color]; + }) + ) + ); }; /** - * @param {unknown} colorPalette + * @param {unknown} input * @returns {Readable} */ - resolveColorPalette = (colorPalette) => { - if (typeof colorPalette === 'string') { - const trimmed = colorPalette.trim(); - if (isBuiltinColorPalette(trimmed)) { - return derived(this.#theme, ($theme) => $theme.colorPalettes[trimmed]); - } + resolveColorPalette = (input) => { + if (typeof input === 'string') { + return derived(this.#theme, ($theme) => $theme.colorPalettes[input.trim()]); + } + + if (isArrayOfStringTuples(input)) { + return derived([this.#activeAppearance, this.#theme], ([$activeAppearance, $theme]) => + input.map(([light, dark]) => { + const color = $activeAppearance === 'light' ? light : dark; + return $theme.colors[color.trim()] ?? color; + }) + ); } - if (Array.isArray(colorPalette)) { - return readable(colorPalette); + if (isArrayOfStrings(input)) { + return derived(this.#theme, ($theme) => + input.map((color) => $theme.colors[color.trim()] ?? color) + ); } return readable(undefined); }; /** - * @param {unknown} colorScale + * @param {unknown} input * @returns {Readable} */ - resolveColorScale = (colorScale) => { - if (typeof colorScale === 'string') { - const trimmed = colorScale.trim(); - if (isBuiltinColorPalette(trimmed)) { - return derived(this.#theme, ($theme) => $theme.colorScales[trimmed]); - } + resolveColorScale = (input) => { + if (typeof input === 'string') { + return derived(this.#theme, ($theme) => $theme.colorScales[input.trim()]); } - if (Array.isArray(colorScale)) { - return readable(colorScale); + if (isArrayOfStringTuples(input)) { + return derived([this.#activeAppearance, this.#theme], ([$activeAppearance, $theme]) => + input.map(([light, dark]) => { + const color = $activeAppearance === 'light' ? light : dark; + return $theme.colors[color.trim()] ?? color; + }) + ); + } + + if (isArrayOfStrings(input)) { + return derived(this.#theme, ($theme) => + input.map((color) => $theme.colors[color.trim()] ?? color) + ); } return readable(undefined); @@ -239,7 +253,27 @@ export const getThemeStores = () => { return stores; }; +/** @typedef {[string, string]} StringTuple */ + +/** + * @param {unknown} input + * @returns {input is StringTuple} + */ +const isStringTuple = (input) => + Array.isArray(input) && + input.length === 2 && + typeof input[0] === 'string' && + typeof input[1] === 'string'; + +/** + * @param {unknown} input + * @returns {input is StringTuple[]} + */ +const isArrayOfStringTuples = (input) => Array.isArray(input) && input.every(isStringTuple); + /** - * @template T - * @typedef {T | T[] | { [key: string]: T }} ValueOrArrayOrObject + * @param {unknown} input + * @returns {input is string[]} */ +const isArrayOfStrings = (input) => + Array.isArray(input) && input.every((item) => typeof item === 'string'); diff --git a/packages/ui/core-components/src/lib/themes.spec.js b/packages/ui/core-components/src/lib/themes.spec.js index a82b1830d3..45e0087105 100644 --- a/packages/ui/core-components/src/lib/themes.spec.js +++ b/packages/ui/core-components/src/lib/themes.spec.js @@ -14,21 +14,59 @@ vi.mock('$evidence/themes', () => ({ themes: { light: { colors: { - builtin: 'light_builtin', - custom: 'light_custom' + myColor1: 'light_myColor1', + myColor2: 'light_myColor2' + }, + colorPalettes: { + myColorPalette1: [ + 'light_myColorPalette1_color1', + 'light_myColorPalette1_color2', + 'light_myColorPalette1_color3' + ], + myColorPalette2: [ + 'light_myColorPalette2_color1', + 'light_myColorPalette2_color2', + 'light_myColorPalette2_color3' + ] + }, + colorScales: { + myColorScale1: ['light_myColorScale1_color1', 'light_myColorScale1_color2'], + myColorScale2: ['light_myColorScale2_color1', 'light_myColorScale2_color2'] } }, dark: { colors: { - builtin: 'dark_builtin', - custom: 'dark_custom' + myColor1: 'dark_myColor1', + myColor2: 'dark_myColor2' + }, + colorPalettes: { + myColorPalette1: [ + 'dark_myColorPalette1_color1', + 'dark_myColorPalette1_color2', + 'dark_myColorPalette1_color3' + ], + myColorPalette2: [ + 'dark_myColorPalette2_color1', + 'dark_myColorPalette2_color2', + 'dark_myColorPalette2_color3' + ] + }, + colorScales: { + myColorScale1: ['dark_myColorScale1_color1', 'dark_myColorScale1_color2'], + myColorScale2: ['dark_myColorScale2_color1', 'dark_myColorScale2_color2'] } } } })); describe('ThemeStores', async () => { - const { setAppearance, resolveColor } = new ThemeStores(); + const { + setAppearance, + resolveColor, + resolveColorsObject, + resolveColorPalette, + resolveColorScale + } = new ThemeStores(); describe('resolveColor', () => { it('should leave undefined as-is', () => { @@ -51,49 +89,311 @@ describe('ThemeStores', async () => { expect(get(store)).toBe('#abcdef'); }); - it('should correctly resolve colors in theme', () => { - const store = resolveColor('builtin'); + it('should resolve colors in theme', () => { + const store = resolveColor('myColor1'); setAppearance('light'); - expect(get(store)).toBe(`light_builtin`); + expect(get(store)).toBe('light_myColor1'); setAppearance('dark'); - expect(get(store)).toBe(`dark_builtin`); + expect(get(store)).toBe('dark_myColor1'); }); - it('should correctly resolve each element of an array', () => { - const store = resolveColor(['builtin', '#abcdef', 'custom', undefined]); + it('should resolve colors in theme and ignore extraneous whitespace', () => { + const store = resolveColor(' myColor2 '); setAppearance('light'); - expect(get(store)).toEqual(['light_builtin', '#abcdef', 'light_custom', undefined]); + expect(get(store)).toBe('light_myColor2'); setAppearance('dark'); - expect(get(store)).toEqual(['dark_builtin', '#abcdef', 'dark_custom', undefined]); + expect(get(store)).toBe('dark_myColor2'); }); - it('should correctly resolve each value of an object', () => { - const store = resolveColor({ - key1: 'builtin', + it('should resolve tuple of hex codes', () => { + const store = resolveColor(['#abcdef', '#fedcba']); + + setAppearance('light'); + expect(get(store)).toEqual('#abcdef'); + + setAppearance('dark'); + expect(get(store)).toEqual('#fedcba'); + }); + + it('should resolve tuple of theme colors', () => { + const store = resolveColor(['myColor1', 'myColor2']); + + setAppearance('light'); + expect(get(store)).toEqual('light_myColor1'); + + setAppearance('dark'); + expect(get(store)).toEqual('dark_myColor2'); + }); + }); + + describe('resolveColorsObject', () => { + it('should leave undefined as is', () => { + const store = resolveColorsObject(undefined); + + setAppearance('light'); + expect(get(store)).toBe(undefined); + + setAppearance('dark'); + expect(get(store)).toBe(undefined); + }); + it('should resolve each value of an object', () => { + const store = resolveColorsObject({ + key1: 'myColor1', key2: '#abcdef', - key3: 'custom', + key3: 'myColor2', key4: undefined }); setAppearance('light'); expect(get(store)).toEqual({ - key1: 'light_builtin', + key1: 'light_myColor1', key2: '#abcdef', - key3: 'light_custom', + key3: 'light_myColor2', key4: undefined }); setAppearance('dark'); expect(get(store)).toEqual({ - key1: 'dark_builtin', + key1: 'dark_myColor1', key2: '#abcdef', - key3: 'dark_custom', + key3: 'dark_myColor2', key4: undefined }); }); + + it('should resolve colors in theme and ignore extraneous whitespace', () => { + const store = resolveColorsObject({ + key1: ' myColor1 ', + key3: ' myColor2 ' + }); + + setAppearance('light'); + expect(get(store)).toEqual({ + key1: 'light_myColor1', + key3: 'light_myColor2' + }); + + setAppearance('dark'); + expect(get(store)).toEqual({ + key1: 'dark_myColor1', + key3: 'dark_myColor2' + }); + }); + }); + + describe('resolveColorPalette', () => { + it('should leave undefined as is', () => { + const store = resolveColorPalette(undefined); + + setAppearance('light'); + expect(get(store)).toBe(undefined); + + setAppearance('dark'); + expect(get(store)).toBe(undefined); + }); + + it('should leave hex codes as is', () => { + const store = resolveColorPalette(['#abcdef', '#fedcba']); + + setAppearance('light'); + expect(get(store)).toEqual(['#abcdef', '#fedcba']); + + setAppearance('dark'); + expect(get(store)).toEqual(['#abcdef', '#fedcba']); + }); + + it('should resolve theme colors from color palette', () => { + const store = resolveColorPalette(['myColor1', 'myColor2']); + + setAppearance('light'); + expect(get(store)).toEqual(['light_myColor1', 'light_myColor2']); + + setAppearance('dark'); + expect(get(store)).toEqual(['dark_myColor1', 'dark_myColor2']); + }); + + it('should resolve theme colors from color palette and ignore extraneous whitespace', () => { + const store = resolveColorPalette([' myColor1 ', ' myColor2 ']); + + setAppearance('light'); + expect(get(store)).toEqual(['light_myColor1', 'light_myColor2']); + + setAppearance('dark'); + expect(get(store)).toEqual(['dark_myColor1', 'dark_myColor2']); + }); + + it('should return undefined if color palette doesnt exist in theme', () => { + const store = resolveColorPalette('nonExistentPalette'); + + setAppearance('light'); + expect(get(store)).toBe(undefined); + + setAppearance('dark'); + expect(get(store)).toBe(undefined); + }); + + it('should resolve color palettes in theme', () => { + const store = resolveColorPalette('myColorPalette1'); + + setAppearance('light'); + expect(get(store)).toEqual([ + 'light_myColorPalette1_color1', + 'light_myColorPalette1_color2', + 'light_myColorPalette1_color3' + ]); + + setAppearance('dark'); + expect(get(store)).toEqual([ + 'dark_myColorPalette1_color1', + 'dark_myColorPalette1_color2', + 'dark_myColorPalette1_color3' + ]); + }); + + it('should resolve color palettes in theme and ignore extraneous whitespace', () => { + const store = resolveColorPalette(' myColorPalette2 '); + + setAppearance('light'); + expect(get(store)).toEqual([ + 'light_myColorPalette2_color1', + 'light_myColorPalette2_color2', + 'light_myColorPalette2_color3' + ]); + + setAppearance('dark'); + expect(get(store)).toEqual([ + 'dark_myColorPalette2_color1', + 'dark_myColorPalette2_color2', + 'dark_myColorPalette2_color3' + ]); + }); + + it('should resolve color palettes containing tuples of hex codes', () => { + const store = resolveColorPalette([ + ['#abcdef', '#fedcba'], + ['#123456', '#654321'] + ]); + + setAppearance('light'); + expect(get(store)).toEqual(['#abcdef', '#123456']); + + setAppearance('dark'); + expect(get(store)).toEqual(['#fedcba', '#654321']); + }); + + it('should resolve color palettes containing tuples of theme colors', () => { + const store = resolveColorPalette([ + ['myColor1', 'myColor2'], + ['myColor2', 'myColor1'] + ]); + + setAppearance('light'); + expect(get(store)).toEqual(['light_myColor1', 'light_myColor2']); + + setAppearance('dark'); + expect(get(store)).toEqual(['dark_myColor2', 'dark_myColor1']); + }); + }); + + describe('resolveColorScale', () => { + it('should leave undefined as is', () => { + const store = resolveColorScale(undefined); + + setAppearance('light'); + expect(get(store)).toBe(undefined); + + setAppearance('dark'); + expect(get(store)).toBe(undefined); + }); + + it('should leave hex codes as is', () => { + const store = resolveColorScale(['#abcdef', '#fedcba']); + + setAppearance('light'); + expect(get(store)).toEqual(['#abcdef', '#fedcba']); + + setAppearance('dark'); + expect(get(store)).toEqual(['#abcdef', '#fedcba']); + }); + + it('should resolve theme colors from color scale', () => { + const store = resolveColorScale(['myColor1', 'myColor2']); + + setAppearance('light'); + expect(get(store)).toEqual(['light_myColor1', 'light_myColor2']); + + setAppearance('dark'); + expect(get(store)).toEqual(['dark_myColor1', 'dark_myColor2']); + }); + + it('should resolve theme colors from color scale and ignore extraneous whitespace', () => { + const store = resolveColorScale([' myColor1 ', ' myColor2 ']); + + setAppearance('light'); + expect(get(store)).toEqual(['light_myColor1', 'light_myColor2']); + + setAppearance('dark'); + expect(get(store)).toEqual(['dark_myColor1', 'dark_myColor2']); + }); + + it('should return undefined if color scale doesnt exist in theme', () => { + const store = resolveColorScale('nonExistentScale'); + + setAppearance('light'); + expect(get(store)).toBe(undefined); + + setAppearance('dark'); + expect(get(store)).toBe(undefined); + }); + + it('should resolve color scales in theme', () => { + const store = resolveColorScale('myColorScale1'); + + setAppearance('light'); + expect(get(store)).toEqual(['light_myColorScale1_color1', 'light_myColorScale1_color2']); + + setAppearance('dark'); + expect(get(store)).toEqual(['dark_myColorScale1_color1', 'dark_myColorScale1_color2']); + }); + + it('should resolve color scales in theme and ignore extraneous whitespace', () => { + const store = resolveColorScale(' myColorScale2 '); + + setAppearance('light'); + expect(get(store)).toEqual(['light_myColorScale2_color1', 'light_myColorScale2_color2']); + + setAppearance('dark'); + expect(get(store)).toEqual(['dark_myColorScale2_color1', 'dark_myColorScale2_color2']); + }); + + it('should resolve color scales containing tuples of hex codes', () => { + const store = resolveColorScale([ + ['#abcdef', '#fedcba'], + ['#123456', '#654321'] + ]); + + setAppearance('light'); + expect(get(store)).toEqual(['#abcdef', '#123456']); + + setAppearance('dark'); + expect(get(store)).toEqual(['#fedcba', '#654321']); + }); + + it('should resolve color scales containing tuples of theme colors', () => { + const store = resolveColorScale([ + ['myColor1', 'myColor2'], + ['myColor2', 'myColor1'] + ]); + + setAppearance('light'); + expect(get(store)).toEqual(['light_myColor1', 'light_myColor2']); + + setAppearance('dark'); + expect(get(store)).toEqual(['dark_myColor2', 'dark_myColor1']); + }); }); }); diff --git a/packages/ui/core-components/src/lib/unsorted/ui/Tabs/Tabs.stories.svelte b/packages/ui/core-components/src/lib/unsorted/ui/Tabs/Tabs.stories.svelte index 574530806c..06883ab4c0 100644 --- a/packages/ui/core-components/src/lib/unsorted/ui/Tabs/Tabs.stories.svelte +++ b/packages/ui/core-components/src/lib/unsorted/ui/Tabs/Tabs.stories.svelte @@ -108,3 +108,11 @@ Tab 3 content + + + + Tab 1 content + Tab 2 content + Tab 3 content + + diff --git a/packages/ui/core-components/src/lib/unsorted/viz/area/AreaChart.svelte b/packages/ui/core-components/src/lib/unsorted/viz/area/AreaChart.svelte index 40cb083d2d..6bc5525bcc 100644 --- a/packages/ui/core-components/src/lib/unsorted/viz/area/AreaChart.svelte +++ b/packages/ui/core-components/src/lib/unsorted/viz/area/AreaChart.svelte @@ -8,7 +8,7 @@ import Chart from '../core/Chart.svelte'; import Area from './Area.svelte'; - const { resolveColor, resolveColorPalette } = getThemeStores(); + const { resolveColor, resolveColorsObject, resolveColorPalette } = getThemeStores(); export let data = undefined; export let x = undefined; @@ -90,7 +90,7 @@ export let downloadableImage = undefined; export let seriesColors = undefined; - $: seriesColorsStore = resolveColor(seriesColors); + $: seriesColorsStore = resolveColorsObject(seriesColors); export let seriesOrder = undefined; diff --git a/packages/ui/core-components/src/lib/unsorted/viz/bar/BarChart.svelte b/packages/ui/core-components/src/lib/unsorted/viz/bar/BarChart.svelte index aac8d458d5..5aaa9f452a 100644 --- a/packages/ui/core-components/src/lib/unsorted/viz/bar/BarChart.svelte +++ b/packages/ui/core-components/src/lib/unsorted/viz/bar/BarChart.svelte @@ -9,7 +9,7 @@ import Bar from './Bar.svelte'; import { onMount } from 'svelte'; - const { resolveColor, resolveColorPalette } = getThemeStores(); + const { resolveColor, resolveColorsObject, resolveColorPalette } = getThemeStores(); export let data = undefined; export let x = undefined; @@ -130,7 +130,7 @@ export let downloadableImage = undefined; export let seriesColors = undefined; - $: seriesColorsStore = resolveColor(seriesColors); + $: seriesColorsStore = resolveColorsObject(seriesColors); export let seriesOrder = undefined; export let connectGroup = undefined; diff --git a/packages/ui/core-components/src/lib/unsorted/viz/bubble/BubbleChart.svelte b/packages/ui/core-components/src/lib/unsorted/viz/bubble/BubbleChart.svelte index fc386ca848..fd406a7b23 100644 --- a/packages/ui/core-components/src/lib/unsorted/viz/bubble/BubbleChart.svelte +++ b/packages/ui/core-components/src/lib/unsorted/viz/bubble/BubbleChart.svelte @@ -8,7 +8,7 @@ import Chart from '../core/Chart.svelte'; import Bubble from './Bubble.svelte'; - const { resolveColor, resolveColorPalette } = getThemeStores(); + const { resolveColor, resolveColorsObject, resolveColorPalette } = getThemeStores(); export let data = undefined; export let x = undefined; @@ -78,7 +78,7 @@ export let downloadableImage = undefined; export let seriesColors = undefined; - $: seriesColorsStore = resolveColor(seriesColors); + $: seriesColorsStore = resolveColorsObject(seriesColors); export let seriesOrder = undefined; diff --git a/packages/ui/core-components/src/lib/unsorted/viz/core/ECharts.svelte b/packages/ui/core-components/src/lib/unsorted/viz/core/ECharts.svelte index c4c4c575e2..64d00600b9 100644 --- a/packages/ui/core-components/src/lib/unsorted/viz/core/ECharts.svelte +++ b/packages/ui/core-components/src/lib/unsorted/viz/core/ECharts.svelte @@ -14,7 +14,7 @@ import { createEventDispatcher } from 'svelte'; import { getThemeStores } from '../../../themes.js'; - const { activeAppearance, resolveColor } = getThemeStores(); + const { activeAppearance, resolveColorsObject } = getThemeStores(); export let config = undefined; @@ -34,7 +34,7 @@ export let printEchartsConfig; // helper for custom chart development export let seriesColors = undefined; - $: seriesColorsStore = resolveColor(seriesColors); + $: seriesColorsStore = resolveColorsObject(seriesColors); export let connectGroup = undefined; diff --git a/packages/ui/core-components/src/lib/unsorted/viz/core/EChartsCopyTarget.svelte b/packages/ui/core-components/src/lib/unsorted/viz/core/EChartsCopyTarget.svelte index 25fd04a72f..5212d82218 100644 --- a/packages/ui/core-components/src/lib/unsorted/viz/core/EChartsCopyTarget.svelte +++ b/packages/ui/core-components/src/lib/unsorted/viz/core/EChartsCopyTarget.svelte @@ -7,7 +7,7 @@ import eChartsCopy from '@evidence-dev/component-utilities/echartsCopy'; import { getThemeStores } from '../../../themes.js'; - const { resolveColor } = getThemeStores(); + const { resolveColorsObject } = getThemeStores(); export let config = undefined; export let height = '291px'; @@ -18,7 +18,7 @@ export let seriesOptions = undefined; export let seriesColors = undefined; - $: seriesColorsStore = resolveColor(seriesColors); + $: seriesColorsStore = resolveColorsObject(seriesColors); export let isMap = false; export let extraHeight = undefined; diff --git a/packages/ui/core-components/src/lib/unsorted/viz/core/_Chart.svelte b/packages/ui/core-components/src/lib/unsorted/viz/core/_Chart.svelte index b2dd442710..df0d2febb9 100644 --- a/packages/ui/core-components/src/lib/unsorted/viz/core/_Chart.svelte +++ b/packages/ui/core-components/src/lib/unsorted/viz/core/_Chart.svelte @@ -28,7 +28,7 @@ import { uiColours } from '@evidence-dev/component-utilities/colours'; import { getThemeStores } from '../../../themes.js'; - const { resolveColor, resolveColorPalette } = getThemeStores(); + const { resolveColor, resolveColorsObject, resolveColorPalette } = getThemeStores(); // --------------------------------------------------------------------------------------- // Input Props @@ -157,7 +157,7 @@ export let seriesOptions = undefined; // additional ECharts config object that will be applied to every series in the config export let seriesColors = undefined; - $: seriesColorsStore = resolveColor(seriesColors); + $: seriesColorsStore = resolveColorsObject(seriesColors); export let stackType = undefined; // used in BarChart (stacked, grouped) and AreaChart (stacked) export let stacked100 = false; diff --git a/packages/ui/core-components/src/lib/unsorted/viz/line/LineChart.stories.svelte b/packages/ui/core-components/src/lib/unsorted/viz/line/LineChart.stories.svelte index 4c32773c00..149183fcbd 100644 --- a/packages/ui/core-components/src/lib/unsorted/viz/line/LineChart.stories.svelte +++ b/packages/ui/core-components/src/lib/unsorted/viz/line/LineChart.stories.svelte @@ -98,3 +98,18 @@ seriesColors: { ivory: 'primary', blue: 'secondary', violet: 'accent', olive: 'negative' } }} /> + + diff --git a/packages/ui/core-components/src/lib/unsorted/viz/line/LineChart.svelte b/packages/ui/core-components/src/lib/unsorted/viz/line/LineChart.svelte index 9c8644ca84..38de5578a2 100644 --- a/packages/ui/core-components/src/lib/unsorted/viz/line/LineChart.svelte +++ b/packages/ui/core-components/src/lib/unsorted/viz/line/LineChart.svelte @@ -8,7 +8,7 @@ import Chart from '../core/Chart.svelte'; import Line from './Line.svelte'; - const { resolveColor, resolveColorPalette } = getThemeStores(); + const { resolveColor, resolveColorsObject, resolveColorPalette } = getThemeStores(); export let data = undefined; export let x = undefined; @@ -108,7 +108,7 @@ export let downloadableImage = undefined; export let seriesColors = undefined; - $: seriesColorsStore = resolveColor(seriesColors); + $: seriesColorsStore = resolveColorsObject(seriesColors); export let seriesOrder = undefined; diff --git a/packages/ui/core-components/src/lib/unsorted/viz/scatter/ScatterPlot.svelte b/packages/ui/core-components/src/lib/unsorted/viz/scatter/ScatterPlot.svelte index d29147bb67..8b2e3a276b 100644 --- a/packages/ui/core-components/src/lib/unsorted/viz/scatter/ScatterPlot.svelte +++ b/packages/ui/core-components/src/lib/unsorted/viz/scatter/ScatterPlot.svelte @@ -8,7 +8,7 @@ import Chart from '../core/Chart.svelte'; import Scatter from './Scatter.svelte'; - const { resolveColor, resolveColorPalette } = getThemeStores(); + const { resolveColor, resolveColorsObject, resolveColorPalette } = getThemeStores(); export let data = undefined; export let x = undefined; @@ -76,7 +76,7 @@ export let downloadableImage = undefined; export let seriesColors = undefined; - $: seriesColorsStore = resolveColor(seriesColors); + $: seriesColorsStore = resolveColorsObject(seriesColors); export let seriesOrder = undefined; diff --git a/packages/ui/tailwind/package.json b/packages/ui/tailwind/package.json index 536b5d8190..7dd6df155f 100644 --- a/packages/ui/tailwind/package.json +++ b/packages/ui/tailwind/package.json @@ -28,8 +28,6 @@ "types": "./src/vite-plugin/vite-plugin.js" }, ".": { - "import": "./src/index.js", - "require": "./src/index.js", "types": "./src/types.d.ts" }, "./fonts.css": "./src/fonts.css", diff --git a/packages/ui/tailwind/src/index.js b/packages/ui/tailwind/src/index.js deleted file mode 100644 index a1b2493c24..0000000000 --- a/packages/ui/tailwind/src/index.js +++ /dev/null @@ -1,4 +0,0 @@ -export * from './schemas/type-guards.js'; -export { BUILTIN_COLORS } from './schemas/colors.js'; -export { BUILTIN_COLOR_PALETTES } from './schemas/colorPalettes.js'; -export { BUILTIN_COLOR_SCALES } from './schemas/colorScales.js'; diff --git a/packages/ui/tailwind/src/schemas/type-guards.js b/packages/ui/tailwind/src/schemas/type-guards.js deleted file mode 100644 index ca10723f5d..0000000000 --- a/packages/ui/tailwind/src/schemas/type-guards.js +++ /dev/null @@ -1,23 +0,0 @@ -import { BUILTIN_COLORS } from './colors.js'; -import { BUILTIN_COLOR_PALETTES } from './colorPalettes.js'; -import { BUILTIN_COLOR_SCALES } from './colorScales.js'; - -/** - * @param {unknown} color - * @returns {color is import('./types.js').BuiltinColor} - */ -export const isBuiltinColor = (color) => BUILTIN_COLORS.includes(/** @type {any} */ (color)); - -/** - * @param {unknown} color - * @returns {color is import('./types.js').BuiltinColorPalette} - */ -export const isBuiltinColorPalette = (color) => - BUILTIN_COLOR_PALETTES.includes(/** @type {any} */ (color)); - -/** - * @param {unknown} color - * @returns {color is import('./types.js').BuiltinColorScale} - */ -export const isBuiltinColorScale = (color) => - BUILTIN_COLOR_SCALES.includes(/** @type {any} */ (color)); diff --git a/packages/ui/tailwind/src/schemas/types.d.ts b/packages/ui/tailwind/src/schemas/types.d.ts index 580966f939..34e5d8c42e 100644 --- a/packages/ui/tailwind/src/schemas/types.d.ts +++ b/packages/ui/tailwind/src/schemas/types.d.ts @@ -1,19 +1,14 @@ import z from 'zod'; import { DeepRequired } from 'ts-essentials'; -import { - ThemesConfigFileSchema, - BUILTIN_COLORS, - BUILTIN_COLOR_PALETTES, - BUILTIN_COLOR_SCALES -} from './index.js'; +import { BUILTIN_COLORS } from './colors.js'; +import { BUILTIN_COLOR_PALETTES } from './colorPalettes.js'; +import { BUILTIN_COLOR_SCALES } from './colorScales.js'; +import { ThemesConfigFileSchema } from './config.js'; -export type BuiltinColor = (typeof BUILTIN_COLORS)[number]; -export type BuiltinColorPalette = (typeof BUILTIN_COLOR_PALETTES)[number]; -export type BuiltinColorScale = (typeof BUILTIN_COLOR_SCALES)[number]; - -export type ThemesConfigFile = z.infer; -export type ThemesConfig = DeepRequired; +type BuiltinColor = (typeof BUILTIN_COLORS)[number]; +type BuiltinColorPalette = (typeof BUILTIN_COLOR_PALETTES)[number]; +type BuiltinColorScale = (typeof BUILTIN_COLOR_SCALES)[number]; export type Theme = { colors: { @@ -27,4 +22,7 @@ export type Theme = { } & Record; }; +export type ThemesConfigFile = z.infer; +export type ThemesConfig = DeepRequired; + export type Themes = Record<'light' | 'dark', Theme>; diff --git a/packages/ui/tailwind/src/themes/index.js b/packages/ui/tailwind/src/themes/index.js index 5376f5dfcf..8a47884706 100644 --- a/packages/ui/tailwind/src/themes/index.js +++ b/packages/ui/tailwind/src/themes/index.js @@ -1,2 +1 @@ export * from './buildThemes.js'; -export * from '../schemas/type-guards.js'; diff --git a/packages/ui/tailwind/src/vite-plugin/vite-plugin.js b/packages/ui/tailwind/src/vite-plugin/vite-plugin.js index 555d04a180..6255787fb2 100644 --- a/packages/ui/tailwind/src/vite-plugin/vite-plugin.js +++ b/packages/ui/tailwind/src/vite-plugin/vite-plugin.js @@ -17,8 +17,6 @@ export const evidenceThemes = () => { if (id === resolvedVirtualModuleId) { const themesConfig = await loadThemesConfig(); const themes = buildThemes(themesConfig); - // /** @satisfies {import('@evidence-dev/tailwind').ThemesConfig} */ - // /** @satisfies {import('@evidence-dev/tailwind').Themes} return ` export const themesConfig = ${JSON.stringify(themesConfig)}; export const themes = ${JSON.stringify(themes)}; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index efdec4b2ae..8ef0772570 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -97,13 +97,13 @@ importers: version: link:packages/lib/universal-sql '@parcel/packager-ts': specifier: 2.12.0 - version: 2.12.0(@parcel/core@2.12.0) + version: 2.12.0(@parcel/core@2.13.0) '@parcel/transformer-typescript-types': specifier: 2.12.0 - version: 2.12.0(@parcel/core@2.12.0)(typescript@5.4.2) + version: 2.12.0(@parcel/core@2.13.0)(typescript@5.4.2) '@playwright/test': specifier: ^1.45.3 - version: 1.48.2 + version: 1.49.0 '@sveltejs/adapter-static': specifier: 3.0.1 version: 3.0.1(@sveltejs/kit@2.5.4) @@ -226,7 +226,7 @@ importers: devDependencies: '@playwright/test': specifier: ^1.45.3 - version: 1.48.2 + version: 1.49.0 chalk: specifier: ^5.3.0 version: 5.3.0 @@ -281,7 +281,7 @@ importers: devDependencies: '@playwright/test': specifier: ^1.45.3 - version: 1.48.2 + version: 1.49.0 '@types/node': specifier: ^22.9.0 version: 22.9.0 @@ -336,7 +336,7 @@ importers: devDependencies: '@playwright/test': specifier: ^1.45.3 - version: 1.48.2 + version: 1.49.0 '@types/node': specifier: ^20.14.12 version: 20.17.6 @@ -388,7 +388,7 @@ importers: devDependencies: '@playwright/test': specifier: ^1.45.3 - version: 1.48.2 + version: 1.49.0 '@types/node': specifier: ^20.14.12 version: 20.17.6 @@ -440,7 +440,7 @@ importers: devDependencies: '@playwright/test': specifier: ^1.45.3 - version: 1.48.2 + version: 1.49.0 '@types/node': specifier: ^22.7.4 version: 22.9.0 @@ -492,7 +492,7 @@ importers: devDependencies: '@playwright/test': specifier: ^1.45.3 - version: 1.48.2 + version: 1.49.0 '@types/node': specifier: ^22.5.4 version: 22.9.0 @@ -544,7 +544,7 @@ importers: devDependencies: '@playwright/test': specifier: ^1.45.3 - version: 1.48.2 + version: 1.49.0 '@types/node': specifier: ^22.5.4 version: 22.9.0 @@ -1036,7 +1036,7 @@ importers: version: 5.4.1 parcel: specifier: ^2.8.3 - version: 2.12.0(postcss@8.4.49)(typescript@5.4.2) + version: 2.13.0(postcss@8.4.49)(typescript@5.4.2) typescript: specifier: 5.4.2 version: 5.4.2 @@ -1159,7 +1159,7 @@ importers: version: 2.0.2 sveltekit-autoimport: specifier: ^1.7.1 - version: 1.8.0(@sveltejs/kit@2.5.4) + version: 1.8.1(@sveltejs/kit@2.5.4) vite: specifier: 5.4.11 version: 5.4.11(@types/node@20.17.6) @@ -1282,7 +1282,7 @@ importers: version: 3.8.0 '@docsearch/js': specifier: ^3.6.0 - version: 3.8.0(@algolia/client-search@5.14.0)(@types/react@18.3.12)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.17.2) + version: 3.8.0(@algolia/client-search@5.14.2)(@types/react@18.3.12)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.17.3) '@evidence-dev/component-utilities': specifier: workspace:* version: link:../../lib/component-utilities @@ -1811,164 +1811,164 @@ packages: /@adobe/css-tools@4.4.1: resolution: {integrity: sha512-12WGKBQzjUAI4ayyF4IAtfw2QR/IDoqk6jTddXDhtYTJF9ASmoE1zst7cVtP0aL/F1jUJL5r+JxKXKEgHNbEUQ==} - /@algolia/autocomplete-core@1.17.7(@algolia/client-search@5.14.0)(algoliasearch@5.14.0)(search-insights@2.17.2): + /@algolia/autocomplete-core@1.17.7(@algolia/client-search@5.14.2)(algoliasearch@5.14.2)(search-insights@2.17.3): resolution: {integrity: sha512-BjiPOW6ks90UKl7TwMv7oNQMnzU+t/wk9mgIDi6b1tXpUek7MW0lbNOUHpvam9pe3lVCf4xPFT+lK7s+e+fs7Q==} dependencies: - '@algolia/autocomplete-plugin-algolia-insights': 1.17.7(@algolia/client-search@5.14.0)(algoliasearch@5.14.0)(search-insights@2.17.2) - '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.14.0)(algoliasearch@5.14.0) + '@algolia/autocomplete-plugin-algolia-insights': 1.17.7(@algolia/client-search@5.14.2)(algoliasearch@5.14.2)(search-insights@2.17.3) + '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.14.2)(algoliasearch@5.14.2) transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - search-insights dev: false - /@algolia/autocomplete-plugin-algolia-insights@1.17.7(@algolia/client-search@5.14.0)(algoliasearch@5.14.0)(search-insights@2.17.2): + /@algolia/autocomplete-plugin-algolia-insights@1.17.7(@algolia/client-search@5.14.2)(algoliasearch@5.14.2)(search-insights@2.17.3): resolution: {integrity: sha512-Jca5Ude6yUOuyzjnz57og7Et3aXjbwCSDf/8onLHSQgw1qW3ALl9mrMWaXb5FmPVkV3EtkD2F/+NkT6VHyPu9A==} peerDependencies: search-insights: '>= 1 < 3' dependencies: - '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.14.0)(algoliasearch@5.14.0) - search-insights: 2.17.2 + '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.14.2)(algoliasearch@5.14.2) + search-insights: 2.17.3 transitivePeerDependencies: - '@algolia/client-search' - algoliasearch dev: false - /@algolia/autocomplete-preset-algolia@1.17.7(@algolia/client-search@5.14.0)(algoliasearch@5.14.0): + /@algolia/autocomplete-preset-algolia@1.17.7(@algolia/client-search@5.14.2)(algoliasearch@5.14.2): resolution: {integrity: sha512-ggOQ950+nwbWROq2MOCIL71RE0DdQZsceqrg32UqnhDz8FlO9rL8ONHNsI2R1MH0tkgVIDKI/D0sMiUchsFdWA==} peerDependencies: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' dependencies: - '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.14.0)(algoliasearch@5.14.0) - '@algolia/client-search': 5.14.0 - algoliasearch: 5.14.0 + '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.14.2)(algoliasearch@5.14.2) + '@algolia/client-search': 5.14.2 + algoliasearch: 5.14.2 dev: false - /@algolia/autocomplete-shared@1.17.7(@algolia/client-search@5.14.0)(algoliasearch@5.14.0): + /@algolia/autocomplete-shared@1.17.7(@algolia/client-search@5.14.2)(algoliasearch@5.14.2): resolution: {integrity: sha512-o/1Vurr42U/qskRSuhBH+VKxMvkkUVTLU6WZQr+L5lGZZLYWyhdzWjW0iGXY7EkwRTjBqvN2EsR81yCTGV/kmg==} peerDependencies: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' dependencies: - '@algolia/client-search': 5.14.0 - algoliasearch: 5.14.0 + '@algolia/client-search': 5.14.2 + algoliasearch: 5.14.2 dev: false - /@algolia/client-abtesting@5.14.0: - resolution: {integrity: sha512-HR4kbCmq4RO8vhafLrVcR11q3BvuPYA4o+Nn8hzJRgpDu2fauIlgIBgVDsoxaK90xuaPLSNdoT5tWXag+L8vCw==} + /@algolia/client-abtesting@5.14.2: + resolution: {integrity: sha512-7fq1tWIy1aNJEaNHxWy3EwDkuo4k22+NBnxq9QlYVSLLXtr6HqmAm6bQgNNzGT3vm21iKqWO9efk+HIhEM1SzQ==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 - '@algolia/requester-browser-xhr': 5.14.0 - '@algolia/requester-fetch': 5.14.0 - '@algolia/requester-node-http': 5.14.0 + '@algolia/client-common': 5.14.2 + '@algolia/requester-browser-xhr': 5.14.2 + '@algolia/requester-fetch': 5.14.2 + '@algolia/requester-node-http': 5.14.2 dev: false - /@algolia/client-analytics@5.14.0: - resolution: {integrity: sha512-EnmouGUQdIvwmI8plglt3HP9hXwNNwCJshszfU/Hqi2n21//iwmWLmMb5gXDfiLhyMa6u8eya8c03QT79s3/tQ==} + /@algolia/client-analytics@5.14.2: + resolution: {integrity: sha512-5Nm5cOOyAGcY+hKNJVmR2jgoGn1nvoANS8W5EfB8yAaUqUxL3lFNUHSkFafAMTCOcVKNDkZQYjUDbOOfdYJLqw==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 - '@algolia/requester-browser-xhr': 5.14.0 - '@algolia/requester-fetch': 5.14.0 - '@algolia/requester-node-http': 5.14.0 + '@algolia/client-common': 5.14.2 + '@algolia/requester-browser-xhr': 5.14.2 + '@algolia/requester-fetch': 5.14.2 + '@algolia/requester-node-http': 5.14.2 dev: false - /@algolia/client-common@5.14.0: - resolution: {integrity: sha512-xYaswEqv+mTeazOJV0PELs4LYXaETYGwlntQxvOTHsICaj1e+ylKeMr+C+ZvN74RpCRDoEN3a2n33bRU9/MHTw==} + /@algolia/client-common@5.14.2: + resolution: {integrity: sha512-BW1Qzhh9tMKEsWSQQsiOEcHAd6g7zxq9RpPVmyxbDO/O4eA4vyN+Qz5Jzo686kuYdIQKqIPCEtob/JM89tk57g==} engines: {node: '>= 14.0.0'} dev: false - /@algolia/client-insights@5.14.0: - resolution: {integrity: sha512-1dWxjTmpNCgLWLl6GSAaOACs55JvioAIdno7jvq7KVfpLLXehHaSaiij8ssbbIM8HqHZPwC8ShaUHtSt2jLdBg==} + /@algolia/client-insights@5.14.2: + resolution: {integrity: sha512-17zg6pqifKORvvrMIqW6HhwUry9RKRXLgADrgFjZ6PZvGB4oVs12dwRG2/HMrIlpxd9cjeQfdlEgHj6lbAf6QA==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 - '@algolia/requester-browser-xhr': 5.14.0 - '@algolia/requester-fetch': 5.14.0 - '@algolia/requester-node-http': 5.14.0 + '@algolia/client-common': 5.14.2 + '@algolia/requester-browser-xhr': 5.14.2 + '@algolia/requester-fetch': 5.14.2 + '@algolia/requester-node-http': 5.14.2 dev: false - /@algolia/client-personalization@5.14.0: - resolution: {integrity: sha512-HDOYm38nUwflxaemKrxlV91pYg3L9JkmLnuSQCJ7bzivqP+aBTZ8mGRvanFzwayNMRZWLuGsstJMpGET6FYaDQ==} + /@algolia/client-personalization@5.14.2: + resolution: {integrity: sha512-5IYt8vbmTA52xyuaZKFwiRoDPeh7hiOC9aBZqqp9fVs6BU01djI/T8pGJXawvwczltCPYzNsdbllV3rqiDbxmQ==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 - '@algolia/requester-browser-xhr': 5.14.0 - '@algolia/requester-fetch': 5.14.0 - '@algolia/requester-node-http': 5.14.0 + '@algolia/client-common': 5.14.2 + '@algolia/requester-browser-xhr': 5.14.2 + '@algolia/requester-fetch': 5.14.2 + '@algolia/requester-node-http': 5.14.2 dev: false - /@algolia/client-query-suggestions@5.14.0: - resolution: {integrity: sha512-yDPf3E3MS2RUg1br7r1+PEqKOxUftxjLLtD35yW9voZ9oV45XZnAPnHCqgmyzjcK5/dM1dzXHhmZGf4VbjYn7Q==} + /@algolia/client-query-suggestions@5.14.2: + resolution: {integrity: sha512-gvCX/cczU76Bu1sGcxxTdoIwxe+FnuC1IlW9SF/gzxd3ZzsgzBpzD2puIJqt9fHQsjLxVGkJqKev2FtExnJYZg==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 - '@algolia/requester-browser-xhr': 5.14.0 - '@algolia/requester-fetch': 5.14.0 - '@algolia/requester-node-http': 5.14.0 + '@algolia/client-common': 5.14.2 + '@algolia/requester-browser-xhr': 5.14.2 + '@algolia/requester-fetch': 5.14.2 + '@algolia/requester-node-http': 5.14.2 dev: false - /@algolia/client-search@5.14.0: - resolution: {integrity: sha512-x5/GVLDyGad8aiWA/vfj8X4NXOZ3FlwXw/gb7t+Mxo3O0g3VxSFQdyrZ8Oduv/Y/Y8cxMVEOx1u3Azs6tlSZbg==} + /@algolia/client-search@5.14.2: + resolution: {integrity: sha512-0imdBZDjqxrshw0+eyJUgnkRAbS2W93UQ3BVj8VjN4xQylIMf0fWs72W7MZFdHlH78JJYydevgzqvGMcV0Z1CA==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 - '@algolia/requester-browser-xhr': 5.14.0 - '@algolia/requester-fetch': 5.14.0 - '@algolia/requester-node-http': 5.14.0 + '@algolia/client-common': 5.14.2 + '@algolia/requester-browser-xhr': 5.14.2 + '@algolia/requester-fetch': 5.14.2 + '@algolia/requester-node-http': 5.14.2 dev: false - /@algolia/ingestion@1.14.0: - resolution: {integrity: sha512-HU9AoZDFMEIT/+xzIa9l1XkPRTH7S0jWbYWrNkeb/62TxQFvL5x/XYEa6Yf/WCFU6Qa0W+ivua8NDzxL15NVGQ==} + /@algolia/ingestion@1.14.2: + resolution: {integrity: sha512-/p4rBNkW0fgCpCwrwre+jHfzlFQsLemgaAQqyui8NPxw95Wgf3p+DKxYzcmh8dygT7ub7FwztTW+uURLX1uqIQ==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 - '@algolia/requester-browser-xhr': 5.14.0 - '@algolia/requester-fetch': 5.14.0 - '@algolia/requester-node-http': 5.14.0 + '@algolia/client-common': 5.14.2 + '@algolia/requester-browser-xhr': 5.14.2 + '@algolia/requester-fetch': 5.14.2 + '@algolia/requester-node-http': 5.14.2 dev: false - /@algolia/monitoring@1.14.0: - resolution: {integrity: sha512-tGKip5Dvusw8z4ajIJBBYxdPUOGIqV1CGat55eCaAmX97Oko2adIOq9MKvdC3d7SMuQt3j28QIHpV6wvihnsKA==} + /@algolia/monitoring@1.14.2: + resolution: {integrity: sha512-81R57Y/mS0uNhWpu6cNEfkbkADLW4bP0BNjuPpxAypobv7WzYycUnbMvv1YkN6OsociB4+3M7HfsVzj4Nc09vA==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 - '@algolia/requester-browser-xhr': 5.14.0 - '@algolia/requester-fetch': 5.14.0 - '@algolia/requester-node-http': 5.14.0 + '@algolia/client-common': 5.14.2 + '@algolia/requester-browser-xhr': 5.14.2 + '@algolia/requester-fetch': 5.14.2 + '@algolia/requester-node-http': 5.14.2 dev: false - /@algolia/recommend@5.14.0: - resolution: {integrity: sha512-wXOWFG4L0Y/EyWKuDXQA7FoB7Ukuss+O8zaxZSlla4h19UGWak+22RcZ2eDFoAhVOJxC8RoLg9opMfDbZtPW9Q==} + /@algolia/recommend@5.14.2: + resolution: {integrity: sha512-OwELnAZxCUyfjYjqsrFmC7Vfa12kqwbDdLUV0oi4j+4pxDsfPgkiZ6iCH2uPw6X8VK88Hl3InPt+RPaZvcrCWg==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 - '@algolia/requester-browser-xhr': 5.14.0 - '@algolia/requester-fetch': 5.14.0 - '@algolia/requester-node-http': 5.14.0 + '@algolia/client-common': 5.14.2 + '@algolia/requester-browser-xhr': 5.14.2 + '@algolia/requester-fetch': 5.14.2 + '@algolia/requester-node-http': 5.14.2 dev: false - /@algolia/requester-browser-xhr@5.14.0: - resolution: {integrity: sha512-5zk1sol+WTDskAx1AMBGGDChCVBHuPTmclGZO844/ljqH7AcJpkFnfUeAMXfx2m4tW3Ax+M+uaC+XjVoQRb9Hg==} + /@algolia/requester-browser-xhr@5.14.2: + resolution: {integrity: sha512-irUvkK+TGBhyivtNCIIbVgNUgbUoHOSk8m/kFX4ddto/PUPmLFRRNNnMHtJ1+OzrJ/uD3Am4FUK2Yt+xgQr05w==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 + '@algolia/client-common': 5.14.2 dev: false - /@algolia/requester-fetch@5.14.0: - resolution: {integrity: sha512-B9grYSKH34UlJPkUdds14I/m8Yp7/a4PbqRuZsrP1L4kBW2FGinMtpQOK3N6gEy8YkVNA1iKlTC24yro8z8a8A==} + /@algolia/requester-fetch@5.14.2: + resolution: {integrity: sha512-UNBg5mM4MIYdxPuVjyDL22BC6P87g7WuM91Z1Ky0J19aEGvCSF+oR+9autthROFXdRnAa1rACOjuqn95iBbKpw==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 + '@algolia/client-common': 5.14.2 dev: false - /@algolia/requester-node-http@5.14.0: - resolution: {integrity: sha512-2EPhRqbxWzrsSXX0/70jIGtjQTj8VILi+uqmgBweyQIzCNlGoNbyMs+E7iwHVtUSrE/9IDd8rrewkVHOI6h2IQ==} + /@algolia/requester-node-http@5.14.2: + resolution: {integrity: sha512-CTFA03YiLcnpP+JoLRqjHt5pqDHuKWJpLsIBY/60Gmw8pjALZ3TwvbAquRX4Vy+yrin178NxMuU+ilZ54f2IrQ==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-common': 5.14.0 + '@algolia/client-common': 5.14.2 dev: false /@alloc/quick-lru@5.2.0: @@ -3285,7 +3285,7 @@ packages: fs-extra: 7.0.1 mri: 1.2.0 p-limit: 2.3.0 - package-manager-detector: 0.2.2 + package-manager-detector: 0.2.4 picocolors: 1.1.1 resolve-from: 5.0.0 semver: 7.6.3 @@ -3682,10 +3682,10 @@ packages: resolution: {integrity: sha512-pieeipSOW4sQ0+bE5UFC51AOZp9NGxg89wAlZ1BAQFaiRAGK1IKUaPQ0UGZeNctJXyqZ1UvBtOQh2HH+U5GtmA==} dev: false - /@docsearch/js@3.8.0(@algolia/client-search@5.14.0)(@types/react@18.3.12)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.17.2): + /@docsearch/js@3.8.0(@algolia/client-search@5.14.2)(@types/react@18.3.12)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.17.3): resolution: {integrity: sha512-PVuV629f5UcYRtBWqK7ID6vNL5647+2ADJypwTjfeBIrJfwPuHtzLy39hMGMfFK+0xgRyhTR0FZ83EkdEraBlg==} dependencies: - '@docsearch/react': 3.8.0(@algolia/client-search@5.14.0)(@types/react@18.3.12)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.17.2) + '@docsearch/react': 3.8.0(@algolia/client-search@5.14.2)(@types/react@18.3.12)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.17.3) preact: 10.24.3 transitivePeerDependencies: - '@algolia/client-search' @@ -3695,7 +3695,7 @@ packages: - search-insights dev: false - /@docsearch/react@3.8.0(@algolia/client-search@5.14.0)(@types/react@18.3.12)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.17.2): + /@docsearch/react@3.8.0(@algolia/client-search@5.14.2)(@types/react@18.3.12)(react-dom@17.0.2)(react@17.0.2)(search-insights@2.17.3): resolution: {integrity: sha512-WnFK720+iwTVt94CxY3u+FgX6exb3BfN5kE9xUY6uuAH/9W/UFboBZFLlrw/zxFRHoHZCOXRtOylsXF+6LHI+Q==} peerDependencies: '@types/react': '>= 16.8.0 < 19.0.0' @@ -3712,14 +3712,14 @@ packages: search-insights: optional: true dependencies: - '@algolia/autocomplete-core': 1.17.7(@algolia/client-search@5.14.0)(algoliasearch@5.14.0)(search-insights@2.17.2) - '@algolia/autocomplete-preset-algolia': 1.17.7(@algolia/client-search@5.14.0)(algoliasearch@5.14.0) + '@algolia/autocomplete-core': 1.17.7(@algolia/client-search@5.14.2)(algoliasearch@5.14.2)(search-insights@2.17.3) + '@algolia/autocomplete-preset-algolia': 1.17.7(@algolia/client-search@5.14.2)(algoliasearch@5.14.2) '@docsearch/css': 3.8.0 '@types/react': 18.3.12 - algoliasearch: 5.14.0 + algoliasearch: 5.14.2 react: 17.0.2 react-dom: 17.0.2(react@17.0.2) - search-insights: 2.17.2 + search-insights: 2.17.3 transitivePeerDependencies: - '@algolia/client-search' dev: false @@ -5090,7 +5090,7 @@ packages: '@floating-ui/dom': 1.6.12 '@internationalized/date': 3.5.6 dequal: 2.0.3 - focus-trap: 7.6.1 + focus-trap: 7.6.2 nanoid: 4.0.2 svelte: 4.2.19 dev: false @@ -5104,7 +5104,7 @@ packages: '@floating-ui/dom': 1.6.12 '@internationalized/date': 3.5.6 dequal: 2.0.3 - focus-trap: 7.6.1 + focus-trap: 7.6.2 nanoid: 5.0.8 svelte: 4.2.19 dev: false @@ -5320,34 +5320,44 @@ packages: rimraf: 3.0.2 dev: false - /@parcel/bundler-default@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-3ybN74oYNMKyjD6V20c9Gerdbh7teeNvVMwIoHIQMzuIFT6IGX53PyOLlOKRLbjxMc0TMimQQxIt2eQqxR5LsA==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/bundler-default@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-qx6v8mBJkgiEeNXZwzW+1x0YZ3lpkx/WDmqa63GE/CUWSIlMb14ZELyXewAo7mzX99qDhV4E6+OX1vRUI47+nQ==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/graph': 3.2.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/rust': 2.12.0 - '@parcel/utils': 2.12.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/graph': 3.3.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/rust': 2.13.0 + '@parcel/utils': 2.13.0 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/cache@2.12.0(@parcel/core@2.12.0): + /@parcel/cache@2.12.0(@parcel/core@2.13.0): resolution: {integrity: sha512-FX5ZpTEkxvq/yvWklRHDESVRz+c7sLTXgFuzz6uEnBcXV38j6dMSikflNpHA6q/L4GKkCqRywm9R6XQwhwIMyw==} engines: {node: '>= 12.0.0'} peerDependencies: '@parcel/core': ^2.12.0 dependencies: - '@parcel/core': 2.12.0 - '@parcel/fs': 2.12.0(@parcel/core@2.12.0) + '@parcel/core': 2.13.0 + '@parcel/fs': 2.12.0(@parcel/core@2.13.0) '@parcel/logger': 2.12.0 '@parcel/utils': 2.12.0 lmdb: 2.8.5 - transitivePeerDependencies: - - '@swc/helpers' + dev: true + + /@parcel/cache@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-8GA4Dmhu917a5ZAfLgc7G3gDEWOkFhxeoY44eU7WYgh12rSJCS9XVIaWVnzDKb0ou3brSpbVKz9rhNj1K7kmPw==} + engines: {node: '>= 16.0.0'} + peerDependencies: + '@parcel/core': ^2.13.0 + dependencies: + '@parcel/core': 2.13.0 + '@parcel/fs': 2.13.0(@parcel/core@2.13.0) + '@parcel/logger': 2.13.0 + '@parcel/utils': 2.13.0 + lmdb: 2.8.5 dev: true /@parcel/codeframe@2.12.0: @@ -5357,53 +5367,59 @@ packages: chalk: 4.1.0 dev: true - /@parcel/compressor-raw@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-h41Q3X7ZAQ9wbQ2csP8QGrwepasLZdXiuEdpUryDce6rF9ZiHoJ97MRpdLxOhOPyASTw/xDgE1xyaPQr0Q3f5A==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/codeframe@2.13.0: + resolution: {integrity: sha512-mKOQSDmRzWqC/ELwjGv9ZDqkYtHwkwvpLC4gb5mUAw6VJsDqraydtluxGR2NejYwETiS4j9mQElcbHZoRcZ9uA==} + engines: {node: '>= 16.0.0'} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + chalk: 4.1.2 + dev: true + + /@parcel/compressor-raw@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-T6+qN36Rci/D3C79vImzZyQyReKOqKQetWAG2n3PG780mt+6omTGyZKRVUQTxJIbStgttlL9ZRlTHFiQeid7rg==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} + dependencies: + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/config-default@2.12.0(@parcel/core@2.12.0)(postcss@8.4.49)(typescript@5.4.2): - resolution: {integrity: sha512-dPNe2n9eEsKRc1soWIY0yToMUPirPIa2QhxcCB3Z5RjpDGIXm0pds+BaiqY6uGLEEzsjhRO0ujd4v2Rmm0vuFg==} + /@parcel/config-default@2.13.0(@parcel/core@2.13.0)(postcss@8.4.49)(typescript@5.4.2): + resolution: {integrity: sha512-clxN5xXeVrq6GhxrKWoQi0BkmLYmbfttoXA/zXsX2XF15QZALHqQtUKuKh2LLZj4NmwplTkIRz5vT80n8uvLOQ==} peerDependencies: - '@parcel/core': ^2.12.0 - dependencies: - '@parcel/bundler-default': 2.12.0(@parcel/core@2.12.0) - '@parcel/compressor-raw': 2.12.0(@parcel/core@2.12.0) - '@parcel/core': 2.12.0 - '@parcel/namer-default': 2.12.0(@parcel/core@2.12.0) - '@parcel/optimizer-css': 2.12.0(@parcel/core@2.12.0) - '@parcel/optimizer-htmlnano': 2.12.0(@parcel/core@2.12.0)(postcss@8.4.49)(typescript@5.4.2) - '@parcel/optimizer-image': 2.12.0(@parcel/core@2.12.0) - '@parcel/optimizer-svgo': 2.12.0(@parcel/core@2.12.0) - '@parcel/optimizer-swc': 2.12.0(@parcel/core@2.12.0) - '@parcel/packager-css': 2.12.0(@parcel/core@2.12.0) - '@parcel/packager-html': 2.12.0(@parcel/core@2.12.0) - '@parcel/packager-js': 2.12.0(@parcel/core@2.12.0) - '@parcel/packager-raw': 2.12.0(@parcel/core@2.12.0) - '@parcel/packager-svg': 2.12.0(@parcel/core@2.12.0) - '@parcel/packager-wasm': 2.12.0(@parcel/core@2.12.0) - '@parcel/reporter-dev-server': 2.12.0(@parcel/core@2.12.0) - '@parcel/resolver-default': 2.12.0(@parcel/core@2.12.0) - '@parcel/runtime-browser-hmr': 2.12.0(@parcel/core@2.12.0) - '@parcel/runtime-js': 2.12.0(@parcel/core@2.12.0) - '@parcel/runtime-react-refresh': 2.12.0(@parcel/core@2.12.0) - '@parcel/runtime-service-worker': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-babel': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-css': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-html': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-image': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-js': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-json': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-postcss': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-posthtml': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-raw': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-react-refresh-wrap': 2.12.0(@parcel/core@2.12.0) - '@parcel/transformer-svg': 2.12.0(@parcel/core@2.12.0) + '@parcel/core': ^2.13.0 + dependencies: + '@parcel/bundler-default': 2.13.0(@parcel/core@2.13.0) + '@parcel/compressor-raw': 2.13.0(@parcel/core@2.13.0) + '@parcel/core': 2.13.0 + '@parcel/namer-default': 2.13.0(@parcel/core@2.13.0) + '@parcel/optimizer-css': 2.13.0(@parcel/core@2.13.0) + '@parcel/optimizer-htmlnano': 2.13.0(@parcel/core@2.13.0)(postcss@8.4.49)(typescript@5.4.2) + '@parcel/optimizer-image': 2.13.0(@parcel/core@2.13.0) + '@parcel/optimizer-svgo': 2.13.0(@parcel/core@2.13.0) + '@parcel/optimizer-swc': 2.13.0(@parcel/core@2.13.0) + '@parcel/packager-css': 2.13.0(@parcel/core@2.13.0) + '@parcel/packager-html': 2.13.0(@parcel/core@2.13.0) + '@parcel/packager-js': 2.13.0(@parcel/core@2.13.0) + '@parcel/packager-raw': 2.13.0(@parcel/core@2.13.0) + '@parcel/packager-svg': 2.13.0(@parcel/core@2.13.0) + '@parcel/packager-wasm': 2.13.0(@parcel/core@2.13.0) + '@parcel/reporter-dev-server': 2.13.0(@parcel/core@2.13.0) + '@parcel/resolver-default': 2.13.0(@parcel/core@2.13.0) + '@parcel/runtime-browser-hmr': 2.13.0(@parcel/core@2.13.0) + '@parcel/runtime-js': 2.13.0(@parcel/core@2.13.0) + '@parcel/runtime-react-refresh': 2.13.0(@parcel/core@2.13.0) + '@parcel/runtime-service-worker': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-babel': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-css': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-html': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-image': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-js': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-json': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-postcss': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-posthtml': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-raw': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-react-refresh-wrap': 2.13.0(@parcel/core@2.13.0) + '@parcel/transformer-svg': 2.13.0(@parcel/core@2.13.0) transitivePeerDependencies: - '@swc/helpers' - cssnano @@ -5411,36 +5427,37 @@ packages: - purgecss - relateurl - srcset + - svgo - terser - typescript - uncss dev: true - /@parcel/core@2.12.0: - resolution: {integrity: sha512-s+6pwEj+GfKf7vqGUzN9iSEPueUssCCQrCBUlcAfKrJe0a22hTUCjewpB0I7lNrCIULt8dkndD+sMdOrXsRl6Q==} - engines: {node: '>= 12.0.0'} + /@parcel/core@2.13.0: + resolution: {integrity: sha512-ok2y14uJebDuDz5QGcv+Ui4cjdroV/L5HUorYDfttNbuxjc4XpLJC9bzfu3MSwVKF44n/prT9pt3AK/Vf1LFDg==} + engines: {node: '>= 16.0.0'} dependencies: '@mischnic/json-sourcemap': 0.1.1 - '@parcel/cache': 2.12.0(@parcel/core@2.12.0) - '@parcel/diagnostic': 2.12.0 - '@parcel/events': 2.12.0 - '@parcel/fs': 2.12.0(@parcel/core@2.12.0) - '@parcel/graph': 3.2.0 - '@parcel/logger': 2.12.0 - '@parcel/package-manager': 2.12.0(@parcel/core@2.12.0) - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/profiler': 2.12.0 - '@parcel/rust': 2.12.0 + '@parcel/cache': 2.13.0(@parcel/core@2.13.0) + '@parcel/diagnostic': 2.13.0 + '@parcel/events': 2.13.0 + '@parcel/feature-flags': 2.13.0 + '@parcel/fs': 2.13.0(@parcel/core@2.13.0) + '@parcel/graph': 3.3.0 + '@parcel/logger': 2.13.0 + '@parcel/package-manager': 2.13.0(@parcel/core@2.13.0) + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/profiler': 2.13.0 + '@parcel/rust': 2.13.0 '@parcel/source-map': 2.1.1 - '@parcel/types': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 - '@parcel/workers': 2.12.0(@parcel/core@2.12.0) - abortcontroller-polyfill: 1.7.6 + '@parcel/types': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 + '@parcel/workers': 2.13.0(@parcel/core@2.13.0) base-x: 3.0.10 browserslist: 4.24.2 clone: 2.1.2 - dotenv: 7.0.0 - dotenv-expand: 5.1.0 + dotenv: 16.4.5 + dotenv-expand: 11.0.7 json5: 2.2.3 msgpackr: 1.11.2 nullthrows: 1.1.1 @@ -5457,31 +5474,65 @@ packages: nullthrows: 1.1.1 dev: true + /@parcel/diagnostic@2.13.0: + resolution: {integrity: sha512-ocgqebLD4VL7/zkOoNBcIRu4ndFRipPwNkLd9cdfux3QBYuYBi5DE+3RSt9IWMrwjS8DMFXCxmtNANr7zujgjw==} + engines: {node: '>= 16.0.0'} + dependencies: + '@mischnic/json-sourcemap': 0.1.1 + nullthrows: 1.1.1 + dev: true + /@parcel/events@2.12.0: resolution: {integrity: sha512-nmAAEIKLjW1kB2cUbCYSmZOGbnGj8wCzhqnK727zCCWaA25ogzAtt657GPOeFyqW77KyosU728Tl63Fc8hphIA==} engines: {node: '>= 12.0.0'} dev: true - /@parcel/fs@2.12.0(@parcel/core@2.12.0): + /@parcel/events@2.13.0: + resolution: {integrity: sha512-vFB/GebsoiSxQy68DvrX8zpeJP2xWhSNYSN99ZbyADxutiAUnquu4nKMJCp4Pb+gNPHr2TitU6LKNGXqWLEE7w==} + engines: {node: '>= 16.0.0'} + dev: true + + /@parcel/feature-flags@2.13.0: + resolution: {integrity: sha512-HNTUy7DfEuowGqkKq2DGwhGEO9U3ORgIgRyxG4cXHMhx9BIE1lmB3ZVfu+dyq34GSYw6ceOgo0I3BZYs7rRKDA==} + engines: {node: '>= 16.0.0'} + dev: true + + /@parcel/fs@2.12.0(@parcel/core@2.13.0): resolution: {integrity: sha512-NnFkuvou1YBtPOhTdZr44WN7I60cGyly2wpHzqRl62yhObyi1KvW0SjwOMa0QGNcBOIzp4G0CapoZ93hD0RG5Q==} engines: {node: '>= 12.0.0'} peerDependencies: '@parcel/core': ^2.12.0 dependencies: - '@parcel/core': 2.12.0 + '@parcel/core': 2.13.0 '@parcel/rust': 2.12.0 - '@parcel/types': 2.12.0(@parcel/core@2.12.0) + '@parcel/types': 2.12.0(@parcel/core@2.13.0) '@parcel/utils': 2.12.0 '@parcel/watcher': 2.5.0 - '@parcel/workers': 2.12.0(@parcel/core@2.12.0) + '@parcel/workers': 2.12.0(@parcel/core@2.13.0) transitivePeerDependencies: - '@swc/helpers' dev: true - /@parcel/graph@3.2.0: - resolution: {integrity: sha512-xlrmCPqy58D4Fg5umV7bpwDx5Vyt7MlnQPxW68vae5+BA4GSWetfZt+Cs5dtotMG2oCHzZxhIPt7YZ7NRyQzLA==} - engines: {node: '>= 12.0.0'} + /@parcel/fs@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-qMaTdlrmnZPk7jy5+FC0xdE5tqzGutRhcoEKGTvtbjEBh++azw9mKkGxLe2CQXnoJXydvM++dhUUIsKhchQGxA==} + engines: {node: '>= 16.0.0'} + peerDependencies: + '@parcel/core': ^2.13.0 dependencies: + '@parcel/core': 2.13.0 + '@parcel/feature-flags': 2.13.0 + '@parcel/rust': 2.13.0 + '@parcel/types-internal': 2.13.0 + '@parcel/utils': 2.13.0 + '@parcel/watcher': 2.5.0 + '@parcel/workers': 2.13.0(@parcel/core@2.13.0) + dev: true + + /@parcel/graph@3.3.0: + resolution: {integrity: sha512-CMiX+yzpZH4clrHIbWqH7Pz2tfdS4C22WbcpUMvS4W+U97BhY4B6mm4ytEUOmyqKWiFNGFTfGwZKst9RjSLE6A==} + engines: {node: '>= 16.0.0'} + dependencies: + '@parcel/feature-flags': 2.13.0 nullthrows: 1.1.1 dev: true @@ -5493,6 +5544,14 @@ packages: '@parcel/events': 2.12.0 dev: true + /@parcel/logger@2.13.0: + resolution: {integrity: sha512-/hWNC27PntVH+GugndqPYflucG8a9Octc6fuQWS40oBZSw5kBQBYs4xkBSkTVLpcI8910HN3aSHjOJIX8ddtRg==} + engines: {node: '>= 16.0.0'} + dependencies: + '@parcel/diagnostic': 2.13.0 + '@parcel/events': 2.13.0 + dev: true + /@parcel/markdown-ansi@2.12.0: resolution: {integrity: sha512-WZz3rzL8k0H3WR4qTHX6Ic8DlEs17keO9gtD4MNGyMNQbqQEvQ61lWJaIH0nAtgEetu0SOITiVqdZrb8zx/M7w==} engines: {node: '>= 12.0.0'} @@ -5500,25 +5559,31 @@ packages: chalk: 4.1.0 dev: true - /@parcel/namer-default@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-9DNKPDHWgMnMtqqZIMiEj/R9PNWW16lpnlHjwK3ciRlMPgjPJ8+UNc255teZODhX0T17GOzPdGbU/O/xbxVPzA==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/markdown-ansi@2.13.0: + resolution: {integrity: sha512-kznmctJ7myhu7/JKN9njHudBj4t8bv4oKW4/cvWgzVR7ftsw9oOJ8EE7eqtqOzzInyATZxXmbk+EYX4S04vLUg==} + engines: {node: '>= 16.0.0'} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + chalk: 4.1.2 + dev: true + + /@parcel/namer-default@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-D4NbhiSr9sG0OUE0TpLWCuFtwZDexfQpug4MGF0qBKTDb0urVxd6peITU2cuJJ2Y615kagGHNiw14qJ62MpIgA==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} + dependencies: + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/node-resolver-core@3.3.0(@parcel/core@2.12.0): + /@parcel/node-resolver-core@3.3.0(@parcel/core@2.13.0): resolution: {integrity: sha512-rhPW9DYPEIqQBSlYzz3S0AjXxjN6Ub2yS6tzzsW/4S3Gpsgk/uEq4ZfxPvoPf/6TgZndVxmKwpmxaKtGMmf3cA==} engines: {node: '>= 12.0.0'} dependencies: '@mischnic/json-sourcemap': 0.1.1 '@parcel/diagnostic': 2.12.0 - '@parcel/fs': 2.12.0(@parcel/core@2.12.0) + '@parcel/fs': 2.12.0(@parcel/core@2.13.0) '@parcel/rust': 2.12.0 '@parcel/utils': 2.12.0 nullthrows: 1.1.1 @@ -5527,81 +5592,92 @@ packages: - '@parcel/core' dev: true - /@parcel/optimizer-css@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-ifbcC97fRzpruTjaa8axIFeX4MjjSIlQfem3EJug3L2AVqQUXnM1XO8L0NaXGNLTW2qnh1ZjIJ7vXT/QhsphsA==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/node-resolver-core@3.4.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-LFbbdUTcrbFI8fYDPk86mJc2SANPZzECTfsrqhx1u36t33iYmJTuGnYUH32unT5ra60KOmeZWny8yqedeyHwuw==} + engines: {node: '>= 16.0.0'} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@mischnic/json-sourcemap': 0.1.1 + '@parcel/diagnostic': 2.13.0 + '@parcel/fs': 2.13.0(@parcel/core@2.13.0) + '@parcel/rust': 2.13.0 + '@parcel/utils': 2.13.0 + nullthrows: 1.1.1 + semver: 7.6.3 + transitivePeerDependencies: + - '@parcel/core' + dev: true + + /@parcel/optimizer-css@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-rB+zltYJaHTqaiVSYkZfYns6bkk4X9AG0AuD78VpGnGhcramle0bvsB8w6zOOtseY66m1+nlYUe6OPw6jrE6Lg==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} + dependencies: + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.12.0 + '@parcel/utils': 2.13.0 browserslist: 4.24.2 lightningcss: 1.28.1 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/optimizer-htmlnano@2.12.0(@parcel/core@2.12.0)(postcss@8.4.49)(typescript@5.4.2): - resolution: {integrity: sha512-MfPMeCrT8FYiOrpFHVR+NcZQlXAptK2r4nGJjfT+ndPBhEEZp4yyL7n1y7HfX9geg5altc4WTb4Gug7rCoW8VQ==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/optimizer-htmlnano@2.13.0(@parcel/core@2.13.0)(postcss@8.4.49)(typescript@5.4.2): + resolution: {integrity: sha512-69Of5qyiWAAHCKyrqg7NbkriuonzowAysIOQNjQPuy5HVMy+hJjUmgikCcwfRxmV+7af/DRlBYGo0ay6wzH/7w==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - htmlnano: 2.1.1(postcss@8.4.49)(svgo@2.8.0)(typescript@5.4.2) + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 + htmlnano: 2.1.1(postcss@8.4.49)(typescript@5.4.2) nullthrows: 1.1.1 posthtml: 0.16.6 - svgo: 2.8.0 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' - cssnano - postcss - purgecss - relateurl - srcset + - svgo - terser - typescript - uncss dev: true - /@parcel/optimizer-image@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-bo1O7raeAIbRU5nmNVtx8divLW9Xqn0c57GVNGeAK4mygnQoqHqRZ0mR9uboh64pxv6ijXZHPhKvU9HEpjPjBQ==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/optimizer-image@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-lCcmUrH91PKLLInADr8k+gEjvGTox4D9XGQkU3o88M+h7nBM0Tx2mKrDjWlMhFag73juc2vuMQKyjt7Sszk+MQ==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} peerDependencies: - '@parcel/core': ^2.12.0 + '@parcel/core': ^2.13.0 dependencies: - '@parcel/core': 2.12.0 - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/rust': 2.12.0 - '@parcel/utils': 2.12.0 - '@parcel/workers': 2.12.0(@parcel/core@2.12.0) - transitivePeerDependencies: - - '@swc/helpers' + '@parcel/core': 2.13.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/rust': 2.13.0 + '@parcel/utils': 2.13.0 + '@parcel/workers': 2.13.0(@parcel/core@2.13.0) dev: true - /@parcel/optimizer-svgo@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-Kyli+ZZXnoonnbeRQdoWwee9Bk2jm/49xvnfb+2OO8NN0d41lblBoRhOyFiScRnJrw7eVl1Xrz7NTkXCIO7XFQ==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/optimizer-svgo@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-dksW0u0IdA73VhutwDYnNhY/Yl5xscm+bia0zmm+02wr11PRW6nvsxvIyFSI/lU0+gsk7nMMxeSqWuPFDJWfrw==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 - svgo: 2.8.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/optimizer-swc@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-iBi6LZB3lm6WmbXfzi8J3DCVPmn4FN2lw7DGXxUXu7MouDPVWfTsM6U/5TkSHJRNRogZ2gqy5q9g34NPxHbJcw==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/optimizer-swc@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-tBo1kn003BJh3dkGQ3Yd5Gsf9yTS+O8G/U0eSvFb/2Xov/Syx98yNFN9JJv9rOf/agJ7Ism3LjbgBEzDDjzZ0w==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.12.0 + '@parcel/utils': 2.13.0 '@swc/core': 1.9.2 nullthrows: 1.1.1 transitivePeerDependencies: @@ -5609,125 +5685,148 @@ packages: - '@swc/helpers' dev: true - /@parcel/package-manager@2.12.0(@parcel/core@2.12.0): + /@parcel/package-manager@2.12.0(@parcel/core@2.13.0): resolution: {integrity: sha512-0nvAezcjPx9FT+hIL+LS1jb0aohwLZXct7jAh7i0MLMtehOi0z1Sau+QpgMlA9rfEZZ1LIeFdnZZwqSy7Ccspw==} engines: {node: '>= 12.0.0'} peerDependencies: '@parcel/core': ^2.12.0 dependencies: - '@parcel/core': 2.12.0 + '@parcel/core': 2.13.0 '@parcel/diagnostic': 2.12.0 - '@parcel/fs': 2.12.0(@parcel/core@2.12.0) + '@parcel/fs': 2.12.0(@parcel/core@2.13.0) '@parcel/logger': 2.12.0 - '@parcel/node-resolver-core': 3.3.0(@parcel/core@2.12.0) - '@parcel/types': 2.12.0(@parcel/core@2.12.0) + '@parcel/node-resolver-core': 3.3.0(@parcel/core@2.13.0) + '@parcel/types': 2.12.0(@parcel/core@2.13.0) '@parcel/utils': 2.12.0 - '@parcel/workers': 2.12.0(@parcel/core@2.12.0) + '@parcel/workers': 2.12.0(@parcel/core@2.13.0) '@swc/core': 1.9.2 semver: 7.6.3 transitivePeerDependencies: - '@swc/helpers' dev: true - /@parcel/packager-css@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-j3a/ODciaNKD19IYdWJT+TP+tnhhn5koBGBWWtrKSu0UxWpnezIGZetit3eE+Y9+NTePalMkvpIlit2eDhvfJA==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/package-manager@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-S8cnSFpJUkPFSvrWc886nDHVTUGWqdCaoA5R8BJ8I8fMOu6pSUkkUexqK5yYnN7S0dn1bLMnKU3ARpwXhOUZJw==} + engines: {node: '>= 16.0.0'} + peerDependencies: + '@parcel/core': ^2.13.0 + dependencies: + '@parcel/core': 2.13.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/fs': 2.13.0(@parcel/core@2.13.0) + '@parcel/logger': 2.13.0 + '@parcel/node-resolver-core': 3.4.0(@parcel/core@2.13.0) + '@parcel/types': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 + '@parcel/workers': 2.13.0(@parcel/core@2.13.0) + '@swc/core': 1.9.2 + semver: 7.6.3 + transitivePeerDependencies: + - '@swc/helpers' + dev: true + + /@parcel/packager-css@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-Zgf2lr0erqiCh4zqmGjnuo63Q6JhouXfYNVTXYWEf+vgCnSanuy7q4e17YC6SU4QmHdy6IF0zoAz1D+x23hsQA==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.12.0 + '@parcel/utils': 2.13.0 lightningcss: 1.28.1 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/packager-html@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-PpvGB9hFFe+19NXGz2ApvPrkA9GwEqaDAninT+3pJD57OVBaxB8U+HN4a5LICKxjUppPPqmrLb6YPbD65IX4RA==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/packager-html@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-L/QrmiG3Zib3WnPy7kxC8njT4r8yvIpNveyv2NE8MRwwlsHf5GytTyK0euRPVLlnl4wCg3z15nrA3081E/OPjw==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/types': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/types': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 nullthrows: 1.1.1 posthtml: 0.16.6 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/packager-js@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-viMF+FszITRRr8+2iJyk+4ruGiL27Y6AF7hQ3xbJfzqnmbOhGFtLTQwuwhOLqN/mWR2VKdgbLpZSarWaO3yAMg==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/packager-js@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-aObsQMSTyZtyvozuAoIRH3Qr7Xqcp+7w8mZNbhxjQsReQoRcnWfoN02yJ658f9vy+JT5lQkgdkNN3k6YfI7lsw==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/rust': 2.12.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/rust': 2.13.0 '@parcel/source-map': 2.1.1 - '@parcel/types': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 + '@parcel/types': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 globals: 13.24.0 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/packager-raw@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-tJZqFbHqP24aq1F+OojFbQIc09P/u8HAW5xfndCrFnXpW4wTgM3p03P0xfw3gnNq+TtxHJ8c3UFE5LnXNNKhYA==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/packager-raw@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-HiLdxaMk588NfUh2ROyOORMaz1kDoPqZzcShz32U9q2kangFSFJmUN+5Sqdw1eSN/cVmK7StWsRyMulGJ+mbgQ==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/packager-svg@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-ldaGiacGb2lLqcXas97k8JiZRbAnNREmcvoY2W2dvW4loVuDT9B9fU777mbV6zODpcgcHWsLL3lYbJ5Lt3y9cg==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/packager-svg@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-hzSKpgXO/d1vzMFDXe4qjsuDoPTcclkX/41CJ1WWtKmBtU7UVK2BEq+hfps4ZrE04cER/0ZvxrrH4xXviYKsig==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/types': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/types': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 posthtml: 0.16.6 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/packager-ts@2.12.0(@parcel/core@2.12.0): + /@parcel/packager-ts@2.12.0(@parcel/core@2.13.0): resolution: {integrity: sha512-8wR0BNN2NBD+IIU0tjioK+lRD4p2Qi/fKxDH5ixEW912tRV+Vd4kE8k++U6YQIpSlK4FRnjFod5zYYhNSLuiXg==} engines: {node: '>= 12.0.0', parcel: ^2.12.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/plugin': 2.12.0(@parcel/core@2.13.0) transitivePeerDependencies: - '@parcel/core' - '@swc/helpers' dev: true - /@parcel/packager-wasm@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-fYqZzIqO9fGYveeImzF8ll6KRo2LrOXfD+2Y5U3BiX/wp9wv17dz50QLDQm9hmTcKGWxK4yWqKQh+Evp/fae7A==} - engines: {node: '>=12.0.0', parcel: ^2.12.0} + /@parcel/packager-wasm@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-2KJnDQhDCU8E79zeUYMy3t6DPC0o1lg8KqvW6cVFS6Cr9Lot5YRzMGSY6/2M3upXK6M9TigfGs21WEcdf10tLw==} + engines: {node: '>=16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/plugin@2.12.0(@parcel/core@2.12.0): + /@parcel/plugin@2.12.0(@parcel/core@2.13.0): resolution: {integrity: sha512-nc/uRA8DiMoe4neBbzV6kDndh/58a4wQuGKw5oEoIwBCHUvE2W8ZFSu7ollSXUGRzfacTt4NdY8TwS73ScWZ+g==} engines: {node: '>= 12.0.0'} dependencies: - '@parcel/types': 2.12.0(@parcel/core@2.12.0) + '@parcel/types': 2.12.0(@parcel/core@2.13.0) transitivePeerDependencies: - '@parcel/core' - '@swc/helpers' dev: true + /@parcel/plugin@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-Q00Zv+zJ+rx+C/bHVNscXot1/cPm7Xx2H/NaJpwoXGg1+GNJFRYI37ids5HyWp9H+K67OnM0bC/7VPsTr9NJ0A==} + engines: {node: '>= 16.0.0'} + dependencies: + '@parcel/types': 2.13.0(@parcel/core@2.13.0) + transitivePeerDependencies: + - '@parcel/core' + dev: true + /@parcel/profiler@2.12.0: resolution: {integrity: sha512-q53fvl5LDcFYzMUtSusUBZSjQrKjMlLEBgKeQHFwkimwR1mgoseaDBDuNz0XvmzDzF1UelJ02TUKCGacU8W2qA==} engines: {node: '>= 12.0.0'} @@ -5737,102 +5836,104 @@ packages: chrome-trace-event: 1.0.4 dev: true - /@parcel/reporter-cli@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-TqKsH4GVOLPSCanZ6tcTPj+rdVHERnt5y4bwTM82cajM21bCX1Ruwp8xOKU+03091oV2pv5ieB18pJyRF7IpIw==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/profiler@2.13.0: + resolution: {integrity: sha512-LW2p0Pfz5TWQprJevN1xHRhqlVm01plCgbzT72qmgjzPMI4QYcZVyG+Y62VGn6iBPivpBqm2TNqdiXzfJreQuw==} + engines: {node: '>= 16.0.0'} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/types': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 - chalk: 4.1.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/events': 2.13.0 + '@parcel/types-internal': 2.13.0 + chrome-trace-event: 1.0.4 + dev: true + + /@parcel/reporter-cli@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-cChHsbp+XrW/3pGZe6Sa+AyWxKRE5uoO9HzFD/r3j6ijCctX2b/Sshs7kmVZLGfDx1GO0u5xU+NzZA8lpFkIkg==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} + dependencies: + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/types': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 + chalk: 4.1.2 term-size: 2.2.1 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/reporter-dev-server@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-tIcDqRvAPAttRlTV28dHcbWT5K2r/MBFks7nM4nrEDHWtnrCwimkDmZTc1kD8QOCCjGVwRHcQybpHvxfwol6GA==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/reporter-dev-server@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-LYm/2peex4aNv5mBqWqSJSpmiGegfuL4i73c3J1zXlcx/lnUIrjAkjh24v+LQsud5Krapqabr19nVlAHpOk33g==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/reporter-tracer@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-g8rlu9GxB8Ut/F8WGx4zidIPQ4pcYFjU9bZO+fyRIPrSUFH2bKijCnbZcr4ntqzDGx74hwD6cCG4DBoleq2UlQ==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/reporter-tracer@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-POKec53mKPI3XurJUIjaKDl9NHdGzkNONzkjcerHdRHp5W5xUp1KuasKIOQY8tHlvqG0Pp1bytszjDvZB3CnmA==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 chrome-trace-event: 1.0.4 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/resolver-default@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-uuhbajTax37TwCxu7V98JtRLiT6hzE4VYSu5B7Qkauy14/WFt2dz6GOUXPgVsED569/hkxebPx3KCMtZW6cHHA==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/resolver-default@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-fdqJ6KnxbZW3Ll65JgHldGiAfVWIhfTVYpnUsh+VvIhranHzn4+JjfevTyjCqx1eLRMxOIjg0uEkwT8d2MOFLw==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/node-resolver-core': 3.3.0(@parcel/core@2.12.0) - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/node-resolver-core': 3.4.0(@parcel/core@2.13.0) + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/runtime-browser-hmr@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-4ZLp2FWyD32r0GlTulO3+jxgsA3oO1P1b5oO2IWuWilfhcJH5LTiazpL5YdusUjtNn9PGN6QLAWfxmzRIfM+Ow==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/runtime-browser-hmr@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-5aSVcow/BN8HG3kS1ACY7SKRMm9zaQ9stCpNLtY5HgqwZ+sSC2jtQPeqMnhrSn9ZHunysGJfJ57Xb9Olgjwh5Q==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/runtime-js@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-sBerP32Z1crX5PfLNGDSXSdqzlllM++GVnVQVeM7DgMKS8JIFG3VLi28YkX+dYYGtPypm01JoIHCkvwiZEcQJg==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/runtime-js@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-19YxijsDLVs6iGve0ARSkxvz12fgwAXYwvZqXaXn0bZYKHAB5M+Yhd/9fW8/z2NXARfI+hnYWdSaMJAardDltQ==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/runtime-react-refresh@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-SCHkcczJIDFTFdLTzrHTkQ0aTrX3xH6jrA4UsCBL6ji61+w+ohy4jEEe9qCgJVXhnJfGLE43HNXek+0MStX+Mw==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/runtime-react-refresh@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-RoUpZjdTai85G4lL+gIERJvZlQJfVylqK/BSjTe4udEez6EZlumxxRKnGLo2ciJEJE4o/+yI0eZDkVmGXCj4pQ==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 react-error-overlay: 6.0.9 - react-refresh: 0.9.0 + react-refresh: 0.14.2 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/runtime-service-worker@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-BXuMBsfiwpIEnssn+jqfC3jkgbS8oxeo3C7xhSQsuSv+AF2FwY3O3AO1c1RBskEW3XrBLNINOJujroNw80VTKA==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/runtime-service-worker@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-UcYIwEbfjdsHeDU/7f28uzz9gdffhkqP2mQeAwyn5okMb4yaWNxx0lCzcMigC5ORy7kNAYO6875FxzqqlsQBxA==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true /@parcel/rust@2.12.0: @@ -5840,6 +5941,11 @@ packages: engines: {node: '>= 12.0.0'} dev: true + /@parcel/rust@2.13.0: + resolution: {integrity: sha512-7wPx5fma2imcIpwoBHxkt4yMDLYbnxQ1utswXaDj59iDu3mJkHU9/WyZWD2KzZdrADAdF8ulR1fg1woBYQ+nwA==} + engines: {node: '>= 16.0.0'} + dev: true + /@parcel/source-map@2.1.1: resolution: {integrity: sha512-Ejx1P/mj+kMjQb8/y5XxDUn4reGdr+WyKYloBljpppUy8gs42T+BNoEOuRYqDVdgPc6NxduzIDoJS9pOFfV5Ew==} engines: {node: ^12.18.3 || >=14} @@ -5847,183 +5953,172 @@ packages: detect-libc: 1.0.3 dev: true - /@parcel/transformer-babel@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-zQaBfOnf/l8rPxYGnsk/ufh/0EuqvmnxafjBIpKZ//j6rGylw5JCqXSb1QvvAqRYruKeccxGv7+HrxpqKU6V4A==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-babel@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-hAZFlZoX/RWbMWezk0/2hyFFmM+D0V7KM31NuNZhuCmgeM54e5QeB64qRUFEXFCN0z2XZR2fdxcYNv3dAb17Ww==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.12.0 + '@parcel/utils': 2.13.0 browserslist: 4.24.2 json5: 2.2.3 nullthrows: 1.1.1 semver: 7.6.3 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/transformer-css@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-vXhOqoAlQGATYyQ433Z1DXKmiKmzOAUmKysbYH3FD+LKEKLMEl/pA14goqp00TW+A/EjtSKKyeMyHlMIIUqj4Q==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-css@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-zxQ5mYFonnv5LR+7CQNH0KxuO+Lao/mtkwRSS+KqsgM/h3liVOumZ406jgag08f22gwXxndQDCE+khys/ODMIA==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.12.0 + '@parcel/utils': 2.13.0 browserslist: 4.24.2 lightningcss: 1.28.1 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/transformer-html@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-5jW4dFFBlYBvIQk4nrH62rfA/G/KzVzEDa6S+Nne0xXhglLjkm64Ci9b/d4tKZfuGWUbpm2ASAq8skti/nfpXw==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-html@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-iCgW95Nb+Hvu5y+2owjipuzxGOMzLdw2OHcGAN4iw+lyQtXD1TnovL4kzHxjURk5Jj+or0xRAjACtdHjAz7O8Q==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/rust': 2.12.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/rust': 2.13.0 nullthrows: 1.1.1 posthtml: 0.16.6 - posthtml-parser: 0.10.2 + posthtml-parser: 0.12.1 posthtml-render: 3.0.0 semver: 7.6.3 srcset: 4.0.0 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/transformer-image@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-8hXrGm2IRII49R7lZ0RpmNk27EhcsH+uNKsvxuMpXPuEnWgC/ha/IrjaI29xCng1uGur74bJF43NUSQhR4aTdw==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-image@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-wehluaZIB6sMqCDU70d2WQW53ubQ6nlzWIsCKoXQxDVThf4xNPbXaqDwZ4udwKZQ+x3frfmeEZXhv1JcFFN5Yw==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} peerDependencies: - '@parcel/core': ^2.12.0 + '@parcel/core': ^2.13.0 dependencies: - '@parcel/core': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 - '@parcel/workers': 2.12.0(@parcel/core@2.12.0) + '@parcel/core': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 + '@parcel/workers': 2.13.0(@parcel/core@2.13.0) nullthrows: 1.1.1 - transitivePeerDependencies: - - '@swc/helpers' dev: true - /@parcel/transformer-js@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-OSZpOu+FGDbC/xivu24v092D9w6EGytB3vidwbdiJ2FaPgfV7rxS0WIUjH4I0OcvHAcitArRXL0a3+HrNTdQQw==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-js@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-vFSLXhdAQ1G4QqdXPE3bu2Yxh047HeqsxoQpbUNqPzLY/IR8P+ZTG4lUVVE5sGGfck2FfHksJP8uTq6RII4cnw==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} peerDependencies: - '@parcel/core': ^2.12.0 + '@parcel/core': ^2.13.0 dependencies: - '@parcel/core': 2.12.0 - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/rust': 2.12.0 + '@parcel/core': 2.13.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/rust': 2.13.0 '@parcel/source-map': 2.1.1 - '@parcel/utils': 2.12.0 - '@parcel/workers': 2.12.0(@parcel/core@2.12.0) + '@parcel/utils': 2.13.0 + '@parcel/workers': 2.13.0(@parcel/core@2.13.0) '@swc/helpers': 0.5.15 browserslist: 4.24.2 nullthrows: 1.1.1 - regenerator-runtime: 0.13.11 + regenerator-runtime: 0.14.1 semver: 7.6.3 dev: true - /@parcel/transformer-json@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-Utv64GLRCQILK5r0KFs4o7I41ixMPllwOLOhkdjJKvf1hZmN6WqfOmB1YLbWS/y5Zb/iB52DU2pWZm96vLFQZQ==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-json@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-aNmOZcX8oMHrgP4BlqShAoXleTTIstdM2Cflf4d8gUxm4G0GgfYvXRlypxg4twbEtbEHyqrb3qI6wEzIz6U9ZQ==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) json5: 2.2.3 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/transformer-postcss@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-FZqn+oUtiLfPOn67EZxPpBkfdFiTnF4iwiXPqvst3XI8H+iC+yNgzmtJkunOOuylpYY6NOU5jT8d7saqWSDv2Q==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-postcss@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-04W4QSEqqY36wqpDB9zw847C5LKuQ2pOAO/AseLc7pdvt7W8Pq7GYFTCUUhlo0Lravvw5Z7mMJq043Z05IoCDg==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/rust': 2.12.0 - '@parcel/utils': 2.12.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/rust': 2.13.0 + '@parcel/utils': 2.13.0 clone: 2.1.2 nullthrows: 1.1.1 postcss-value-parser: 4.2.0 semver: 7.6.3 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/transformer-posthtml@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-z6Z7rav/pcaWdeD+2sDUcd0mmNZRUvtHaUGa50Y2mr+poxrKilpsnFMSiWBT+oOqPt7j71jzDvrdnAF4XkCljg==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-posthtml@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-MnfF0a5LMCALxm5h7zgmGnOkSC/o9J9l6QwddzX1om3MSsCwRWmvEewuASSftyIy80Opx0J8bBPVJbkCCAWqLQ==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 nullthrows: 1.1.1 posthtml: 0.16.6 - posthtml-parser: 0.10.2 + posthtml-parser: 0.12.1 posthtml-render: 3.0.0 semver: 7.6.3 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/transformer-raw@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-Ht1fQvXxix0NncdnmnXZsa6hra20RXYh1VqhBYZLsDfkvGGFnXIgO03Jqn4Z8MkKoa0tiNbDhpKIeTjyclbBxQ==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-raw@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-9gvh3ozDOXOjpufTrEcqmzKisjTFeXA+GO9pochiVdjVB5Sg0FBxFFX9dkcXmC0dFcHchh7/d4unbUUQuCjM8Q==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/transformer-react-refresh-wrap@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-GE8gmP2AZtkpBIV5vSCVhewgOFRhqwdM5Q9jNPOY5PKcM3/Ff0qCqDiTzzGLhk0/VMBrdjssrfZkVx6S/lHdJw==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-react-refresh-wrap@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-AHbCYewzMmIH8ajFvequTtCEST9oHIGHTzYfIss7TMjvAvSrgUs4ESQ9qyNV1Y0A6Nrj5nOe1Oax4bCsBMDWCw==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 - react-refresh: 0.9.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 + react-refresh: 0.14.2 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/transformer-svg@2.12.0(@parcel/core@2.12.0): - resolution: {integrity: sha512-cZJqGRJ4JNdYcb+vj94J7PdOuTnwyy45dM9xqbIMH+HSiiIkfrMsdEwYft0GTyFTdsnf+hdHn3tau7Qa5hhX+A==} - engines: {node: '>= 12.0.0', parcel: ^2.12.0} + /@parcel/transformer-svg@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-9lV9ab6TBBs1GQhNcgs9IwpdqvWnfOeZiORqGH7aSpiAaTy9w9Nm+1hSycK5Fz4EZ9wavvdcHftf0LGyymK2MQ==} + engines: {node: '>= 16.0.0', parcel: ^2.13.0} dependencies: - '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) - '@parcel/rust': 2.12.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/plugin': 2.13.0(@parcel/core@2.13.0) + '@parcel/rust': 2.13.0 nullthrows: 1.1.1 posthtml: 0.16.6 - posthtml-parser: 0.10.2 + posthtml-parser: 0.12.1 posthtml-render: 3.0.0 semver: 7.6.3 transitivePeerDependencies: - '@parcel/core' - - '@swc/helpers' dev: true - /@parcel/transformer-typescript-types@2.12.0(@parcel/core@2.12.0)(typescript@5.4.2): + /@parcel/transformer-typescript-types@2.12.0(@parcel/core@2.13.0)(typescript@5.4.2): resolution: {integrity: sha512-uxF4UBMYvbjiV3zHTWMrZX8cFD92VUvD3ArcGi5WEtuVROUm9Sc47o0mOzxKfMFlJu2KOfZVHYlzK9f/UKA2kQ==} engines: {node: '>= 12.0.0', parcel: ^2.12.0} peerDependencies: typescript: '>=3.0.0' dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0) + '@parcel/plugin': 2.12.0(@parcel/core@2.13.0) '@parcel/source-map': 2.1.1 '@parcel/ts-utils': 2.12.0(typescript@5.4.2) '@parcel/utils': 2.12.0 @@ -6044,21 +6139,39 @@ packages: typescript: 5.4.2 dev: true - /@parcel/types@2.12.0(@parcel/core@2.12.0): + /@parcel/types-internal@2.13.0: + resolution: {integrity: sha512-yhIbaH+VXQB7Leifsnwifr80R6q2Yqeo+xN4KcPGuGH94iX7LrxJ3V0iwUMIg5nGmh5hmNbq0MEYFFxqVuZ8wQ==} + dependencies: + '@parcel/diagnostic': 2.13.0 + '@parcel/feature-flags': 2.13.0 + '@parcel/source-map': 2.1.1 + utility-types: 3.11.0 + dev: true + + /@parcel/types@2.12.0(@parcel/core@2.13.0): resolution: {integrity: sha512-8zAFiYNCwNTQcglIObyNwKfRYQK5ELlL13GuBOrSMxueUiI5ylgsGbTS1N7J3dAGZixHO8KhHGv5a71FILn9rQ==} dependencies: - '@parcel/cache': 2.12.0(@parcel/core@2.12.0) + '@parcel/cache': 2.12.0(@parcel/core@2.13.0) '@parcel/diagnostic': 2.12.0 - '@parcel/fs': 2.12.0(@parcel/core@2.12.0) - '@parcel/package-manager': 2.12.0(@parcel/core@2.12.0) + '@parcel/fs': 2.12.0(@parcel/core@2.13.0) + '@parcel/package-manager': 2.12.0(@parcel/core@2.13.0) '@parcel/source-map': 2.1.1 - '@parcel/workers': 2.12.0(@parcel/core@2.12.0) + '@parcel/workers': 2.12.0(@parcel/core@2.13.0) utility-types: 3.11.0 transitivePeerDependencies: - '@parcel/core' - '@swc/helpers' dev: true + /@parcel/types@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-o9Oe43ZIe5rwY/vqE70yZxSPfkNAIoXdLTnqYX+bIDchqWqY6xSSeNdhkwuT5VNKAh5F8T1UJput7rgE6Znx/w==} + dependencies: + '@parcel/types-internal': 2.13.0 + '@parcel/workers': 2.13.0(@parcel/core@2.13.0) + transitivePeerDependencies: + - '@parcel/core' + dev: true + /@parcel/utils@2.12.0: resolution: {integrity: sha512-z1JhLuZ8QmDaYoEIuUCVZlhcFrS7LMfHrb2OCRui5SQFntRWBH2fNM6H/fXXUkT9SkxcuFP2DUA6/m4+Gkz72g==} engines: {node: '>= 12.0.0'} @@ -6073,6 +6186,20 @@ packages: nullthrows: 1.1.1 dev: true + /@parcel/utils@2.13.0: + resolution: {integrity: sha512-tLHtce8s2gNFHC9kS5VkNrf6YX9ZjVigk/+ZeWpsde8lBpCaY8OHLubJMXSAdk6q26RDn8tCrdMkndlfautDIw==} + engines: {node: '>= 16.0.0'} + dependencies: + '@parcel/codeframe': 2.13.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/logger': 2.13.0 + '@parcel/markdown-ansi': 2.13.0 + '@parcel/rust': 2.13.0 + '@parcel/source-map': 2.1.1 + chalk: 4.1.2 + nullthrows: 1.1.1 + dev: true + /@parcel/watcher-android-arm64@2.5.0: resolution: {integrity: sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ==} engines: {node: '>= 10.0.0'} @@ -6215,19 +6342,36 @@ packages: '@parcel/watcher-win32-x64': 2.5.0 dev: true - /@parcel/workers@2.12.0(@parcel/core@2.12.0): + /@parcel/workers@2.12.0(@parcel/core@2.13.0): resolution: {integrity: sha512-zv5We5Jmb+ZWXlU6A+AufyjY4oZckkxsZ8J4dvyWL0W8IQvGO1JB4FGeryyttzQv3RM3OxcN/BpTGPiDG6keBw==} engines: {node: '>= 12.0.0'} peerDependencies: '@parcel/core': ^2.12.0 dependencies: - '@parcel/core': 2.12.0 + '@parcel/core': 2.13.0 '@parcel/diagnostic': 2.12.0 '@parcel/logger': 2.12.0 '@parcel/profiler': 2.12.0 - '@parcel/types': 2.12.0(@parcel/core@2.12.0) + '@parcel/types': 2.12.0(@parcel/core@2.13.0) '@parcel/utils': 2.12.0 nullthrows: 1.1.1 + transitivePeerDependencies: + - '@swc/helpers' + dev: true + + /@parcel/workers@2.13.0(@parcel/core@2.13.0): + resolution: {integrity: sha512-E9LryfGSog45j/ZSMyGSQVuuBWen2P0s/SEwIsXIYQFP/MGY9tL4ZUwVyfThHOI0kx8d8PfdNaSHBOZEIRrXvQ==} + engines: {node: '>= 16.0.0'} + peerDependencies: + '@parcel/core': ^2.13.0 + dependencies: + '@parcel/core': 2.13.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/logger': 2.13.0 + '@parcel/profiler': 2.13.0 + '@parcel/types-internal': 2.13.0 + '@parcel/utils': 2.13.0 + nullthrows: 1.1.1 dev: true /@pkgjs/parseargs@0.11.0: @@ -6236,12 +6380,12 @@ packages: requiresBuild: true optional: true - /@playwright/test@1.48.2: - resolution: {integrity: sha512-54w1xCWfXuax7dz4W2M9uw0gDyh+ti/0K/MxcCUxChFh37kkdxPdfZDw5QBbuPUJHr1CiHJ1hXgSs+GgeQc5Zw==} + /@playwright/test@1.49.0: + resolution: {integrity: sha512-DMulbwQURa8rNIQrf94+jPJQ4FmOVdpE5ZppRNvWVjvhC+6sOeo28r8MgIpQRYouXRtt/FCCXU7zn20jnHR4Qw==} engines: {node: '>=18'} hasBin: true dependencies: - playwright: 1.48.2 + playwright: 1.49.0 dev: true /@polka/url@1.0.0-next.28: @@ -6255,127 +6399,127 @@ packages: picomatch: 2.3.1 dev: false - /@rollup/rollup-android-arm-eabi@4.27.1: - resolution: {integrity: sha512-Y/i1fVMnP6PEllrv2yMFWIxq5axF3cIzeLHqKwKYd9FgIq0Py1qKWoHoosbxHmsokbLJtfjyH7/ebY6KTAIARQ==} + /@rollup/rollup-android-arm-eabi@4.27.3: + resolution: {integrity: sha512-EzxVSkIvCFxUd4Mgm4xR9YXrcp976qVaHnqom/Tgm+vU79k4vV4eYTjmRvGfeoW8m9LVcsAy/lGjcgVegKEhLQ==} cpu: [arm] os: [android] requiresBuild: true optional: true - /@rollup/rollup-android-arm64@4.27.1: - resolution: {integrity: sha512-WXrtqF2zOOTGjE6pNDF5oYPBlwpopSGaQPIZULbMKvchT7OyYzmUnEim0ICNAlz4qHYs4vxJOn1S4aLd930EKA==} + /@rollup/rollup-android-arm64@4.27.3: + resolution: {integrity: sha512-LJc5pDf1wjlt9o/Giaw9Ofl+k/vLUaYsE2zeQGH85giX2F+wn/Cg8b3c5CDP3qmVmeO5NzwVUzQQxwZvC2eQKw==} cpu: [arm64] os: [android] requiresBuild: true optional: true - /@rollup/rollup-darwin-arm64@4.27.1: - resolution: {integrity: sha512-FkEfMuiAA+utxcauRC23iw3zT/wioQjYv9eBGMVvbNqzOLa4IPHED2qIgPh/W6nrHDTH4AO47T8JvqTDV+aFWA==} + /@rollup/rollup-darwin-arm64@4.27.3: + resolution: {integrity: sha512-OuRysZ1Mt7wpWJ+aYKblVbJWtVn3Cy52h8nLuNSzTqSesYw1EuN6wKp5NW/4eSre3mp12gqFRXOKTcN3AI3LqA==} cpu: [arm64] os: [darwin] requiresBuild: true optional: true - /@rollup/rollup-darwin-x64@4.27.1: - resolution: {integrity: sha512-0KA3hHrcqdnAfyRb0bl6ifXTNoiktWR6mYKWxiCJZmUMrmR90M2Y11w5lDcjatmflo98iI0id0TztTuHcZKqRg==} + /@rollup/rollup-darwin-x64@4.27.3: + resolution: {integrity: sha512-xW//zjJMlJs2sOrCmXdB4d0uiilZsOdlGQIC/jjmMWT47lkLLoB1nsNhPUcnoqyi5YR6I4h+FjBpILxbEy8JRg==} cpu: [x64] os: [darwin] requiresBuild: true optional: true - /@rollup/rollup-freebsd-arm64@4.27.1: - resolution: {integrity: sha512-WOAkR+4FwxTZ5QvsSt2j1XB5Artr5eGyAInfH8G1uvL2ic1sdXuOtNDX3oj5jFswnb8Tv5r5uOFSI3e+io435A==} + /@rollup/rollup-freebsd-arm64@4.27.3: + resolution: {integrity: sha512-58E0tIcwZ+12nK1WiLzHOD8I0d0kdrY/+o7yFVPRHuVGY3twBwzwDdTIBGRxLmyjciMYl1B/U515GJy+yn46qw==} cpu: [arm64] os: [freebsd] requiresBuild: true optional: true - /@rollup/rollup-freebsd-x64@4.27.1: - resolution: {integrity: sha512-9tj94xM3QCXb/tJqrJj0UQWjYcb7c+VQM4YZDctRFfgVAc/edfmZUc2f/lvoZMmenllcN+D44bMxC8nIrEq6pw==} + /@rollup/rollup-freebsd-x64@4.27.3: + resolution: {integrity: sha512-78fohrpcVwTLxg1ZzBMlwEimoAJmY6B+5TsyAZ3Vok7YabRBUvjYTsRXPTjGEvv/mfgVBepbW28OlMEz4w8wGA==} cpu: [x64] os: [freebsd] requiresBuild: true optional: true - /@rollup/rollup-linux-arm-gnueabihf@4.27.1: - resolution: {integrity: sha512-AYyiqk5p6qH/Rfgm9WsMs559S8ICzwBTS7hu8J9vya1lqCg9Htw6U/KV+gsJ1SE4Z4IctkbIkQy24htk9nfs6A==} + /@rollup/rollup-linux-arm-gnueabihf@4.27.3: + resolution: {integrity: sha512-h2Ay79YFXyQi+QZKo3ISZDyKaVD7uUvukEHTOft7kh00WF9mxAaxZsNs3o/eukbeKuH35jBvQqrT61fzKfAB/Q==} cpu: [arm] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-arm-musleabihf@4.27.1: - resolution: {integrity: sha512-MHkwGQ96RbQTJVeV7O10gzB09Y3H1WAIUm6vMPrGRCZEsbqLHych5MlyvHHL1BXjSLB8t441eSXoepMsh8jxtg==} + /@rollup/rollup-linux-arm-musleabihf@4.27.3: + resolution: {integrity: sha512-Sv2GWmrJfRY57urktVLQ0VKZjNZGogVtASAgosDZ1aUB+ykPxSi3X1nWORL5Jk0sTIIwQiPH7iE3BMi9zGWfkg==} cpu: [arm] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-arm64-gnu@4.27.1: - resolution: {integrity: sha512-p9huy9uW0FCtjqAHRrHcBVU63xtbfBwcvjV4N4a0cy69sdvTsHLlg/pb3WqSz4eTFxnpfZ6SMTpilew53+DQ1Q==} + /@rollup/rollup-linux-arm64-gnu@4.27.3: + resolution: {integrity: sha512-FPoJBLsPW2bDNWjSrwNuTPUt30VnfM8GPGRoLCYKZpPx0xiIEdFip3dH6CqgoT0RnoGXptaNziM0WlKgBc+OWQ==} cpu: [arm64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-arm64-musl@4.27.1: - resolution: {integrity: sha512-1d5UxhZlVFnyF5rFWNXMrr/MHkBU32xfmFI/KPosuKhvUS7ge2T3Z3R5r3PlB/tv9fMETcvr761G35r08MK3sQ==} + /@rollup/rollup-linux-arm64-musl@4.27.3: + resolution: {integrity: sha512-TKxiOvBorYq4sUpA0JT+Fkh+l+G9DScnG5Dqx7wiiqVMiRSkzTclP35pE6eQQYjP4Gc8yEkJGea6rz4qyWhp3g==} cpu: [arm64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-powerpc64le-gnu@4.27.1: - resolution: {integrity: sha512-/ht989pqM1mw+6xBAExE5WlgCCT0HV4uJQmRYUUZvXAPtbnPjkZ4oevR0upyF2fPhrtgsrptMtBiD2Zax0PXzw==} + /@rollup/rollup-linux-powerpc64le-gnu@4.27.3: + resolution: {integrity: sha512-v2M/mPvVUKVOKITa0oCFksnQQ/TqGrT+yD0184/cWHIu0LoIuYHwox0Pm3ccXEz8cEQDLk6FPKd1CCm+PlsISw==} cpu: [ppc64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-riscv64-gnu@4.27.1: - resolution: {integrity: sha512-udOKLtPNOVwSwre2v+Bmp3qYBvqkjP+wYIGic1r3XqzpiuvIxfQOt8hSxnp45eFeiHV50+ol4IpZJ2WEt4Hkog==} + /@rollup/rollup-linux-riscv64-gnu@4.27.3: + resolution: {integrity: sha512-LdrI4Yocb1a/tFVkzmOE5WyYRgEBOyEhWYJe4gsDWDiwnjYKjNs7PS6SGlTDB7maOHF4kxevsuNBl2iOcj3b4A==} cpu: [riscv64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-s390x-gnu@4.27.1: - resolution: {integrity: sha512-eVs55EQmW92BDzlwzp1Yg5dGEP8UxXb611qe0DS2xM4WxmFPjjTyb7JSsrxRbdl91A5ZNcW4O8cQuDJ7ELYdeg==} + /@rollup/rollup-linux-s390x-gnu@4.27.3: + resolution: {integrity: sha512-d4wVu6SXij/jyiwPvI6C4KxdGzuZOvJ6y9VfrcleHTwo68fl8vZC5ZYHsCVPUi4tndCfMlFniWgwonQ5CUpQcA==} cpu: [s390x] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-x64-gnu@4.27.1: - resolution: {integrity: sha512-8/s+Qj8bGaE03YqfAbS4SI1imWVJj0NvP/828FO8qGu7nS6b0ur7n+PcM8UOU0+lzSgcO/aUk97EXMaPkegGDw==} + /@rollup/rollup-linux-x64-gnu@4.27.3: + resolution: {integrity: sha512-/6bn6pp1fsCGEY5n3yajmzZQAh+mW4QPItbiWxs69zskBzJuheb3tNynEjL+mKOsUSFK11X4LYF2BwwXnzWleA==} cpu: [x64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-linux-x64-musl@4.27.1: - resolution: {integrity: sha512-mU8t4pSlUkvdRrhP8Gl8cU46W61avh+wUWTLQd/EBm/Ny19slYYXVvB9lHpAtLT9AVaXxMvTSc9m6H1qmUDDlw==} + /@rollup/rollup-linux-x64-musl@4.27.3: + resolution: {integrity: sha512-nBXOfJds8OzUT1qUreT/en3eyOXd2EH5b0wr2bVB5999qHdGKkzGzIyKYaKj02lXk6wpN71ltLIaQpu58YFBoQ==} cpu: [x64] os: [linux] requiresBuild: true optional: true - /@rollup/rollup-win32-arm64-msvc@4.27.1: - resolution: {integrity: sha512-AcQsa9FF6T9FrHXWXGAqJ6Kjcae2lYEDZA7wRQmK/3Bvv/0hH38tJL51CYclTY90fRf1mtKuwpC4LRcMkZuV1w==} + /@rollup/rollup-win32-arm64-msvc@4.27.3: + resolution: {integrity: sha512-ogfbEVQgIZOz5WPWXF2HVb6En+kWzScuxJo/WdQTqEgeyGkaa2ui5sQav9Zkr7bnNCLK48uxmmK0TySm22eiuw==} cpu: [arm64] os: [win32] requiresBuild: true optional: true - /@rollup/rollup-win32-ia32-msvc@4.27.1: - resolution: {integrity: sha512-rTQbl/dhpKbOb83i8AHAQm5FTeDmoKQqiNH2F3vlp5fySgT4t36wehWoCcrax7LRCmXc1LWrj66LEnrcXK/SRA==} + /@rollup/rollup-win32-ia32-msvc@4.27.3: + resolution: {integrity: sha512-ecE36ZBMLINqiTtSNQ1vzWc5pXLQHlf/oqGp/bSbi7iedcjcNb6QbCBNG73Euyy2C+l/fn8qKWEwxr+0SSfs3w==} cpu: [ia32] os: [win32] requiresBuild: true optional: true - /@rollup/rollup-win32-x64-msvc@4.27.1: - resolution: {integrity: sha512-zpKGR76smqVOCPeQPqmqXNhEXx+1WwHwozJWvWU6cYy5itRQyYC8TQQoWph+ikxJz5H81u6vwNB8cnYzvXV5Mw==} + /@rollup/rollup-win32-x64-msvc@4.27.3: + resolution: {integrity: sha512-vliZLrDmYKyaUoMzEbMTg2JkerfBjn03KmAw9CykO0Zzkzoyd7o3iZNam/TpyWNjNT+Cz2iO3P9Smv2wgrR+Eg==} cpu: [x64] os: [win32] requiresBuild: true @@ -7100,7 +7244,7 @@ packages: '@storybook/types': 8.4.4(storybook@8.4.4) '@sveltejs/vite-plugin-svelte': 3.0.2(svelte@4.2.19)(vite@5.4.11) dedent: 1.5.3 - magic-string: 0.30.12 + magic-string: 0.30.13 svelte: 4.2.19 vite: 5.4.11(@types/node@20.11.28) transitivePeerDependencies: @@ -7300,11 +7444,11 @@ packages: '@storybook/builder-vite': 8.4.4(storybook@8.4.4)(vite@5.4.11) '@storybook/svelte': 8.4.4(storybook@8.4.4)(svelte@4.2.19) '@sveltejs/vite-plugin-svelte': 3.0.2(svelte@4.2.19)(vite@5.4.11) - magic-string: 0.30.12 + magic-string: 0.30.13 storybook: 8.4.4(prettier@3.3.3) svelte: 4.2.19 svelte-preprocess: 5.1.3(postcss-load-config@4.0.2)(postcss@8.4.49)(svelte@4.2.19)(typescript@5.6.3) - svelte2tsx: 0.7.25(svelte@4.2.19)(typescript@5.6.3) + svelte2tsx: 0.7.26(svelte@4.2.19)(typescript@5.6.3) sveltedoc-parser: 4.2.1 ts-dedent: 2.2.0 typescript: 5.6.3 @@ -7445,7 +7589,7 @@ packages: esm-env: 1.1.4 import-meta-resolve: 4.1.0 kleur: 4.1.5 - magic-string: 0.30.12 + magic-string: 0.30.13 mrmime: 2.0.0 sade: 1.8.1 set-cookie-parser: 2.7.1 @@ -7483,7 +7627,7 @@ packages: sade: 1.8.1 semver: 7.6.3 svelte: 4.2.19 - svelte2tsx: 0.7.25(svelte@4.2.19)(typescript@5.4.2) + svelte2tsx: 0.7.26(svelte@4.2.19)(typescript@5.4.2) transitivePeerDependencies: - typescript dev: true @@ -7514,7 +7658,7 @@ packages: debug: 4.3.7 deepmerge: 4.3.1 kleur: 4.1.5 - magic-string: 0.30.12 + magic-string: 0.30.13 svelte: 4.2.19 svelte-hmr: 0.15.3(svelte@4.2.19) vite: 5.4.11(@types/node@20.11.28) @@ -7754,11 +7898,6 @@ packages: resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} dev: false - /@trysound/sax@0.2.0: - resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} - engines: {node: '>=10.13.0'} - dev: true - /@types/aria-query@5.0.4: resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} @@ -8420,7 +8559,7 @@ packages: istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.1.7 - magic-string: 0.30.12 + magic-string: 0.30.13 magicast: 0.3.5 picocolors: 1.1.1 std-env: 3.8.0 @@ -8443,7 +8582,7 @@ packages: istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.1.7 - magic-string: 0.30.12 + magic-string: 0.30.13 magicast: 0.3.5 std-env: 3.8.0 test-exclude: 7.0.1 @@ -8490,7 +8629,7 @@ packages: dependencies: '@vitest/spy': 2.1.5 estree-walker: 3.0.3 - magic-string: 0.30.12 + magic-string: 0.30.13 vite: 5.4.11(@types/node@20.11.28) dev: true @@ -8528,7 +8667,7 @@ packages: /@vitest/snapshot@1.6.0: resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} dependencies: - magic-string: 0.30.12 + magic-string: 0.30.13 pathe: 1.1.2 pretty-format: 29.7.0 @@ -8536,7 +8675,7 @@ packages: resolution: {integrity: sha512-SgCPUeDFLaM0mIUHfaArq8fD2WbaXG/zVXjRupthYfYGzc8ztbFbu6dUNOblBG7XLMR1kEhS/DNnfCZ2IhdDew==} dependencies: '@vitest/pretty-format': 2.0.5 - magic-string: 0.30.12 + magic-string: 0.30.13 pathe: 1.1.2 dev: true @@ -8544,7 +8683,7 @@ packages: resolution: {integrity: sha512-zmYw47mhfdfnYbuhkQvkkzYroXUumrwWDGlMjpdUr4jBd3HZiV2w7CQHj+z7AAS4VOtWxI4Zt4bWt4/sKcoIjg==} dependencies: '@vitest/pretty-format': 2.1.5 - magic-string: 0.30.12 + magic-string: 0.30.13 pathe: 1.1.2 dev: true @@ -8888,10 +9027,6 @@ packages: event-target-shim: 5.0.1 dev: false - /abortcontroller-polyfill@1.7.6: - resolution: {integrity: sha512-Zypm+LjYdWAzvuypZvDN0smUJrhOurcuBWhhMRBExqVLRvdjp3Z9mASxKyq19K+meZMshwjjy5S0lkm388zE4Q==} - dev: true - /accepts@1.3.8: resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} engines: {node: '>= 0.6'} @@ -8965,23 +9100,23 @@ packages: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - /algoliasearch@5.14.0: - resolution: {integrity: sha512-qr21NtvIkpptwj9z6W5guICK8yijXIGzw7Ka26zAPofnefofVXoXtuAopjtmk1ZKDu4YpACj38n9mgKKc5Zuhw==} + /algoliasearch@5.14.2: + resolution: {integrity: sha512-aYjI4WLamMxbhdJ2QAA99VbDCJOGzMOdT2agh57bi40n86ufkhZSIAf6mkocr7NmtBLtwCnSHvD5NJ+Ky5elWw==} engines: {node: '>= 14.0.0'} dependencies: - '@algolia/client-abtesting': 5.14.0 - '@algolia/client-analytics': 5.14.0 - '@algolia/client-common': 5.14.0 - '@algolia/client-insights': 5.14.0 - '@algolia/client-personalization': 5.14.0 - '@algolia/client-query-suggestions': 5.14.0 - '@algolia/client-search': 5.14.0 - '@algolia/ingestion': 1.14.0 - '@algolia/monitoring': 1.14.0 - '@algolia/recommend': 5.14.0 - '@algolia/requester-browser-xhr': 5.14.0 - '@algolia/requester-fetch': 5.14.0 - '@algolia/requester-node-http': 5.14.0 + '@algolia/client-abtesting': 5.14.2 + '@algolia/client-analytics': 5.14.2 + '@algolia/client-common': 5.14.2 + '@algolia/client-insights': 5.14.2 + '@algolia/client-personalization': 5.14.2 + '@algolia/client-query-suggestions': 5.14.2 + '@algolia/client-search': 5.14.2 + '@algolia/ingestion': 1.14.2 + '@algolia/monitoring': 1.14.2 + '@algolia/recommend': 5.14.2 + '@algolia/requester-browser-xhr': 5.14.2 + '@algolia/requester-fetch': 5.14.2 + '@algolia/requester-node-http': 5.14.2 dev: false /ansi-colors@4.1.1: @@ -9491,6 +9626,7 @@ packages: /boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + dev: false /bowser@2.11.0: resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==} @@ -9547,7 +9683,7 @@ packages: hasBin: true dependencies: caniuse-lite: 1.0.30001680 - electron-to-chromium: 1.5.60 + electron-to-chromium: 1.5.63 node-releases: 2.0.18 update-browserslist-db: 1.1.1(browserslist@4.24.2) @@ -9911,7 +10047,6 @@ packages: /clean-stack@2.2.0: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} engines: {node: '>=6'} - requiresBuild: true dev: false /cli-cursor@4.0.0: @@ -10130,6 +10265,11 @@ packages: engines: {node: '>=16'} dev: false + /commander@12.1.0: + resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} + engines: {node: '>=18'} + dev: true + /commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} dev: true @@ -10229,7 +10369,7 @@ packages: engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} hasBin: true dependencies: - cross-spawn: 7.0.5 + cross-spawn: 7.0.6 /cross-spawn@5.1.0: resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} @@ -10239,8 +10379,8 @@ packages: which: 1.3.1 dev: true - /cross-spawn@6.0.5: - resolution: {integrity: sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==} + /cross-spawn@6.0.6: + resolution: {integrity: sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==} engines: {node: '>=4.8'} dependencies: nice-try: 1.0.5 @@ -10250,24 +10390,14 @@ packages: which: 1.3.1 dev: true - /cross-spawn@7.0.5: - resolution: {integrity: sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==} + /cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} dependencies: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 - /css-select@4.3.0: - resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} - dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 4.3.1 - domutils: 2.8.0 - nth-check: 2.1.1 - dev: true - /css-select@5.1.0: resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} dependencies: @@ -10282,14 +10412,6 @@ packages: resolution: {integrity: sha512-HYPSb7y/Z7BNDCOrakL4raGO2zltZkbeXyAd6Tg9obzix6QhzxCotdBl6VT0Dv4vZfJGVz3WL/xaEI9Ly3ul0g==} dev: false - /css-tree@1.1.3: - resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} - engines: {node: '>=8.0.0'} - dependencies: - mdn-data: 2.0.14 - source-map: 0.6.1 - dev: true - /css-tree@2.3.1: resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} @@ -10300,6 +10422,7 @@ packages: /css-what@6.1.0: resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} engines: {node: '>= 6'} + dev: false /css.escape@1.5.1: resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==} @@ -10309,13 +10432,6 @@ packages: engines: {node: '>=4'} hasBin: true - /csso@4.2.0: - resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} - engines: {node: '>=8.0.0'} - dependencies: - css-tree: 1.1.3 - dev: true - /cssstyle@4.1.0: resolution: {integrity: sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==} engines: {node: '>=18'} @@ -10713,7 +10829,6 @@ packages: domelementtype: 2.3.0 domhandler: 5.0.3 entities: 4.5.0 - dev: false /domelementtype@2.3.0: resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} @@ -10737,7 +10852,6 @@ packages: engines: {node: '>= 4'} dependencies: domelementtype: 2.3.0 - dev: false /domutils@2.8.0: resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} @@ -10753,10 +10867,12 @@ packages: dom-serializer: 2.0.0 domelementtype: 2.3.0 domhandler: 5.0.3 - dev: false - /dotenv-expand@5.1.0: - resolution: {integrity: sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==} + /dotenv-expand@11.0.7: + resolution: {integrity: sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==} + engines: {node: '>=12'} + dependencies: + dotenv: 16.4.5 dev: true /dotenv@16.4.5: @@ -10764,11 +10880,6 @@ packages: engines: {node: '>=12'} dev: true - /dotenv@7.0.0: - resolution: {integrity: sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g==} - engines: {node: '>=6'} - dev: true - /downloadjs@1.4.7: resolution: {integrity: sha512-LN1gO7+u9xjU5oEScGFKvXhYf7Y/empUIIEAGBs1LzUq/rg5duiDrkuH5A2lQGd5jfMOb9X9usDa2oVXwJ0U/Q==} @@ -10836,8 +10947,8 @@ packages: /ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - /electron-to-chromium@1.5.60: - resolution: {integrity: sha512-HcraRUkTKJ+8yA3b10i9qvhUlPBRDlKjn1XGek1zDGVfAKcvi8TsUnImGqLiEm9j6ZulxXIWWIo9BmbkbCTGgA==} + /electron-to-chromium@1.5.63: + resolution: {integrity: sha512-ddeXKuY9BHo/mw145axlyWjlJ1UBt4WK3AlvkT7W2AbqfRQoacVoRUCF6wL3uIx/8wT9oLKXzI+rFqHHscByaA==} /emittery@0.10.2: resolution: {integrity: sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==} @@ -10932,7 +11043,6 @@ packages: /entities@4.5.0: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} - dev: false /env-paths@2.2.1: resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} @@ -11332,7 +11442,7 @@ packages: '@humanwhocodes/config-array': 0.9.5 ajv: 6.12.6 chalk: 4.1.0 - cross-spawn: 7.0.5 + cross-spawn: 7.0.6 debug: 4.3.7 doctrine: 3.0.0 enquirer: 2.4.1 @@ -11385,7 +11495,7 @@ packages: '@nodelib/fs.walk': 1.2.8 ajv: 6.12.6 chalk: 4.1.0 - cross-spawn: 7.0.5 + cross-spawn: 7.0.6 debug: 4.3.7 doctrine: 3.0.0 escape-string-regexp: 4.0.0 @@ -11433,7 +11543,7 @@ packages: '@ungap/structured-clone': 1.2.0 ajv: 6.12.6 chalk: 4.1.0 - cross-spawn: 7.0.5 + cross-spawn: 7.0.6 debug: 4.3.7 doctrine: 3.0.0 escape-string-regexp: 4.0.0 @@ -11548,7 +11658,7 @@ packages: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} dependencies: - cross-spawn: 7.0.5 + cross-spawn: 7.0.6 get-stream: 6.0.1 human-signals: 2.1.0 is-stream: 2.0.1 @@ -11562,7 +11672,7 @@ packages: resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==} engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} dependencies: - cross-spawn: 7.0.5 + cross-spawn: 7.0.6 get-stream: 6.0.1 human-signals: 4.3.1 is-stream: 3.0.0 @@ -11576,7 +11686,7 @@ packages: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} dependencies: - cross-spawn: 7.0.5 + cross-spawn: 7.0.6 get-stream: 8.0.1 human-signals: 5.0.0 is-stream: 3.0.0 @@ -11819,7 +11929,7 @@ packages: resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} engines: {node: ^10.12.0 || >=12.0.0} dependencies: - flatted: 3.3.1 + flatted: 3.3.2 keyv: 4.5.4 rimraf: 3.0.2 @@ -11830,15 +11940,15 @@ packages: /flatbuffers@23.5.26: resolution: {integrity: sha512-vE+SI9vrJDwi1oETtTIFldC/o9GsVKRM+s6EL0nQgxXlYV1Vc4Tk30hj4xGICftInKQKj1F3up2n8UbIVobISQ==} - /flatted@3.3.1: - resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + /flatted@3.3.2: + resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} /fn.name@1.1.0: resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==} dev: false - /focus-trap@7.6.1: - resolution: {integrity: sha512-nB8y4nQl8PshahLpGKZOq1sb0xrMVFSn6at7u/qOsBZTlZRzaapISGENcB6mOkoezbClZyiMwEF/dGY8AZ00rA==} + /focus-trap@7.6.2: + resolution: {integrity: sha512-9FhUxK1hVju2+AiQIDJ5Dd//9R2n2RAfJ0qfhF4IHGHgcoEUTMpbTeG/zbEuwaiYXfuAH6XE0/aCyxDdRM+W5w==} dependencies: tabbable: 6.2.0 dev: false @@ -11863,7 +11973,7 @@ packages: resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} engines: {node: '>=14'} dependencies: - cross-spawn: 7.0.5 + cross-spawn: 7.0.6 signal-exit: 4.1.0 /form-data@4.0.1: @@ -12498,7 +12608,7 @@ packages: void-elements: 3.1.0 dev: false - /htmlnano@2.1.1(postcss@8.4.49)(svgo@2.8.0)(typescript@5.4.2): + /htmlnano@2.1.1(postcss@8.4.49)(typescript@5.4.2): resolution: {integrity: sha512-kAERyg/LuNZYmdqgCdYvugyLWNFAm8MWXpQMz1pLpetmCbFwoMxvkSoaAMlFrOC4OKTWI4KlZGT/RsNxg4ghOw==} peerDependencies: cssnano: ^7.0.0 @@ -12530,7 +12640,6 @@ packages: cosmiconfig: 9.0.0(typescript@5.4.2) postcss: 8.4.49 posthtml: 0.16.6 - svgo: 2.8.0 timsort: 0.3.0 transitivePeerDependencies: - typescript @@ -12561,7 +12670,6 @@ packages: domhandler: 5.0.3 domutils: 3.1.0 entities: 4.5.0 - dev: false /http-cache-semantics@4.1.1: resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} @@ -14323,8 +14431,8 @@ packages: sourcemap-codec: 1.4.8 dev: false - /magic-string@0.30.12: - resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==} + /magic-string@0.30.13: + resolution: {integrity: sha512-8rYBO+MsWkgjDSOvLomYnzhdwEG51olQ4zL5KXnNJWV5MNmrb4rTZdrtkhxjnD/QyZUqR/Z/XDsUs/4ej2nx0g==} dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -14434,10 +14542,6 @@ packages: uc.micro: 1.0.6 dev: false - /mdn-data@2.0.14: - resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} - dev: true - /mdn-data@2.0.30: resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} @@ -15114,7 +15218,7 @@ packages: dependencies: ansi-styles: 3.2.1 chalk: 2.4.2 - cross-spawn: 6.0.5 + cross-spawn: 6.0.6 memorystream: 0.3.1 minimatch: 3.1.2 pidtree: 0.3.1 @@ -15160,6 +15264,7 @@ packages: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} dependencies: boolbase: 1.0.0 + dev: false /nullthrows@1.1.1: resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==} @@ -15450,8 +15555,8 @@ packages: /package-json-from-dist@1.0.1: resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - /package-manager-detector@0.2.2: - resolution: {integrity: sha512-VgXbyrSNsml4eHWIvxxG/nTL4wgybMTXCV2Un/+yEc3aDKKU6nQBZjbeP3Pl3qm9Qg92X/1ng4ffvCeD/zwHgg==} + /package-manager-detector@0.2.4: + resolution: {integrity: sha512-H/OUu9/zUfP89z1APcBf2X8Us0tt8dUK4lUmKqz12QNXif3DxAs1/YqjGtcutZi1zQqeNQRWr9C+EbQnnvSSFA==} dev: true /pad-left@2.1.0: @@ -15460,24 +15565,25 @@ packages: dependencies: repeat-string: 1.6.1 - /parcel@2.12.0(postcss@8.4.49)(typescript@5.4.2): - resolution: {integrity: sha512-W+gxAq7aQ9dJIg/XLKGcRT0cvnStFAQHPaI0pvD0U2l6IVLueUAm3nwN7lkY62zZNmlvNx6jNtE4wlbS+CyqSg==} - engines: {node: '>= 12.0.0'} + /parcel@2.13.0(postcss@8.4.49)(typescript@5.4.2): + resolution: {integrity: sha512-3IsoqffuH7H/RLrvz3nS6UezJb+iE/L0xTukDTkZNOLUhwI3EW75S6FLCPs+UGTlzqvoCgf7IkyTSRFln9C4rA==} + engines: {node: '>= 16.0.0'} hasBin: true dependencies: - '@parcel/config-default': 2.12.0(@parcel/core@2.12.0)(postcss@8.4.49)(typescript@5.4.2) - '@parcel/core': 2.12.0 - '@parcel/diagnostic': 2.12.0 - '@parcel/events': 2.12.0 - '@parcel/fs': 2.12.0(@parcel/core@2.12.0) - '@parcel/logger': 2.12.0 - '@parcel/package-manager': 2.12.0(@parcel/core@2.12.0) - '@parcel/reporter-cli': 2.12.0(@parcel/core@2.12.0) - '@parcel/reporter-dev-server': 2.12.0(@parcel/core@2.12.0) - '@parcel/reporter-tracer': 2.12.0(@parcel/core@2.12.0) - '@parcel/utils': 2.12.0 - chalk: 4.1.0 - commander: 7.2.0 + '@parcel/config-default': 2.13.0(@parcel/core@2.13.0)(postcss@8.4.49)(typescript@5.4.2) + '@parcel/core': 2.13.0 + '@parcel/diagnostic': 2.13.0 + '@parcel/events': 2.13.0 + '@parcel/feature-flags': 2.13.0 + '@parcel/fs': 2.13.0(@parcel/core@2.13.0) + '@parcel/logger': 2.13.0 + '@parcel/package-manager': 2.13.0(@parcel/core@2.13.0) + '@parcel/reporter-cli': 2.13.0(@parcel/core@2.13.0) + '@parcel/reporter-dev-server': 2.13.0(@parcel/core@2.13.0) + '@parcel/reporter-tracer': 2.13.0(@parcel/core@2.13.0) + '@parcel/utils': 2.13.0 + chalk: 4.1.2 + commander: 12.1.0 get-port: 4.2.0 transitivePeerDependencies: - '@swc/helpers' @@ -15486,6 +15592,7 @@ packages: - purgecss - relateurl - srcset + - svgo - terser - typescript - uncss @@ -15770,18 +15877,18 @@ packages: mlly: 1.7.3 pathe: 1.1.2 - /playwright-core@1.48.2: - resolution: {integrity: sha512-sjjw+qrLFlriJo64du+EK0kJgZzoQPsabGF4lBvsid+3CNIZIYLgnMj9V6JY5VhM2Peh20DJWIVpVljLLnlawA==} + /playwright-core@1.49.0: + resolution: {integrity: sha512-R+3KKTQF3npy5GTiKH/T+kdhoJfJojjHESR1YEWhYuEKRVfVaxH3+4+GvXE5xyCngCxhxnykk0Vlah9v8fs3jA==} engines: {node: '>=18'} hasBin: true dev: true - /playwright@1.48.2: - resolution: {integrity: sha512-NjYvYgp4BPmiwfe31j4gHLa3J7bD2WiBz8Lk2RoSsmX38SVIARZ18VYjxLjAcDsAhA+F4iSEXTSGgjua0rrlgQ==} + /playwright@1.49.0: + resolution: {integrity: sha512-eKpmys0UFDnfNb3vfsf8Vx2LEOtflgRebl0Im2eQQnYMA4Aqd+Zw8bEOB+7ZKvN76901mRnqdsiOGKxzVTbi7A==} engines: {node: '>=18'} hasBin: true dependencies: - playwright-core: 1.48.2 + playwright-core: 1.49.0 optionalDependencies: fsevents: 2.3.2 dev: true @@ -15940,18 +16047,18 @@ packages: resolution: {integrity: sha512-i/hbxIE9803Alj/6ytL7UHQxRvZkI9O4Sy+J3HGc4F4oo/2eQAjTSNJ0bfxyse3bH0nuVesCk+3IRLaMtG3H6w==} dev: true - /posthtml-parser@0.10.2: - resolution: {integrity: sha512-PId6zZ/2lyJi9LiKfe+i2xv57oEjJgWbsHGGANwos5AvdQp98i6AtamAl8gzSVFGfQ43Glb5D614cvZf012VKg==} + /posthtml-parser@0.11.0: + resolution: {integrity: sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw==} engines: {node: '>=12'} dependencies: htmlparser2: 7.2.0 dev: true - /posthtml-parser@0.11.0: - resolution: {integrity: sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw==} - engines: {node: '>=12'} + /posthtml-parser@0.12.1: + resolution: {integrity: sha512-rYFmsDLfYm+4Ts2Oh4DCDSZPtdC1BLnRXAobypVzX9alj28KGl65dIFtgDY9zB57D0TC4Qxqrawuq/2et1P0GA==} + engines: {node: '>=16'} dependencies: - htmlparser2: 7.2.0 + htmlparser2: 9.1.0 dev: true /posthtml-render@3.0.0: @@ -16208,6 +16315,13 @@ packages: dependencies: side-channel: 1.0.6 + /qs@6.13.1: + resolution: {integrity: sha512-EJPeIn0CYrGu+hli1xilKAPXODtJ12T0sP63Ijx2/khC2JtuaN3JyNIpvmnkmaEtha9ocbG4A4cMcr+TvqvwQg==} + engines: {node: '>=0.6'} + dependencies: + side-channel: 1.0.6 + dev: false + /querystringify@2.2.0: resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} dev: false @@ -16281,8 +16395,8 @@ packages: /react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} - /react-refresh@0.9.0: - resolution: {integrity: sha512-Gvzk7OZpiqKSkxsQvO/mbTN1poglhmAV7gR/DdIrRrSMXraRQQlfikRJOr3Nb9GTMPC5kof948Zy6jJZIFtDvQ==} + /react-refresh@0.14.2: + resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} engines: {node: '>=0.10.0'} dev: true @@ -16409,10 +16523,6 @@ packages: indent-string: 4.0.0 strip-indent: 3.0.0 - /regenerator-runtime@0.13.11: - resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} - dev: true - /regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} @@ -16582,31 +16692,31 @@ packages: dependencies: glob: 7.2.3 - /rollup@4.27.1: - resolution: {integrity: sha512-TgWbfXdZsMNTNCLv6/YXzPTjyA0m1mFTe3/2/C5VxA8bSYwyam8OIJiHZZUhErmNzKNcPLWec3KUIdMdXZ6+FA==} + /rollup@4.27.3: + resolution: {integrity: sha512-SLsCOnlmGt9VoZ9Ek8yBK8tAdmPHeppkw+Xa7yDlCEhDTvwYei03JlWo1fdc7YTfLZ4tD8riJCUyAgTbszk1fQ==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.27.1 - '@rollup/rollup-android-arm64': 4.27.1 - '@rollup/rollup-darwin-arm64': 4.27.1 - '@rollup/rollup-darwin-x64': 4.27.1 - '@rollup/rollup-freebsd-arm64': 4.27.1 - '@rollup/rollup-freebsd-x64': 4.27.1 - '@rollup/rollup-linux-arm-gnueabihf': 4.27.1 - '@rollup/rollup-linux-arm-musleabihf': 4.27.1 - '@rollup/rollup-linux-arm64-gnu': 4.27.1 - '@rollup/rollup-linux-arm64-musl': 4.27.1 - '@rollup/rollup-linux-powerpc64le-gnu': 4.27.1 - '@rollup/rollup-linux-riscv64-gnu': 4.27.1 - '@rollup/rollup-linux-s390x-gnu': 4.27.1 - '@rollup/rollup-linux-x64-gnu': 4.27.1 - '@rollup/rollup-linux-x64-musl': 4.27.1 - '@rollup/rollup-win32-arm64-msvc': 4.27.1 - '@rollup/rollup-win32-ia32-msvc': 4.27.1 - '@rollup/rollup-win32-x64-msvc': 4.27.1 + '@rollup/rollup-android-arm-eabi': 4.27.3 + '@rollup/rollup-android-arm64': 4.27.3 + '@rollup/rollup-darwin-arm64': 4.27.3 + '@rollup/rollup-darwin-x64': 4.27.3 + '@rollup/rollup-freebsd-arm64': 4.27.3 + '@rollup/rollup-freebsd-x64': 4.27.3 + '@rollup/rollup-linux-arm-gnueabihf': 4.27.3 + '@rollup/rollup-linux-arm-musleabihf': 4.27.3 + '@rollup/rollup-linux-arm64-gnu': 4.27.3 + '@rollup/rollup-linux-arm64-musl': 4.27.3 + '@rollup/rollup-linux-powerpc64le-gnu': 4.27.3 + '@rollup/rollup-linux-riscv64-gnu': 4.27.3 + '@rollup/rollup-linux-s390x-gnu': 4.27.3 + '@rollup/rollup-linux-x64-gnu': 4.27.3 + '@rollup/rollup-linux-x64-musl': 4.27.3 + '@rollup/rollup-win32-arm64-msvc': 4.27.3 + '@rollup/rollup-win32-ia32-msvc': 4.27.3 + '@rollup/rollup-win32-x64-msvc': 4.27.3 fsevents: 2.3.3 /rrweb-cssom@0.6.0: @@ -16701,8 +16811,8 @@ packages: ajv-keywords: 3.5.2(ajv@6.12.6) dev: true - /search-insights@2.17.2: - resolution: {integrity: sha512-zFNpOpUO+tY2D85KrxJ+aqwnIfdEGi06UH2+xEb+Bp9Mwznmauqc9djbnBibJO5mpfUPPa8st6Sx65+vbeO45g==} + /search-insights@2.17.3: + resolution: {integrity: sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==} dev: false /seedrandom@3.0.5: @@ -17136,11 +17246,6 @@ packages: minipass: 3.3.6 dev: false - /stable@0.1.8: - resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} - deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' - dev: true - /stack-trace@0.0.10: resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} dev: false @@ -17526,7 +17631,7 @@ packages: dependencies: '@types/pug': 2.0.10 detect-indent: 6.1.0 - magic-string: 0.30.12 + magic-string: 0.30.13 postcss: 8.4.49 postcss-load-config: 4.0.2(postcss@8.4.49) sorcery: 0.11.1 @@ -17574,7 +17679,7 @@ packages: dependencies: '@types/pug': 2.0.10 detect-indent: 6.1.0 - magic-string: 0.30.12 + magic-string: 0.30.13 postcss: 8.4.49 postcss-load-config: 4.0.2(postcss@8.4.49) sorcery: 0.11.1 @@ -17591,8 +17696,8 @@ packages: tslib: 2.7.0 dev: false - /svelte2tsx@0.7.25(svelte@4.2.19)(typescript@5.4.2): - resolution: {integrity: sha512-P47YhXv8TRNv9IFJOjKQmXsYErZkJavbixazpSTyaGqKBGm9kRZRGcr3HBHNrYkCikzISQlh55j24yS23MdTPA==} + /svelte2tsx@0.7.26(svelte@4.2.19)(typescript@5.4.2): + resolution: {integrity: sha512-cBGGZ3Hejuh9gYICQcGKg1zyYhrzZR04iTUdP5pD+CIbjoZiyzS4cpCi4IHh0PA2Vf6cFuwVRmDs9wnOfJotJA==} peerDependencies: svelte: ^3.55 || ^4.0.0-next.0 || ^4.0 || ^5.0.0-next.0 typescript: ^4.9.4 || ^5.0.0 @@ -17603,8 +17708,8 @@ packages: typescript: 5.4.2 dev: true - /svelte2tsx@0.7.25(svelte@4.2.19)(typescript@5.6.3): - resolution: {integrity: sha512-P47YhXv8TRNv9IFJOjKQmXsYErZkJavbixazpSTyaGqKBGm9kRZRGcr3HBHNrYkCikzISQlh55j24yS23MdTPA==} + /svelte2tsx@0.7.26(svelte@4.2.19)(typescript@5.6.3): + resolution: {integrity: sha512-cBGGZ3Hejuh9gYICQcGKg1zyYhrzZR04iTUdP5pD+CIbjoZiyzS4cpCi4IHh0PA2Vf6cFuwVRmDs9wnOfJotJA==} peerDependencies: svelte: ^3.55 || ^4.0.0-next.0 || ^4.0 || ^5.0.0-next.0 typescript: ^4.9.4 || ^5.0.0 @@ -17642,7 +17747,7 @@ packages: estree-walker: 3.0.3 is-reference: 3.0.3 locate-character: 3.0.0 - magic-string: 0.30.12 + magic-string: 0.30.13 periscopic: 3.1.0 /sveltedoc-parser@4.2.1: @@ -17656,8 +17761,8 @@ packages: - supports-color dev: true - /sveltekit-autoimport@1.8.0(@sveltejs/kit@2.5.4): - resolution: {integrity: sha512-gowKUDMz7Qlb09EU6gfVDbxuHgGzpJ6C0i2z2DNxAFvTXO3roCUm+fjFzbt28uzjjEglGTveR9FvyZB8IQwdMQ==} + /sveltekit-autoimport@1.8.1(@sveltejs/kit@2.5.4): + resolution: {integrity: sha512-MiKOuQMHj39RqolsuiqchPKr1eBLaVsB+tc5pb6kKoOU0/a5rUS3RPUldiTvz0NDtDZp1WMhnb8Mxl5L16vSaQ==} peerDependencies: '@sveltejs/kit': '>=1.0.0' dependencies: @@ -17667,20 +17772,6 @@ packages: magic-string: 0.26.7 dev: false - /svgo@2.8.0: - resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} - engines: {node: '>=10.13.0'} - hasBin: true - dependencies: - '@trysound/sax': 0.2.0 - commander: 7.2.0 - css-select: 4.3.0 - css-tree: 1.1.3 - csso: 4.2.0 - picocolors: 1.1.1 - stable: 0.1.8 - dev: true - /symbol-tree@3.2.4: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} dev: false @@ -18334,7 +18425,7 @@ packages: /typed-rest-client@1.8.11: resolution: {integrity: sha512-5UvfMpd1oelmUPRbbaVnq+rHP7ng2cE4qoQkQeAqxRL6PklkxsM0g32/HL0yfvruK6ojQ5x8EE+HF4YV6DtuCA==} dependencies: - qs: 6.13.0 + qs: 6.13.1 tunnel: 0.0.6 underscore: 1.13.7 dev: false @@ -18761,7 +18852,7 @@ packages: '@types/node': 20.11.28 esbuild: 0.21.5 postcss: 8.4.49 - rollup: 4.27.1 + rollup: 4.27.3 optionalDependencies: fsevents: 2.3.3 @@ -18799,7 +18890,7 @@ packages: '@types/node': 20.17.6 esbuild: 0.21.5 postcss: 8.4.49 - rollup: 4.27.1 + rollup: 4.27.3 optionalDependencies: fsevents: 2.3.3 dev: false @@ -18849,7 +18940,7 @@ packages: debug: 4.3.7 execa: 8.0.1 local-pkg: 0.5.0 - magic-string: 0.30.12 + magic-string: 0.30.13 pathe: 1.1.2 picocolors: 1.1.1 std-env: 3.8.0 @@ -18907,7 +18998,7 @@ packages: execa: 8.0.1 jsdom: 23.2.0 local-pkg: 0.5.0 - magic-string: 0.30.12 + magic-string: 0.30.13 pathe: 1.1.2 picocolors: 1.1.1 std-env: 3.8.0 @@ -18963,7 +19054,7 @@ packages: chai: 5.1.2 debug: 4.3.7 execa: 8.0.1 - magic-string: 0.30.12 + magic-string: 0.30.13 pathe: 1.1.2 std-env: 3.8.0 tinybench: 2.9.0 @@ -19019,7 +19110,7 @@ packages: chai: 5.1.2 debug: 4.3.7 expect-type: 1.1.0 - magic-string: 0.30.12 + magic-string: 0.30.13 pathe: 1.1.2 std-env: 3.8.0 tinybench: 2.9.0 @@ -19124,7 +19215,7 @@ packages: '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0) colorette: 2.0.20 commander: 7.2.0 - cross-spawn: 7.0.5 + cross-spawn: 7.0.6 fastest-levenshtein: 1.0.16 import-local: 3.2.0 interpret: 2.2.0