diff --git a/.changeset/gentle-jobs-explode.md b/.changeset/gentle-jobs-explode.md new file mode 100644 index 0000000..3ad4d1b --- /dev/null +++ b/.changeset/gentle-jobs-explode.md @@ -0,0 +1,5 @@ +--- +"paneforge": patch +--- + +feat: Shadow DOM support diff --git a/docs/package.json b/docs/package.json index b959958..f9bf71c 100644 --- a/docs/package.json +++ b/docs/package.json @@ -22,7 +22,7 @@ "mdsx": "^0.0.6", "paneforge": "workspace:^", "phosphor-svelte": "^3.0.0", - "svelte": "^5.20.1", + "svelte": "^5.34.3", "svelte-check": "^4.1.4", "tailwindcss": "4.0.0-beta.6", "typescript": "^5.7.2", diff --git a/eslint.config.js b/eslint.config.js index eab62d9..fe25fa9 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -1,3 +1,4 @@ +// @ts-check import eslint from "@eslint/js"; import prettier from "eslint-config-prettier"; import svelte from "eslint-plugin-svelte"; @@ -7,9 +8,9 @@ import tseslint from "typescript-eslint"; export default tseslint.config( eslint.configs.recommended, ...tseslint.configs.recommended, - ...svelte.configs["flat/recommended"], + ...svelte.configs.recommended, prettier, - ...svelte.configs["flat/prettier"], + ...svelte.configs.prettier, { languageOptions: { globals: { @@ -19,9 +20,10 @@ export default tseslint.config( }, }, { - files: ["**/*.svelte"], + files: ["**/*.svelte", "**/*.svelte.ts", "**/*.svelte.js"], languageOptions: { parserOptions: { + extraFileExtensions: [".svelte"], // Add support for additional file extensions, such as .svelte parser: tseslint.parser, }, }, @@ -36,6 +38,9 @@ export default tseslint.config( }, ], "@typescript-eslint/no-unused-expressions": "off", + "@typescript-eslint/no-empty-object-type": "off", + "prefer-const": "off", + "svelte/no-at-html-tags": "off", }, }, { @@ -45,13 +50,13 @@ export default tseslint.config( "dist/", ".svelte-kit/**/*", "docs/.svelte-kit/**/*", - "docs/node_modules/**/*", - "docs/build/**/*", + "docs/.velite/**/*", + "docs/src/routes/api/demos.json/stackblitz-files.json", + "docs/src/routes/api/demos.json/demos.json", ".svelte-kit", - "packages/paneforge/dist/**/*", - "packages/paneforge/.svelte-kit/**/*", - "docs/static/", - ".github/", + "packages/bits-ui/dist/**/*", + "packages/bits-ui/.svelte-kit/**/*", + "tests/.svelte-kit/**/*", ], } ); diff --git a/package.json b/package.json index ada266f..1138beb 100644 --- a/package.json +++ b/package.json @@ -23,22 +23,20 @@ "packageManager": "pnpm@9.14.4", "devDependencies": { "@changesets/cli": "^2.27.10", - "@eslint/js": "^9.12.0", + "@eslint/js": "^9.29.0", "@svitejs/changesets-changelog-github-compact": "^1.2.0", "@types/node": "^22.10.1", - "@typescript-eslint/eslint-plugin": "^8.10.0", - "@typescript-eslint/scope-manager": "^8.10.0", - "@typescript-eslint/utils": "^8.10.0", "eslint": "^9.0.0", - "eslint-config-prettier": "^9.1.0", - "eslint-plugin-svelte": "^2.46.1", + "eslint-config-prettier": "^10.1.5", + "eslint-plugin-svelte": "^3.9.2", "globals": "^15.11.0", "prettier": "^3.3.3", "prettier-plugin-svelte": "^3.3.2", "prettier-plugin-tailwindcss": "^0.6.8", - "svelte": "^5.11.0", + "svelte": "^5.34.3", "svelte-eslint-parser": "^0.43.0", - "typescript": "^5.6.3", + "tseslint": "^0.0.2", + "typescript": "^5.8.3", "typescript-eslint": "^8.10.0", "wrangler": "^3.91.0" } diff --git a/packages/paneforge/package.json b/packages/paneforge/package.json index 50021ac..c0671dc 100644 --- a/packages/paneforge/package.json +++ b/packages/paneforge/package.json @@ -32,7 +32,7 @@ "!dist/**/*.spec.*" ], "peerDependencies": { - "svelte": "^5.20.0" + "svelte": "^5.29.0" }, "devDependencies": { "@sveltejs/kit": "^2.17.2", @@ -46,10 +46,10 @@ "jsdom": "^24.0.0", "publint": "^0.1.9", "resize-observer-polyfill": "^1.5.1", - "svelte": "^5.20.2", - "svelte-check": "^4.1.4", + "svelte": "^5.34.3", + "svelte-check": "^4.2.1", "tslib": "^2.4.1", - "typescript": "^5.0.0", + "typescript": "^5.8.3", "vite": "^5.0.3", "vitest": "^1.5.1" }, @@ -58,6 +58,6 @@ "type": "module", "dependencies": { "runed": "^0.23.4", - "svelte-toolbelt": "^0.7.1" + "svelte-toolbelt": "^0.9.2" } } diff --git a/packages/paneforge/src/lib/components/pane-group.svelte b/packages/paneforge/src/lib/components/pane-group.svelte index f28231e..fc2e12d 100644 --- a/packages/paneforge/src/lib/components/pane-group.svelte +++ b/packages/paneforge/src/lib/components/pane-group.svelte @@ -3,7 +3,7 @@ import type { PaneGroupProps } from "./types.js"; import { noop } from "$lib/internal/helpers.js"; import { useId } from "$lib/internal/utils/useId.js"; - import { defaultStorage, usePaneGroup } from "$lib/paneforge.svelte.js"; + import { defaultStorage, PaneGroupState } from "$lib/paneforge.svelte.js"; let { autoSaveId = null, @@ -18,7 +18,7 @@ ...restProps }: PaneGroupProps = $props(); - const paneGroupState = usePaneGroup({ + const paneGroupState = PaneGroupState.create({ id: box.with(() => id ?? useId()), ref: box.with( () => ref, diff --git a/packages/paneforge/src/lib/components/pane-resizer.svelte b/packages/paneforge/src/lib/components/pane-resizer.svelte index 25ae4e2..f0a20d8 100644 --- a/packages/paneforge/src/lib/components/pane-resizer.svelte +++ b/packages/paneforge/src/lib/components/pane-resizer.svelte @@ -3,7 +3,7 @@ import type { PaneResizerProps } from "./types.js"; import { noop } from "$lib/internal/helpers.js"; import { useId } from "$lib/internal/utils/useId.js"; - import { usePaneResizer } from "$lib/paneforge.svelte.js"; + import { PaneResizerState } from "$lib/paneforge.svelte.js"; let { id = useId(), @@ -16,7 +16,7 @@ ...restProps }: PaneResizerProps = $props(); - const resizerState = usePaneResizer({ + const resizerState = PaneResizerState.create({ id: box.with(() => id), ref: box.with( () => ref, diff --git a/packages/paneforge/src/lib/components/pane.svelte b/packages/paneforge/src/lib/components/pane.svelte index a6761f8..fe4a63b 100644 --- a/packages/paneforge/src/lib/components/pane.svelte +++ b/packages/paneforge/src/lib/components/pane.svelte @@ -3,7 +3,7 @@ import type { PaneProps } from "./types.js"; import { noop } from "$lib/internal/helpers.js"; import { useId } from "$lib/internal/utils/useId.js"; - import { usePane } from "$lib/paneforge.svelte.js"; + import { PaneState } from "$lib/paneforge.svelte.js"; let { id = useId(), @@ -22,7 +22,7 @@ ...restProps }: PaneProps = $props(); - const paneState = usePane({ + const paneState = PaneState.create({ id: box.with(() => id), ref: box.with( () => ref, diff --git a/packages/paneforge/src/lib/internal/helpers.ts b/packages/paneforge/src/lib/internal/helpers.ts index 2862c18..8170425 100644 --- a/packages/paneforge/src/lib/internal/helpers.ts +++ b/packages/paneforge/src/lib/internal/helpers.ts @@ -1,4 +1,5 @@ import type { PaneState } from "$lib/paneforge.svelte.js"; +import type { DOMContext } from "svelte-toolbelt"; import type { Direction, DragState, PaneConstraints, ResizeEvent } from "./types.js"; import { calculateAriaValues } from "./utils/aria.js"; import { assert } from "./utils/assert.js"; @@ -8,16 +9,20 @@ import { resizePane } from "./utils/resize.js"; export function noop() {} +interface UpdateResizeHandleAriaValuesOpts { + groupId: string; + layout: number[]; + panesArray: PaneState[]; + domContext: DOMContext; +} + export function updateResizeHandleAriaValues({ groupId, layout, panesArray, -}: { - groupId: string; - layout: number[]; - panesArray: PaneState[]; -}) { - const resizeHandleElements = getResizeHandleElementsForGroup(groupId); + domContext, +}: UpdateResizeHandleAriaValuesOpts) { + const resizeHandleElements = getResizeHandleElementsForGroup(groupId, domContext); for (let index = 0; index < panesArray.length - 1; index++) { const { valueMax, valueMin, valueNow } = calculateAriaValues({ @@ -41,34 +46,60 @@ export function updateResizeHandleAriaValues({ } return () => { - resizeHandleElements.forEach((resizeHandleElement) => { - resizeHandleElement.removeAttribute("aria-controls"); - resizeHandleElement.removeAttribute("aria-valuemax"); - resizeHandleElement.removeAttribute("aria-valuemin"); - resizeHandleElement.removeAttribute("aria-valuenow"); - }); + for (const el of resizeHandleElements) { + el.removeAttribute("aria-controls"); + el.removeAttribute("aria-valuemax"); + el.removeAttribute("aria-valuemin"); + el.removeAttribute("aria-valuenow"); + } }; } -export function getResizeHandleElementsForGroup(groupId: string): HTMLElement[] { +export function getResizeHandleElementsForGroup( + groupId: string, + domContext: DOMContext +): HTMLElement[] { if (!isBrowser) return []; return Array.from( - document.querySelectorAll(`[data-pane-resizer-id][data-pane-group-id="${groupId}"]`) + domContext.querySelectorAll( + `[data-pane-resizer-id][data-pane-group-id="${groupId}"]` + ) as NodeListOf ); } -export function getResizeHandleElementIndex(groupId: string, id: string): number | null { +interface GetResizeHandleElementIndexOpts { + groupId: string; + id: string; + domContext: DOMContext; +} + +export function getResizeHandleElementIndex({ + groupId, + id, + domContext, +}: GetResizeHandleElementIndexOpts): number | null { if (!isBrowser) return null; - const handles = getResizeHandleElementsForGroup(groupId); + const handles = getResizeHandleElementsForGroup(groupId, domContext); const index = handles.findIndex((handle) => handle.getAttribute("data-pane-resizer-id") === id); return index ?? null; } -export function getPivotIndices( - groupId: string, - dragHandleId: string -): [indexBefore: number, indexAfter: number] { - const index = getResizeHandleElementIndex(groupId, dragHandleId); +type GetPivotIndicesOpts = { + groupId: string; + dragHandleId: string; + domContext: DOMContext; +}; + +export function getPivotIndices({ + groupId, + dragHandleId, + domContext, +}: GetPivotIndicesOpts): [indexBefore: number, indexAfter: number] { + const index = getResizeHandleElementIndex({ + groupId, + id: dragHandleId, + domContext: domContext, + }); return index != null ? [index, index + 1] : [-1, -1]; } @@ -259,33 +290,40 @@ export function validatePaneGroupLayout({ return nextLayout; } -export function getPaneGroupElement(id: string): HTMLElement | null { +export function getPaneGroupElement(id: string, domContext: DOMContext): HTMLElement | null { if (!isBrowser) return null; - const element = document.querySelector(`[data-pane-group][data-pane-group-id="${id}"]`); - if (element) { - return element as HTMLElement; - } + const element = domContext.querySelector( + `[data-pane-group][data-pane-group-id="${id}"]` + ) as HTMLElement; + if (element) return element; return null; } -export function getResizeHandleElement(id: string): HTMLElement | null { +export function getResizeHandleElement(id: string, domContext: DOMContext): HTMLElement | null { if (!isBrowser) return null; - const element = document.querySelector(`[data-pane-resizer-id="${id}"]`); - if (element) { - return element as HTMLElement; - } + const element = domContext.querySelector(`[data-pane-resizer-id="${id}"]`) as HTMLElement; + if (element) return element; return null; } -export function getDragOffsetPercentage( - e: ResizeEvent, - dragHandleId: string, - dir: Direction, - initialDragState: DragState -): number { +interface GetDragOffsetPercentageOpts { + event: ResizeEvent; + dragHandleId: string; + dir: Direction; + initialDragState: DragState; + domContext: DOMContext; +} + +export function getDragOffsetPercentage({ + event, + dragHandleId, + dir, + initialDragState, + domContext, +}: GetDragOffsetPercentageOpts): number { const isHorizontal = dir === "horizontal"; - const handleElement = getResizeHandleElement(dragHandleId); + const handleElement = getResizeHandleElement(dragHandleId, domContext); assert(handleElement); const groupId = handleElement.getAttribute("data-pane-group-id"); @@ -293,9 +331,9 @@ export function getDragOffsetPercentage( const { initialCursorPosition } = initialDragState; - const cursorPosition = getResizeEventCursorPosition(dir, e); + const cursorPosition = getResizeEventCursorPosition(dir, event); - const groupElement = getPaneGroupElement(groupId); + const groupElement = getPaneGroupElement(groupId, domContext); assert(groupElement); const groupRect = groupElement.getBoundingClientRect(); @@ -307,19 +345,29 @@ export function getDragOffsetPercentage( return offsetPercentage; } +interface GetDeltaPercentageOpts { + event: ResizeEvent; + dragHandleId: string; + dir: Direction; + initialDragState: DragState | null; + keyboardResizeBy: number | null; + domContext: DOMContext; +} + // https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/movementX -export function getDeltaPercentage( - e: ResizeEvent, - dragHandleId: string, - dir: Direction, - initialDragState: DragState | null, - keyboardResizeBy: number | null -): number { - if (isKeyDown(e)) { +export function getDeltaPercentage({ + event, + dragHandleId, + dir, + initialDragState, + keyboardResizeBy, + domContext, +}: GetDeltaPercentageOpts): number { + if (isKeyDown(event)) { const isHorizontal = dir === "horizontal"; let delta = 0; - if (e.shiftKey) { + if (event.shiftKey) { delta = 100; } else if (keyboardResizeBy != null) { delta = keyboardResizeBy; @@ -328,7 +376,7 @@ export function getDeltaPercentage( } let movement = 0; - switch (e.key) { + switch (event.key) { case "ArrowDown": movement = isHorizontal ? 0 : delta; break; @@ -353,7 +401,13 @@ export function getDeltaPercentage( } else { if (initialDragState == null) return 0; - return getDragOffsetPercentage(e, dragHandleId, dir, initialDragState); + return getDragOffsetPercentage({ + event, + dragHandleId, + dir, + initialDragState, + domContext: domContext, + }); } } @@ -371,13 +425,21 @@ export function getResizeEventCursorPosition(dir: Direction, e: ResizeEvent): nu } } -export function getResizeHandlePaneIds( - groupId: string, - handleId: string, - panesArray: PaneState[] -): [idBefore: string | null, idAfter: string | null] { - const handle = getResizeHandleElement(handleId); - const handles = getResizeHandleElementsForGroup(groupId); +interface GetResizeHandlePaneIdsOpts { + groupId: string; + handleId: string; + panesArray: PaneState[]; + domContext: DOMContext; +} + +export function getResizeHandlePaneIds({ + groupId, + handleId, + panesArray, + domContext, +}: GetResizeHandlePaneIdsOpts): [idBefore: string | null, idAfter: string | null] { + const handle = getResizeHandleElement(handleId, domContext); + const handles = getResizeHandleElementsForGroup(groupId, domContext); const index = handle ? handles.indexOf(handle) : -1; const idBefore: string | null = panesArray[index]?.opts.id.current ?? null; diff --git a/packages/paneforge/src/lib/internal/types.ts b/packages/paneforge/src/lib/internal/types.ts index a126f40..d5cf838 100644 --- a/packages/paneforge/src/lib/internal/types.ts +++ b/packages/paneforge/src/lib/internal/types.ts @@ -1,3 +1,5 @@ +import type { attachRef } from "svelte-toolbelt"; + export type Direction = "horizontal" | "vertical"; export type PaneOnCollapse = () => void; @@ -39,3 +41,5 @@ export type ResizeEvent = KeyboardEvent | MouseEvent | TouchEvent; export type ResizeHandler = (event: ResizeEvent) => void; export type PaneResizeHandleOnDragging = (isDragging: boolean) => void; + +export type RefAttachment = ReturnType>; diff --git a/packages/paneforge/src/lib/internal/utils/storage.ts b/packages/paneforge/src/lib/internal/utils/storage.ts index 71eedc7..f6fa3f6 100644 --- a/packages/paneforge/src/lib/internal/utils/storage.ts +++ b/packages/paneforge/src/lib/internal/utils/storage.ts @@ -1,19 +1,19 @@ import { LOCAL_STORAGE_DEBOUNCE_INTERVAL } from "../constants.js"; import type { PaneState } from "$lib/paneforge.svelte.js"; -export type PaneConfigState = { +export interface PaneConfigState { expandToSizes: { [paneId: string]: number }; layout: number[]; -}; +} -export type SerializedPaneGroupState = { +export interface SerializedPaneGroupState { [paneIds: string]: PaneConfigState; -}; +} -export type PaneGroupStorage = { +export interface PaneGroupStorage { getItem: (name: string) => string | null; setItem: (name: string, value: string) => void; -}; +} /** * Initializes the storage object with the appropriate getItem diff --git a/packages/paneforge/src/lib/internal/utils/style.ts b/packages/paneforge/src/lib/internal/utils/style.ts index b507138..d14f47b 100644 --- a/packages/paneforge/src/lib/internal/utils/style.ts +++ b/packages/paneforge/src/lib/internal/utils/style.ts @@ -50,7 +50,7 @@ export function resetGlobalCursorStyle() { /** * Sets the global cursor style to the given state. */ -export function setGlobalCursorStyle(state: CursorState) { +export function setGlobalCursorStyle(state: CursorState, doc: Document) { if (currentState === state) return; currentState = state; @@ -58,8 +58,8 @@ export function setGlobalCursorStyle(state: CursorState) { const style = getCursorStyle(state); if (element === null) { - element = document.createElement("style"); - document.head.appendChild(element); + element = doc.createElement("style"); + doc.head.appendChild(element); } element.innerHTML = `*{cursor: ${style}!important;}`; diff --git a/packages/paneforge/src/lib/paneforge.svelte.ts b/packages/paneforge/src/lib/paneforge.svelte.ts index d951494..aa55e6c 100644 --- a/packages/paneforge/src/lib/paneforge.svelte.ts +++ b/packages/paneforge/src/lib/paneforge.svelte.ts @@ -3,8 +3,9 @@ import { type WithRefProps, addEventListener, executeCallbacks, - useRefById, afterTick, + attachRef, + DOMContext, } from "svelte-toolbelt"; import { onMount, untrack } from "svelte"; import { Context, watch } from "runed"; @@ -42,6 +43,7 @@ import type { PaneOnResize, PaneResizeHandleOnDragging, PaneTransitionState, + RefAttachment, ResizeEvent, ResizeHandler, } from "$lib/internal/types.js"; @@ -52,16 +54,12 @@ import { updateStorageValues, } from "$lib/internal/utils/storage.js"; import { on } from "svelte/events"; - -type PaneGroupStateProps = WithRefProps< - ReadableBoxedValues<{ - autoSaveId: string | null; - direction: Direction; - keyboardResizeBy: number | null; - onLayout: (layout: number[]) => void | null; - storage: PaneGroupStorage; - }> ->; +import type { + FocusEventHandler, + KeyboardEventHandler, + MouseEventHandler, + TouchEventHandler, +} from "svelte/elements"; export const defaultStorage: PaneGroupStorage = { getItem: (name: string) => { @@ -74,23 +72,45 @@ export const defaultStorage: PaneGroupStorage = { }, }; -class PaneGroupState { +const PaneGroupContext = new Context("PaneGroup"); + +interface PaneGroupStateOpts + extends WithRefProps, + ReadableBoxedValues<{ + autoSaveId: string | null; + direction: Direction; + keyboardResizeBy: number | null; + onLayout: (layout: number[]) => void | null; + storage: PaneGroupStorage; + }> {} + +export class PaneGroupState { + static create(opts: PaneGroupStateOpts) { + return PaneGroupContext.set(new PaneGroupState(opts)); + } + + readonly opts: PaneGroupStateOpts; + readonly attachment: RefAttachment; + readonly domContext: DOMContext; dragState = $state.raw(null); layout = $state.raw([]); panesArray = $state.raw([]); panesArrayChanged = $state(false); paneIdToLastNotifiedSizeMap = $state>({}); paneSizeBeforeCollapseMap = new Map(); - prevDelta = $state(0); + prevDelta = 0; - constructor(readonly opts: PaneGroupStateProps) { - useRefById(opts); + constructor(opts: PaneGroupStateOpts) { + this.opts = opts; + this.attachment = attachRef(this.opts.ref); + this.domContext = new DOMContext(this.opts.ref); watch([() => this.opts.id.current, () => this.layout, () => this.panesArray], () => { return updateResizeHandleAriaValues({ groupId: this.opts.id.current, layout: this.layout, panesArray: this.panesArray, + domContext: this.domContext, }); }); @@ -170,8 +190,8 @@ class PaneGroupState { }; registerResizeHandle = (dragHandleId: string) => { - return (e: ResizeEvent) => { - e.preventDefault(); + return (event: ResizeEvent) => { + event.preventDefault(); const direction = this.opts.direction.current; const dragState = this.dragState; @@ -182,15 +202,27 @@ class PaneGroupState { const paneDataArray = this.panesArray; const { initialLayout } = dragState ?? {}; + const doc = this.domContext.getDocument(); - const pivotIndices = getPivotIndices(groupId, dragHandleId); + const pivotIndices = getPivotIndices({ + groupId, + dragHandleId, + domContext: this.domContext, + }); - let delta = getDeltaPercentage(e, dragHandleId, direction, dragState, keyboardResizeBy); + let delta = getDeltaPercentage({ + event: event, + dragHandleId, + dir: direction, + initialDragState: dragState, + keyboardResizeBy, + domContext: this.domContext, + }); if (delta === 0) return; // support RTL const isHorizontal = direction === "horizontal"; - if (document.dir === "rtl" && isHorizontal) { + if (doc.dir === "rtl" && isHorizontal) { delta = -delta; } @@ -201,13 +233,13 @@ class PaneGroupState { layout: initialLayout ?? prevLayout, paneConstraints, pivotIndices, - trigger: isKeyDown(e) ? "keyboard" : "mouse-or-touch", + trigger: isKeyDown(event) ? "keyboard" : "mouse-or-touch", }); const layoutChanged = !areArraysEqual(prevLayout, nextLayout); // Only update the cursor for layout changes triggered by touch/mouse events (not keyboard) // Update the cursor even if the layout hasn't changed (we may need to show an invalid cursor state) - if (isMouseEvent(e) || isTouchEvent(e)) { + if (isMouseEvent(event) || isTouchEvent(event)) { // Watch for multiple subsequent deltas; this might occur for tiny cursor movements. // In this case, Pane sizes might not change– // but updating cursor in this scenario would cause a flicker. @@ -221,12 +253,15 @@ class PaneGroupState { // This mimics VS Code behavior. if (isHorizontal) { - setGlobalCursorStyle(delta < 0 ? "horizontal-min" : "horizontal-max"); + setGlobalCursorStyle( + delta < 0 ? "horizontal-min" : "horizontal-max", + doc + ); } else { - setGlobalCursorStyle(delta < 0 ? "vertical-min" : "vertical-max"); + setGlobalCursorStyle(delta < 0 ? "vertical-min" : "vertical-max", doc); } } else { - setGlobalCursorStyle(isHorizontal ? "horizontal" : "vertical"); + setGlobalCursorStyle(isHorizontal ? "horizontal" : "vertical", doc); } } } @@ -273,7 +308,7 @@ class PaneGroupState { const direction = this.opts.direction.current; const layout = this.layout; - const handleElement = getResizeHandleElement(dragHandleId); + const handleElement = getResizeHandleElement(dragHandleId, this.domContext); assert(handleElement); @@ -444,14 +479,19 @@ class PaneGroupState { #setResizeHandlerEventListeners = () => { const groupId = this.opts.id.current; - const handles = getResizeHandleElementsForGroup(groupId); + const handles = getResizeHandleElementsForGroup(groupId, this.domContext); const paneDataArray = this.panesArray; const unsubHandlers = handles.map((handle) => { const handleId = handle.getAttribute("data-pane-resizer-id"); if (!handleId) return noop; - const [idBefore, idAfter] = getResizeHandlePaneIds(groupId, handleId, paneDataArray); + const [idBefore, idAfter] = getResizeHandlePaneIds({ + groupId, + handleId, + panesArray: paneDataArray, + domContext: this.domContext, + }); if (idBefore == null || idAfter == null) return noop; @@ -482,7 +522,11 @@ class PaneGroupState { : collapsedSize - size, layout, paneConstraints: paneDataArray.map((paneData) => paneData.constraints), - pivotIndices: getPivotIndices(groupId, handleId), + pivotIndices: getPivotIndices({ + groupId, + dragHandleId: handleId, + domContext: this.domContext, + }), trigger: "keyboard", }); @@ -505,7 +549,7 @@ class PaneGroupState { }; }; - props = $derived.by( + readonly props = $derived.by( () => ({ id: this.opts.id.current, @@ -519,36 +563,47 @@ class PaneGroupState { overflow: "hidden", width: "100%", }, + ...this.attachment, }) as const ); } -type PaneResizerStateProps = WithRefProps< - ReadableBoxedValues<{ - onDraggingChange: PaneResizeHandleOnDragging; - disabled: boolean; - tabIndex: number; - }> ->; +interface PaneResizerStateOpts + extends WithRefProps, + ReadableBoxedValues<{ + onDraggingChange: PaneResizeHandleOnDragging; + disabled: boolean; + tabIndex: number; + }> {} const resizeKeys = ["ArrowDown", "ArrowLeft", "ArrowRight", "ArrowUp", "End", "Home"]; -class PaneResizerState { - #isDragging = $derived.by(() => this.group.dragState?.dragHandleId === this.opts.id.current); +export class PaneResizerState { + static create(opts: PaneResizerStateOpts) { + return new PaneResizerState(opts, PaneGroupContext.get()); + } + readonly opts: PaneResizerStateOpts; + readonly #group: PaneGroupState; + readonly attachment: RefAttachment; + readonly domContext: DOMContext; + + readonly #isDragging = $derived.by( + () => this.#group.dragState?.dragHandleId === this.opts.id.current + ); #isFocused = $state(false); resizeHandler: ResizeHandler | null = null; - constructor( - readonly opts: PaneResizerStateProps, - readonly group: PaneGroupState - ) { - useRefById(opts); + constructor(opts: PaneResizerStateOpts, group: PaneGroupState) { + this.opts = opts; + this.#group = group; + this.attachment = attachRef(this.opts.ref); + this.domContext = new DOMContext(this.opts.ref); $effect(() => { if (this.opts.disabled.current) { this.resizeHandler = null; } else { - this.resizeHandler = this.group.registerResizeHandle(this.opts.id.current); + this.resizeHandler = this.#group.registerResizeHandle(this.opts.id.current); } }); @@ -570,17 +625,19 @@ class PaneResizerState { const stopDraggingAndBlur = () => { node.blur(); - this.group.stopDragging(); + this.#group.stopDragging(); this.opts.onDraggingChange.current(false); }; + const domBody = this.domContext.getDocument().body; + const domWindow = this.domContext.getWindow(); return executeCallbacks( - on(document.body, "contextmenu", stopDraggingAndBlur), - on(document.body, "mousemove", onMove), - on(document.body, "touchmove", onMove, { passive: false }), - on(document.body, "mouseleave", onMouseLeave), - on(window, "mouseup", stopDraggingAndBlur), - on(window, "touchend", stopDraggingAndBlur) + on(domBody, "contextmenu", stopDraggingAndBlur), + on(domBody, "mousemove", onMove), + on(domBody, "touchmove", onMove, { passive: false }), + on(domBody, "mouseleave", onMouseLeave), + on(domWindow, "mouseup", stopDraggingAndBlur), + on(domWindow, "touchend", stopDraggingAndBlur) ); }); } @@ -589,7 +646,7 @@ class PaneResizerState { e.preventDefault(); if (this.opts.disabled.current) return; - this.group.startDragging(this.opts.id.current, e); + this.#group.startDragging(this.opts.id.current, e); this.opts.onDraggingChange.current(true); }; @@ -597,11 +654,11 @@ class PaneResizerState { const node = this.opts.ref.current; if (!node) return; node.blur(); - this.group.stopDragging(); + this.#group.stopDragging(); this.opts.onDraggingChange.current(false); }; - #onkeydown = (e: KeyboardEvent) => { + #onkeydown: KeyboardEventHandler = (e) => { if (this.opts.disabled.current || !this.resizeHandler || e.defaultPrevented) return; if (resizeKeys.includes(e.key)) { @@ -614,8 +671,15 @@ class PaneResizerState { e.preventDefault(); - const handles = getResizeHandleElementsForGroup(this.group.opts.id.current); - const index = getResizeHandleElementIndex(this.group.opts.id.current, this.opts.id.current); + const handles = getResizeHandleElementsForGroup( + this.#group.opts.id.current, + this.domContext + ); + const index = getResizeHandleElementIndex({ + groupId: this.#group.opts.id.current, + id: this.opts.id.current, + domContext: this.domContext, + }); if (index === null) return; @@ -641,41 +705,41 @@ class PaneResizerState { nextHandle.focus(); }; - #onblur = () => { + #onblur: FocusEventHandler = () => { this.#isFocused = false; }; - #onfocus = () => { + #onfocus: FocusEventHandler = () => { this.#isFocused = true; }; - #onmousedown = (e: MouseEvent) => { + #onmousedown: MouseEventHandler = (e) => { this.#startDragging(e); }; - #onmouseup = () => { + #onmouseup: MouseEventHandler = () => { this.#stopDraggingAndBlur(); }; - #ontouchcancel = () => { + #ontouchcancel: TouchEventHandler = () => { this.#stopDraggingAndBlur(); }; - #ontouchend = () => { + #ontouchend: TouchEventHandler = () => { this.#stopDraggingAndBlur(); }; - #ontouchstart = (e: TouchEvent) => { + #ontouchstart: TouchEventHandler = (e: TouchEvent) => { this.#startDragging(e); }; - props = $derived.by( + readonly props = $derived.by( () => ({ id: this.opts.id.current, role: "separator", - "data-direction": this.group.opts.direction.current, - "data-pane-group-id": this.group.opts.id.current, + "data-direction": this.#group.opts.direction.current, + "data-pane-group-id": this.#group.opts.id.current, "data-active": this.#isDragging ? "pointer" : this.#isFocused @@ -686,7 +750,7 @@ class PaneResizerState { "data-pane-resizer": "", tabIndex: this.opts.tabIndex.current, style: { - cursor: getCursorStyle(this.group.opts.direction.current), + cursor: getCursorStyle(this.#group.opts.direction.current), touchAction: "none", userSelect: "none", "-webkit-user-select": "none", @@ -700,33 +764,43 @@ class PaneResizerState { ontouchcancel: this.#ontouchcancel, ontouchend: this.#ontouchend, ontouchstart: this.#ontouchstart, + ...this.attachment, }) as const ); } -type PaneStateProps = WithRefProps< - ReadableBoxedValues<{ - collapsedSize: number | undefined; - collapsible: boolean | undefined; - defaultSize: number | undefined; - maxSize: number | undefined; - minSize: number | undefined; - order: number | undefined; - onCollapse: PaneOnCollapse; - onExpand: PaneOnExpand; - onResize: PaneOnResize; - }> ->; +interface PaneStateOpts + extends WithRefProps, + ReadableBoxedValues<{ + collapsedSize: number | undefined; + collapsible: boolean | undefined; + defaultSize: number | undefined; + maxSize: number | undefined; + minSize: number | undefined; + order: number | undefined; + onCollapse: PaneOnCollapse; + onExpand: PaneOnExpand; + onResize: PaneOnResize; + }> {} export class PaneState { + static create(opts: PaneStateOpts) { + return new PaneState(opts, PaneGroupContext.get()); + } + + readonly opts: PaneStateOpts; + readonly group: PaneGroupState; + readonly attachment: RefAttachment; + readonly domContext: DOMContext; + #paneTransitionState: PaneTransitionState = $state(""); - callbacks = $derived.by(() => ({ + readonly callbacks = $derived.by(() => ({ onCollapse: this.opts.onCollapse.current, onExpand: this.opts.onExpand.current, onResize: this.opts.onResize.current, })); - constraints = $derived.by(() => ({ + readonly constraints = $derived.by(() => ({ collapsedSize: this.opts.collapsedSize.current, collapsible: this.opts.collapsible.current, defaultSize: this.opts.defaultSize.current, @@ -763,7 +837,7 @@ export class PaneState { }); }; - pane = { + readonly pane = { collapse: () => { this.#handleTransition("collapsing"); this.group.collapsePane(this); @@ -779,11 +853,11 @@ export class PaneState { getId: () => this.opts.id.current, }; - constructor( - readonly opts: PaneStateProps, - readonly group: PaneGroupState - ) { - useRefById(opts); + constructor(opts: PaneStateOpts, group: PaneGroupState) { + this.opts = opts; + this.group = group; + this.attachment = attachRef(this.opts.ref); + this.domContext = new DOMContext(this.opts.ref); onMount(() => { return this.group.registerPane(this); @@ -797,9 +871,8 @@ export class PaneState { ); } - #isCollapsed = $derived.by(() => this.group.isPaneCollapsed(this)); - - #paneState = $derived.by(() => + readonly #isCollapsed = $derived.by(() => this.group.isPaneCollapsed(this)); + readonly #paneState = $derived.by(() => this.#paneTransitionState !== "" ? this.#paneTransitionState : this.#isCollapsed @@ -807,7 +880,7 @@ export class PaneState { : "expanded" ); - props = $derived.by( + readonly props = $derived.by( () => ({ id: this.opts.id.current, @@ -818,20 +891,7 @@ export class PaneState { "data-collapsed": this.#isCollapsed ? "" : undefined, "data-expanded": this.#isCollapsed ? undefined : "", "data-pane-state": this.#paneState, + ...this.attachment, }) as const ); } - -const PaneGroupContext = new Context("PaneGroup"); - -export function usePaneGroup(props: PaneGroupStateProps) { - return PaneGroupContext.set(new PaneGroupState(props)); -} - -export function usePaneResizer(props: PaneResizerStateProps) { - return new PaneResizerState(props, PaneGroupContext.get()); -} - -export function usePane(props: PaneStateProps) { - return new PaneState(props, PaneGroupContext.get()); -} diff --git a/packages/paneforge/tsconfig.json b/packages/paneforge/tsconfig.json index 6a2a864..e2d3e52 100644 --- a/packages/paneforge/tsconfig.json +++ b/packages/paneforge/tsconfig.json @@ -11,6 +11,6 @@ "strict": true, "module": "NodeNext", "moduleResolution": "NodeNext", - "exactOptionalPropertyTypes": true + "erasableSyntaxOnly": true } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7f5cf1b..fc13a69 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,32 +12,23 @@ importers: specifier: ^2.27.10 version: 2.27.11 '@eslint/js': - specifier: ^9.12.0 - version: 9.17.0 + specifier: ^9.29.0 + version: 9.29.0 '@svitejs/changesets-changelog-github-compact': specifier: ^1.2.0 version: 1.2.0 '@types/node': specifier: ^22.10.1 version: 22.10.2 - '@typescript-eslint/eslint-plugin': - specifier: ^8.10.0 - version: 8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) - '@typescript-eslint/scope-manager': - specifier: ^8.10.0 - version: 8.18.1 - '@typescript-eslint/utils': - specifier: ^8.10.0 - version: 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) eslint: specifier: ^9.0.0 version: 9.17.0(jiti@2.4.2) eslint-config-prettier: - specifier: ^9.1.0 - version: 9.1.0(eslint@9.17.0(jiti@2.4.2)) + specifier: ^10.1.5 + version: 10.1.5(eslint@9.17.0(jiti@2.4.2)) eslint-plugin-svelte: - specifier: ^2.46.1 - version: 2.46.1(eslint@9.17.0(jiti@2.4.2))(svelte@5.14.4) + specifier: ^3.9.2 + version: 3.9.2(eslint@9.17.0(jiti@2.4.2))(svelte@5.34.3) globals: specifier: ^15.11.0 version: 15.14.0 @@ -46,22 +37,25 @@ importers: version: 3.4.2 prettier-plugin-svelte: specifier: ^3.3.2 - version: 3.3.2(prettier@3.4.2)(svelte@5.14.4) + version: 3.3.2(prettier@3.4.2)(svelte@5.34.3) prettier-plugin-tailwindcss: specifier: ^0.6.8 - version: 0.6.9(prettier-plugin-svelte@3.3.2(prettier@3.4.2)(svelte@5.14.4))(prettier@3.4.2) + version: 0.6.9(prettier-plugin-svelte@3.3.2(prettier@3.4.2)(svelte@5.34.3))(prettier@3.4.2) svelte: - specifier: ^5.11.0 - version: 5.14.4 + specifier: ^5.34.3 + version: 5.34.3 svelte-eslint-parser: specifier: ^0.43.0 - version: 0.43.0(svelte@5.14.4) + version: 0.43.0(svelte@5.34.3) + tseslint: + specifier: ^0.0.2 + version: 0.0.2(pek4mubi6kpl6cmzata5tagiea) typescript: - specifier: ^5.6.3 - version: 5.7.2 + specifier: ^5.8.3 + version: 5.8.3 typescript-eslint: specifier: ^8.10.0 - version: 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + version: 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) wrangler: specifier: ^3.91.0 version: 3.96.0(@cloudflare/workers-types@4.20241218.0) @@ -70,34 +64,34 @@ importers: devDependencies: '@svecodocs/kit': specifier: ^0.1.4 - version: 0.1.4(@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(bits-ui@1.0.0-next.73(svelte@5.20.1))(svelte@5.20.1)(tailwindcss@4.0.0-beta.6)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + version: 0.1.4(@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(bits-ui@1.0.0-next.73(svelte@5.34.3))(svelte@5.34.3)(tailwindcss@4.0.0-beta.6)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) '@sveltejs/adapter-cloudflare': specifier: ^4.8.0 - version: 4.8.0(@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(wrangler@3.96.0(@cloudflare/workers-types@4.20241218.0)) + version: 4.8.0(@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(wrangler@3.96.0(@cloudflare/workers-types@4.20241218.0)) '@sveltejs/kit': specifier: ^2.17.2 - version: 2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + version: 2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) '@sveltejs/vite-plugin-svelte': specifier: ^4.0.0 - version: 4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + version: 4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) '@tailwindcss/vite': specifier: 4.0.0-beta.6 version: 4.0.0-beta.6(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) mdsx: specifier: ^0.0.6 - version: 0.0.6(svelte@5.20.1) + version: 0.0.6(svelte@5.34.3) paneforge: specifier: workspace:^ version: link:../packages/paneforge phosphor-svelte: specifier: ^3.0.0 - version: 3.0.1(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + version: 3.0.1(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) svelte: - specifier: ^5.20.1 - version: 5.20.1 + specifier: ^5.34.3 + version: 5.34.3 svelte-check: specifier: ^4.1.4 - version: 4.1.4(svelte@5.20.1)(typescript@5.7.2) + version: 4.1.4(svelte@5.34.3)(typescript@5.7.2) tailwindcss: specifier: 4.0.0-beta.6 version: 4.0.0-beta.6 @@ -115,20 +109,20 @@ importers: dependencies: runed: specifier: ^0.23.4 - version: 0.23.4(svelte@5.20.2) + version: 0.23.4(svelte@5.34.3) svelte-toolbelt: - specifier: ^0.7.1 - version: 0.7.1(svelte@5.20.2) + specifier: ^0.9.2 + version: 0.9.2(svelte@5.34.3) devDependencies: '@sveltejs/kit': specifier: ^2.17.2 - version: 2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) + version: 2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) '@sveltejs/package': specifier: ^2.3.10 - version: 2.3.10(svelte@5.20.2)(typescript@5.7.2) + version: 2.3.10(svelte@5.34.3)(typescript@5.8.3) '@sveltejs/vite-plugin-svelte': specifier: 4.0.0 - version: 4.0.0(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) + version: 4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) '@testing-library/dom': specifier: ^10.2.0 version: 10.4.0 @@ -137,7 +131,7 @@ importers: version: 6.6.3 '@testing-library/svelte': specifier: ^5.2.0 - version: 5.2.6(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0))(vitest@1.6.0(@types/node@20.17.10)(jsdom@24.1.3)(lightningcss@1.28.2)(terser@5.37.0)) + version: 5.2.6(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0))(vitest@1.6.0(@types/node@20.17.10)(jsdom@24.1.3)(lightningcss@1.28.2)(terser@5.37.0)) '@testing-library/user-event': specifier: ^14.5.2 version: 14.5.2(@testing-library/dom@10.4.0) @@ -154,17 +148,17 @@ importers: specifier: ^1.5.1 version: 1.5.1 svelte: - specifier: ^5.20.2 - version: 5.20.2 + specifier: ^5.34.3 + version: 5.34.3 svelte-check: - specifier: ^4.1.4 - version: 4.1.4(svelte@5.20.2)(typescript@5.7.2) + specifier: ^4.2.1 + version: 4.2.1(svelte@5.34.3)(typescript@5.8.3) tslib: specifier: ^2.4.1 version: 2.8.1 typescript: - specifier: ^5.0.0 - version: 5.7.2 + specifier: ^5.8.3 + version: 5.8.3 vite: specifier: ^5.0.3 version: 5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0) @@ -725,6 +719,12 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + '@eslint-community/eslint-utils@4.7.0': + resolution: {integrity: sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + '@eslint-community/regexpp@4.12.1': resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} @@ -745,6 +745,10 @@ packages: resolution: {integrity: sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/js@9.29.0': + resolution: {integrity: sha512-3PIF4cBw/y+1u2EazflInpV+lYsSG0aByVIQzAgb1m1MhHFSbqTyNqtBKHgWf/9Ykud+DhILS9EGkmekVhbKoQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@eslint/object-schema@2.1.5': resolution: {integrity: sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -757,14 +761,14 @@ packages: resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} engines: {node: '>=14'} - '@floating-ui/core@1.6.8': - resolution: {integrity: sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==} + '@floating-ui/core@1.7.1': + resolution: {integrity: sha512-azI0DrjMMfIug/ExbBaeDVJXcY0a7EPvPjb2xAJPa4HeimBX+Z18HK8QQR3jb6356SnDDdxx+hinMLcJEDdOjw==} - '@floating-ui/dom@1.6.12': - resolution: {integrity: sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w==} + '@floating-ui/dom@1.7.1': + resolution: {integrity: sha512-cwsmW/zyw5ltYTUeeYJ60CnQuPqmGwuGVhG9w0PRaRKkAyi38BT5CKrpIbb+jtahSwUl04cWzSx9ZOIxeS6RsQ==} - '@floating-ui/utils@0.2.8': - resolution: {integrity: sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==} + '@floating-ui/utils@0.2.9': + resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==} '@humanfs/core@0.19.1': resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} @@ -891,8 +895,8 @@ packages: cpu: [x64] os: [win32] - '@internationalized/date@3.6.0': - resolution: {integrity: sha512-+z6ti+CcJnRlLHok/emGEsWQhe7kfSmEW+/6qCzvKY67YPh7YOBfvc7+/+NXq+zJlbArg30tYpqLjNgcAYv2YQ==} + '@internationalized/date@3.8.2': + resolution: {integrity: sha512-/wENk7CbvLbkUvX1tu0mwq49CVkkWpkXubGel6birjRPyo6uQ4nQpnq5xZu823zRCwwn82zgHrvgF1vZyvmVgA==} '@jest/schemas@29.6.3': resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} @@ -1041,6 +1045,9 @@ packages: cpu: [x64] os: [win32] + '@rtsao/scc@1.1.0': + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + '@shikijs/core@1.24.2': resolution: {integrity: sha512-BpbNUSKIwbKrRRA+BQj0BEWSw+8kOPKDJevWeSE/xIqGX7K0xrCZQ9kK0nnEQyrzsUoka1l81ZtJ2mGaCA32HQ==} @@ -1067,6 +1074,11 @@ packages: svelte: ^5.0.0 tailwindcss: 4.0.0-beta.6 + '@sveltejs/acorn-typescript@1.0.5': + resolution: {integrity: sha512-IwQk4yfwLdibDlrXVE04jTZYlLnwsTT2PIOQQGNLWfjavGifnk1JD1LcZjZaBTRcxZu2FfPfNLOE04DSu9lqtQ==} + peerDependencies: + acorn: ^8.9.0 + '@sveltejs/adapter-cloudflare@4.8.0': resolution: {integrity: sha512-stt72ZXDmRoLBqqj2fAdMXyOZ0vDUoAiNe/GRKkfxb1wW5Smp/jBGhKVBwhlAIi7aeE0xEMehN1SBxId9QMh5g==} peerDependencies: @@ -1108,8 +1120,8 @@ packages: resolution: {integrity: sha512-08eKiDAjj4zLug1taXSIJ0kGL5cawjVCyJkBb6EWSg5fEPX6L+Wtr0CH2If4j5KYylz85iaZiFlUItvgJvll5g==} engines: {node: ^14.13.1 || ^16.0.0 || >=18} - '@swc/helpers@0.5.15': - resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} + '@swc/helpers@0.5.17': + resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} '@tailwindcss/node@4.0.0-beta.6': resolution: {integrity: sha512-W07J19+05rRFKfk4sVtkNTb4iuGTI3BU6Ip/iEbb/w5NvaP+fSFK31OYFpJ+CXEWrbNgidUg46BQpw4Y1gophA==} @@ -1240,6 +1252,9 @@ packages: '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + '@types/json5@0.0.29': + resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} @@ -1275,6 +1290,16 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' + '@typescript-eslint/parser@4.33.0': + resolution: {integrity: sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==} + engines: {node: ^10.12.0 || >=12.0.0} + peerDependencies: + eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/parser@8.18.1': resolution: {integrity: sha512-rBnTWHCdbYM2lh7hjyXqxk70wvon3p2FyaniZuey5TrcGBpfhVp0OxOa6gxr9Q9YhZFKyfbEnxc24ZnVbbUkCA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -1282,6 +1307,10 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' + '@typescript-eslint/scope-manager@4.33.0': + resolution: {integrity: sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==} + engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} + '@typescript-eslint/scope-manager@8.18.1': resolution: {integrity: sha512-HxfHo2b090M5s2+/9Z3gkBhI6xBH8OJCFjH9MhQ+nnoZqxU3wNxkLT+VWXWSFWc3UF3Z+CfPAyqdCTdoXtDPCQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -1293,10 +1322,23 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' + '@typescript-eslint/types@4.33.0': + resolution: {integrity: sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==} + engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} + '@typescript-eslint/types@8.18.1': resolution: {integrity: sha512-7uoAUsCj66qdNQNpH2G8MyTFlgerum8ubf21s3TSM3XmKXuIn+H2Sifh/ES2nPOPiYSRJWAk0fDkW0APBWcpfw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/typescript-estree@4.33.0': + resolution: {integrity: sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==} + engines: {node: ^10.12.0 || >=12.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/typescript-estree@8.18.1': resolution: {integrity: sha512-z8U21WI5txzl2XYOW7i9hJhxoKKNG1kcU4RzyNvKrdZDmbjkmLBo8bgeiOJmA06kizLI76/CCBAAGlTlEeUfyg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -1310,6 +1352,10 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.8.0' + '@typescript-eslint/visitor-keys@4.33.0': + resolution: {integrity: sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==} + engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} + '@typescript-eslint/visitor-keys@8.18.1': resolution: {integrity: sha512-Vj0WLm5/ZsD013YeUKn+K0y8p1M0jPpxOkKdbD1wB0ns53a5piVY02zjf072TblEweAbcYiFiPoSMF3kp+VhhQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -1337,11 +1383,6 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn-typescript@1.4.13: - resolution: {integrity: sha512-xsc9Xv0xlVfwp2o7sQ+GCQ1PgbkdcpWdTzrwXxO3xDMTAywVS3oXVOcOHuRjAPkS4P9b+yc/qNF15460v+jp4Q==} - peerDependencies: - acorn: '>=8.9.0' - acorn-walk@8.3.4: resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} engines: {node: '>=0.4.0'} @@ -1387,23 +1428,70 @@ packages: resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} engines: {node: '>= 0.4'} + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} + + array-includes@3.1.9: + resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==} + engines: {node: '>= 0.4'} + array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} + array.prototype.findlast@1.2.5: + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} + engines: {node: '>= 0.4'} + + array.prototype.findlastindex@1.2.6: + resolution: {integrity: sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==} + engines: {node: '>= 0.4'} + + array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} + engines: {node: '>= 0.4'} + + array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} + engines: {node: '>= 0.4'} + + array.prototype.tosorted@1.1.4: + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} + engines: {node: '>= 0.4'} + + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} + engines: {node: '>= 0.4'} + as-table@1.0.55: resolution: {integrity: sha512-xvsWESUJn0JN421Xb9MQw6AsMHRCUknCe0Wjlxvjud80mU4E6hQf1A6NzQKcYNmYw62MfzEtXc+badstZP3JpQ==} assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + ast-types-flow@0.0.8: + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + astring@1.9.0: resolution: {integrity: sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==} hasBin: true + async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + axe-core@4.10.3: + resolution: {integrity: sha512-Xm7bpRXnDSX2YE2YFfBk2FnF0ep6tmG7xPh8iHee8MIcrgq762Nkce856dYtJYLkuIoYZvGfTs/PbZhideTcEg==} + engines: {node: '>=4'} + axobject-query@4.1.0: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} engines: {node: '>= 0.4'} @@ -1444,6 +1532,18 @@ packages: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -1533,6 +1633,9 @@ packages: confbox@0.1.8: resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} + confusing-browser-globals@1.0.11: + resolution: {integrity: sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==} + cookie@0.6.0: resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} engines: {node: '>= 0.6'} @@ -1557,6 +1660,9 @@ packages: resolution: {integrity: sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==} engines: {node: '>=18'} + damerau-levenshtein@1.0.8: + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + data-uri-to-buffer@2.0.2: resolution: {integrity: sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==} @@ -1564,12 +1670,32 @@ packages: resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} engines: {node: '>=18'} + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + dataloader@1.4.0: resolution: {integrity: sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==} date-fns@4.1.0: resolution: {integrity: sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg==} + debug@3.2.7: + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + debug@4.4.0: resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} engines: {node: '>=6.0'} @@ -1599,6 +1725,14 @@ packages: resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} engines: {node: '>=0.10.0'} + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} + defu@6.1.4: resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} @@ -1637,6 +1771,10 @@ packages: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} + doctrine@2.1.0: + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} + dom-accessibility-api@0.5.16: resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} @@ -1647,9 +1785,16 @@ packages: resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} engines: {node: '>=12'} + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + emoji-regex-xs@1.0.0: resolution: {integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==} + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + enhanced-resolve@5.17.1: resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} engines: {node: '>=10.13.0'} @@ -1662,6 +1807,38 @@ packages: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} + es-abstract@1.24.0: + resolution: {integrity: sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==} + engines: {node: '>= 0.4'} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-iterator-helpers@1.2.1: + resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==} + engines: {node: '>= 0.4'} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + es-shim-unscopables@1.1.0: + resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} + engines: {node: '>= 0.4'} + + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} + engines: {node: '>= 0.4'} + esast-util-from-estree@2.0.0: resolution: {integrity: sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==} @@ -1691,23 +1868,107 @@ packages: resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} engines: {node: '>=12'} - eslint-compat-utils@0.5.1: - resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==} - engines: {node: '>=12'} + eslint-config-airbnb-base@14.2.1: + resolution: {integrity: sha512-GOrQyDtVEc1Xy20U7vsB2yAoB4nBlfH5HZJeatRXHleO+OS5Ot+MWij4Dpltw4/DyIkqUfqz1epfhVR5XWWQPA==} + engines: {node: '>= 6'} peerDependencies: - eslint: '>=6.0.0' + eslint: ^5.16.0 || ^6.8.0 || ^7.2.0 + eslint-plugin-import: ^2.22.1 + + eslint-config-airbnb-typescript@12.3.1: + resolution: {integrity: sha512-ql/Pe6/hppYuRp4m3iPaHJqkBB7dgeEmGPQ6X0UNmrQOfTF+dXw29/ZjU2kQ6RDoLxaxOA+Xqv07Vbef6oVTWw==} - eslint-config-prettier@9.1.0: - resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + eslint-config-airbnb@18.2.1: + resolution: {integrity: sha512-glZNDEZ36VdlZWoxn/bUR1r/sdFKPd1mHPbqUtkctgNG4yT2DLLtJ3D+yCV+jzZCc2V1nBVkmdknOJBZ5Hc0fg==} + engines: {node: '>= 6'} + peerDependencies: + eslint: ^5.16.0 || ^6.8.0 || ^7.2.0 + eslint-plugin-import: ^2.22.1 + eslint-plugin-jsx-a11y: ^6.4.1 + eslint-plugin-react: ^7.21.5 + eslint-plugin-react-hooks: ^4 || ^3 || ^2.3.0 || ^1.7.0 + + eslint-config-prettier@10.1.5: + resolution: {integrity: sha512-zc1UmCpNltmVY34vuLRV61r1K27sWuX39E+uyUnY8xS2Bex88VV9cugG+UZbRSRGtGyFboj+D8JODyme1plMpw==} hasBin: true peerDependencies: eslint: '>=7.0.0' - eslint-plugin-svelte@2.46.1: - resolution: {integrity: sha512-7xYr2o4NID/f9OEYMqxsEQsCsj4KaMy4q5sANaKkAb6/QeCjYFxRmDm2S3YC3A3pl1kyPZ/syOx/i7LcWYSbIw==} - engines: {node: ^14.17.0 || >=16.0.0} + eslint-import-resolver-node@0.3.9: + resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} + + eslint-import-resolver-typescript@2.7.1: + resolution: {integrity: sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==} + engines: {node: '>=4'} + peerDependencies: + eslint: '*' + eslint-plugin-import: '*' + + eslint-module-utils@2.12.0: + resolution: {integrity: sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint: + optional: true + eslint-import-resolver-node: + optional: true + eslint-import-resolver-typescript: + optional: true + eslint-import-resolver-webpack: + optional: true + + eslint-plugin-import@2.31.0: + resolution: {integrity: sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + + eslint-plugin-jsx-a11y@6.10.2: + resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==} + engines: {node: '>=4.0'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 + + eslint-plugin-prettier@3.4.1: + resolution: {integrity: sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==} + engines: {node: '>=6.0.0'} + peerDependencies: + eslint: '>=5.0.0' + eslint-config-prettier: '*' + prettier: '>=1.13.0' + peerDependenciesMeta: + eslint-config-prettier: + optional: true + + eslint-plugin-react-hooks@4.6.2: + resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + + eslint-plugin-react@7.37.5: + resolution: {integrity: sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 + + eslint-plugin-svelte@3.9.2: + resolution: {integrity: sha512-aqzfHtG9RPaFhCUFm5QFC6eFY/yHFQIT8VYYFe7/mT2A9mbgVR3XV2keCqU19LN8iVD9mdvRvqHU+4+CzJImvg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^7.0.0 || ^8.0.0-0 || ^9.0.0-0 + eslint: ^8.57.1 || ^9.0.0 svelte: ^3.37.0 || ^4.0.0 || ^5.0.0 peerDependenciesMeta: svelte: @@ -1721,6 +1982,10 @@ packages: resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint-visitor-keys@2.1.0: + resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} + engines: {node: '>=10'} + eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -1739,9 +2004,6 @@ packages: jiti: optional: true - esm-env@1.2.1: - resolution: {integrity: sha512-U9JedYYjCnadUlXk7e1Kr+aENQhtUaoaV9+gZm1T8LC/YBAPJx3NSPIAurFOC0U5vrdSevnUJS2/wUVxGwPhng==} - esm-env@1.2.2: resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==} @@ -1765,8 +2027,8 @@ packages: esrap@1.3.1: resolution: {integrity: sha512-KpAH3+QsDmtOP1KOW04CbD1PgzWsIHjB8tOCk3PCb8xzNGn8XkjI8zl80i09fmXdzQyaS8tcsKCCDzHF7AcowA==} - esrap@1.4.4: - resolution: {integrity: sha512-tDN6xP/r/b3WmdpWm7LybrD252hY52IokcycPnO+WHfhFF0+n5AWtcLLK7VNV6m0uYgVRhGVs8OkZwRyfC7HzQ==} + esrap@1.4.9: + resolution: {integrity: sha512-3OMlcd0a03UGuZpPeUC1HxR3nA23l+HEyCiZw3b3FumJIN9KphoGzDJKMXI1S72jVS1dsenDyQC0kJlO1U9E1g==} esrecurse@4.3.0: resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} @@ -1825,6 +2087,9 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + fast-diff@1.3.0: + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} + fast-glob@3.3.2: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} @@ -1872,6 +2137,10 @@ packages: flexsearch@0.7.43: resolution: {integrity: sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==} + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + form-data@4.0.1: resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} @@ -1895,9 +2164,24 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} + engines: {node: '>= 0.4'} + + functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + get-func-name@2.0.2: resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + get-source@2.0.12: resolution: {integrity: sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w==} @@ -1905,6 +2189,10 @@ packages: resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} engines: {node: '>=16'} + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + github-slugger@2.0.0: resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} @@ -1919,6 +2207,10 @@ packages: glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported + glob@8.1.0: resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} engines: {node: '>=12'} @@ -1932,20 +2224,51 @@ packages: resolution: {integrity: sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==} engines: {node: '>=18'} + globals@16.2.0: + resolution: {integrity: sha512-O+7l9tPdHCU320IigZZPj5zmRCFG9xHmx9cU8FqU2Rp+JN714seHV+2S9+JslCpY4gJwU2vOGox0wzgae/MCEg==} + engines: {node: '>=18'} + + globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} + engines: {node: '>= 0.4'} + globby@11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} engines: {node: '>=10'} + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} + engines: {node: '>= 0.4'} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + hasown@2.0.2: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} @@ -2049,19 +2372,51 @@ packages: inline-style-parser@0.2.4: resolution: {integrity: sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==} + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} + engines: {node: '>= 0.4'} + is-alphabetical@2.0.1: resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} is-alphanumerical@2.0.1: resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} + is-arrayish@0.3.2: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} + is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} + + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} + + is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} + engines: {node: '>= 0.4'} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + is-core-module@2.16.0: resolution: {integrity: sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==} engines: {node: '>= 0.4'} + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} + + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} + is-decimal@2.0.1: resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} @@ -2069,6 +2424,14 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + + is-generator-function@1.1.0: + resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} + engines: {node: '>= 0.4'} + is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} @@ -2076,6 +2439,18 @@ packages: is-hexadecimal@2.0.1: resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} + is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + + is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} + engines: {node: '>= 0.4'} + + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} + engines: {node: '>= 0.4'} + is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} @@ -2090,21 +2465,64 @@ packages: is-reference@3.0.3: resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} + is-stream@3.0.0: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} + engines: {node: '>= 0.4'} + is-subdir@1.2.0: resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} engines: {node: '>=4'} + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} + engines: {node: '>= 0.4'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + + is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} + + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} + is-windows@1.0.2: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} engines: {node: '>=0.10.0'} + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + iterator.prototype@1.1.5: + resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} + engines: {node: '>= 0.4'} + itty-time@1.0.6: resolution: {integrity: sha512-+P8IZaLLBtFv8hCkIjcymZOp4UJ+xW6bSlQsXGqrkmJh7vSiMFSlNne0mCYagEE0N7HDNR5jJBRxwN0oYv61Rw==} @@ -2144,9 +2562,17 @@ packages: json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + json5@1.0.2: + resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} + hasBin: true + jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} + keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} @@ -2154,8 +2580,15 @@ packages: resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} engines: {node: '>=6'} - known-css-properties@0.35.0: - resolution: {integrity: sha512-a/RAk2BfKk+WFGhhOCAYqSiFLc34k8Mt/6NWRI4joER0EYUzXIcFivjjnoD3+XU1DggLn/tZc3DOAgke7l8a4A==} + known-css-properties@0.36.0: + resolution: {integrity: sha512-A+9jP+IUmuQsNdsLdcg6Yt7voiMF/D4K83ew0OpJtpu+l34ef7LaohWV0Rc6KNvzw6ZDizkqfyB5JznZnzuKQA==} + + language-subtag-registry@0.3.23: + resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} + + language-tags@1.0.9: + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} + engines: {node: '>=0.10'} levn@0.4.1: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} @@ -2256,6 +2689,10 @@ packages: longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + loupe@2.3.7: resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} @@ -2279,6 +2716,10 @@ packages: markdown-table@3.0.4: resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + mdast-util-find-and-replace@3.0.1: resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} @@ -2485,6 +2926,9 @@ packages: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + mlly@1.7.3: resolution: {integrity: sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==} @@ -2552,8 +2996,40 @@ packages: nwsapi@2.2.16: resolution: {integrity: sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==} - ohash@1.1.4: - resolution: {integrity: sha512-FlDryZAahJmEF3VR3w1KogSEdWX3WhA5GPakFx4J81kEAiHyLMpdLLElS8n8dfNadMgAne/MywcvmogzscVt4g==} + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + object-keys@1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} + + object.entries@1.1.9: + resolution: {integrity: sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==} + engines: {node: '>= 0.4'} + + object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} + engines: {node: '>= 0.4'} + + object.groupby@1.0.3: + resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} + engines: {node: '>= 0.4'} + + object.values@1.2.1: + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} + engines: {node: '>= 0.4'} + + ohash@1.1.6: + resolution: {integrity: sha512-TBu7PtV8YkAZn0tSxobKY2n2aAQva936lhRrj6957aDaCf9IEtqsKbgMzXE/F/sjqYOwmrukeORHNLe5glk7Cg==} once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} @@ -2576,6 +3052,10 @@ packages: outdent@0.5.0: resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} + own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} + p-filter@2.1.0: resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} engines: {node: '>=8'} @@ -2631,6 +3111,10 @@ packages: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} + path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + path-key@3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} @@ -2678,6 +3162,10 @@ packages: pkg-types@1.2.1: resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==} + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + postcss-load-config@3.1.4: resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} engines: {node: '>= 10'} @@ -2690,11 +3178,11 @@ packages: ts-node: optional: true - postcss-safe-parser@6.0.0: - resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==} - engines: {node: '>=12.0'} + postcss-safe-parser@7.0.1: + resolution: {integrity: sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==} + engines: {node: '>=18.0'} peerDependencies: - postcss: ^8.3.3 + postcss: ^8.4.31 postcss-scss@4.0.9: resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==} @@ -2702,8 +3190,8 @@ packages: peerDependencies: postcss: ^8.4.29 - postcss-selector-parser@6.1.2: - resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} + postcss-selector-parser@7.1.0: + resolution: {integrity: sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==} engines: {node: '>=4'} postcss@8.4.49: @@ -2714,6 +3202,10 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} + prettier-linter-helpers@1.0.0: + resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} + engines: {node: '>=6.0.0'} + prettier-plugin-svelte@3.3.2: resolution: {integrity: sha512-kRPjH8wSj2iu+dO+XaUv4vD8qr5mdDmlak3IT/7AOgGIMRG86z/EHOLauFcClKEnOUf4A4nOA7sre5KrJD4Raw==} peerDependencies: @@ -2796,6 +3288,9 @@ packages: printable-characters@1.0.42: resolution: {integrity: sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==} + prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + property-information@6.5.0: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} @@ -2817,12 +3312,19 @@ packages: queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + react@17.0.2: + resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==} + engines: {node: '>=0.10.0'} + read-yaml-file@1.1.0: resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} engines: {node: '>=6'} @@ -2847,6 +3349,10 @@ packages: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} engines: {node: '>=8'} + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} @@ -2859,6 +3365,10 @@ packages: regex@5.0.2: resolution: {integrity: sha512-/pczGbKIQgfTMRV0XjABvc5RzLqQmwqxLHdQao2RTXPk+pmTXB2P0IaUHYdYyk412YLwUIkaeMd5T+RzVgTqnQ==} + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} + regexparam@3.0.0: resolution: {integrity: sha512-RSYAtP31mvYLkAHrOlh25pCNQ5hWnT106VukGaaFfuJrZFkGRX5GhUAdPqpSDXxOhA2c4akmRuplv1mRqnBn6Q==} engines: {node: '>=8'} @@ -2920,6 +3430,10 @@ packages: resolution: {integrity: sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==} hasBin: true + resolve@2.0.0-next.5: + resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} + hasBin: true + reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} @@ -2955,10 +3469,27 @@ packages: peerDependencies: svelte: ^5.7.0 + runed@0.28.0: + resolution: {integrity: sha512-k2xx7RuO9hWcdd9f+8JoBeqWtYrm5CALfgpkg2YDB80ds/QE4w0qqu34A7fqiAwiBBSBQOid7TLxwxVC27ymWQ==} + peerDependencies: + svelte: ^5.7.0 + sade@1.8.1: resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} engines: {node: '>=6'} + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} + engines: {node: '>=0.4'} + + safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} @@ -2970,6 +3501,10 @@ packages: resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==} engines: {node: '>=10'} + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + semver@7.6.3: resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} engines: {node: '>=10'} @@ -2978,6 +3513,18 @@ packages: set-cookie-parser@2.7.1: resolution: {integrity: sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==} + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} + + set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} + sharp@0.33.5: resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} @@ -2993,6 +3540,22 @@ packages: shiki@1.24.2: resolution: {integrity: sha512-TR1fi6mkRrzW+SKT5G6uKuc32Dj2EEa7Kj0k8kGqiBINb+C1TiflVOiT9ta6GqOJtC4fraxO5SLUaKBcSY38Fg==} + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + siginfo@2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} @@ -3048,10 +3611,37 @@ packages: std-env@3.8.0: resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==} + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + stoppable@1.1.0: resolution: {integrity: sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==} engines: {node: '>=4', npm: '>=6'} + string.prototype.includes@2.0.1: + resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} + engines: {node: '>= 0.4'} + + string.prototype.matchall@4.0.12: + resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} + engines: {node: '>= 0.4'} + + string.prototype.repeat@1.0.0: + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} + + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} + engines: {node: '>= 0.4'} + + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} + + string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} + stringify-entities@4.0.4: resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} @@ -3100,6 +3690,14 @@ packages: svelte: ^4.0.0 || ^5.0.0-next.0 typescript: '>=5.0.0' + svelte-check@4.2.1: + resolution: {integrity: sha512-e49SU1RStvQhoipkQ/aonDhHnG3qxHSBtNfBRb9pxVXoa+N7qybAo32KgA9wEb2PCYFNaDg7bZCdhLD1vHpdYA==} + engines: {node: '>= 18.0.0'} + hasBin: true + peerDependencies: + svelte: ^4.0.0 || ^5.0.0-next.0 + typescript: '>=5.0.0' + svelte-eslint-parser@0.43.0: resolution: {integrity: sha512-GpU52uPKKcVnh8tKN5P4UZpJ/fUDndmq7wfsvoVXsyP+aY0anol7Yqo01fyrlaWGMFfm4av5DyrjlaXdLRJvGA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3109,17 +3707,26 @@ packages: svelte: optional: true + svelte-eslint-parser@1.2.0: + resolution: {integrity: sha512-mbPtajIeuiyU80BEyGvwAktBeTX7KCr5/0l+uRGLq1dafwRNrjfM5kHGJScEBlPG3ipu6dJqfW/k0/fujvIEVw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + svelte: ^3.37.0 || ^4.0.0 || ^5.0.0 + peerDependenciesMeta: + svelte: + optional: true + svelte-toolbelt@0.4.6: resolution: {integrity: sha512-k8OUvXBUifHZcAlWeY/HLg/4J0v5m2iOfOhn8fDmjt4AP8ZluaDh9eBFus9lFiLX6O5l6vKqI1dKL5wy7090NQ==} engines: {node: '>=18', pnpm: '>=8.7.0'} peerDependencies: svelte: ^5.0.0-next.126 - svelte-toolbelt@0.7.1: - resolution: {integrity: sha512-HcBOcR17Vx9bjaOceUvxkY3nGmbBmCBBbuWLLEWO6jtmWH8f/QoWmbyUfQZrpDINH39en1b8mptfPQT9VKQ1xQ==} + svelte-toolbelt@0.9.2: + resolution: {integrity: sha512-REb1cENGnFbhNSmIdCb1SDIpjEa3n1kXhNVHqGNEesjmPX3bG87gUZiCG8cqOt9AAarqzTzOtI2jEEWr/ZbHwA==} engines: {node: '>=18', pnpm: '>=8.7.0'} peerDependencies: - svelte: ^5.0.0 + svelte: ^5.30.2 svelte2tsx@0.7.34: resolution: {integrity: sha512-WTMhpNhFf8/h3SMtR5dkdSy2qfveomkhYei/QW9gSPccb0/b82tjHvLop6vT303ZkGswU/da1s6XvrLgthQPCw==} @@ -3127,16 +3734,8 @@ packages: svelte: ^3.55 || ^4.0.0-next.0 || ^4.0 || ^5.0.0-next.0 typescript: ^4.9.4 || ^5.0.0 - svelte@5.14.4: - resolution: {integrity: sha512-2iR/UHHA2Dsldo4JdXDcdqT+spueuh+uNYw1FoTKBbpnFEECVISeqSo0uubPS4AfBE0xI6u7DGHxcdq3DTDmoQ==} - engines: {node: '>=18'} - - svelte@5.20.1: - resolution: {integrity: sha512-aCARru2WTdzJl55Ws8SK27+kvQwd8tijl4kY7NoDUXUHtTHhxMa8Lf6QNZKmU7cuPu3jjFloDO1j5HgYJNIIWg==} - engines: {node: '>=18'} - - svelte@5.20.2: - resolution: {integrity: sha512-aYXJreNUiyTob0QOzRZeBXZMGeFZDch6SrSRV8QTncZb6zj0O3BEdUzPpojuHQ1pTvk+KX7I6rZCXPUf8pTPxA==} + svelte@5.34.3: + resolution: {integrity: sha512-Y0QKP2rfWD+ARKe91c4JgZgc/nXa2BfOnVBUjYUMB819m7VyPszihkjdzXPIV0qlGRZYEukpgNq7hgbzTbopJw==} engines: {node: '>=18'} symbol-tree@3.2.4: @@ -3218,9 +3817,42 @@ packages: peerDependencies: typescript: '>=4.2.0' + tsconfig-paths@3.15.0: + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} + + tseslint@0.0.2: + resolution: {integrity: sha512-bfYeEjAF1DMU7RTSl2ZahX2eSyZqfXOdOrSvZ2B0pTDenk0KkxVBy7yPSgbxTLVs5oqG6StKtUSy+MTfcYIYmQ==} + peerDependencies: + '@typescript-eslint/eslint-plugin': ^4.8.2 + '@typescript-eslint/parser': ^4.8.2 + eslint: ^7.14.0 + eslint-config-airbnb-typescript: ^12.0.0 + eslint-config-prettier: ^6.15.0 + eslint-import-resolver-typescript: ^2.3.0 + eslint-plugin-import: ^2.22.1 + eslint-plugin-jsx-a11y: ^6.4.1 + eslint-plugin-prettier: ^3.1.4 + eslint-plugin-react: ^7.21.5 + eslint-plugin-react-hooks: ^4.2.0 + prettier: ^2.2.1 + react: ^17.0.1 + typescript: ^4.1.2 + peerDependenciesMeta: + typescript: + optional: true + + tslib@1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + tsutils@3.21.0: + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} + engines: {node: '>= 6'} + peerDependencies: + typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -3229,6 +3861,22 @@ packages: resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==} engines: {node: '>=4'} + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} + + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} + + typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} + engines: {node: '>= 0.4'} + typescript-eslint@8.18.1: resolution: {integrity: sha512-Mlaw6yxuaDEPQvb/2Qwu3/TfgeBHy9iTJ3mTwe7OvpPmF6KPQjVOfGyEJpPv6Ez2C34OODChhXrzYw/9phI0MQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -3241,8 +3889,17 @@ packages: engines: {node: '>=14.17'} hasBin: true - ufo@1.5.4: - resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + typescript@5.8.3: + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} + engines: {node: '>=14.17'} + hasBin: true + + ufo@1.6.1: + resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} + + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} undici-types@6.19.8: resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} @@ -3407,6 +4064,22 @@ packages: whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} + + which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + + which-typed-array@1.1.19: + resolution: {integrity: sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==} + engines: {node: '>= 0.4'} + which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} @@ -3916,6 +4589,11 @@ snapshots: eslint: 9.17.0(jiti@2.4.2) eslint-visitor-keys: 3.4.3 + '@eslint-community/eslint-utils@4.7.0(eslint@9.17.0(jiti@2.4.2))': + dependencies: + eslint: 9.17.0(jiti@2.4.2) + eslint-visitor-keys: 3.4.3 + '@eslint-community/regexpp@4.12.1': {} '@eslint/config-array@0.19.1': @@ -3946,6 +4624,8 @@ snapshots: '@eslint/js@9.17.0': {} + '@eslint/js@9.29.0': {} + '@eslint/object-schema@2.1.5': {} '@eslint/plugin-kit@0.2.4': @@ -3954,16 +4634,16 @@ snapshots: '@fastify/busboy@2.1.1': {} - '@floating-ui/core@1.6.8': + '@floating-ui/core@1.7.1': dependencies: - '@floating-ui/utils': 0.2.8 + '@floating-ui/utils': 0.2.9 - '@floating-ui/dom@1.6.12': + '@floating-ui/dom@1.7.1': dependencies: - '@floating-ui/core': 1.6.8 - '@floating-ui/utils': 0.2.8 + '@floating-ui/core': 1.7.1 + '@floating-ui/utils': 0.2.9 - '@floating-ui/utils@0.2.8': {} + '@floating-ui/utils@0.2.9': {} '@humanfs/core@0.19.1': {} @@ -4053,9 +4733,9 @@ snapshots: '@img/sharp-win32-x64@0.33.5': optional: true - '@internationalized/date@3.6.0': + '@internationalized/date@3.8.2': dependencies: - '@swc/helpers': 0.5.15 + '@swc/helpers': 0.5.17 '@jest/schemas@29.6.3': dependencies: @@ -4205,6 +4885,8 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.28.1': optional: true + '@rtsao/scc@1.1.0': {} + '@shikijs/core@1.24.2': dependencies: '@shikijs/engine-javascript': 1.24.2 @@ -4234,22 +4916,22 @@ snapshots: '@sinclair/typebox@0.27.8': {} - '@svecodocs/kit@0.1.4(@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(bits-ui@1.0.0-next.73(svelte@5.20.1))(svelte@5.20.1)(tailwindcss@4.0.0-beta.6)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0))': + '@svecodocs/kit@0.1.4(@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(bits-ui@1.0.0-next.73(svelte@5.34.3))(svelte@5.34.3)(tailwindcss@4.0.0-beta.6)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0))': dependencies: - '@sveltejs/kit': 2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) - bits-ui: 1.0.0-next.73(svelte@5.20.1) + '@sveltejs/kit': 2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + bits-ui: 1.0.0-next.73(svelte@5.34.3) clsx: 2.1.1 flexsearch: 0.7.43 - mode-watcher: 0.5.0(svelte@5.20.1) - phosphor-svelte: 3.0.1(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + mode-watcher: 0.5.0(svelte@5.34.3) + phosphor-svelte: 3.0.1(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) rehype-autolink-headings: 7.1.0 rehype-pretty-code: 0.14.0(shiki@1.24.2) rehype-slug: 6.0.0 remark-gfm: 4.0.0 remove-markdown: 0.5.5 shiki: 1.24.2 - svelte: 5.20.1 - svelte-toolbelt: 0.4.6(svelte@5.20.1) + svelte: 5.34.3 + svelte-toolbelt: 0.4.6(svelte@5.34.3) tailwind-merge: 2.5.5 tailwind-variants: 0.3.0(tailwindcss@4.0.0-beta.6) tailwindcss: 4.0.0-beta.6 @@ -4259,17 +4941,21 @@ snapshots: - supports-color - vite - '@sveltejs/adapter-cloudflare@4.8.0(@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(wrangler@3.96.0(@cloudflare/workers-types@4.20241218.0))': + '@sveltejs/acorn-typescript@1.0.5(acorn@8.14.0)': + dependencies: + acorn: 8.14.0 + + '@sveltejs/adapter-cloudflare@4.8.0(@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(wrangler@3.96.0(@cloudflare/workers-types@4.20241218.0))': dependencies: '@cloudflare/workers-types': 4.20241218.0 - '@sveltejs/kit': 2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + '@sveltejs/kit': 2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) esbuild: 0.24.0 worktop: 0.8.0-next.18 wrangler: 3.96.0(@cloudflare/workers-types@4.20241218.0) - '@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0))': + '@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0))': dependencies: - '@sveltejs/vite-plugin-svelte': 4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + '@sveltejs/vite-plugin-svelte': 4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) '@types/cookie': 0.6.0 cookie: 0.6.0 devalue: 5.1.1 @@ -4281,12 +4967,12 @@ snapshots: sade: 1.8.1 set-cookie-parser: 2.7.1 sirv: 3.0.0 - svelte: 5.20.1 - vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0) + svelte: 5.34.3 + vite: 5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0) - '@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0))': + '@sveltejs/kit@2.17.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0))': dependencies: - '@sveltejs/vite-plugin-svelte': 4.0.0(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) + '@sveltejs/vite-plugin-svelte': 4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) '@types/cookie': 0.6.0 cookie: 0.6.0 devalue: 5.1.1 @@ -4298,61 +4984,61 @@ snapshots: sade: 1.8.1 set-cookie-parser: 2.7.1 sirv: 3.0.0 - svelte: 5.20.2 - vite: 5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0) + svelte: 5.34.3 + vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0) - '@sveltejs/package@2.3.10(svelte@5.20.2)(typescript@5.7.2)': + '@sveltejs/package@2.3.10(svelte@5.34.3)(typescript@5.8.3)': dependencies: chokidar: 4.0.3 kleur: 4.1.5 sade: 1.8.1 semver: 7.6.3 - svelte: 5.20.2 - svelte2tsx: 0.7.34(svelte@5.20.2)(typescript@5.7.2) + svelte: 5.34.3 + svelte2tsx: 0.7.34(svelte@5.34.3)(typescript@5.8.3) transitivePeerDependencies: - typescript - '@sveltejs/vite-plugin-svelte-inspector@3.0.1(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0))': + '@sveltejs/vite-plugin-svelte-inspector@3.0.1(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0))': dependencies: - '@sveltejs/vite-plugin-svelte': 4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + '@sveltejs/vite-plugin-svelte': 4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) debug: 4.4.0 - svelte: 5.20.1 - vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0) + svelte: 5.34.3 + vite: 5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte-inspector@3.0.1(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0))': + '@sveltejs/vite-plugin-svelte-inspector@3.0.1(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0))': dependencies: - '@sveltejs/vite-plugin-svelte': 4.0.0(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) + '@sveltejs/vite-plugin-svelte': 4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) debug: 4.4.0 - svelte: 5.20.2 - vite: 5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0) + svelte: 5.34.3 + vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0))': + '@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 3.0.1(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + '@sveltejs/vite-plugin-svelte-inspector': 3.0.1(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) debug: 4.4.0 deepmerge: 4.3.1 kleur: 4.1.5 magic-string: 0.30.17 - svelte: 5.20.1 - vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0) - vitefu: 1.0.4(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) + svelte: 5.34.3 + vite: 5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0) + vitefu: 1.0.4(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0))': + '@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 3.0.1(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) + '@sveltejs/vite-plugin-svelte-inspector': 3.0.1(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)))(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) debug: 4.4.0 deepmerge: 4.3.1 kleur: 4.1.5 magic-string: 0.30.17 - svelte: 5.20.2 - vite: 5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0) - vitefu: 1.0.4(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0)) + svelte: 5.34.3 + vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0) + vitefu: 1.0.4(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)) transitivePeerDependencies: - supports-color @@ -4363,7 +5049,7 @@ snapshots: transitivePeerDependencies: - encoding - '@swc/helpers@0.5.15': + '@swc/helpers@0.5.17': dependencies: tslib: 2.8.1 @@ -4449,10 +5135,10 @@ snapshots: lodash: 4.17.21 redent: 3.0.0 - '@testing-library/svelte@5.2.6(svelte@5.20.2)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0))(vitest@1.6.0(@types/node@20.17.10)(jsdom@24.1.3)(lightningcss@1.28.2)(terser@5.37.0))': + '@testing-library/svelte@5.2.6(svelte@5.34.3)(vite@5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0))(vitest@1.6.0(@types/node@20.17.10)(jsdom@24.1.3)(lightningcss@1.28.2)(terser@5.37.0))': dependencies: '@testing-library/dom': 10.4.0 - svelte: 5.20.2 + svelte: 5.34.3 optionalDependencies: vite: 5.4.11(@types/node@20.17.10)(lightningcss@1.28.2)(terser@5.37.0) vitest: 1.6.0(@types/node@20.17.10)(jsdom@24.1.3)(lightningcss@1.28.2)(terser@5.37.0) @@ -4485,6 +5171,8 @@ snapshots: '@types/json-schema@7.0.15': {} + '@types/json5@0.0.29': {} + '@types/mdast@4.0.4': dependencies: '@types/unist': 3.0.3 @@ -4511,54 +5199,87 @@ snapshots: '@types/unist@3.0.3': {} - '@typescript-eslint/eslint-plugin@8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)': + '@typescript-eslint/eslint-plugin@8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/scope-manager': 8.18.1 - '@typescript-eslint/type-utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) - '@typescript-eslint/utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + '@typescript-eslint/type-utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/visitor-keys': 8.18.1 eslint: 9.17.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - ts-api-utils: 1.4.3(typescript@5.7.2) - typescript: 5.7.2 + ts-api-utils: 1.4.3(typescript@5.8.3) + typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)': + '@typescript-eslint/parser@4.33.0(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3)': + dependencies: + '@typescript-eslint/scope-manager': 4.33.0 + '@typescript-eslint/types': 4.33.0 + '@typescript-eslint/typescript-estree': 4.33.0(typescript@5.8.3) + debug: 4.4.0 + eslint: 9.17.0(jiti@2.4.2) + optionalDependencies: + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@typescript-eslint/scope-manager': 8.18.1 '@typescript-eslint/types': 8.18.1 - '@typescript-eslint/typescript-estree': 8.18.1(typescript@5.7.2) + '@typescript-eslint/typescript-estree': 8.18.1(typescript@5.8.3) '@typescript-eslint/visitor-keys': 8.18.1 debug: 4.4.0 eslint: 9.17.0(jiti@2.4.2) - typescript: 5.7.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color + '@typescript-eslint/scope-manager@4.33.0': + dependencies: + '@typescript-eslint/types': 4.33.0 + '@typescript-eslint/visitor-keys': 4.33.0 + '@typescript-eslint/scope-manager@8.18.1': dependencies: '@typescript-eslint/types': 8.18.1 '@typescript-eslint/visitor-keys': 8.18.1 - '@typescript-eslint/type-utils@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)': + '@typescript-eslint/type-utils@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: - '@typescript-eslint/typescript-estree': 8.18.1(typescript@5.7.2) - '@typescript-eslint/utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + '@typescript-eslint/typescript-estree': 8.18.1(typescript@5.8.3) + '@typescript-eslint/utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) debug: 4.4.0 eslint: 9.17.0(jiti@2.4.2) - ts-api-utils: 1.4.3(typescript@5.7.2) - typescript: 5.7.2 + ts-api-utils: 1.4.3(typescript@5.8.3) + typescript: 5.8.3 transitivePeerDependencies: - supports-color + '@typescript-eslint/types@4.33.0': {} + '@typescript-eslint/types@8.18.1': {} - '@typescript-eslint/typescript-estree@8.18.1(typescript@5.7.2)': + '@typescript-eslint/typescript-estree@4.33.0(typescript@5.8.3)': + dependencies: + '@typescript-eslint/types': 4.33.0 + '@typescript-eslint/visitor-keys': 4.33.0 + debug: 4.4.0 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.6.3 + tsutils: 3.21.0(typescript@5.8.3) + optionalDependencies: + typescript: 5.8.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/typescript-estree@8.18.1(typescript@5.8.3)': dependencies: '@typescript-eslint/types': 8.18.1 '@typescript-eslint/visitor-keys': 8.18.1 @@ -4567,22 +5288,27 @@ snapshots: is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 - ts-api-utils: 1.4.3(typescript@5.7.2) - typescript: 5.7.2 + ts-api-utils: 1.4.3(typescript@5.8.3) + typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)': + '@typescript-eslint/utils@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@9.17.0(jiti@2.4.2)) '@typescript-eslint/scope-manager': 8.18.1 '@typescript-eslint/types': 8.18.1 - '@typescript-eslint/typescript-estree': 8.18.1(typescript@5.7.2) + '@typescript-eslint/typescript-estree': 8.18.1(typescript@5.8.3) eslint: 9.17.0(jiti@2.4.2) - typescript: 5.7.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color + '@typescript-eslint/visitor-keys@4.33.0': + dependencies: + '@typescript-eslint/types': 4.33.0 + eslint-visitor-keys: 2.1.0 + '@typescript-eslint/visitor-keys@8.18.1': dependencies: '@typescript-eslint/types': 8.18.1 @@ -4623,10 +5349,6 @@ snapshots: dependencies: acorn: 8.14.0 - acorn-typescript@1.4.13(acorn@8.14.0): - dependencies: - acorn: 8.14.0 - acorn-walk@8.3.4: dependencies: acorn: 8.14.0 @@ -4664,18 +5386,95 @@ snapshots: aria-query@5.3.2: {} + array-buffer-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + is-array-buffer: 3.0.5 + + array-includes@3.1.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + is-string: 1.1.1 + math-intrinsics: 1.1.0 + array-union@2.1.0: {} + array.prototype.findlast@1.2.5: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-shim-unscopables: 1.1.0 + + array.prototype.findlastindex@1.2.6: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-shim-unscopables: 1.1.0 + + array.prototype.flat@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-shim-unscopables: 1.1.0 + + array.prototype.flatmap@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-shim-unscopables: 1.1.0 + + array.prototype.tosorted@1.1.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-shim-unscopables: 1.1.0 + + arraybuffer.prototype.slice@1.0.4: + dependencies: + array-buffer-byte-length: 1.0.2 + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + is-array-buffer: 3.0.5 + as-table@1.0.55: dependencies: printable-characters: 1.0.42 assertion-error@1.1.0: {} + ast-types-flow@0.0.8: {} + astring@1.9.0: {} + async-function@1.0.0: {} + asynckit@0.4.0: {} + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + axe-core@4.10.3: {} + axobject-query@4.1.0: {} bail@2.0.2: {} @@ -4686,15 +5485,15 @@ snapshots: dependencies: is-windows: 1.0.2 - bits-ui@1.0.0-next.73(svelte@5.20.1): + bits-ui@1.0.0-next.73(svelte@5.34.3): dependencies: - '@floating-ui/core': 1.6.8 - '@floating-ui/dom': 1.6.12 - '@internationalized/date': 3.6.0 + '@floating-ui/core': 1.7.1 + '@floating-ui/dom': 1.7.1 + '@internationalized/date': 3.8.2 esm-env: 1.2.2 - runed: 0.15.4(svelte@5.20.1) - svelte: 5.20.1 - svelte-toolbelt: 0.4.6(svelte@5.20.1) + runed: 0.15.4(svelte@5.34.3) + svelte: 5.34.3 + svelte-toolbelt: 0.4.6(svelte@5.34.3) blake3-wasm@2.1.5: {} @@ -4715,6 +5514,23 @@ snapshots: cac@6.7.14: {} + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + callsites@3.1.0: {} capnp-ts@0.7.0: @@ -4802,6 +5618,8 @@ snapshots: confbox@0.1.8: {} + confusing-browser-globals@1.0.11: {} + cookie@0.6.0: {} cookie@0.7.2: {} @@ -4820,6 +5638,8 @@ snapshots: dependencies: rrweb-cssom: 0.7.1 + damerau-levenshtein@1.0.8: {} + data-uri-to-buffer@2.0.2: {} data-urls@5.0.0: @@ -4827,10 +5647,32 @@ snapshots: whatwg-mimetype: 4.0.0 whatwg-url: 14.1.0 + data-view-buffer@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-offset@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + dataloader@1.4.0: {} date-fns@4.1.0: {} + debug@3.2.7: + dependencies: + ms: 2.1.3 + debug@4.4.0: dependencies: ms: 2.1.3 @@ -4851,6 +5693,18 @@ snapshots: deepmerge@4.3.1: {} + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + define-properties@1.2.1: + dependencies: + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 + object-keys: 1.1.1 + defu@6.1.4: {} delayed-stream@1.0.0: {} @@ -4875,14 +5729,26 @@ snapshots: dependencies: path-type: 4.0.0 + doctrine@2.1.0: + dependencies: + esutils: 2.0.3 + dom-accessibility-api@0.5.16: {} dom-accessibility-api@0.6.3: {} dotenv@16.4.7: {} + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + emoji-regex-xs@1.0.0: {} + emoji-regex@9.2.2: {} + enhanced-resolve@5.17.1: dependencies: graceful-fs: 4.2.11 @@ -4895,6 +5761,107 @@ snapshots: entities@4.5.0: {} + es-abstract@1.24.0: + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-set-tostringtag: 2.1.0 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.8 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-negative-zero: 2.0.3 + is-regex: 1.2.1 + is-set: 2.0.3 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 + object-keys: 1.1.1 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.3 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + stop-iteration-iterator: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.19 + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-iterator-helpers@1.2.1: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-set-tostringtag: 2.1.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + iterator.prototype: 1.1.5 + safe-array-concat: 1.1.3 + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + es-shim-unscopables@1.1.0: + dependencies: + hasown: 2.0.2 + + es-to-primitive@1.3.0: + dependencies: + is-callable: 1.2.7 + is-date-object: 1.1.0 + is-symbol: 1.1.1 + esast-util-from-estree@2.0.0: dependencies: '@types/estree-jsx': 1.0.5 @@ -4991,31 +5958,171 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-compat-utils@0.5.1(eslint@9.17.0(jiti@2.4.2)): + eslint-config-airbnb-base@14.2.1(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@2.4.2)): dependencies: + confusing-browser-globals: 1.0.11 eslint: 9.17.0(jiti@2.4.2) - semver: 7.6.3 + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@2.7.1)(eslint@9.17.0(jiti@2.4.2)) + object.assign: 4.1.7 + object.entries: 1.1.9 + + eslint-config-airbnb-typescript@12.3.1(eslint-plugin-import@2.31.0)(eslint-plugin-jsx-a11y@6.10.2(eslint@9.17.0(jiti@2.4.2)))(eslint-plugin-react-hooks@4.6.2(eslint@9.17.0(jiti@2.4.2)))(eslint-plugin-react@7.37.5(eslint@9.17.0(jiti@2.4.2)))(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3): + dependencies: + '@typescript-eslint/parser': 4.33.0(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) + eslint-config-airbnb: 18.2.1(eslint-plugin-import@2.31.0)(eslint-plugin-jsx-a11y@6.10.2(eslint@9.17.0(jiti@2.4.2)))(eslint-plugin-react-hooks@4.6.2(eslint@9.17.0(jiti@2.4.2)))(eslint-plugin-react@7.37.5(eslint@9.17.0(jiti@2.4.2)))(eslint@9.17.0(jiti@2.4.2)) + eslint-config-airbnb-base: 14.2.1(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@2.4.2)) + transitivePeerDependencies: + - eslint + - eslint-plugin-import + - eslint-plugin-jsx-a11y + - eslint-plugin-react + - eslint-plugin-react-hooks + - supports-color + - typescript - eslint-config-prettier@9.1.0(eslint@9.17.0(jiti@2.4.2)): + eslint-config-airbnb@18.2.1(eslint-plugin-import@2.31.0)(eslint-plugin-jsx-a11y@6.10.2(eslint@9.17.0(jiti@2.4.2)))(eslint-plugin-react-hooks@4.6.2(eslint@9.17.0(jiti@2.4.2)))(eslint-plugin-react@7.37.5(eslint@9.17.0(jiti@2.4.2)))(eslint@9.17.0(jiti@2.4.2)): dependencies: eslint: 9.17.0(jiti@2.4.2) + eslint-config-airbnb-base: 14.2.1(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@2.4.2)) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@2.7.1)(eslint@9.17.0(jiti@2.4.2)) + eslint-plugin-jsx-a11y: 6.10.2(eslint@9.17.0(jiti@2.4.2)) + eslint-plugin-react: 7.37.5(eslint@9.17.0(jiti@2.4.2)) + eslint-plugin-react-hooks: 4.6.2(eslint@9.17.0(jiti@2.4.2)) + object.assign: 4.1.7 + object.entries: 1.1.9 - eslint-plugin-svelte@2.46.1(eslint@9.17.0(jiti@2.4.2))(svelte@5.14.4): + eslint-config-prettier@10.1.5(eslint@9.17.0(jiti@2.4.2)): dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.17.0(jiti@2.4.2)) + eslint: 9.17.0(jiti@2.4.2) + + eslint-import-resolver-node@0.3.9: + dependencies: + debug: 3.2.7 + is-core-module: 2.16.0 + resolve: 1.22.9 + transitivePeerDependencies: + - supports-color + + eslint-import-resolver-typescript@2.7.1(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@2.4.2)): + dependencies: + debug: 4.4.0 + eslint: 9.17.0(jiti@2.4.2) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@2.7.1)(eslint@9.17.0(jiti@2.4.2)) + glob: 7.2.3 + is-glob: 4.0.3 + resolve: 1.22.9 + tsconfig-paths: 3.15.0 + transitivePeerDependencies: + - supports-color + + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@2.7.1)(eslint@9.17.0(jiti@2.4.2)): + dependencies: + debug: 3.2.7 + optionalDependencies: + '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) + eslint: 9.17.0(jiti@2.4.2) + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 2.7.1(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@2.4.2)) + transitivePeerDependencies: + - supports-color + + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@2.7.1)(eslint@9.17.0(jiti@2.4.2)): + dependencies: + '@rtsao/scc': 1.1.0 + array-includes: 3.1.9 + array.prototype.findlastindex: 1.2.6 + array.prototype.flat: 1.3.3 + array.prototype.flatmap: 1.3.3 + debug: 3.2.7 + doctrine: 2.1.0 + eslint: 9.17.0(jiti@2.4.2) + eslint-import-resolver-node: 0.3.9 + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@2.7.1)(eslint@9.17.0(jiti@2.4.2)) + hasown: 2.0.2 + is-core-module: 2.16.0 + is-glob: 4.0.3 + minimatch: 3.1.2 + object.fromentries: 2.0.8 + object.groupby: 1.0.3 + object.values: 1.2.1 + semver: 6.3.1 + string.prototype.trimend: 1.0.9 + tsconfig-paths: 3.15.0 + optionalDependencies: + '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + + eslint-plugin-jsx-a11y@6.10.2(eslint@9.17.0(jiti@2.4.2)): + dependencies: + aria-query: 5.3.2 + array-includes: 3.1.9 + array.prototype.flatmap: 1.3.3 + ast-types-flow: 0.0.8 + axe-core: 4.10.3 + axobject-query: 4.1.0 + damerau-levenshtein: 1.0.8 + emoji-regex: 9.2.2 + eslint: 9.17.0(jiti@2.4.2) + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + language-tags: 1.0.9 + minimatch: 3.1.2 + object.fromentries: 2.0.8 + safe-regex-test: 1.1.0 + string.prototype.includes: 2.0.1 + + eslint-plugin-prettier@3.4.1(eslint-config-prettier@10.1.5(eslint@9.17.0(jiti@2.4.2)))(eslint@9.17.0(jiti@2.4.2))(prettier@3.4.2): + dependencies: + eslint: 9.17.0(jiti@2.4.2) + prettier: 3.4.2 + prettier-linter-helpers: 1.0.0 + optionalDependencies: + eslint-config-prettier: 10.1.5(eslint@9.17.0(jiti@2.4.2)) + + eslint-plugin-react-hooks@4.6.2(eslint@9.17.0(jiti@2.4.2)): + dependencies: + eslint: 9.17.0(jiti@2.4.2) + + eslint-plugin-react@7.37.5(eslint@9.17.0(jiti@2.4.2)): + dependencies: + array-includes: 3.1.9 + array.prototype.findlast: 1.2.5 + array.prototype.flatmap: 1.3.3 + array.prototype.tosorted: 1.1.4 + doctrine: 2.1.0 + es-iterator-helpers: 1.2.1 + eslint: 9.17.0(jiti@2.4.2) + estraverse: 5.3.0 + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + minimatch: 3.1.2 + object.entries: 1.1.9 + object.fromentries: 2.0.8 + object.values: 1.2.1 + prop-types: 15.8.1 + resolve: 2.0.0-next.5 + semver: 6.3.1 + string.prototype.matchall: 4.0.12 + string.prototype.repeat: 1.0.0 + + eslint-plugin-svelte@3.9.2(eslint@9.17.0(jiti@2.4.2))(svelte@5.34.3): + dependencies: + '@eslint-community/eslint-utils': 4.7.0(eslint@9.17.0(jiti@2.4.2)) '@jridgewell/sourcemap-codec': 1.5.0 eslint: 9.17.0(jiti@2.4.2) - eslint-compat-utils: 0.5.1(eslint@9.17.0(jiti@2.4.2)) esutils: 2.0.3 - known-css-properties: 0.35.0 + globals: 16.2.0 + known-css-properties: 0.36.0 postcss: 8.4.49 postcss-load-config: 3.1.4(postcss@8.4.49) - postcss-safe-parser: 6.0.0(postcss@8.4.49) - postcss-selector-parser: 6.1.2 + postcss-safe-parser: 7.0.1(postcss@8.4.49) semver: 7.6.3 - svelte-eslint-parser: 0.43.0(svelte@5.14.4) + svelte-eslint-parser: 1.2.0(svelte@5.34.3) optionalDependencies: - svelte: 5.14.4 + svelte: 5.34.3 transitivePeerDependencies: - ts-node @@ -5029,6 +6136,8 @@ snapshots: esrecurse: 4.3.0 estraverse: 5.3.0 + eslint-visitor-keys@2.1.0: {} + eslint-visitor-keys@3.4.3: {} eslint-visitor-keys@4.2.0: {} @@ -5074,8 +6183,6 @@ snapshots: transitivePeerDependencies: - supports-color - esm-env@1.2.1: {} - esm-env@1.2.2: {} espree@10.3.0: @@ -5101,7 +6208,7 @@ snapshots: '@jridgewell/sourcemap-codec': 1.5.0 '@typescript-eslint/types': 8.18.1 - esrap@1.4.4: + esrap@1.4.9: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -5174,6 +6281,8 @@ snapshots: fast-deep-equal@3.1.3: {} + fast-diff@1.3.0: {} + fast-glob@3.3.2: dependencies: '@nodelib/fs.stat': 2.0.5 @@ -5219,6 +6328,10 @@ snapshots: flexsearch@0.7.43: {} + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + form-data@4.0.1: dependencies: asynckit: 0.4.0 @@ -5244,8 +6357,37 @@ snapshots: function-bind@1.1.2: {} + function.prototype.name@1.1.8: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 + + functions-have-names@1.2.3: {} + get-func-name@2.0.2: {} + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + get-source@2.0.12: dependencies: data-uri-to-buffer: 2.0.2 @@ -5253,6 +6395,12 @@ snapshots: get-stream@8.0.1: {} + get-symbol-description@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + github-slugger@2.0.0: {} glob-parent@5.1.2: @@ -5265,6 +6413,15 @@ snapshots: glob-to-regexp@0.4.1: {} + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + glob@8.1.0: dependencies: fs.realpath: 1.0.0 @@ -5277,6 +6434,13 @@ snapshots: globals@15.14.0: {} + globals@16.2.0: {} + + globalthis@1.0.4: + dependencies: + define-properties: 1.2.1 + gopd: 1.2.0 + globby@11.1.0: dependencies: array-union: 2.1.0 @@ -5286,12 +6450,30 @@ snapshots: merge2: 1.4.1 slash: 3.0.0 + gopd@1.2.0: {} + graceful-fs@4.2.11: {} graphemer@1.4.0: {} + has-bigints@1.1.0: {} + has-flag@4.0.0: {} + has-property-descriptors@1.0.2: + dependencies: + es-define-property: 1.0.1 + + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.1 + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + hasown@2.0.2: dependencies: function-bind: 1.1.2 @@ -5459,6 +6641,12 @@ snapshots: inline-style-parser@0.2.4: {} + internal-slot@1.1.0: + dependencies: + es-errors: 1.3.0 + hasown: 2.0.2 + side-channel: 1.1.0 + is-alphabetical@2.0.1: {} is-alphanumerical@2.0.1: @@ -5466,22 +6654,78 @@ snapshots: is-alphabetical: 2.0.1 is-decimal: 2.0.1 + is-array-buffer@3.0.5: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-arrayish@0.3.2: {} + is-async-function@2.1.1: + dependencies: + async-function: 1.0.0 + call-bound: 1.0.4 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-bigint@1.1.0: + dependencies: + has-bigints: 1.1.0 + + is-boolean-object@1.2.2: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-callable@1.2.7: {} + is-core-module@2.16.0: dependencies: hasown: 2.0.2 + is-data-view@1.0.2: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-typed-array: 1.1.15 + + is-date-object@1.1.0: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + is-decimal@2.0.1: {} is-extglob@2.1.1: {} + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-generator-function@1.1.0: + dependencies: + call-bound: 1.0.4 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + is-glob@4.0.3: dependencies: is-extglob: 2.1.1 is-hexadecimal@2.0.1: {} + is-map@2.0.3: {} + + is-negative-zero@2.0.3: {} + + is-number-object@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + is-number@7.0.0: {} is-plain-obj@4.1.0: {} @@ -5492,16 +6736,66 @@ snapshots: dependencies: '@types/estree': 1.0.6 + is-regex@1.2.1: + dependencies: + call-bound: 1.0.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + is-set@2.0.3: {} + + is-shared-array-buffer@1.0.4: + dependencies: + call-bound: 1.0.4 + is-stream@3.0.0: {} + is-string@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + is-subdir@1.2.0: dependencies: better-path-resolve: 1.0.0 + is-symbol@1.1.1: + dependencies: + call-bound: 1.0.4 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.19 + + is-weakmap@2.0.2: {} + + is-weakref@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-weakset@2.0.4: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-windows@1.0.2: {} + isarray@2.0.5: {} + isexe@2.0.0: {} + iterator.prototype@1.1.5: + dependencies: + define-data-property: 1.1.4 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + has-symbols: 1.1.0 + set-function-name: 2.0.2 + itty-time@1.0.6: {} jiti@2.4.2: {} @@ -5553,17 +6847,34 @@ snapshots: json-stable-stringify-without-jsonify@1.0.1: {} + json5@1.0.2: + dependencies: + minimist: 1.2.8 + jsonfile@4.0.0: optionalDependencies: graceful-fs: 4.2.11 + jsx-ast-utils@3.3.5: + dependencies: + array-includes: 3.1.9 + array.prototype.flat: 1.3.3 + object.assign: 4.1.7 + object.values: 1.2.1 + keyv@4.5.4: dependencies: json-buffer: 3.0.1 kleur@4.1.5: {} - known-css-properties@0.35.0: {} + known-css-properties@0.36.0: {} + + language-subtag-registry@0.3.23: {} + + language-tags@1.0.9: + dependencies: + language-subtag-registry: 0.3.23 levn@0.4.1: dependencies: @@ -5640,6 +6951,10 @@ snapshots: longest-streak@3.1.0: {} + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + loupe@2.3.7: dependencies: get-func-name: 2.0.2 @@ -5662,6 +6977,8 @@ snapshots: markdown-table@3.0.4: {} + math-intrinsics@1.1.0: {} + mdast-util-find-and-replace@3.0.1: dependencies: '@types/mdast': 4.0.4 @@ -5825,7 +7142,7 @@ snapshots: dependencies: '@types/mdast': 4.0.4 - mdsx@0.0.6(svelte@5.20.1): + mdsx@0.0.6(svelte@5.34.3): dependencies: esrap: 1.3.1 hast-util-to-html: 9.0.4 @@ -5834,7 +7151,7 @@ snapshots: rehype-stringify: 10.0.1 remark-parse: 11.0.0 remark-rehype: 11.1.1 - svelte: 5.20.1 + svelte: 5.34.3 unified: 11.0.5 unist-util-visit: 5.0.0 vfile: 6.0.3 @@ -6161,16 +7478,18 @@ snapshots: dependencies: brace-expansion: 2.0.1 + minimist@1.2.8: {} + mlly@1.7.3: dependencies: acorn: 8.14.0 pathe: 1.1.2 pkg-types: 1.2.1 - ufo: 1.5.4 + ufo: 1.6.1 - mode-watcher@0.5.0(svelte@5.20.1): + mode-watcher@0.5.0(svelte@5.34.3): dependencies: - svelte: 5.20.1 + svelte: 5.34.3 mri@1.2.0: {} @@ -6214,7 +7533,49 @@ snapshots: nwsapi@2.2.16: {} - ohash@1.1.4: {} + object-assign@4.1.1: {} + + object-inspect@1.13.4: {} + + object-keys@1.1.1: {} + + object.assign@4.1.7: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + has-symbols: 1.1.0 + object-keys: 1.1.1 + + object.entries@1.1.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + object.fromentries@2.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-object-atoms: 1.1.1 + + object.groupby@1.0.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + + object.values@1.2.1: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + ohash@1.1.6: {} once@1.4.0: dependencies: @@ -6243,6 +7604,12 @@ snapshots: outdent@0.5.0: {} + own-keys@1.0.1: + dependencies: + get-intrinsic: 1.3.0 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + p-filter@2.1.0: dependencies: p-map: 2.1.0 @@ -6300,6 +7667,8 @@ snapshots: path-exists@4.0.0: {} + path-is-absolute@1.0.1: {} + path-key@3.1.1: {} path-key@4.0.0: {} @@ -6314,11 +7683,11 @@ snapshots: pathval@1.1.1: {} - phosphor-svelte@3.0.1(svelte@5.20.1)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)): + phosphor-svelte@3.0.1(svelte@5.34.3)(vite@5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0)): dependencies: estree-walker: 3.0.3 magic-string: 0.30.17 - svelte: 5.20.1 + svelte: 5.34.3 optionalDependencies: vite: 5.4.11(@types/node@22.10.2)(lightningcss@1.28.2)(terser@5.37.0) @@ -6334,6 +7703,8 @@ snapshots: mlly: 1.7.3 pathe: 1.1.2 + possible-typed-array-names@1.1.0: {} + postcss-load-config@3.1.4(postcss@8.4.49): dependencies: lilconfig: 2.1.0 @@ -6341,7 +7712,7 @@ snapshots: optionalDependencies: postcss: 8.4.49 - postcss-safe-parser@6.0.0(postcss@8.4.49): + postcss-safe-parser@7.0.1(postcss@8.4.49): dependencies: postcss: 8.4.49 @@ -6349,7 +7720,7 @@ snapshots: dependencies: postcss: 8.4.49 - postcss-selector-parser@6.1.2: + postcss-selector-parser@7.1.0: dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 @@ -6362,16 +7733,20 @@ snapshots: prelude-ls@1.2.1: {} - prettier-plugin-svelte@3.3.2(prettier@3.4.2)(svelte@5.14.4): + prettier-linter-helpers@1.0.0: + dependencies: + fast-diff: 1.3.0 + + prettier-plugin-svelte@3.3.2(prettier@3.4.2)(svelte@5.34.3): dependencies: prettier: 3.4.2 - svelte: 5.14.4 + svelte: 5.34.3 - prettier-plugin-tailwindcss@0.6.9(prettier-plugin-svelte@3.3.2(prettier@3.4.2)(svelte@5.14.4))(prettier@3.4.2): + prettier-plugin-tailwindcss@0.6.9(prettier-plugin-svelte@3.3.2(prettier@3.4.2)(svelte@5.34.3))(prettier@3.4.2): dependencies: prettier: 3.4.2 optionalDependencies: - prettier-plugin-svelte: 3.3.2(prettier@3.4.2)(svelte@5.14.4) + prettier-plugin-svelte: 3.3.2(prettier@3.4.2)(svelte@5.34.3) prettier@2.8.8: {} @@ -6391,6 +7766,12 @@ snapshots: printable-characters@1.0.42: {} + prop-types@15.8.1: + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + property-information@6.5.0: {} psl@1.15.0: @@ -6409,10 +7790,17 @@ snapshots: queue-microtask@1.2.3: {} + react-is@16.13.1: {} + react-is@17.0.2: {} react-is@18.3.1: {} + react@17.0.2: + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + read-yaml-file@1.1.0: dependencies: graceful-fs: 4.2.11 @@ -6457,6 +7845,17 @@ snapshots: indent-string: 4.0.0 strip-indent: 3.0.0 + reflect.getprototypeof@1.0.10: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 + regenerator-runtime@0.14.1: {} regex-recursion@4.3.0: @@ -6469,6 +7868,15 @@ snapshots: dependencies: regex-utilities: 2.3.0 + regexp.prototype.flags@1.5.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 + set-function-name: 2.0.2 + regexparam@3.0.0: {} rehype-autolink-headings@7.1.0: @@ -6575,6 +7983,12 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + resolve@2.0.0-next.5: + dependencies: + is-core-module: 2.16.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + reusify@1.0.4: {} rollup-plugin-inject@3.0.2: @@ -6622,20 +8036,44 @@ snapshots: dependencies: queue-microtask: 1.2.3 - runed@0.15.4(svelte@5.20.1): + runed@0.15.4(svelte@5.34.3): dependencies: esm-env: 1.2.2 - svelte: 5.20.1 + svelte: 5.34.3 - runed@0.23.4(svelte@5.20.2): + runed@0.23.4(svelte@5.34.3): dependencies: esm-env: 1.2.2 - svelte: 5.20.2 + svelte: 5.34.3 + + runed@0.28.0(svelte@5.34.3): + dependencies: + esm-env: 1.2.2 + svelte: 5.34.3 sade@1.8.1: dependencies: mri: 1.2.0 + safe-array-concat@1.1.3: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + has-symbols: 1.1.0 + isarray: 2.0.5 + + safe-push-apply@1.0.0: + dependencies: + es-errors: 1.3.0 + isarray: 2.0.5 + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-regex: 1.2.1 + safer-buffer@2.1.2: {} saxes@6.0.0: @@ -6647,10 +8085,34 @@ snapshots: '@types/node-forge': 1.3.11 node-forge: 1.3.1 + semver@6.3.1: {} + semver@7.6.3: {} set-cookie-parser@2.7.1: {} + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + set-function-name@2.0.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + + set-proto@1.0.0: + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + sharp@0.33.5: dependencies: color: 4.2.3 @@ -6692,6 +8154,34 @@ snapshots: '@shikijs/vscode-textmate': 9.3.1 '@types/hast': 3.0.4 + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + siginfo@2.0.0: {} signal-exit@4.1.0: {} @@ -6739,8 +8229,63 @@ snapshots: std-env@3.8.0: {} + stop-iteration-iterator@1.1.0: + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + stoppable@1.1.0: {} + string.prototype.includes@2.0.1: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.0 + + string.prototype.matchall@4.0.12: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + regexp.prototype.flags: 1.5.4 + set-function-name: 2.0.2 + side-channel: 1.1.0 + + string.prototype.repeat@1.0.0: + dependencies: + define-properties: 1.2.1 + es-abstract: 1.24.0 + + string.prototype.trim@1.2.10: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-data-property: 1.1.4 + define-properties: 1.2.1 + es-abstract: 1.24.0 + es-object-atoms: 1.1.1 + has-property-descriptors: 1.0.2 + + string.prototype.trimend@1.0.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + string.prototype.trimstart@1.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + stringify-entities@4.0.4: dependencies: character-entities-html4: 2.1.0 @@ -6778,31 +8323,31 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - svelte-check@4.1.4(svelte@5.20.1)(typescript@5.7.2): + svelte-check@4.1.4(svelte@5.34.3)(typescript@5.7.2): dependencies: '@jridgewell/trace-mapping': 0.3.25 chokidar: 4.0.2 fdir: 6.4.2 picocolors: 1.1.1 sade: 1.8.1 - svelte: 5.20.1 + svelte: 5.34.3 typescript: 5.7.2 transitivePeerDependencies: - picomatch - svelte-check@4.1.4(svelte@5.20.2)(typescript@5.7.2): + svelte-check@4.2.1(svelte@5.34.3)(typescript@5.8.3): dependencies: '@jridgewell/trace-mapping': 0.3.25 - chokidar: 4.0.2 + chokidar: 4.0.3 fdir: 6.4.2 picocolors: 1.1.1 sade: 1.8.1 - svelte: 5.20.2 - typescript: 5.7.2 + svelte: 5.34.3 + typescript: 5.8.3 transitivePeerDependencies: - picomatch - svelte-eslint-parser@0.43.0(svelte@5.14.4): + svelte-eslint-parser@0.43.0(svelte@5.34.3): dependencies: eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 @@ -6810,73 +8355,51 @@ snapshots: postcss: 8.4.49 postcss-scss: 4.0.9(postcss@8.4.49) optionalDependencies: - svelte: 5.14.4 + svelte: 5.34.3 + + svelte-eslint-parser@1.2.0(svelte@5.34.3): + dependencies: + eslint-scope: 8.2.0 + eslint-visitor-keys: 4.2.0 + espree: 10.3.0 + postcss: 8.4.49 + postcss-scss: 4.0.9(postcss@8.4.49) + postcss-selector-parser: 7.1.0 + optionalDependencies: + svelte: 5.34.3 - svelte-toolbelt@0.4.6(svelte@5.20.1): + svelte-toolbelt@0.4.6(svelte@5.34.3): dependencies: clsx: 2.1.1 style-to-object: 1.0.8 - svelte: 5.20.1 + svelte: 5.34.3 - svelte-toolbelt@0.7.1(svelte@5.20.2): + svelte-toolbelt@0.9.2(svelte@5.34.3): dependencies: clsx: 2.1.1 - runed: 0.23.4(svelte@5.20.2) + runed: 0.28.0(svelte@5.34.3) style-to-object: 1.0.8 - svelte: 5.20.2 + svelte: 5.34.3 - svelte2tsx@0.7.34(svelte@5.20.2)(typescript@5.7.2): + svelte2tsx@0.7.34(svelte@5.34.3)(typescript@5.8.3): dependencies: dedent-js: 1.0.1 pascal-case: 3.1.2 - svelte: 5.20.2 - typescript: 5.7.2 - - svelte@5.14.4: - dependencies: - '@ampproject/remapping': 2.3.0 - '@jridgewell/sourcemap-codec': 1.5.0 - '@types/estree': 1.0.6 - acorn: 8.14.0 - acorn-typescript: 1.4.13(acorn@8.14.0) - aria-query: 5.3.2 - axobject-query: 4.1.0 - esm-env: 1.2.1 - esrap: 1.3.1 - is-reference: 3.0.3 - locate-character: 3.0.0 - magic-string: 0.30.17 - zimmerframe: 1.1.2 - - svelte@5.20.1: - dependencies: - '@ampproject/remapping': 2.3.0 - '@jridgewell/sourcemap-codec': 1.5.0 - '@types/estree': 1.0.6 - acorn: 8.14.0 - acorn-typescript: 1.4.13(acorn@8.14.0) - aria-query: 5.3.2 - axobject-query: 4.1.0 - clsx: 2.1.1 - esm-env: 1.2.1 - esrap: 1.4.4 - is-reference: 3.0.3 - locate-character: 3.0.0 - magic-string: 0.30.17 - zimmerframe: 1.1.2 + svelte: 5.34.3 + typescript: 5.8.3 - svelte@5.20.2: + svelte@5.34.3: dependencies: '@ampproject/remapping': 2.3.0 '@jridgewell/sourcemap-codec': 1.5.0 + '@sveltejs/acorn-typescript': 1.0.5(acorn@8.14.0) '@types/estree': 1.0.6 acorn: 8.14.0 - acorn-typescript: 1.4.13(acorn@8.14.0) aria-query: 5.3.2 axobject-query: 4.1.0 clsx: 2.1.1 esm-env: 1.2.2 - esrap: 1.4.4 + esrap: 1.4.9 is-reference: 3.0.3 locate-character: 3.0.0 magic-string: 0.30.17 @@ -6941,31 +8464,105 @@ snapshots: trough@2.2.0: {} - ts-api-utils@1.4.3(typescript@5.7.2): + ts-api-utils@1.4.3(typescript@5.8.3): dependencies: - typescript: 5.7.2 + typescript: 5.8.3 + + tsconfig-paths@3.15.0: + dependencies: + '@types/json5': 0.0.29 + json5: 1.0.2 + minimist: 1.2.8 + strip-bom: 3.0.0 + + tseslint@0.0.2(pek4mubi6kpl6cmzata5tagiea): + dependencies: + '@typescript-eslint/eslint-plugin': 8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) + eslint: 9.17.0(jiti@2.4.2) + eslint-config-airbnb-typescript: 12.3.1(eslint-plugin-import@2.31.0)(eslint-plugin-jsx-a11y@6.10.2(eslint@9.17.0(jiti@2.4.2)))(eslint-plugin-react-hooks@4.6.2(eslint@9.17.0(jiti@2.4.2)))(eslint-plugin-react@7.37.5(eslint@9.17.0(jiti@2.4.2)))(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) + eslint-config-prettier: 10.1.5(eslint@9.17.0(jiti@2.4.2)) + eslint-import-resolver-typescript: 2.7.1(eslint-plugin-import@2.31.0)(eslint@9.17.0(jiti@2.4.2)) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-typescript@2.7.1)(eslint@9.17.0(jiti@2.4.2)) + eslint-plugin-jsx-a11y: 6.10.2(eslint@9.17.0(jiti@2.4.2)) + eslint-plugin-prettier: 3.4.1(eslint-config-prettier@10.1.5(eslint@9.17.0(jiti@2.4.2)))(eslint@9.17.0(jiti@2.4.2))(prettier@3.4.2) + eslint-plugin-react: 7.37.5(eslint@9.17.0(jiti@2.4.2)) + eslint-plugin-react-hooks: 4.6.2(eslint@9.17.0(jiti@2.4.2)) + prettier: 3.4.2 + react: 17.0.2 + optionalDependencies: + typescript: 5.8.3 + + tslib@1.14.1: {} tslib@2.8.1: {} + tsutils@3.21.0(typescript@5.8.3): + dependencies: + tslib: 1.14.1 + typescript: 5.8.3 + type-check@0.4.0: dependencies: prelude-ls: 1.2.1 type-detect@4.1.0: {} - typescript-eslint@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2): + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typed-array-byte-length@1.0.3: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + + typed-array-byte-offset@1.0.4: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 + + typed-array-length@1.0.7: dependencies: - '@typescript-eslint/eslint-plugin': 8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) - '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) - '@typescript-eslint/utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + is-typed-array: 1.1.15 + possible-typed-array-names: 1.1.0 + reflect.getprototypeof: 1.0.10 + + typescript-eslint@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3): + dependencies: + '@typescript-eslint/eslint-plugin': 8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.8.3) eslint: 9.17.0(jiti@2.4.2) - typescript: 5.7.2 + typescript: 5.8.3 transitivePeerDependencies: - supports-color typescript@5.7.2: {} - ufo@1.5.4: {} + typescript@5.8.3: {} + + ufo@1.6.1: {} + + unbox-primitive@1.1.0: + dependencies: + call-bound: 1.0.4 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 undici-types@6.19.8: {} @@ -6978,9 +8575,9 @@ snapshots: unenv-nightly@2.0.0-20241204-140205-a5d5190: dependencies: defu: 6.1.4 - ohash: 1.1.4 + ohash: 1.1.6 pathe: 1.1.2 - ufo: 1.5.4 + ufo: 1.6.1 unified@11.0.5: dependencies: @@ -7168,6 +8765,47 @@ snapshots: tr46: 0.0.3 webidl-conversions: 3.0.1 + which-boxed-primitive@1.1.1: + dependencies: + is-bigint: 1.1.0 + is-boolean-object: 1.2.2 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + + which-builtin-type@1.2.1: + dependencies: + call-bound: 1.0.4 + function.prototype.name: 1.1.8 + has-tostringtag: 1.0.2 + is-async-function: 2.1.1 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.0 + is-regex: 1.2.1 + is-weakref: 1.1.1 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.19 + + which-collection@1.0.2: + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.4 + + which-typed-array@1.1.19: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + which@2.0.2: dependencies: isexe: 2.0.0