+
@@ -22,8 +48,41 @@ const viewerStore = useViewerStore()
v-for="(id, index) in 6"
:key="id"
:index="index"
+ class="h-14 w-10 sm:h-16 sm:w-12 text-lg sm:text-xl"
/>
+
+
+
+
+
+
+
+
+
+
+
-
\ No newline at end of file
+
diff --git a/app/components/app/EditPresetDialog.vue b/app/components/app/EditPresetDialog.vue
new file mode 100644
index 0000000..b470e3e
--- /dev/null
+++ b/app/components/app/EditPresetDialog.vue
@@ -0,0 +1,54 @@
+
+
+
+
+
diff --git a/app/components/app/PresetForm.vue b/app/components/app/PresetForm.vue
new file mode 100644
index 0000000..8cb6131
--- /dev/null
+++ b/app/components/app/PresetForm.vue
@@ -0,0 +1,172 @@
+
+
+
+
+ Ice Servers (JSON)
+
+
+
+
+
+
+
+
+
+
+ Set as default preset
+
+
+ This preset will be selected by default on the preset selector.
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/components/app/PresetSelect.vue b/app/components/app/PresetSelect.vue
new file mode 100644
index 0000000..2c7bc1f
--- /dev/null
+++ b/app/components/app/PresetSelect.vue
@@ -0,0 +1,108 @@
+
+
+
+
+
diff --git a/app/components/app/SignInDialog.vue b/app/components/app/SignInDialog.vue
new file mode 100644
index 0000000..5f3c98c
--- /dev/null
+++ b/app/components/app/SignInDialog.vue
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/ThemeDropdown.vue b/app/components/ui/ThemeDropdown.vue
index 0cf623c..77e98b0 100644
--- a/app/components/ui/ThemeDropdown.vue
+++ b/app/components/ui/ThemeDropdown.vue
@@ -7,12 +7,14 @@ const colorMode = useColorMode()
-
+
-
@@ -29,4 +31,4 @@ const colorMode = useColorMode()
-
\ No newline at end of file
+
diff --git a/app/components/ui/badge/Badge.vue b/app/components/ui/badge/Badge.vue
new file mode 100644
index 0000000..d894dfe
--- /dev/null
+++ b/app/components/ui/badge/Badge.vue
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/badge/index.ts b/app/components/ui/badge/index.ts
new file mode 100644
index 0000000..bbc0dfa
--- /dev/null
+++ b/app/components/ui/badge/index.ts
@@ -0,0 +1,26 @@
+import type { VariantProps } from "class-variance-authority"
+import { cva } from "class-variance-authority"
+
+export { default as Badge } from "./Badge.vue"
+
+export const badgeVariants = cva(
+ "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
+ {
+ variants: {
+ variant: {
+ default:
+ "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
+ secondary:
+ "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
+ destructive:
+ "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
+ outline:
+ "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",
+ },
+ },
+ defaultVariants: {
+ variant: "default",
+ },
+ },
+)
+export type BadgeVariants = VariantProps
diff --git a/app/components/ui/card/Card.vue b/app/components/ui/card/Card.vue
new file mode 100644
index 0000000..f5a0707
--- /dev/null
+++ b/app/components/ui/card/Card.vue
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/card/CardAction.vue b/app/components/ui/card/CardAction.vue
new file mode 100644
index 0000000..c91638b
--- /dev/null
+++ b/app/components/ui/card/CardAction.vue
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/card/CardContent.vue b/app/components/ui/card/CardContent.vue
new file mode 100644
index 0000000..dfbc552
--- /dev/null
+++ b/app/components/ui/card/CardContent.vue
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/card/CardDescription.vue b/app/components/ui/card/CardDescription.vue
new file mode 100644
index 0000000..71c1b8d
--- /dev/null
+++ b/app/components/ui/card/CardDescription.vue
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/card/CardFooter.vue b/app/components/ui/card/CardFooter.vue
new file mode 100644
index 0000000..9e3739e
--- /dev/null
+++ b/app/components/ui/card/CardFooter.vue
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/card/CardHeader.vue b/app/components/ui/card/CardHeader.vue
new file mode 100644
index 0000000..4fe4da4
--- /dev/null
+++ b/app/components/ui/card/CardHeader.vue
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/card/CardTitle.vue b/app/components/ui/card/CardTitle.vue
new file mode 100644
index 0000000..5f479e7
--- /dev/null
+++ b/app/components/ui/card/CardTitle.vue
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/card/index.ts b/app/components/ui/card/index.ts
new file mode 100644
index 0000000..1627758
--- /dev/null
+++ b/app/components/ui/card/index.ts
@@ -0,0 +1,7 @@
+export { default as Card } from "./Card.vue"
+export { default as CardAction } from "./CardAction.vue"
+export { default as CardContent } from "./CardContent.vue"
+export { default as CardDescription } from "./CardDescription.vue"
+export { default as CardFooter } from "./CardFooter.vue"
+export { default as CardHeader } from "./CardHeader.vue"
+export { default as CardTitle } from "./CardTitle.vue"
diff --git a/app/components/ui/dialog/Dialog.vue b/app/components/ui/dialog/Dialog.vue
new file mode 100644
index 0000000..ade5260
--- /dev/null
+++ b/app/components/ui/dialog/Dialog.vue
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/dialog/DialogClose.vue b/app/components/ui/dialog/DialogClose.vue
new file mode 100644
index 0000000..c5fae04
--- /dev/null
+++ b/app/components/ui/dialog/DialogClose.vue
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/dialog/DialogContent.vue b/app/components/ui/dialog/DialogContent.vue
new file mode 100644
index 0000000..7f86b47
--- /dev/null
+++ b/app/components/ui/dialog/DialogContent.vue
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+ Close
+
+
+
+
diff --git a/app/components/ui/dialog/DialogDescription.vue b/app/components/ui/dialog/DialogDescription.vue
new file mode 100644
index 0000000..f52e655
--- /dev/null
+++ b/app/components/ui/dialog/DialogDescription.vue
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/dialog/DialogFooter.vue b/app/components/ui/dialog/DialogFooter.vue
new file mode 100644
index 0000000..0a936e6
--- /dev/null
+++ b/app/components/ui/dialog/DialogFooter.vue
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/dialog/DialogHeader.vue b/app/components/ui/dialog/DialogHeader.vue
new file mode 100644
index 0000000..bfc3c64
--- /dev/null
+++ b/app/components/ui/dialog/DialogHeader.vue
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/dialog/DialogOverlay.vue b/app/components/ui/dialog/DialogOverlay.vue
new file mode 100644
index 0000000..7790077
--- /dev/null
+++ b/app/components/ui/dialog/DialogOverlay.vue
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/dialog/DialogScrollContent.vue b/app/components/ui/dialog/DialogScrollContent.vue
new file mode 100644
index 0000000..f2475db
--- /dev/null
+++ b/app/components/ui/dialog/DialogScrollContent.vue
@@ -0,0 +1,59 @@
+
+
+
+
+
+ {
+ const originalEvent = event.detail.originalEvent;
+ const target = originalEvent.target as HTMLElement;
+ if (originalEvent.offsetX > target.clientWidth || originalEvent.offsetY > target.clientHeight) {
+ event.preventDefault();
+ }
+ }"
+ >
+
+
+
+
+ Close
+
+
+
+
+
diff --git a/app/components/ui/dialog/DialogTitle.vue b/app/components/ui/dialog/DialogTitle.vue
new file mode 100644
index 0000000..860f01a
--- /dev/null
+++ b/app/components/ui/dialog/DialogTitle.vue
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/dialog/DialogTrigger.vue b/app/components/ui/dialog/DialogTrigger.vue
new file mode 100644
index 0000000..49667e9
--- /dev/null
+++ b/app/components/ui/dialog/DialogTrigger.vue
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/dialog/index.ts b/app/components/ui/dialog/index.ts
new file mode 100644
index 0000000..6768b09
--- /dev/null
+++ b/app/components/ui/dialog/index.ts
@@ -0,0 +1,10 @@
+export { default as Dialog } from "./Dialog.vue"
+export { default as DialogClose } from "./DialogClose.vue"
+export { default as DialogContent } from "./DialogContent.vue"
+export { default as DialogDescription } from "./DialogDescription.vue"
+export { default as DialogFooter } from "./DialogFooter.vue"
+export { default as DialogHeader } from "./DialogHeader.vue"
+export { default as DialogOverlay } from "./DialogOverlay.vue"
+export { default as DialogScrollContent } from "./DialogScrollContent.vue"
+export { default as DialogTitle } from "./DialogTitle.vue"
+export { default as DialogTrigger } from "./DialogTrigger.vue"
diff --git a/app/components/ui/field/Field.vue b/app/components/ui/field/Field.vue
new file mode 100644
index 0000000..5519d37
--- /dev/null
+++ b/app/components/ui/field/Field.vue
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/field/FieldContent.vue b/app/components/ui/field/FieldContent.vue
new file mode 100644
index 0000000..d9a23fd
--- /dev/null
+++ b/app/components/ui/field/FieldContent.vue
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/field/FieldDescription.vue b/app/components/ui/field/FieldDescription.vue
new file mode 100644
index 0000000..7240a83
--- /dev/null
+++ b/app/components/ui/field/FieldDescription.vue
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/field/FieldError.vue b/app/components/ui/field/FieldError.vue
new file mode 100644
index 0000000..8a0a63f
--- /dev/null
+++ b/app/components/ui/field/FieldError.vue
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+ {{ content }}
+
+
+
+
+
diff --git a/app/components/ui/field/FieldGroup.vue b/app/components/ui/field/FieldGroup.vue
new file mode 100644
index 0000000..834d8ce
--- /dev/null
+++ b/app/components/ui/field/FieldGroup.vue
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/field/FieldLabel.vue b/app/components/ui/field/FieldLabel.vue
new file mode 100644
index 0000000..ce6c498
--- /dev/null
+++ b/app/components/ui/field/FieldLabel.vue
@@ -0,0 +1,23 @@
+
+
+
+
+
diff --git a/app/components/ui/field/FieldLegend.vue b/app/components/ui/field/FieldLegend.vue
new file mode 100644
index 0000000..c620fed
--- /dev/null
+++ b/app/components/ui/field/FieldLegend.vue
@@ -0,0 +1,24 @@
+
+
+
+
+
diff --git a/app/components/ui/field/FieldSeparator.vue b/app/components/ui/field/FieldSeparator.vue
new file mode 100644
index 0000000..97d0efa
--- /dev/null
+++ b/app/components/ui/field/FieldSeparator.vue
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/app/components/ui/field/FieldSet.vue b/app/components/ui/field/FieldSet.vue
new file mode 100644
index 0000000..7be4dc9
--- /dev/null
+++ b/app/components/ui/field/FieldSet.vue
@@ -0,0 +1,21 @@
+
+
+
+
+
diff --git a/app/components/ui/field/FieldTitle.vue b/app/components/ui/field/FieldTitle.vue
new file mode 100644
index 0000000..f564b8b
--- /dev/null
+++ b/app/components/ui/field/FieldTitle.vue
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/field/index.ts b/app/components/ui/field/index.ts
new file mode 100644
index 0000000..162ba14
--- /dev/null
+++ b/app/components/ui/field/index.ts
@@ -0,0 +1,39 @@
+import type { VariantProps } from "class-variance-authority"
+import { cva } from "class-variance-authority"
+
+export const fieldVariants = cva(
+ "group/field flex w-full gap-3 data-[invalid=true]:text-destructive",
+ {
+ variants: {
+ orientation: {
+ vertical: ["flex-col [&>*]:w-full [&>.sr-only]:w-auto"],
+ horizontal: [
+ "flex-row items-center",
+ "[&>[data-slot=field-label]]:flex-auto",
+ "has-[>[data-slot=field-content]]:items-start has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px",
+ ],
+ responsive: [
+ "flex-col [&>*]:w-full [&>.sr-only]:w-auto @md/field-group:flex-row @md/field-group:items-center @md/field-group:[&>*]:w-auto",
+ "@md/field-group:[&>[data-slot=field-label]]:flex-auto",
+ "@md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px",
+ ],
+ },
+ },
+ defaultVariants: {
+ orientation: "vertical",
+ },
+ },
+)
+
+export type FieldVariants = VariantProps
+
+export { default as Field } from "./Field.vue"
+export { default as FieldContent } from "./FieldContent.vue"
+export { default as FieldDescription } from "./FieldDescription.vue"
+export { default as FieldError } from "./FieldError.vue"
+export { default as FieldGroup } from "./FieldGroup.vue"
+export { default as FieldLabel } from "./FieldLabel.vue"
+export { default as FieldLegend } from "./FieldLegend.vue"
+export { default as FieldSeparator } from "./FieldSeparator.vue"
+export { default as FieldSet } from "./FieldSet.vue"
+export { default as FieldTitle } from "./FieldTitle.vue"
diff --git a/app/components/ui/input/Input.vue b/app/components/ui/input/Input.vue
new file mode 100644
index 0000000..e5135c1
--- /dev/null
+++ b/app/components/ui/input/Input.vue
@@ -0,0 +1,33 @@
+
+
+
+
+
diff --git a/app/components/ui/input/index.ts b/app/components/ui/input/index.ts
new file mode 100644
index 0000000..9976b86
--- /dev/null
+++ b/app/components/ui/input/index.ts
@@ -0,0 +1 @@
+export { default as Input } from "./Input.vue"
diff --git a/app/components/ui/label/Label.vue b/app/components/ui/label/Label.vue
new file mode 100644
index 0000000..ee63970
--- /dev/null
+++ b/app/components/ui/label/Label.vue
@@ -0,0 +1,26 @@
+
+
+
+
+
diff --git a/app/components/ui/label/index.ts b/app/components/ui/label/index.ts
new file mode 100644
index 0000000..036e35c
--- /dev/null
+++ b/app/components/ui/label/index.ts
@@ -0,0 +1 @@
+export { default as Label } from "./Label.vue"
diff --git a/app/components/ui/select/Select.vue b/app/components/ui/select/Select.vue
new file mode 100644
index 0000000..c94bbe8
--- /dev/null
+++ b/app/components/ui/select/Select.vue
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/select/SelectContent.vue b/app/components/ui/select/SelectContent.vue
new file mode 100644
index 0000000..adf04ec
--- /dev/null
+++ b/app/components/ui/select/SelectContent.vue
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/components/ui/select/SelectGroup.vue b/app/components/ui/select/SelectGroup.vue
new file mode 100644
index 0000000..e981c6c
--- /dev/null
+++ b/app/components/ui/select/SelectGroup.vue
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/select/SelectItem.vue b/app/components/ui/select/SelectItem.vue
new file mode 100644
index 0000000..9371764
--- /dev/null
+++ b/app/components/ui/select/SelectItem.vue
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/components/ui/select/SelectItemText.vue b/app/components/ui/select/SelectItemText.vue
new file mode 100644
index 0000000..b6700b1
--- /dev/null
+++ b/app/components/ui/select/SelectItemText.vue
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/select/SelectLabel.vue b/app/components/ui/select/SelectLabel.vue
new file mode 100644
index 0000000..5b6650c
--- /dev/null
+++ b/app/components/ui/select/SelectLabel.vue
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/select/SelectScrollDownButton.vue b/app/components/ui/select/SelectScrollDownButton.vue
new file mode 100644
index 0000000..7dc7670
--- /dev/null
+++ b/app/components/ui/select/SelectScrollDownButton.vue
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
diff --git a/app/components/ui/select/SelectScrollUpButton.vue b/app/components/ui/select/SelectScrollUpButton.vue
new file mode 100644
index 0000000..07fe87e
--- /dev/null
+++ b/app/components/ui/select/SelectScrollUpButton.vue
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
diff --git a/app/components/ui/select/SelectSeparator.vue b/app/components/ui/select/SelectSeparator.vue
new file mode 100644
index 0000000..4b5c885
--- /dev/null
+++ b/app/components/ui/select/SelectSeparator.vue
@@ -0,0 +1,19 @@
+
+
+
+
+
diff --git a/app/components/ui/select/SelectTrigger.vue b/app/components/ui/select/SelectTrigger.vue
new file mode 100644
index 0000000..667908b
--- /dev/null
+++ b/app/components/ui/select/SelectTrigger.vue
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/app/components/ui/select/SelectValue.vue b/app/components/ui/select/SelectValue.vue
new file mode 100644
index 0000000..d5ce58b
--- /dev/null
+++ b/app/components/ui/select/SelectValue.vue
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
diff --git a/app/components/ui/select/index.ts b/app/components/ui/select/index.ts
new file mode 100644
index 0000000..96eae60
--- /dev/null
+++ b/app/components/ui/select/index.ts
@@ -0,0 +1,11 @@
+export { default as Select } from "./Select.vue"
+export { default as SelectContent } from "./SelectContent.vue"
+export { default as SelectGroup } from "./SelectGroup.vue"
+export { default as SelectItem } from "./SelectItem.vue"
+export { default as SelectItemText } from "./SelectItemText.vue"
+export { default as SelectLabel } from "./SelectLabel.vue"
+export { default as SelectScrollDownButton } from "./SelectScrollDownButton.vue"
+export { default as SelectScrollUpButton } from "./SelectScrollUpButton.vue"
+export { default as SelectSeparator } from "./SelectSeparator.vue"
+export { default as SelectTrigger } from "./SelectTrigger.vue"
+export { default as SelectValue } from "./SelectValue.vue"
diff --git a/app/components/ui/separator/Separator.vue b/app/components/ui/separator/Separator.vue
new file mode 100644
index 0000000..78d60ec
--- /dev/null
+++ b/app/components/ui/separator/Separator.vue
@@ -0,0 +1,29 @@
+
+
+
+
+
diff --git a/app/components/ui/separator/index.ts b/app/components/ui/separator/index.ts
new file mode 100644
index 0000000..4407287
--- /dev/null
+++ b/app/components/ui/separator/index.ts
@@ -0,0 +1 @@
+export { default as Separator } from "./Separator.vue"
diff --git a/app/components/ui/sonner/Sonner.vue b/app/components/ui/sonner/Sonner.vue
index 1c70dca..6830896 100644
--- a/app/components/ui/sonner/Sonner.vue
+++ b/app/components/ui/sonner/Sonner.vue
@@ -1,19 +1,42 @@
+ v-bind="props"
+ >
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/components/ui/spinner/Spinner.vue b/app/components/ui/spinner/Spinner.vue
new file mode 100644
index 0000000..57cd1a9
--- /dev/null
+++ b/app/components/ui/spinner/Spinner.vue
@@ -0,0 +1,17 @@
+
+
+
+
+
diff --git a/app/components/ui/spinner/index.ts b/app/components/ui/spinner/index.ts
new file mode 100644
index 0000000..aa63007
--- /dev/null
+++ b/app/components/ui/spinner/index.ts
@@ -0,0 +1 @@
+export { default as Spinner } from "./Spinner.vue"
diff --git a/app/components/ui/switch/Switch.vue b/app/components/ui/switch/Switch.vue
new file mode 100644
index 0000000..2e725ed
--- /dev/null
+++ b/app/components/ui/switch/Switch.vue
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
diff --git a/app/components/ui/switch/index.ts b/app/components/ui/switch/index.ts
new file mode 100644
index 0000000..cc081f3
--- /dev/null
+++ b/app/components/ui/switch/index.ts
@@ -0,0 +1 @@
+export { default as Switch } from "./Switch.vue"
diff --git a/app/layouts/default.vue b/app/layouts/default.vue
index 1d54525..5373295 100644
--- a/app/layouts/default.vue
+++ b/app/layouts/default.vue
@@ -1,11 +1,58 @@
diff --git a/app/lib/db/index.ts b/app/lib/db/index.ts
index f927c89..c4c5c5a 100644
--- a/app/lib/db/index.ts
+++ b/app/lib/db/index.ts
@@ -1,5 +1,4 @@
-import { drizzle } from 'drizzle-orm/neon-http';
-import * as schema from './schema';
+import { drizzle } from "drizzle-orm/neon-http";
+import * as schema from "./schema";
export const db = drizzle(process.env.DATABASE_URL!, { schema });
-
diff --git a/app/lib/db/migrate.ts b/app/lib/db/migrate.ts
new file mode 100644
index 0000000..2b3968c
--- /dev/null
+++ b/app/lib/db/migrate.ts
@@ -0,0 +1,19 @@
+import { migrate } from "drizzle-orm/neon-http/migrator";
+import { drizzle } from "drizzle-orm/neon-http";
+import * as schema from "./schema";
+
+export async function runMigrations() {
+ if (!process.env.DATABASE_URL) {
+ throw new Error("DATABASE_URL environment variable is not set");
+ }
+
+ try {
+ const db = drizzle(process.env.DATABASE_URL, { schema });
+ console.log("[DB] Running migrations...");
+ await migrate(db, { migrationsFolder: "./drizzle" });
+ console.log("[DB] Migrations completed successfully");
+ } catch (error) {
+ console.error("[DB] Migration failed:", error);
+ throw error;
+ }
+}
diff --git a/app/lib/db/schema.ts b/app/lib/db/schema.ts
index a6e5cce..f6d2c11 100644
--- a/app/lib/db/schema.ts
+++ b/app/lib/db/schema.ts
@@ -1,23 +1,97 @@
-import { pgTable, text, timestamp, uuid } from 'drizzle-orm/pg-core';
+import {
+ boolean,
+ pgTable,
+ text,
+ timestamp,
+ uniqueIndex,
+ uuid,
+} from "drizzle-orm/pg-core";
+import { relations } from "drizzle-orm";
-export const peers = pgTable('peers', {
- id: text('id').primaryKey(),
- lastSeen: timestamp('last_seen').notNull().defaultNow(),
+export const peers = pgTable("peers", {
+ id: text("id").primaryKey(),
+ lastSeen: timestamp("last_seen").notNull().defaultNow(),
});
-export const rooms = pgTable('rooms', {
- id: text('id').primaryKey(),
- broadcaster: text('broadcaster').notNull().references(() => peers.id, { onDelete: 'cascade' }),
- createdAt: timestamp('created_at').notNull().defaultNow(),
-});
-
-export const roomViewers = pgTable('room_viewers', {
- id: uuid('id').primaryKey().defaultRandom(),
- roomId: text('room_id')
+export const rooms = pgTable("rooms", {
+ id: text("id").primaryKey(),
+ broadcaster: text("broadcaster")
.notNull()
- .references(() => rooms.id, { onDelete: 'cascade' }),
- viewerId: text('viewer_id')
- .notNull()
- .references(() => peers.id, { onDelete: 'cascade' }),
- joinedAt: timestamp('joined_at').notNull().defaultNow(),
+ .references(() => peers.id, { onDelete: "cascade" }),
+ createdAt: timestamp("created_at").notNull().defaultNow(),
});
+
+export const roomViewers = pgTable("room_viewers", {
+ id: uuid("id").primaryKey().defaultRandom(),
+ roomId: text("room_id")
+ .notNull()
+ .references(() => rooms.id, { onDelete: "cascade" }),
+ viewerId: text("viewer_id")
+ .notNull()
+ .references(() => peers.id, { onDelete: "cascade" }),
+ joinedAt: timestamp("joined_at").notNull().defaultNow(),
+});
+
+export const presets = pgTable("presets", {
+ id: uuid("id").primaryKey().defaultRandom(),
+ createdBy: text("created_by").notNull(),
+ name: text("name").notNull().unique(),
+ iceServers: text("ice_servers").notNull(), // stringified json obv
+ shareable: boolean("shareable").notNull().default(false),
+ createdAt: timestamp("created_at").notNull().defaultNow(),
+});
+
+export const presetUsers = pgTable(
+ "preset_users",
+ {
+ id: uuid("id").primaryKey().defaultRandom(),
+ presetId: uuid("preset_id")
+ .notNull()
+ .references(() => presets.id, { onDelete: "cascade" }),
+ userId: text("user_id").notNull(),
+ isDefault: boolean("is_default").notNull().default(false),
+ addedAt: timestamp("added_at").notNull().defaultNow(),
+ },
+ (table) => ({
+ uniquePresetUser: uniqueIndex().on(table.presetId, table.userId),
+ }),
+);
+
+// relations
+export const peersRelations = relations(peers, ({ many }) => ({
+ roomsAsbroadcaster: many(rooms, { relationName: "broadcaster" }),
+ roomViewersAsViewer: many(roomViewers, { relationName: "viewer" }),
+}));
+
+export const roomsRelations = relations(rooms, ({ one, many }) => ({
+ broadcasterPeer: one(peers, {
+ fields: [rooms.broadcaster],
+ references: [peers.id],
+ relationName: "broadcaster",
+ }),
+ viewers: many(roomViewers, { relationName: "room" }),
+}));
+
+export const roomViewersRelations = relations(roomViewers, ({ one }) => ({
+ room: one(rooms, {
+ fields: [roomViewers.roomId],
+ references: [rooms.id],
+ relationName: "room",
+ }),
+ viewer: one(peers, {
+ fields: [roomViewers.viewerId],
+ references: [peers.id],
+ relationName: "viewer",
+ }),
+}));
+
+export const presetsRelations = relations(presets, ({ many }) => ({
+ presetUsers: many(presetUsers),
+}));
+
+export const presetUsersRelations = relations(presetUsers, ({ one }) => ({
+ preset: one(presets, {
+ fields: [presetUsers.presetId],
+ references: [presets.id],
+ }),
+}));
diff --git a/app/lib/schema/new-preset.ts b/app/lib/schema/new-preset.ts
new file mode 100644
index 0000000..560aa66
--- /dev/null
+++ b/app/lib/schema/new-preset.ts
@@ -0,0 +1,108 @@
+import { z } from "zod";
+
+export const schema = z.object({
+ name: z
+ .string()
+ .min(3, "Name must be at least 3 characters.")
+ .max(20, "Name must be at most 20 characters."),
+ iceServers: z.string().superRefine((val, ctx) => {
+ // below code is ai generated. i am not writing validation myself istg
+ try {
+ const parsed = JSON.parse(val);
+ if (!Array.isArray(parsed)) {
+ ctx.addIssue({
+ code: "custom",
+ message: "Must be a JSON array",
+ });
+ return;
+ }
+
+ // Validate each ICE server object
+ parsed.forEach((item, index) => {
+ if (typeof item !== "object" || item === null) {
+ ctx.addIssue({
+ code: "custom",
+ message: `Item ${index}: must be an object`,
+ });
+ return;
+ }
+
+ // Validate urls field - can be string or array of strings
+ const { urls } = item;
+ if (!urls) {
+ ctx.addIssue({
+ code: "custom",
+ message: `Item ${index}: 'urls' is required`,
+ });
+ return;
+ }
+
+ const urlsList = Array.isArray(urls) ? urls : [urls];
+
+ if (!Array.isArray(urls) && typeof urls !== "string") {
+ ctx.addIssue({
+ code: "custom",
+ message: `Item ${index}: 'urls' must be a string or array of strings`,
+ });
+ return;
+ }
+
+ // Validate each URL in the urls list
+ urlsList.forEach((url, urlIndex) => {
+ if (typeof url !== "string") {
+ ctx.addIssue({
+ code: "custom",
+ message: `Item ${index}: urls[${urlIndex}] must be a string`,
+ });
+ return;
+ }
+
+ // Validate STUN/TURN URL format (RFC 8829)
+ const isValidStunUrl = /^stuns?:.+/.test(url);
+ const isValidTurnUrl = /^turns?:.+/.test(url);
+
+ if (!isValidStunUrl && !isValidTurnUrl) {
+ ctx.addIssue({
+ code: "custom",
+ message: `Item ${index}: urls[${urlIndex}] must be a valid STUN (stun:) or TURN (turn:/turns:) URL`,
+ });
+ }
+ });
+
+ // Validate optional fields
+ if (item.username !== undefined && typeof item.username !== "string") {
+ ctx.addIssue({
+ code: "custom",
+ message: `Item ${index}: 'username' must be a string`,
+ });
+ }
+
+ if (
+ item.credential !== undefined &&
+ typeof item.credential !== "string"
+ ) {
+ ctx.addIssue({
+ code: "custom",
+ message: `Item ${index}: 'credential' must be a string`,
+ });
+ }
+
+ if (
+ item.credentialType !== undefined &&
+ !["password", "oauth"].includes(item.credentialType)
+ ) {
+ ctx.addIssue({
+ code: "custom",
+ message: `Item ${index}: 'credentialType' must be 'password' or 'oauth'`,
+ });
+ }
+ });
+ } catch (error) {
+ ctx.addIssue({
+ code: "custom",
+ message: "Must be valid JSON",
+ });
+ }
+ }),
+ default: z.boolean(),
+});
diff --git a/app/lib/types/PresetGetResponse.ts b/app/lib/types/PresetGetResponse.ts
new file mode 100644
index 0000000..6109fe0
--- /dev/null
+++ b/app/lib/types/PresetGetResponse.ts
@@ -0,0 +1,29 @@
+import type { getPresetAuthorData } from "~/lib/utils/presetsDb";
+// below types are ai generated
+interface IceServer {
+ urls: string | string[];
+ username?: string;
+ credential?: string;
+}
+interface Preset {
+ id: string;
+ name: string;
+ createdBy: string;
+ iceServers: string | IceServer[]; // Database returns string, we transform to IceServer[]
+ shareable: boolean;
+ createdAt: string;
+}
+export interface PresetUser {
+ id: string;
+ presetId: string;
+ userId: string;
+ isDefault: boolean;
+ addedAt: string;
+ preset: Preset;
+}
+
+export interface ApiResponse {
+ success: boolean;
+ data: PresetUser[];
+ author: Awaited>;
+}
diff --git a/app/lib/types/PresetShareResponse.ts b/app/lib/types/PresetShareResponse.ts
new file mode 100644
index 0000000..007a22f
--- /dev/null
+++ b/app/lib/types/PresetShareResponse.ts
@@ -0,0 +1,28 @@
+interface IceServer {
+ urls: string | string[];
+ username?: string;
+ credential?: string;
+}
+
+export interface Preset {
+ id: string;
+ name: string;
+ createdBy: string;
+ iceServers: string | IceServer[]; // Database returns string, we transform to IceServer[]
+ shareable: boolean;
+ createdAt: string;
+}
+
+export interface PresetAuthor {
+ id: string;
+ fullName: string | null;
+ profileImageUrl: string | null;
+ username: string | null;
+ email: string | null;
+}
+
+export interface PresetShareResponse {
+ success: boolean;
+ data: Preset;
+ author: PresetAuthor;
+}
diff --git a/app/lib/utils/presetsDb.ts b/app/lib/utils/presetsDb.ts
new file mode 100644
index 0000000..cde3e4c
--- /dev/null
+++ b/app/lib/utils/presetsDb.ts
@@ -0,0 +1,165 @@
+import { clerkClient } from "@clerk/nuxt/server";
+import { eq, and } from "drizzle-orm";
+import { db } from "~/lib/db/index";
+import * as schema from "~/lib/db/schema";
+import type { H3Event } from "h3";
+
+export async function getUserPresets(clerkUserId: string) {
+ return await db.query.presetUsers.findMany({
+ where: eq(schema.presetUsers.userId, clerkUserId),
+ with: {
+ preset: true,
+ },
+ });
+}
+
+export async function getPresetById(presetId: string) {
+ return await db.query.presets.findFirst({
+ where: eq(schema.presets.id, presetId),
+ });
+}
+
+export async function userHasPresetAccess(
+ presetId: string,
+ userId: string,
+): Promise {
+ const preset = await getPresetById(presetId);
+ if (!preset) return false;
+
+ if (preset.createdBy === userId) return true;
+
+ const userPreset = await db.query.presetUsers.findFirst({
+ where: and(
+ eq(schema.presetUsers.presetId, presetId),
+ eq(schema.presetUsers.userId, userId),
+ ),
+ });
+
+ return !!userPreset;
+}
+
+export async function createPreset(
+ userId: string,
+ name: string,
+ iceServers: string,
+ isDefault: boolean = false,
+) {
+ const presetCreate = await db
+ .insert(schema.presets)
+ .values({
+ createdBy: userId,
+ name: name,
+ iceServers: iceServers,
+ })
+ .returning({ insertedId: schema.presets.id });
+
+ const insertedId = presetCreate[0]?.insertedId;
+ if (!insertedId) {
+ throw new Error("Failed to get inserted preset ID");
+ }
+
+ await db.insert(schema.presetUsers).values({
+ presetId: insertedId,
+ userId: userId,
+ isDefault: isDefault,
+ });
+
+ return insertedId;
+}
+
+export async function updatePreset(
+ presetId: string,
+ name: string,
+ iceServers: string,
+) {
+ await db
+ .update(schema.presets)
+ .set({
+ name: name,
+ iceServers: iceServers,
+ })
+ .where(eq(schema.presets.id, presetId));
+}
+
+export async function setPresetAsDefault(presetId: string, userId: string) {
+ await db
+ .update(schema.presetUsers)
+ .set({ isDefault: false })
+ .where(eq(schema.presetUsers.userId, userId));
+
+ // set as default
+ await db
+ .update(schema.presetUsers)
+ .set({ isDefault: true })
+ .where(
+ and(
+ eq(schema.presetUsers.presetId, presetId),
+ eq(schema.presetUsers.userId, userId),
+ ),
+ );
+}
+
+export async function unsetPresetAsDefault(presetId: string, userId: string) {
+ await db
+ .update(schema.presetUsers)
+ .set({ isDefault: false })
+ .where(
+ and(
+ eq(schema.presetUsers.presetId, presetId),
+ eq(schema.presetUsers.userId, userId),
+ ),
+ );
+}
+
+export async function updatePresetDefaultStatus(
+ presetId: string,
+ userId: string,
+ isDefault: boolean,
+) {
+ if (isDefault) {
+ await setPresetAsDefault(presetId, userId);
+ } else {
+ await unsetPresetAsDefault(presetId, userId);
+ }
+}
+
+export async function deletePreset(presetId: string) {
+ await db.delete(schema.presets).where(eq(schema.presets.id, presetId));
+}
+
+export async function getOwnedPresets(userId: string) {
+ return await db.query.presets.findMany({
+ where: eq(schema.presets.createdBy, userId),
+ });
+}
+
+export async function ownsPreset(
+ presetId: string,
+ userId: string,
+): Promise {
+ const preset = await getPresetById(presetId);
+ if (!preset) return false;
+ return preset.createdBy === userId;
+}
+
+export async function markAsShareable(presetId: string, shareable: boolean) {
+ await db
+ .update(schema.presets)
+ .set({ shareable })
+ .where(eq(schema.presets.id, presetId));
+}
+
+export async function getPresetAuthorData(event: H3Event, presetId: string) {
+ const preset = await getPresetById(presetId);
+ if (!preset) {
+ throw createError({ statusCode: 404, statusMessage: "Preset not found" });
+ }
+ const user = await clerkClient(event).users.getUser(preset.createdBy);
+ return {
+ id: user.id,
+ fullName: user.fullName,
+ profileImageUrl: user.imageUrl,
+ username: user.username,
+ email: user.primaryEmailAddress?.emailAddress || null,
+ };
+}
diff --git a/app/middleware/auth.global.ts b/app/middleware/auth.global.ts
new file mode 100644
index 0000000..99ac7dc
--- /dev/null
+++ b/app/middleware/auth.global.ts
@@ -0,0 +1,14 @@
+// source: https://clerk.com/docs/guides/secure/protect-pages
+// Define the routes you want to protect with `createRouteMatcher()`
+const isProtectedRoute = createRouteMatcher(["/presets(.*)", "/stream(.*)"]);
+
+export default defineNuxtRouteMiddleware((to) => {
+ // Use the `useAuth()` composable to access the `isSignedIn` property
+ const { isSignedIn } = useAuth();
+
+ // Check if the user is not signed in and is trying to access a protected route
+ // If so, redirect them to the sign-in page
+ if (!isSignedIn.value && isProtectedRoute(to)) {
+ return navigateTo("/sign-in");
+ }
+});
diff --git a/app/pages/index.vue b/app/pages/index.vue
index a6a0c4e..49d7177 100644
--- a/app/pages/index.vue
+++ b/app/pages/index.vue
@@ -1,59 +1,117 @@
+
+
+
+
+
helium
+
effortless screensharing powered by webrtc
+
+
+
+
+
+
+ host instead?
+
+
+
+
+
+
+
+
+
stream ended
+
+ Enter another code
+
+
+
+
+
{{ viewerStore.connectionStatus }}
+
+
+ enter code to join stream
+
+
+
+
+
+
+
+
+
+
+ Disconnect
+
+
+
+
+ Fullscreen
+
+
+
+
+
+
+});
-
-
-
helium
-
effortless screensharing powered by webrtc
-
+function cleanupViewing() {
+ // Close peer connection
+ if (viewerStore.peerConnection) {
+ viewerStore.peerConnection.close();
+ viewerStore.setPeerConnection(null);
+ }
-
-
- {{ viewerStore.connectionStatus }}
-
-
-
+ // Clear video element
+ if (videofeedRef.value) {
+ videofeedRef.value.srcObject = null;
+ }
+
+ // Clear code
+ viewerStore.code = '';
-
host instead?
-
-
-
\ No newline at end of file
+ // Reset connection status
+ viewerStore.setConnectionStatus("disconnected");
+ isConnected.value = false;
+
+ // Exit fullscreen if active
+ if (document.fullscreenElement) {
+ document.exitFullscreen().catch(() => {});
+ }
+}
+
+function toggleFullscreen() {
+ if (!videofeedRef.value) return;
+
+ if (!document.fullscreenElement) {
+ videofeedRef.value.requestFullscreen().catch((err) => {
+ console.error(`Error attempting to enable fullscreen: ${err.message}`);
+ });
+ } else {
+ document.exitFullscreen();
+ }
+}
+
+function handleReset() {
+ viewerStore.resetDisconnected();
+ viewerStore.setConnectionStatus('waiting for a code');
+}
+
+// Cleanup on component unmount
+onBeforeUnmount(() => {
+ cleanupViewing();
+ closeWebSocket();
+});
+
+// Cleanup on window/tab close
+onMounted(() => {
+ const handleBeforeUnload = () => {
+ cleanupViewing();
+ };
+
+ window.addEventListener("beforeunload", handleBeforeUnload);
+
+ onUnmounted(() => {
+ window.removeEventListener("beforeunload", handleBeforeUnload);
+ });
+});
+
\ No newline at end of file
diff --git a/app/pages/presets/index.vue b/app/pages/presets/index.vue
new file mode 100644
index 0000000..a76eb1b
--- /dev/null
+++ b/app/pages/presets/index.vue
@@ -0,0 +1,153 @@
+
+
+
+
Presets
+
+
+ Create New Preset
+
+
+
+
+
+
+
+ {{ presetUser.preset.name }}
+ Default
+
+ Created by {{ presetUser.preset.createdBy }}
+
+
+
+ {{ presetUser.preset.iceServers.length }} ICE Server{{
+ presetUser.preset.iceServers.length === 1 ? "" : "s"
+ }}
+ configured
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/pages/presets/new.vue b/app/pages/presets/new.vue
new file mode 100644
index 0000000..06e03db
--- /dev/null
+++ b/app/pages/presets/new.vue
@@ -0,0 +1,11 @@
+
+
+
+
+
diff --git a/app/pages/presets/shared/[id].vue b/app/pages/presets/shared/[id].vue
new file mode 100644
index 0000000..da98973
--- /dev/null
+++ b/app/pages/presets/shared/[id].vue
@@ -0,0 +1,146 @@
+
+
+
+
+
+
+
+
+
![Profile]()
+
+ {{
+ (response.author?.fullName ||
+ response.author?.username ||
+ response.author?.email ||
+ "?")[0]!.toUpperCase()
+ }}
+
+
+
+ {{ response.author?.fullName || response.author?.username }}
+
+ wants to share a preset with you
+
+
+ {{ response.data.name }}
+
+
+
+
+
+ Created
+
+
+ {{
+ new Date(response.data.createdAt).toLocaleDateString(
+ undefined,
+ { dateStyle: "medium" },
+ )
+ }}
+
+
+
+
+ Servers
+
+
+ {{ parsedIceServers.length }} ICE Servers
+
+
+
+
+
+ Cancel
+
+ {{ isImporting ? "Importing..." : "Import Preset" }}
+
+
+
+
+
+
+
+ This preset cannot be shared
+
+
+ The preset owner has not enabled sharing for this preset.
+
+
Go Back
+
+
+
+
+
diff --git a/app/pages/sign-in/[...slug].vue b/app/pages/sign-in/[...slug].vue
new file mode 100644
index 0000000..ee848ec
--- /dev/null
+++ b/app/pages/sign-in/[...slug].vue
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/app/pages/sign-up/[...slug].vue b/app/pages/sign-up/[...slug].vue
new file mode 100644
index 0000000..1fc2573
--- /dev/null
+++ b/app/pages/sign-up/[...slug].vue
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/app/pages/stream.vue b/app/pages/stream.vue
index 6d3df9a..5ec335d 100644
--- a/app/pages/stream.vue
+++ b/app/pages/stream.vue
@@ -1,130 +1,189 @@
+
+
+
+
{{ streamerStore.code }}
+
+
+
+
+ // Close all peer connections
+ Object.values(streamerStore.peerConnections).forEach((pc) => {
+ pc.close();
+ });
-
-
-
- screenshare
-
-
{{ streamerStore.code }}
-
-
-
+ // Clear peer connections from store
+ streamerStore.clearPeerConnections();
+
+ // Clear video element
+ if (videofeedRef.value) {
+ videofeedRef.value.srcObject = null;
+ }
+
+ // Clear room code
+ streamerStore.setCode("");
+}
+
+// Cleanup on component unmount
+onBeforeUnmount(() => {
+ cleanupStreaming();
+ closeWebSocket();
+});
+
+// Cleanup on window/tab close
+onMounted(() => {
+ const handleBeforeUnload = () => {
+ cleanupStreaming();
+ };
+
+ window.addEventListener("beforeunload", handleBeforeUnload);
+
+ onUnmounted(() => {
+ window.removeEventListener("beforeunload", handleBeforeUnload);
+ });
+});
+
diff --git a/app/state/streamer.ts b/app/state/streamer.ts
index 794abbf..341c14d 100644
--- a/app/state/streamer.ts
+++ b/app/state/streamer.ts
@@ -1,9 +1,10 @@
-import { defineStore} from 'pinia';
+import { defineStore } from "pinia";
-export const useStreamerStore = defineStore('streamer', {
+export const useStreamerStore = defineStore("streamer", {
state: () => ({
- code: '',
+ code: "",
peerConnections: {} as Record,
+ iceServers: [] as RTCIceServer[],
}),
actions: {
setCode(code: string) {
@@ -12,5 +13,15 @@ export const useStreamerStore = defineStore('streamer', {
addPeerConnection(id: string, pc: RTCPeerConnection) {
this.peerConnections[id] = pc;
},
+ removePeerConnection(id: string) {
+ delete this.peerConnections[id];
+ },
+ clearPeerConnections() {
+ this.peerConnections = {};
+ },
+ setIceServers(iceServers: RTCIceServer[]) {
+ this.iceServers = iceServers;
+ },
},
-});
\ No newline at end of file
+});
+
diff --git a/app/state/viewer.ts b/app/state/viewer.ts
index 6aa2b4f..9c85238 100644
--- a/app/state/viewer.ts
+++ b/app/state/viewer.ts
@@ -5,12 +5,13 @@ export const useViewerStore = defineStore('viewer', {
code: '',
peerConnection: null as RTCPeerConnection | null,
connectionStatus: 'waiting for a code',
+ isDisconnected: false,
}),
actions: {
setCode(code: string) {
this.code = code;
},
- setPeerConnection(pc: RTCPeerConnection) {
+ setPeerConnection(pc: RTCPeerConnection | null) {
this.peerConnection = pc;
},
setConnectionStatus(status: string) {
@@ -18,6 +19,12 @@ export const useViewerStore = defineStore('viewer', {
console.log('pinia connection status debug:', status);
}
this.connectionStatus = status;
+ if (status === 'disconnected') {
+ this.isDisconnected = true;
+ }
+ },
+ resetDisconnected() {
+ this.isDisconnected = false;
}
},
});
\ No newline at end of file
diff --git a/drizzle/0001_material_puma.sql b/drizzle/0001_material_puma.sql
new file mode 100644
index 0000000..f82caca
--- /dev/null
+++ b/drizzle/0001_material_puma.sql
@@ -0,0 +1,19 @@
+CREATE TABLE "preset_users" (
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
+ "preset_id" uuid NOT NULL,
+ "user_id" text NOT NULL,
+ "is_default" boolean DEFAULT false NOT NULL,
+ "added_at" timestamp DEFAULT now() NOT NULL
+);
+--> statement-breakpoint
+CREATE TABLE "presets" (
+ "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
+ "created_by" text NOT NULL,
+ "name" text NOT NULL,
+ "ice_servers" text NOT NULL,
+ "shareable" boolean DEFAULT false NOT NULL,
+ "created_at" timestamp DEFAULT now() NOT NULL
+);
+--> statement-breakpoint
+ALTER TABLE "preset_users" ADD CONSTRAINT "preset_users_preset_id_presets_id_fk" FOREIGN KEY ("preset_id") REFERENCES "public"."presets"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
+CREATE UNIQUE INDEX "preset_users_preset_id_user_id_index" ON "preset_users" USING btree ("preset_id","user_id");
\ No newline at end of file
diff --git a/drizzle/0002_jazzy_onslaught.sql b/drizzle/0002_jazzy_onslaught.sql
new file mode 100644
index 0000000..1dfc62b
--- /dev/null
+++ b/drizzle/0002_jazzy_onslaught.sql
@@ -0,0 +1 @@
+ALTER TABLE "presets" ADD CONSTRAINT "presets_name_unique" UNIQUE("name");
\ No newline at end of file
diff --git a/drizzle/meta/0001_snapshot.json b/drizzle/meta/0001_snapshot.json
new file mode 100644
index 0000000..d632eb5
--- /dev/null
+++ b/drizzle/meta/0001_snapshot.json
@@ -0,0 +1,291 @@
+{
+ "id": "2d7f156d-41b3-41bc-83a1-e2fe9e5ba17d",
+ "prevId": "bede7229-4dec-4922-b74e-3b2d146e8f85",
+ "version": "7",
+ "dialect": "postgresql",
+ "tables": {
+ "public.peers": {
+ "name": "peers",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "text",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "last_seen": {
+ "name": "last_seen",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.preset_users": {
+ "name": "preset_users",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "uuid",
+ "primaryKey": true,
+ "notNull": true,
+ "default": "gen_random_uuid()"
+ },
+ "preset_id": {
+ "name": "preset_id",
+ "type": "uuid",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "user_id": {
+ "name": "user_id",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "is_default": {
+ "name": "is_default",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": true,
+ "default": false
+ },
+ "added_at": {
+ "name": "added_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "preset_users_preset_id_user_id_index": {
+ "name": "preset_users_preset_id_user_id_index",
+ "columns": [
+ {
+ "expression": "preset_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ },
+ {
+ "expression": "user_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "preset_users_preset_id_presets_id_fk": {
+ "name": "preset_users_preset_id_presets_id_fk",
+ "tableFrom": "preset_users",
+ "tableTo": "presets",
+ "columnsFrom": [
+ "preset_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.presets": {
+ "name": "presets",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "uuid",
+ "primaryKey": true,
+ "notNull": true,
+ "default": "gen_random_uuid()"
+ },
+ "created_by": {
+ "name": "created_by",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "ice_servers": {
+ "name": "ice_servers",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "shareable": {
+ "name": "shareable",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": true,
+ "default": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.room_viewers": {
+ "name": "room_viewers",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "uuid",
+ "primaryKey": true,
+ "notNull": true,
+ "default": "gen_random_uuid()"
+ },
+ "room_id": {
+ "name": "room_id",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "viewer_id": {
+ "name": "viewer_id",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "joined_at": {
+ "name": "joined_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "room_viewers_room_id_rooms_id_fk": {
+ "name": "room_viewers_room_id_rooms_id_fk",
+ "tableFrom": "room_viewers",
+ "tableTo": "rooms",
+ "columnsFrom": [
+ "room_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "room_viewers_viewer_id_peers_id_fk": {
+ "name": "room_viewers_viewer_id_peers_id_fk",
+ "tableFrom": "room_viewers",
+ "tableTo": "peers",
+ "columnsFrom": [
+ "viewer_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.rooms": {
+ "name": "rooms",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "text",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "broadcaster": {
+ "name": "broadcaster",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "rooms_broadcaster_peers_id_fk": {
+ "name": "rooms_broadcaster_peers_id_fk",
+ "tableFrom": "rooms",
+ "tableTo": "peers",
+ "columnsFrom": [
+ "broadcaster"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ }
+ },
+ "enums": {},
+ "schemas": {},
+ "sequences": {},
+ "roles": {},
+ "policies": {},
+ "views": {},
+ "_meta": {
+ "columns": {},
+ "schemas": {},
+ "tables": {}
+ }
+}
\ No newline at end of file
diff --git a/drizzle/meta/0002_snapshot.json b/drizzle/meta/0002_snapshot.json
new file mode 100644
index 0000000..fbb47cc
--- /dev/null
+++ b/drizzle/meta/0002_snapshot.json
@@ -0,0 +1,299 @@
+{
+ "id": "8c94aa55-1f21-4db7-9adb-26c17d4075a5",
+ "prevId": "2d7f156d-41b3-41bc-83a1-e2fe9e5ba17d",
+ "version": "7",
+ "dialect": "postgresql",
+ "tables": {
+ "public.peers": {
+ "name": "peers",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "text",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "last_seen": {
+ "name": "last_seen",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.preset_users": {
+ "name": "preset_users",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "uuid",
+ "primaryKey": true,
+ "notNull": true,
+ "default": "gen_random_uuid()"
+ },
+ "preset_id": {
+ "name": "preset_id",
+ "type": "uuid",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "user_id": {
+ "name": "user_id",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "is_default": {
+ "name": "is_default",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": true,
+ "default": false
+ },
+ "added_at": {
+ "name": "added_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "preset_users_preset_id_user_id_index": {
+ "name": "preset_users_preset_id_user_id_index",
+ "columns": [
+ {
+ "expression": "preset_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ },
+ {
+ "expression": "user_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "preset_users_preset_id_presets_id_fk": {
+ "name": "preset_users_preset_id_presets_id_fk",
+ "tableFrom": "preset_users",
+ "tableTo": "presets",
+ "columnsFrom": [
+ "preset_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.presets": {
+ "name": "presets",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "uuid",
+ "primaryKey": true,
+ "notNull": true,
+ "default": "gen_random_uuid()"
+ },
+ "created_by": {
+ "name": "created_by",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "ice_servers": {
+ "name": "ice_servers",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "shareable": {
+ "name": "shareable",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": true,
+ "default": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {
+ "presets_name_unique": {
+ "name": "presets_name_unique",
+ "nullsNotDistinct": false,
+ "columns": [
+ "name"
+ ]
+ }
+ },
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.room_viewers": {
+ "name": "room_viewers",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "uuid",
+ "primaryKey": true,
+ "notNull": true,
+ "default": "gen_random_uuid()"
+ },
+ "room_id": {
+ "name": "room_id",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "viewer_id": {
+ "name": "viewer_id",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "joined_at": {
+ "name": "joined_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "room_viewers_room_id_rooms_id_fk": {
+ "name": "room_viewers_room_id_rooms_id_fk",
+ "tableFrom": "room_viewers",
+ "tableTo": "rooms",
+ "columnsFrom": [
+ "room_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "room_viewers_viewer_id_peers_id_fk": {
+ "name": "room_viewers_viewer_id_peers_id_fk",
+ "tableFrom": "room_viewers",
+ "tableTo": "peers",
+ "columnsFrom": [
+ "viewer_id"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.rooms": {
+ "name": "rooms",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "text",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "broadcaster": {
+ "name": "broadcaster",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {},
+ "foreignKeys": {
+ "rooms_broadcaster_peers_id_fk": {
+ "name": "rooms_broadcaster_peers_id_fk",
+ "tableFrom": "rooms",
+ "tableTo": "peers",
+ "columnsFrom": [
+ "broadcaster"
+ ],
+ "columnsTo": [
+ "id"
+ ],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ }
+ },
+ "enums": {},
+ "schemas": {},
+ "sequences": {},
+ "roles": {},
+ "policies": {},
+ "views": {},
+ "_meta": {
+ "columns": {},
+ "schemas": {},
+ "tables": {}
+ }
+}
\ No newline at end of file
diff --git a/drizzle/meta/_journal.json b/drizzle/meta/_journal.json
index fb69edd..97c082e 100644
--- a/drizzle/meta/_journal.json
+++ b/drizzle/meta/_journal.json
@@ -8,6 +8,20 @@
"when": 1765910486192,
"tag": "0000_pale_maximus",
"breakpoints": true
+ },
+ {
+ "idx": 1,
+ "version": "7",
+ "when": 1767895147484,
+ "tag": "0001_material_puma",
+ "breakpoints": true
+ },
+ {
+ "idx": 2,
+ "version": "7",
+ "when": 1767985505802,
+ "tag": "0002_jazzy_onslaught",
+ "breakpoints": true
}
]
}
\ No newline at end of file
diff --git a/nuxt.config.ts b/nuxt.config.ts
index ec65fd4..493afb4 100644
--- a/nuxt.config.ts
+++ b/nuxt.config.ts
@@ -1,33 +1,46 @@
import tailwindcss from "@tailwindcss/vite";
-
+import { shadcn } from "@clerk/themes";
// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
- compatibilityDate: '2025-07-15',
+ compatibilityDate: "2025-07-15",
devtools: { enabled: true },
- css: ['~/assets/css/tailwind.css'],
+ css: ["~/assets/css/tailwind.css"],
vite: {
- plugins: [
- tailwindcss(),
- ],
+ plugins: [tailwindcss()],
+ server: {
+ allowedHosts: ["urods-79-145-156-36.a.free.pinggy.link"],
+ },
},
- modules: ['shadcn-nuxt', '@nuxtjs/color-mode', '@pinia/nuxt', 'nuxt-cron'],
+ modules: [
+ "shadcn-nuxt",
+ "@nuxtjs/color-mode",
+ "@pinia/nuxt",
+ "nuxt-cron",
+ "@clerk/nuxt",
+ "nuxt-monaco-editor",
+ ],
colorMode: {
- classSuffix: ''
+ classSuffix: "",
},
shadcn: {
/**
* Prefix for all the imported component
*/
- prefix: '',
+ prefix: "",
/**
* Directory that the component lives in.
* @default "./components/ui"
*/
- componentDir: './components/ui'
+ componentDir: "./components/ui",
},
nitro: {
experimental: {
- websocket: true
- }
+ websocket: true,
+ },
},
-})
\ No newline at end of file
+ clerk: {
+ appearance: {
+ theme: shadcn,
+ },
+ },
+});
diff --git a/package.json b/package.json
index ce1390d..93b0d25 100644
--- a/package.json
+++ b/package.json
@@ -12,17 +12,21 @@
"db:migrate": "drizzle-kit generate && drizzle-kit migrate"
},
"dependencies": {
+ "@clerk/nuxt": "^1.13.10",
+ "@clerk/themes": "^2.4.46",
"@neondatabase/serverless": "^1.0.2",
"@pinia/nuxt": "0.11.2",
"@tailwindcss/vite": "^4.1.16",
+ "@tanstack/vue-form": "^1.27.7",
"@vueuse/core": "^14.0.0",
- "better-auth": "^1.4.7",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"dotenv": "^17.2.3",
"drizzle-orm": "^0.45.1",
"lucide-vue-next": "^0.548.0",
- "nuxt": "^4.2.0",
+ "monaco-editor": "^0.55.1",
+ "nuxt": "^4.2.1",
+ "nuxt-monaco-editor": "^1.4.0",
"pinia": "^3.0.3",
"reka-ui": "^2.6.0",
"shadcn-nuxt": "2.3.2",
@@ -31,7 +35,8 @@
"tw-animate-css": "^1.4.0",
"vue": "^3.5.22",
"vue-router": "^4.6.3",
- "vue-sonner": "^2.0.9"
+ "vue-sonner": "^2.0.9",
+ "zod": "^4.3.5"
},
"devDependencies": {
"@iconify-json/radix-icons": "^1.2.5",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index e757b44..26b40ed 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -8,6 +8,12 @@ importers:
.:
dependencies:
+ '@clerk/nuxt':
+ specifier: ^1.13.10
+ version: 1.13.10(magicast@0.5.0)(react@19.2.3)(vue@3.5.22(typescript@5.9.3))
+ '@clerk/themes':
+ specifier: ^2.4.46
+ version: 2.4.46(react@19.2.3)
'@neondatabase/serverless':
specifier: ^1.0.2
version: 1.0.2
@@ -16,13 +22,13 @@ importers:
version: 0.11.2(magicast@0.5.0)(pinia@3.0.3(typescript@5.9.3)(vue@3.5.22(typescript@5.9.3)))
'@tailwindcss/vite':
specifier: ^4.1.16
- version: 4.1.16(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
+ version: 4.1.16(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))
+ '@tanstack/vue-form':
+ specifier: ^1.27.7
+ version: 1.27.7(vue@3.5.22(typescript@5.9.3))
'@vueuse/core':
specifier: ^14.0.0
version: 14.0.0(vue@3.5.22(typescript@5.9.3))
- better-auth:
- specifier: ^1.4.7
- version: 1.4.7(drizzle-kit@0.31.8)(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(vue@3.5.22(typescript@5.9.3))
class-variance-authority:
specifier: ^0.7.1
version: 0.7.1
@@ -38,9 +44,15 @@ importers:
lucide-vue-next:
specifier: ^0.548.0
version: 0.548.0(vue@3.5.22(typescript@5.9.3))
+ monaco-editor:
+ specifier: ^0.55.1
+ version: 0.55.1
nuxt:
- specifier: ^4.2.0
- version: 4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1)
+ specifier: ^4.2.1
+ version: 4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2)
+ nuxt-monaco-editor:
+ specifier: ^1.4.0
+ version: 1.4.0(magicast@0.5.0)(monaco-editor@0.55.1)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))
pinia:
specifier: ^3.0.3
version: 3.0.3(typescript@5.9.3)(vue@3.5.22(typescript@5.9.3))
@@ -67,7 +79,10 @@ importers:
version: 4.6.3(vue@3.5.22(typescript@5.9.3))
vue-sonner:
specifier: ^2.0.9
- version: 2.0.9(@nuxt/kit@4.2.0(magicast@0.5.0))(@nuxt/schema@4.2.0)(nuxt@4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1))
+ version: 2.0.9(@nuxt/kit@4.2.2(magicast@0.5.0))(@nuxt/schema@4.2.2)(nuxt@4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2))
+ zod:
+ specifier: ^4.3.5
+ version: 4.3.5
devDependencies:
'@iconify-json/radix-icons':
specifier: ^1.2.5
@@ -216,26 +231,76 @@ packages:
resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==}
engines: {node: '>=6.9.0'}
- '@better-auth/core@1.4.7':
- resolution: {integrity: sha512-rNfj8aNFwPwAMYo+ahoWDsqKrV7svD3jhHSC6+A77xxKodbgV0UgH+RO21GMaZ0PPAibEl851nw5e3bsNslW/w==}
+ '@bomb.sh/tab@0.0.11':
+ resolution: {integrity: sha512-RSqyreeicYBALcMaNxIUJTBknftXsyW45VRq5gKDNwKroh0Re5SDoWwXZaphb+OTEzVdpm/BA8Uq6y0P+AtVYw==}
+ hasBin: true
peerDependencies:
- '@better-auth/utils': 0.3.0
- '@better-fetch/fetch': 1.1.21
- better-call: 1.1.5
- jose: ^6.1.0
- kysely: ^0.28.5
- nanostores: ^1.0.1
+ cac: ^6.7.14
+ citty: ^0.1.6
+ commander: ^13.1.0
+ peerDependenciesMeta:
+ cac:
+ optional: true
+ citty:
+ optional: true
+ commander:
+ optional: true
- '@better-auth/telemetry@1.4.7':
- resolution: {integrity: sha512-k07C/FWnX6m+IxLruNkCweIxuaIwVTB2X40EqwamRVhYNBAhOYZFGLHH+PtQyM+Yf1Z4+8H6MugLOXSreXNAjQ==}
+ '@clack/core@1.0.0-alpha.7':
+ resolution: {integrity: sha512-3vdh6Ar09D14rVxJZIm3VQJkU+ZOKKT5I5cC0cOVazy70CNyYYjiwRj9unwalhESndgxx6bGc/m6Hhs4EKF5XQ==}
+
+ '@clack/prompts@1.0.0-alpha.9':
+ resolution: {integrity: sha512-sKs0UjiHFWvry4SiRfBi5Qnj0C/6AYx8aKkFPZQSuUZXgAram25ZDmhQmP7vj1aFyLpfHWtLQjWvOvcat0TOLg==}
+
+ '@clerk/backend@2.29.0':
+ resolution: {integrity: sha512-cw4CK6ZHgeFROirlIOawelqRBxZAyH6v3GPSYZEEzYAL0WWUHx7cMXzoQcTMruH7w6UM7s3Ox+uUcINESWkQPA==}
+ engines: {node: '>=18.17.0'}
+
+ '@clerk/nuxt@1.13.10':
+ resolution: {integrity: sha512-zaw1Coc3In8/y3O3zEcwaydcvAeVMZdmTt9D+wkpvZGiUGDHfKipQRwuFpw92HhSTUD4LjeJ2h/XbCScKZnepg==}
+ engines: {node: '>=18.17.0'}
+
+ '@clerk/shared@3.41.1':
+ resolution: {integrity: sha512-BCbT7Xodk2rndA2nV/lW8X5LMNTvFP5UG2wNN9cYuAcTaI6hYZP18/z2zef2gG4xIrK7WAEjGVzHscikqNtzFQ==}
+ engines: {node: '>=18.17.0'}
peerDependencies:
- '@better-auth/core': 1.4.7
+ react: ^18.0.0 || ~19.0.3 || ~19.1.4 || ~19.2.3 || ~19.3.0-0
+ react-dom: ^18.0.0 || ~19.0.3 || ~19.1.4 || ~19.2.3 || ~19.3.0-0
+ peerDependenciesMeta:
+ react:
+ optional: true
+ react-dom:
+ optional: true
- '@better-auth/utils@0.3.0':
- resolution: {integrity: sha512-W+Adw6ZA6mgvnSnhOki270rwJ42t4XzSK6YWGF//BbVXL6SwCLWfyzBc1lN2m/4RM28KubdBKQ4X5VMoLRNPQw==}
+ '@clerk/shared@3.42.0':
+ resolution: {integrity: sha512-sJUur/7jnHHlAsdoDosxpOmfV05VR7K5rvqlFskj3GaAMFEJrvdOztw0hmhBGVSWiCpjTZfdGITegton8mo7mQ==}
+ engines: {node: '>=18.17.0'}
+ peerDependencies:
+ react: ^18.0.0 || ~19.0.3 || ~19.1.4 || ~19.2.3 || ~19.3.0-0
+ react-dom: ^18.0.0 || ~19.0.3 || ~19.1.4 || ~19.2.3 || ~19.3.0-0
+ peerDependenciesMeta:
+ react:
+ optional: true
+ react-dom:
+ optional: true
- '@better-fetch/fetch@1.1.21':
- resolution: {integrity: sha512-/ImESw0sskqlVR94jB+5+Pxjf+xBwDZF/N5+y2/q4EqD7IARUTSpPfIo8uf39SYpCxyOCtbyYpUrZ3F/k0zT4A==}
+ '@clerk/themes@2.4.46':
+ resolution: {integrity: sha512-26U+aInnWJwYHrT/LYX7sGRrLJwLk4NvfEoUyVc5EXUl7ue/TZ88r7ZiKDv0KutBTNopaz+p+7KD6F1j72nodA==}
+ engines: {node: '>=18.17.0'}
+
+ '@clerk/types@4.101.10':
+ resolution: {integrity: sha512-qlmgnAm/IeK02RKEKVN8/Glx07xw/Lcv67jBfikM8HXhHc5v7bfYLD8UiWTr6H2RGtvB09cIt9JezRRlsuVBew==}
+ engines: {node: '>=18.17.0'}
+
+ '@clerk/types@4.101.9':
+ resolution: {integrity: sha512-RO00JqqmkIoI1o0XCtvudjaLpqEoe8PRDHlLS1r/aNZazUQCO0TT6nZOx1F3X+QJDjqYVY7YmYl3mtO2QVEk1g==}
+ engines: {node: '>=18.17.0'}
+
+ '@clerk/vue@1.17.7':
+ resolution: {integrity: sha512-NnVUIzV+vJeVRqtxHnsp96LLZJcvsKEA4xnC/iogW4PFM0C8Qb12038E5wV/xV3YhBiwnjTEGPmK9rbfFdXgtw==}
+ engines: {node: '>=18.17.0'}
+ peerDependencies:
+ vue: ^3.2.0
'@cloudflare/kv-asset-handler@0.4.0':
resolution: {integrity: sha512-+tv3z+SPp+gqTIcImN9o0hqE9xyfQjI1XD9pL6NuKjua9B1y7mNYv0S9cP+QEbA4ppVgGZEmKOvHX5G5Ei1CVA==}
@@ -244,18 +309,24 @@ packages:
'@drizzle-team/brocli@0.10.2':
resolution: {integrity: sha512-z33Il7l5dKjUgGULTqBsQBQwckHh5AbIuxhdsIxDDiZAzBOrZO6q9ogcWC65kU382AfynTfgNumVcNIjuIua6w==}
- '@dxup/nuxt@0.2.0':
- resolution: {integrity: sha512-tUS2040HEiGwjwZ8hTczfuRoiXSOuA+ATPXO9Bllf03nHHj1lSlmaAyVJHFsSXL5Os5NZqimNAZ1iDed7VElzA==}
+ '@dxup/nuxt@0.2.2':
+ resolution: {integrity: sha512-RNpJjDZs9+JcT9N87AnOuHsNM75DEd58itADNd/s1LIF6BZbTLZV0xxilJZb55lntn4TYvscTaXLCBX2fq9CXg==}
- '@dxup/unimport@0.1.0':
- resolution: {integrity: sha512-6Q/Po8qGmlrShdG/R9+rpIhme9N/PGJumpvmwr1UAxGpt9DfOCt9kF8+yJkxhtPdJFL37KgUILZBRAkSU8cJZg==}
+ '@dxup/unimport@0.1.2':
+ resolution: {integrity: sha512-/B8YJGPzaYq1NbsQmwgP8EZqg40NpTw4ZB3suuI0TplbxKHeK94jeaawLmVhCv+YwUnOpiWEz9U6SeThku/8JQ==}
'@emnapi/core@1.6.0':
resolution: {integrity: sha512-zq/ay+9fNIJJtJiZxdTnXS20PllcYMX3OE23ESc4HK/bdYu3cOWYVhsOhVnXALfU/uqJIxn5NBPd9z4v+SfoSg==}
+ '@emnapi/core@1.8.1':
+ resolution: {integrity: sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==}
+
'@emnapi/runtime@1.6.0':
resolution: {integrity: sha512-obtUmAHTMjll499P+D9A3axeJFlhdjOWdKUNs/U6QIGT7V5RjcUW1xToAzjvmgTSQhDbYn/NwfTRoJcQ2rNBxA==}
+ '@emnapi/runtime@1.8.1':
+ resolution: {integrity: sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==}
+
'@emnapi/wasi-threads@1.1.0':
resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==}
@@ -784,18 +855,13 @@ packages:
'@napi-rs/wasm-runtime@1.0.7':
resolution: {integrity: sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw==}
+ '@napi-rs/wasm-runtime@1.1.1':
+ resolution: {integrity: sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==}
+
'@neondatabase/serverless@1.0.2':
resolution: {integrity: sha512-I5sbpSIAHiB+b6UttofhrN/UJXII+4tZPAq1qugzwCwLIL8EZLV7F/JyHUrEIiGgQpEXzpnjlJ+zwcEhheGvCw==}
engines: {node: '>=19.0.0'}
- '@noble/ciphers@2.1.1':
- resolution: {integrity: sha512-bysYuiVfhxNJuldNXlFEitTVdNnYUc+XNJZd7Qm2a5j1vZHgY+fazadNFWFaMK/2vye0JVlxV3gHmC0WDfAOQw==}
- engines: {node: '>= 20.19.0'}
-
- '@noble/hashes@2.0.1':
- resolution: {integrity: sha512-XlOlEbQcE9fmuXxrVTXCTlG2nlRXa9Rj3rr5Ue/+tX+nmkgbX720YHh0VR3hBF9xDvwnb8D2shVGOwNx+ulArw==}
- engines: {node: '>= 20.19.0'}
-
'@nodelib/fs.scandir@2.1.5':
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
engines: {node: '>= 8'}
@@ -808,28 +874,32 @@ packages:
resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
engines: {node: '>= 8'}
- '@nuxt/cli@3.29.3':
- resolution: {integrity: sha512-48GYmH4SyzR5pqd02UXVzBfrvEGaurPKMjSWxlHgqnpI5buwOYCvH+OqvHOmvnLrDP2bxR9hbDod/UIphOjMhg==}
+ '@nuxt/cli@3.32.0':
+ resolution: {integrity: sha512-n2f3SRjPlhthPvo2qWjLRRiTrUtB6WFwg0BGsvtqcqZVeQpNEU371zuKWBaFrWgqDZHV1r/aD9jrVCo+C8Pmrw==}
engines: {node: ^16.10.0 || >=18.0.0}
hasBin: true
'@nuxt/devalue@2.0.2':
resolution: {integrity: sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA==}
- '@nuxt/devtools-kit@2.7.0':
- resolution: {integrity: sha512-MIJdah6CF6YOW2GhfKnb8Sivu6HpcQheqdjOlZqShBr+1DyjtKQbAKSCAyKPaoIzZP4QOo2SmTFV6aN8jBeEIQ==}
+ '@nuxt/devtools-kit@3.1.1':
+ resolution: {integrity: sha512-sjiKFeDCOy1SyqezSgyV4rYNfQewC64k/GhOsuJgRF+wR2qr6KTVhO6u2B+csKs74KrMrnJprQBgud7ejvOXAQ==}
peerDependencies:
vite: '>=6.0'
- '@nuxt/devtools-wizard@2.7.0':
- resolution: {integrity: sha512-iWuWR0U6BRpF7D6xrgq9ZkQ6ajsw2EA/gVmbU9V5JPKRUtV6DVpCPi+h34VFNeQ104Sf531XgvT0sl3h93AjXA==}
+ '@nuxt/devtools-wizard@3.1.1':
+ resolution: {integrity: sha512-6UORjapNKko2buv+3o57DQp69n5Z91TeJ75qdtNKcTvOfCTJrO78Ew0nZSgMMGrjbIJ4pFsHQEqXfgYLw3pNxg==}
hasBin: true
- '@nuxt/devtools@2.7.0':
- resolution: {integrity: sha512-BtIklVYny14Ykek4SHeexAHoa28MEV9kz223ZzvoNYqE0f+YVV+cJP69ovZHf+HUVpxaAMJfWKLHXinWXiCZ4Q==}
+ '@nuxt/devtools@3.1.1':
+ resolution: {integrity: sha512-UG8oKQqcSyzwBe1l0z24zypmwn6FLW/HQMHK/F/gscUU5LeMHzgBhLPD+cuLlDvwlGAbifexWNMsS/I7n95KlA==}
hasBin: true
peerDependencies:
+ '@vitejs/devtools': '*'
vite: '>=6.0'
+ peerDependenciesMeta:
+ '@vitejs/devtools':
+ optional: true
'@nuxt/kit@3.20.0':
resolution: {integrity: sha512-EoF1Gf0SPj9vxgAIcGEH+a4PRLC7Dwsy21K6f5+POzylT8DgssN8zL5pwXC+X7OcfzBrwYFh7mM7phvh7ubgeg==}
@@ -839,26 +909,34 @@ packages:
resolution: {integrity: sha512-1yN3LL6RDN5GjkNLPUYCbNRkaYnat6hqejPyfIBBVzrWOrpiQeNMGxQM/IcVdaSuBJXAnu0sUvTKXpXkmPhljg==}
engines: {node: '>=18.12.0'}
- '@nuxt/nitro-server@4.2.0':
- resolution: {integrity: sha512-1fZwAV+VTQwmPVUYKH+eoeB+3jPE+c/mreK3PpuY6vvrIDuMh9L4QIeLFB0fIcY2MJ4XkvjU/5w3B9uu3GR9yQ==}
+ '@nuxt/kit@4.2.2':
+ resolution: {integrity: sha512-ZAgYBrPz/yhVgDznBNdQj2vhmOp31haJbO0I0iah/P9atw+OHH7NJLUZ3PK+LOz/0fblKTN1XJVSi8YQ1TQ0KA==}
+ engines: {node: '>=18.12.0'}
+
+ '@nuxt/nitro-server@4.2.2':
+ resolution: {integrity: sha512-lDITf4n5bHQ6a5MO7pvkpdQbPdWAUgSvztSHCfui/3ioLZsM2XntlN02ue6GSoh3oV9H4xSB3qGa+qlSjgxN0A==}
engines: {node: ^20.19.0 || >=22.12.0}
peerDependencies:
- nuxt: ^4.2.0
+ nuxt: ^4.2.2
'@nuxt/schema@4.2.0':
resolution: {integrity: sha512-YMbgpEyPokgOYME6BvY8Okk7GAIwhEFYzrkkkoU9IVgu0tKWetYRrjUwbd0eICqPm9EWDBQl5tTTNJ8xCndVbw==}
engines: {node: ^14.18.0 || >=16.10.0}
+ '@nuxt/schema@4.2.2':
+ resolution: {integrity: sha512-lW/1MNpO01r5eR/VoeanQio8Lg4QpDklMOHa4mBHhhPNlBO1qiRtVYzjcnNdun3hujGauRaO9khGjv93Z5TZZA==}
+ engines: {node: ^14.18.0 || >=16.10.0}
+
'@nuxt/telemetry@2.6.6':
resolution: {integrity: sha512-Zh4HJLjzvm3Cq9w6sfzIFyH9ozK5ePYVfCUzzUQNiZojFsI2k1QkSBrVI9BGc6ArKXj/O6rkI6w7qQ+ouL8Cag==}
engines: {node: '>=18.12.0'}
hasBin: true
- '@nuxt/vite-builder@4.2.0':
- resolution: {integrity: sha512-pNHIoO8kiSsOnoMo2zmxy0mk71ZBP4KJCiXr7Ahq8ewOm4W4vFQ1NV1O46wJGZyxlPC6nqFuYBvcUwVp1LgTNg==}
+ '@nuxt/vite-builder@4.2.2':
+ resolution: {integrity: sha512-Bot8fpJNtHZrM4cS1iSR7bEAZ1mFLAtJvD/JOSQ6kT62F4hSFWfMubMXOwDkLK2tnn3bnAdSqGy1nLNDBCahpQ==}
engines: {node: ^20.19.0 || >=22.12.0}
peerDependencies:
- nuxt: 4.2.0
+ nuxt: 4.2.2
rolldown: ^1.0.0-beta.38
vue: ^3.3.4
peerDependenciesMeta:
@@ -868,106 +946,112 @@ packages:
'@nuxtjs/color-mode@3.5.2':
resolution: {integrity: sha512-cC6RfgZh3guHBMLLjrBB2Uti5eUoGM9KyauOaYS9ETmxNWBMTvpgjvSiSJp1OFljIXPIqVTJ3xtJpSNZiO3ZaA==}
- '@oxc-minify/binding-android-arm64@0.95.0':
- resolution: {integrity: sha512-ck0NakTt3oBWTMQjxKf5ZW1GzCs0y1kETzJdh8h8NAWTutlMfeWiuUxCgG4FMF4XiTnCdLq/dFAKFcdbiwcoqg==}
+ '@oxc-minify/binding-android-arm64@0.102.0':
+ resolution: {integrity: sha512-pknM+ttJTwRr7ezn1v5K+o2P4RRjLAzKI10bjVDPybwWQ544AZW6jxm7/YDgF2yUbWEV9o7cAQPkIUOmCiW8vg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [android]
- '@oxc-minify/binding-darwin-arm64@0.95.0':
- resolution: {integrity: sha512-uvRkBVsh88DgMqddCIHcL1tKycKThfzLHNuBOm7csfpOD85TJimpl/1qAfrTCNrdaiteFK4U9QRKBdDvZay4RQ==}
+ '@oxc-minify/binding-darwin-arm64@0.102.0':
+ resolution: {integrity: sha512-BDLiH41ZctNND38+GCEL3ZxFn9j7qMZJLrr6SLWMt8xlG4Sl64xTkZ0zeUy4RdVEatKKZdrRIhFZ2e5wPDQT6Q==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [darwin]
- '@oxc-minify/binding-darwin-x64@0.95.0':
- resolution: {integrity: sha512-SpDArHPKy/K9rduOCdlqz4BxFZte5Ad4/CPNaP0EaVTNbDW1OjBMrVOzRxr/bveWUbUJW3gbWby//YzXCese/w==}
+ '@oxc-minify/binding-darwin-x64@0.102.0':
+ resolution: {integrity: sha512-AcB8ZZ711w4hTDhMfMHNjT2d+hekTQ2XmNSUBqJdXB+a2bJbE50UCRq/nxXl44zkjaQTit3lcQbFvhk2wwKcpw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [darwin]
- '@oxc-minify/binding-freebsd-x64@0.95.0':
- resolution: {integrity: sha512-U/ER7VsDCOv9HTE3rIZmNdN2ijZTT1vjDPPRsl9Z5Zyip2OsbHJxh4iNC00bO7qSw5keADuP4ooXsu2pjnfXNA==}
+ '@oxc-minify/binding-freebsd-x64@0.102.0':
+ resolution: {integrity: sha512-UlLEN9mR5QaviYVMWZQsN9DgAH3qyV67XUXDEzSrbVMLsqHsVHhFU8ZIeO0fxWTQW/cgpvldvKp9/+RdrggqWw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [freebsd]
- '@oxc-minify/binding-linux-arm-gnueabihf@0.95.0':
- resolution: {integrity: sha512-g+u5Zg72J7G9DbjnCIO6BhHE4lSaODLFjArFq9sZWu4xi4QOYapGdNZVbQWrWjzGlKTvYOhH621ySMOc07O64g==}
+ '@oxc-minify/binding-linux-arm-gnueabihf@0.102.0':
+ resolution: {integrity: sha512-CWyCwedZrUt47n56/RwHSwKXxVI3p98hB0ntLaBNeH5qjjBujs9uOh4bQ0aAlzUWunT77b3/Y+xcQnmV42HN4A==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
- '@oxc-minify/binding-linux-arm-musleabihf@0.95.0':
- resolution: {integrity: sha512-RqQctWyvgSVkJ+UMhDPLDjSO+YjAWFGoSfvikgEIvGrTVjFzXz20EDFSH+CR9J+mXsuJOku63VKmcAZr8Vd/Qg==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
- os: [linux]
-
- '@oxc-minify/binding-linux-arm64-gnu@0.95.0':
- resolution: {integrity: sha512-psrzacTaa5zmRXm2Skooj5YOZvueFZLOjNDAkwQcjIgrVAzl7uXtDCPq8soM46O12wGXMpDNUkrbD2BVcF+S9g==}
+ '@oxc-minify/binding-linux-arm64-gnu@0.102.0':
+ resolution: {integrity: sha512-W/DCw+Ys8rXj4j38ylJ2l6Kvp6SV+eO5SUWA11imz7yCWntNL001KJyGQ9PJNUFHg0jbxe3yqm4M50v6miWzeA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
- '@oxc-minify/binding-linux-arm64-musl@0.95.0':
- resolution: {integrity: sha512-W5VWcOTIxH8bvIviiFreNHK5RkaNE7Y7hm0fxYa9pAdDe8U2OnD77JPPHmNSKYROaDa1ZsmXK1dAOnwGcxvv1w==}
+ '@oxc-minify/binding-linux-arm64-musl@0.102.0':
+ resolution: {integrity: sha512-DyH/t/zSZHuX4Nn239oBteeMC4OP7B13EyXWX18Qg8aJoZ+lZo90WPGOvhP04zII33jJ7di+vrtAUhsX64lp+A==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
- '@oxc-minify/binding-linux-riscv64-gnu@0.95.0':
- resolution: {integrity: sha512-FBAaIvTcRqdXDPZAsfEBc5nK3noZtEAO82090ne5EDsDNKu8u8sjLhXYJWM3AZFD6p7OPRqBby6N4pVicrk0dA==}
+ '@oxc-minify/binding-linux-riscv64-gnu@0.102.0':
+ resolution: {integrity: sha512-CMvzrmOg+Gs44E7TRK/IgrHYp+wwVJxVV8niUrDR2b3SsrCO3NQz5LI+7bM1qDbWnuu5Cl1aiitoMfjRY61dSg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [riscv64]
os: [linux]
- '@oxc-minify/binding-linux-s390x-gnu@0.95.0':
- resolution: {integrity: sha512-7/OWwUC3r0/nPsHOCsTkgitdjpvDOwm8f4lE/Xeigt+9EcRcVuaSHRVOHI47mQ/cSL6V3AObVcmiAGysR36vEw==}
+ '@oxc-minify/binding-linux-s390x-gnu@0.102.0':
+ resolution: {integrity: sha512-tZWr6j2s0ddm9MTfWTI3myaAArg9GDy4UgvpF00kMQAjLcGUNhEEQbB9Bd9KtCvDQzaan8HQs0GVWUp+DWrymw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [s390x]
os: [linux]
- '@oxc-minify/binding-linux-x64-gnu@0.95.0':
- resolution: {integrity: sha512-3K2lxzk679ml1vXJtO8Nt3xMD2trnDQWBb4Q676Un5g3dbaYf1WgTmEI13ZnCrwE5uBI02DFtFQplkLFqb9dGA==}
+ '@oxc-minify/binding-linux-x64-gnu@0.102.0':
+ resolution: {integrity: sha512-0YEKmAIun1bS+Iy5Shx6WOTSj3GuilVuctJjc5/vP8/EMTZ/RI8j0eq0Mu3UFPoT/bMULL3MBXuHuEIXmq7Ddg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
- '@oxc-minify/binding-linux-x64-musl@0.95.0':
- resolution: {integrity: sha512-DrxQAALZs/He11OlCWZrJGsdwGSAK61nkZxcl3MnO33mL54Qs/vI9AbI2lMtggU+xB2sNKbjKTTpTbCPHOmhTA==}
+ '@oxc-minify/binding-linux-x64-musl@0.102.0':
+ resolution: {integrity: sha512-Ew4QDpEsXoV+pG5+bJpheEy3GH436GBe6ASPB0X27Hh9cQ2gb1NVZ7cY7xJj68+fizwS/PtT8GHoG3uxyH17Pg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
- '@oxc-minify/binding-wasm32-wasi@0.95.0':
- resolution: {integrity: sha512-PASXKqJyLHesNjTweXqkA3kG/hdjpauGb+REP5yZ4dr8gxu5DbMqk4QjsBmW3LjDF4tXXjRs8nHR6Qt2dhxTzA==}
+ '@oxc-minify/binding-openharmony-arm64@0.102.0':
+ resolution: {integrity: sha512-wYPXS8IOu/sXiP3CGHJNPzZo4hfPAwJKevcFH2syvU2zyqUxym7hx6smfcK/mgJBiX7VchwArdGRwrEQKcBSaQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@oxc-minify/binding-wasm32-wasi@0.102.0':
+ resolution: {integrity: sha512-52SepCb9e+8cVisGa9S/F14K8PxW0AnbV1j4KEYi8uwfkUIxeDNKRHVHzPoBXNrr0yxW0EHLn/3i8J7a2YCpWw==}
engines: {node: '>=14.0.0'}
cpu: [wasm32]
- '@oxc-minify/binding-win32-arm64-msvc@0.95.0':
- resolution: {integrity: sha512-fPVQZWObqqBRYedFy/bOI0UzUZCqq6ra/PBZFqi31c5Zn73ETTseLYL7ebQqKgjv8l9gQPBIAFIoXYsaoxT72A==}
+ '@oxc-minify/binding-win32-arm64-msvc@0.102.0':
+ resolution: {integrity: sha512-kLs6H1y6sDBKcIimkNwu5th28SLkyvFpHNxdLtCChda0KIGeIXNSiupy5BqEutY+VlWJivKT1OV3Ev3KC5Euzg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [win32]
- '@oxc-minify/binding-win32-x64-msvc@0.95.0':
- resolution: {integrity: sha512-mtCkksnBcO4dIxuj1n9THbMihV+zjO7ZIVCPOq54pylA+hTb/OHau3OV+XyU0pnmREGTuF9xV3BUKag1SYS/lQ==}
+ '@oxc-minify/binding-win32-x64-msvc@0.102.0':
+ resolution: {integrity: sha512-XdyJZdSMN8rbBXH10CrFuU+Q9jIP2+MnxHmNzjK4+bldbTI1UxqwjUMS9bKVC5VCaIEZhh8IE8x4Vf8gmCgrKQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [win32]
+ '@oxc-parser/binding-android-arm64@0.102.0':
+ resolution: {integrity: sha512-pD2if3w3cxPvYbsBSTbhxAYGDaG6WVwnqYG0mYRQ142D6SJ6BpNs7YVQrqpRA2AJQCmzaPP5TRp/koFLebagfQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [android]
+
'@oxc-parser/binding-android-arm64@0.93.0':
resolution: {integrity: sha512-hTxegqGaVA5py2XCNV3Ry6e0tJNl32ZlB5TNOL9YuxvzTY3y3ySJovhufaubtOr/qW/FYmA5l+UC78gbtRTLEw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [android]
- '@oxc-parser/binding-android-arm64@0.95.0':
- resolution: {integrity: sha512-dZyxhhvJigwWL1wgnLlqyEiSeuqO0WdDH9H+if0dPcBM4fKa5fjVkaUcJT1jBMcBTnkjxMwTXYZy5TK60N0fjg==}
+ '@oxc-parser/binding-darwin-arm64@0.102.0':
+ resolution: {integrity: sha512-RzMN6f6MrjjpQC2Dandyod3iOscofYBpHaTecmoRRbC5sJMwsurkqUMHzoJX9F6IM87kn8m/JcClnoOfx5Sesw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
- os: [android]
+ os: [darwin]
'@oxc-parser/binding-darwin-arm64@0.93.0':
resolution: {integrity: sha512-8Er+e4+0BX3hc+Ajuq/60p4qA4/dW8XGUdbE1LBEwx6z1anKv4lAc/J2GfPWLUAhJLZIaM/waGBSxhoWDrZD9A==}
@@ -975,10 +1059,10 @@ packages:
cpu: [arm64]
os: [darwin]
- '@oxc-parser/binding-darwin-arm64@0.95.0':
- resolution: {integrity: sha512-zun9+V33kyCtNec9oUSWwb0qi3fB8pXwum1yGFECPEr55g/CrWju6/Jv4hwwNBeW2tK9Ch/PRstEtYmOLMhHpg==}
+ '@oxc-parser/binding-darwin-x64@0.102.0':
+ resolution: {integrity: sha512-Sr2/3K6GEcejY+HgWp5HaxRPzW5XHe9IfGKVn9OhLt8fzVLnXbK5/GjXj7JjMCNKI3G3ZPZDG2Dgm6CX3MaHCA==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
+ cpu: [x64]
os: [darwin]
'@oxc-parser/binding-darwin-x64@0.93.0':
@@ -987,11 +1071,11 @@ packages:
cpu: [x64]
os: [darwin]
- '@oxc-parser/binding-darwin-x64@0.95.0':
- resolution: {integrity: sha512-9djMQ/t6Ns/UXtziwUe562uVJMbhtuLtCj+Xav+HMVT/rhV9gWO8PQOG7AwDLUBjJanItsrfqrGtqhNxtZ701w==}
+ '@oxc-parser/binding-freebsd-x64@0.102.0':
+ resolution: {integrity: sha512-s9F2N0KJCGEpuBW6ChpFfR06m2Id9ReaHSl8DCca4HvFNt8SJFPp8fq42n2PZy68rtkremQasM0JDrK2BoBeBQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
- os: [darwin]
+ os: [freebsd]
'@oxc-parser/binding-freebsd-x64@0.93.0':
resolution: {integrity: sha512-aH2kMXL+60rhBbHYWU5cICo6HufTAWs1/8Ztu0nI4rr0Facp/mK2Ft6pGeuDxCJeKGyYIC21GIxVA7BHrGk9TQ==}
@@ -999,20 +1083,14 @@ packages:
cpu: [x64]
os: [freebsd]
- '@oxc-parser/binding-freebsd-x64@0.95.0':
- resolution: {integrity: sha512-GK6k0PgCVkkeRZtHgcosCYbXIRySpJpuPw/OInfLGFh8f3x9gp2l8Fbcfx+YO+ZOHFBCd2NNedGqw8wMgouxfA==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [freebsd]
-
- '@oxc-parser/binding-linux-arm-gnueabihf@0.93.0':
- resolution: {integrity: sha512-vk1nZchv1hH2yf6hE5Nbs8DliRGEoDtAwonxpz/yBaAvUsKFZHHwx0hXdJdWr+8EfSfgbWfk4YT6rUadz9N7hQ==}
+ '@oxc-parser/binding-linux-arm-gnueabihf@0.102.0':
+ resolution: {integrity: sha512-zRCIOWzLbqhfY4g8KIZDyYfO2Fl5ltxdQI1v2GlePj66vFWRl8cf4qcBGzxKfsH3wCZHAhmWd1Ht59mnrfH/UQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
- '@oxc-parser/binding-linux-arm-gnueabihf@0.95.0':
- resolution: {integrity: sha512-+g/lFITtyHHEk69cunOHuiT5cX+mpUTcbGYNe8suguZ7FqgNwai+PnGv0ctCvtgxBPVfckfUK8c3RvFKo+vi/w==}
+ '@oxc-parser/binding-linux-arm-gnueabihf@0.93.0':
+ resolution: {integrity: sha512-vk1nZchv1hH2yf6hE5Nbs8DliRGEoDtAwonxpz/yBaAvUsKFZHHwx0hXdJdWr+8EfSfgbWfk4YT6rUadz9N7hQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
@@ -1023,10 +1101,10 @@ packages:
cpu: [arm]
os: [linux]
- '@oxc-parser/binding-linux-arm-musleabihf@0.95.0':
- resolution: {integrity: sha512-SXNasDtPw8ycNV7VEvFxb4LETmykvWKUhHR7K3us818coXYpDj54P8WEx8hJobP/9skuuiFuKHmtYLdjX8wntA==}
+ '@oxc-parser/binding-linux-arm64-gnu@0.102.0':
+ resolution: {integrity: sha512-5n5RbHgfjulRhKB0pW5p0X/NkQeOpI4uI9WHgIZbORUDATGFC8yeyPA6xYGEs+S3MyEAFxl4v544UEIWwqAgsA==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
+ cpu: [arm64]
os: [linux]
'@oxc-parser/binding-linux-arm64-gnu@0.93.0':
@@ -1035,8 +1113,8 @@ packages:
cpu: [arm64]
os: [linux]
- '@oxc-parser/binding-linux-arm64-gnu@0.95.0':
- resolution: {integrity: sha512-0LzebARTU0ROfD6pDK4h1pFn+09meErCZ0MA2TaW08G72+GNneEsksPufOuI+9AxVSRa+jKE3fu0wavvhZgSkg==}
+ '@oxc-parser/binding-linux-arm64-musl@0.102.0':
+ resolution: {integrity: sha512-/XWcmglH/VJ4yKAGTLRgPKSSikh3xciNxkwGiURt8dS30b+3pwc4ZZmudMu0tQ3mjSu0o7V9APZLMpbHK8Bp5w==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
@@ -1047,10 +1125,10 @@ packages:
cpu: [arm64]
os: [linux]
- '@oxc-parser/binding-linux-arm64-musl@0.95.0':
- resolution: {integrity: sha512-Pvi1lGe/G+mJZ3hUojMP/aAHAzHA25AEtVr8/iuz7UV72t/15NOgJYr9kELMUMNjPqpr3vKUgXTFmTtAxp11Qw==}
+ '@oxc-parser/binding-linux-riscv64-gnu@0.102.0':
+ resolution: {integrity: sha512-2jtIq4nswvy6xdqv1ndWyvVlaRpS0yqomLCvvHdCFx3pFXo5Aoq4RZ39kgvFWrbAtpeYSYeAGFnwgnqjx9ftdw==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
+ cpu: [riscv64]
os: [linux]
'@oxc-parser/binding-linux-riscv64-gnu@0.93.0':
@@ -1059,10 +1137,10 @@ packages:
cpu: [riscv64]
os: [linux]
- '@oxc-parser/binding-linux-riscv64-gnu@0.95.0':
- resolution: {integrity: sha512-pUEVHIOVNDfhk4sTlLhn6mrNENhE4/dAwemxIfqpcSyBlYG0xYZND1F3jjR2yWY6DakXZ6VSuDbtiv1LPNlOLw==}
+ '@oxc-parser/binding-linux-s390x-gnu@0.102.0':
+ resolution: {integrity: sha512-Yp6HX/574mvYryiqj0jNvNTJqo4pdAsNP2LPBTxlDQ1cU3lPd7DUA4MQZadaeLI8+AGB2Pn50mPuPyEwFIxeFg==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [riscv64]
+ cpu: [s390x]
os: [linux]
'@oxc-parser/binding-linux-s390x-gnu@0.93.0':
@@ -1071,10 +1149,10 @@ packages:
cpu: [s390x]
os: [linux]
- '@oxc-parser/binding-linux-s390x-gnu@0.95.0':
- resolution: {integrity: sha512-5+olaepHTE3J/+w7g0tr3nocvv5BKilAJnzj4L8tWBCLEZbL6olJcGVoldUO+3cgg1SO1xJywP5BuLhT0mDUDw==}
+ '@oxc-parser/binding-linux-x64-gnu@0.102.0':
+ resolution: {integrity: sha512-R4b0xZpDRhoNB2XZy0kLTSYm0ZmWeKjTii9fcv1Mk3/SIGPrrglwt4U6zEtwK54Dfi4Bve5JnQYduigR/gyDzw==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [s390x]
+ cpu: [x64]
os: [linux]
'@oxc-parser/binding-linux-x64-gnu@0.93.0':
@@ -1083,8 +1161,8 @@ packages:
cpu: [x64]
os: [linux]
- '@oxc-parser/binding-linux-x64-gnu@0.95.0':
- resolution: {integrity: sha512-8huzHlK/N98wrnYKxIcYsK8ZGBWomQchu/Mzi6m+CtbhjWOv9DmK0jQ2fUWImtluQVpTwS0uZT06d3g7XIkJrA==}
+ '@oxc-parser/binding-linux-x64-musl@0.102.0':
+ resolution: {integrity: sha512-xM5A+03Ti3jvWYZoqaBRS3lusvnvIQjA46Fc9aBE/MHgvKgHSkrGEluLWg/33QEwBwxupkH25Pxc1yu97oZCtg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
@@ -1095,21 +1173,27 @@ packages:
cpu: [x64]
os: [linux]
- '@oxc-parser/binding-linux-x64-musl@0.95.0':
- resolution: {integrity: sha512-bWnrLfGDcx/fab0+UQnFbVFbiykof/btImbYf+cI2pU/1Egb2x+OKSmM5Qt0nEUiIpM5fgJmYXxTopybSZOKYA==}
+ '@oxc-parser/binding-openharmony-arm64@0.102.0':
+ resolution: {integrity: sha512-AieLlsliblyaTFq7Iw9Nc618tgwV02JT4fQ6VIUd/3ZzbluHIHfPjIXa6Sds+04krw5TvCS8lsegtDYAyzcyhg==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [linux]
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@oxc-parser/binding-wasm32-wasi@0.102.0':
+ resolution: {integrity: sha512-w6HRyArs1PBb9rDsQSHlooe31buUlUI2iY8sBzp62jZ1tmvaJo9EIVTQlRNDkwJmk9DF9uEyIJ82EkZcCZTs9A==}
+ engines: {node: '>=14.0.0'}
+ cpu: [wasm32]
'@oxc-parser/binding-wasm32-wasi@0.93.0':
resolution: {integrity: sha512-EXyCyY4GJO+SNTQJPPmJJwYbPkPOzw2nxSRMmUlwG19WKO7QHzHyL6u+4hXpp5IwgIWvgQgoix2/pB9JF+EA7w==}
engines: {node: '>=14.0.0'}
cpu: [wasm32]
- '@oxc-parser/binding-wasm32-wasi@0.95.0':
- resolution: {integrity: sha512-0JLyqkZu1HnQIZ4e5LBGOtzqua1QwFEUOoMSycdoerXqayd4LK2b7WMfAx8eCIf+jGm1Uj6f3R00nlsx8g1faQ==}
- engines: {node: '>=14.0.0'}
- cpu: [wasm32]
+ '@oxc-parser/binding-win32-arm64-msvc@0.102.0':
+ resolution: {integrity: sha512-pqP5UuLiiFONQxqGiUFMdsfybaK1EOK4AXiPlvOvacLaatSEPObZGpyCkAcj9aZcvvNwYdeY9cxGM9IT3togaA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [win32]
'@oxc-parser/binding-win32-arm64-msvc@0.93.0':
resolution: {integrity: sha512-LiWj6Yp91YnN8QptfP/+s2nfvQrbYXuaU53w9Pkyceimx0msQboddW3Dud4fbbmp3xzvNkw13+bMkGz5BLHO1w==}
@@ -1117,10 +1201,10 @@ packages:
cpu: [arm64]
os: [win32]
- '@oxc-parser/binding-win32-arm64-msvc@0.95.0':
- resolution: {integrity: sha512-RWvaA6s1SYlBj9CxwHfNn0CRlkPdv9fEUAXfZkGQPdP5e1ppIaO2KYE0sUov/zzp9hPTMMsTMHl4dcIbb+pHCQ==}
+ '@oxc-parser/binding-win32-x64-msvc@0.102.0':
+ resolution: {integrity: sha512-ntMcL35wuLR1A145rLSmm7m7j8JBZGkROoB9Du0KFIFcfi/w1qk75BdCeiTl3HAKrreAnuhW3QOGs6mJhntowA==}
engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm64]
+ cpu: [x64]
os: [win32]
'@oxc-parser/binding-win32-x64-msvc@0.93.0':
@@ -1129,103 +1213,97 @@ packages:
cpu: [x64]
os: [win32]
- '@oxc-parser/binding-win32-x64-msvc@0.95.0':
- resolution: {integrity: sha512-BQpgl7rDjFvCIHudmUR0dCwc4ylBYZl4CPVinlD3NhkMif4WD5dADckoo5ES/KOpFyvwcbKZX+grP63cjHi26g==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [x64]
- os: [win32]
+ '@oxc-project/types@0.102.0':
+ resolution: {integrity: sha512-8Skrw405g+/UJPKWJ1twIk3BIH2nXdiVlVNtYT23AXVwpsd79es4K+KYt06Fbnkc5BaTvk/COT2JuCLYdwnCdA==}
'@oxc-project/types@0.93.0':
resolution: {integrity: sha512-yNtwmWZIBtJsMr5TEfoZFDxIWV6OdScOpza/f5YxbqUMJk+j6QX3Cf3jgZShGEFYWQJ5j9mJ6jM0tZHu2J9Yrg==}
- '@oxc-project/types@0.95.0':
- resolution: {integrity: sha512-vACy7vhpMPhjEJhULNxrdR0D943TkA/MigMpJCHmBHvMXxRStRi/dPtTlfQ3uDwWSzRpT8z+7ImjZVf8JWBocQ==}
-
- '@oxc-transform/binding-android-arm64@0.95.0':
- resolution: {integrity: sha512-eW+BCgRWOsMrDiz7FEV7BjAmaF9lGIc2ueGdRUYjRUMq4f5FSGS7gMBTYDxajdoIB3L5Gnksh1CWkIlgg95UVA==}
+ '@oxc-transform/binding-android-arm64@0.102.0':
+ resolution: {integrity: sha512-JLBT7EiExsGmB6LuBBnm6qTfg0rLSxBU+F7xjqy6UXYpL7zhqelGJL7IAq6Pu5UYFT55zVlXXmgzLOXQfpQjXA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [android]
- '@oxc-transform/binding-darwin-arm64@0.95.0':
- resolution: {integrity: sha512-OUUaYZVss8tyDZZ7TGr2vnH3+i3Ouwsx0frQRGkiePNatXxaJJ3NS5+Kwgi9hh3WryXaQz2hWji4AM2RHYE7Cg==}
+ '@oxc-transform/binding-darwin-arm64@0.102.0':
+ resolution: {integrity: sha512-xmsBCk/NwE0khy8h6wLEexiS5abCp1ZqJUNHsAovJdGgIW21oGwhiC3VYg1vNLbq+zEXwOHuphVuNEYfBwyNTw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [darwin]
- '@oxc-transform/binding-darwin-x64@0.95.0':
- resolution: {integrity: sha512-49UPEgIlgWUndwcP3LH6dvmOewZ92DxCMpFMo11JhUlmNJxA3sjVImEBRB56/tJ+XF+xnya9kB1oCW4yRY+mRw==}
+ '@oxc-transform/binding-darwin-x64@0.102.0':
+ resolution: {integrity: sha512-EhBsiq8hSd5BRjlWACB9MxTUiZT2He1s1b3tRP8k3lB8ZTt6sXnDXIWhxRmmM0h//xe6IJ2HuMlbvjXPo/tATg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [darwin]
- '@oxc-transform/binding-freebsd-x64@0.95.0':
- resolution: {integrity: sha512-lNKrHKaDEm8pbKlVbn0rv2L97O0lbA0Tsrxx4GF/HhmdW+NgwGU1pMzZ4tB2QcylbqgKxOB+v9luebHyh1jfgA==}
+ '@oxc-transform/binding-freebsd-x64@0.102.0':
+ resolution: {integrity: sha512-eujvuYf0x7BFgKyFecbXUa2JBEXT4Ss6vmyrrhVdN07jaeJRiobaKAmeNXBkanoWL2KQLELJbSBgs1ykWYTkzg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [freebsd]
- '@oxc-transform/binding-linux-arm-gnueabihf@0.95.0':
- resolution: {integrity: sha512-+VWcLeeizI8IjU+V+o8AmzPuIMiTrGr0vrmXU3CEsV05MrywCuJU+f6ilPs3JBKno9VIwqvRpHB/z39sQabHWg==}
+ '@oxc-transform/binding-linux-arm-gnueabihf@0.102.0':
+ resolution: {integrity: sha512-2x7Ro356PHBVp1SS/dOsHBSnrfs5MlPYwhdKg35t6qixt2bv1kzEH0tDmn4TNEbdjOirmvOXoCTEWUvh8A4f4Q==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm]
os: [linux]
- '@oxc-transform/binding-linux-arm-musleabihf@0.95.0':
- resolution: {integrity: sha512-a59xPw84t6VwlvNEGcmuw3feGcKcWOC7uB8oePJ/BVSAV1yayLoB3k6JASwLTZ7N/PNPNUhcw1jDxowgAfBJfg==}
- engines: {node: ^20.19.0 || >=22.12.0}
- cpu: [arm]
- os: [linux]
-
- '@oxc-transform/binding-linux-arm64-gnu@0.95.0':
- resolution: {integrity: sha512-NLdrFuEHlmbiC1M1WESFV4luUcB/84GXi+cbnRXhgMjIW/CThRVJ989eTJy59QivkVlLcJSKTiKiKCt0O6TTlQ==}
+ '@oxc-transform/binding-linux-arm64-gnu@0.102.0':
+ resolution: {integrity: sha512-Rz/RbPvT4QwcHKIQ/cOt6Lwl4c7AhK2b6whZfyL6oJ7Uz8UiVl1BCwk8thedrB5h+FEykmaPHoriW1hmBev60g==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
- '@oxc-transform/binding-linux-arm64-musl@0.95.0':
- resolution: {integrity: sha512-GL0ffCPW8JlFI0/jeSgCY665yDdojHxA0pbYG+k8oEHOWCYZUZK9AXL+r0oerNEWYJ8CRB+L5Yq87ZtU/YUitw==}
+ '@oxc-transform/binding-linux-arm64-musl@0.102.0':
+ resolution: {integrity: sha512-I08iWABrN7zakn3wuNIBWY3hALQGsDLPQbZT1mXws7tyiQqJNGe49uS0/O50QhX3KXj+mbRGsmjVXLXGJE1CVQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
- '@oxc-transform/binding-linux-riscv64-gnu@0.95.0':
- resolution: {integrity: sha512-tbH7LaClSmN3YFVo1UjMSe7D6gkb5f+CMIbj9i873UUZomVRmAjC4ygioObfzM+sj/tX0WoTXx5L1YOfQkHL6Q==}
+ '@oxc-transform/binding-linux-riscv64-gnu@0.102.0':
+ resolution: {integrity: sha512-9+SYW1ARAF6Oj/82ayoqKRe8SI7O1qvzs3Y0kijvhIqAaaZWcFRjI5DToyWRAbnzTtHlMcSllZLXNYdmxBjFxA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [riscv64]
os: [linux]
- '@oxc-transform/binding-linux-s390x-gnu@0.95.0':
- resolution: {integrity: sha512-8jMqiURWa0iTiPMg7BWaln89VdhhWzNlPyKM90NaFVVhBIKCr2UEhrQWdpBw/E9C8uWf/4VabBEhfPMK+0yS4w==}
+ '@oxc-transform/binding-linux-s390x-gnu@0.102.0':
+ resolution: {integrity: sha512-HV9nTyQw0TTKYPu+gBhaJBioomiM9O4LcGXi+s5IylCGG6imP0/U13q/9xJnP267QFmiWWqnnSFcv0QAWCyh8A==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [s390x]
os: [linux]
- '@oxc-transform/binding-linux-x64-gnu@0.95.0':
- resolution: {integrity: sha512-D5ULJ2uWipsTgfvHIvqmnGkCtB3Fyt2ZN7APRjVO+wLr+HtmnaWddKsLdrRWX/m/6nQ2xQdoQekdJrokYK9LtQ==}
+ '@oxc-transform/binding-linux-x64-gnu@0.102.0':
+ resolution: {integrity: sha512-4wcZ08mmdFk8OjsnglyeYGu5PW3TDh87AmcMOi7tZJ3cpJjfzwDfY27KTEUx6G880OpjAiF36OFSPwdKTKgp2g==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
- '@oxc-transform/binding-linux-x64-musl@0.95.0':
- resolution: {integrity: sha512-DmCGU+FzRezES5wVAGVimZGzYIjMOapXbWpxuz8M8p3nMrfdBEQ5/tpwBp2vRlIohhABy4vhHJByl4c64ENCGQ==}
+ '@oxc-transform/binding-linux-x64-musl@0.102.0':
+ resolution: {integrity: sha512-rUHZSZBw0FUnUgOhL/Rs7xJz9KjH2eFur/0df6Lwq/isgJc/ggtBtFoZ+y4Fb8ON87a3Y2gS2LT7SEctX0XdPQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
- '@oxc-transform/binding-wasm32-wasi@0.95.0':
- resolution: {integrity: sha512-tSo1EU4Whd1gXyae7cwSDouhppkuz6Jkd5LY8Uch9VKsHVSRhDLDW19Mq6VSwtyPxDPTJnJ2jYJWm+n8SYXiXQ==}
+ '@oxc-transform/binding-openharmony-arm64@0.102.0':
+ resolution: {integrity: sha512-98y4tccTQ/pA+r2KA/MEJIZ7J8TNTJ4aCT4rX8kWK4pGOko2YsfY3Ru9DVHlLDwmVj7wP8Z4JNxdBrAXRvK+0g==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@oxc-transform/binding-wasm32-wasi@0.102.0':
+ resolution: {integrity: sha512-M6myOXxHty3L2TJEB1NlJPtQm0c0LmivAxcGv/+DSDadOoB/UnOUbjM8W2Utlh5IYS9ARSOjqHtBiPYLWJ15XA==}
engines: {node: '>=14.0.0'}
cpu: [wasm32]
- '@oxc-transform/binding-win32-arm64-msvc@0.95.0':
- resolution: {integrity: sha512-6eaxlgj+J5n8zgJTSugqdPLBtKGRqvxYLcvHN8b+U9hVhF/2HG/JCOrcSYV/XgWGNPQiaRVzpR3hGhmFro9QTw==}
+ '@oxc-transform/binding-win32-arm64-msvc@0.102.0':
+ resolution: {integrity: sha512-jzaA1lLiMXiJs4r7E0BHRxTPiwAkpoCfSNRr8npK/SqL4UQE4cSz3WDTX5wJWRrN2U+xqsDGefeYzH4reI8sgw==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [win32]
- '@oxc-transform/binding-win32-x64-msvc@0.95.0':
- resolution: {integrity: sha512-Y8JY79A7fTuBjEXZFu+mHbHzgsV3uJDUuUKeGffpOwI1ayOGCKeBJTiMhksYkiir1xS+DkGLEz73+xse9Is9rw==}
+ '@oxc-transform/binding-win32-x64-msvc@0.102.0':
+ resolution: {integrity: sha512-eYOm6mch+1cP9qlNkMdorfBFY8aEOxY/isqrreLmEWqF/hyXA0SbLKDigTbvh3JFKny/gXlHoCKckqfua4cwtg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [win32]
@@ -1336,14 +1414,17 @@ packages:
'@poppinss/dumper@0.6.4':
resolution: {integrity: sha512-iG0TIdqv8xJ3Lt9O8DrPRxw1MRLjNpoqiSGU03P/wNLP/s0ra0udPJ1J2Tx5M0J3H/cVyEgpbn8xUKRY9j59kQ==}
+ '@poppinss/dumper@0.6.5':
+ resolution: {integrity: sha512-NBdYIb90J7LfOI32dOewKI1r7wnkiH6m920puQ3qHUeZkxNkQiFnXVWoE6YtFSv6QOiPPf7ys6i+HWWecDz7sw==}
+
'@poppinss/exception@1.2.2':
resolution: {integrity: sha512-m7bpKCD4QMlFCjA/nKTs23fuvoVFoA83brRKmObCUNmi/9tVu8Ve3w4YQAnJu4q3Tjf5fr685HYIC/IA2zHRSg==}
- '@rolldown/pluginutils@1.0.0-beta.29':
- resolution: {integrity: sha512-NIJgOsMjbxAXvoGq/X0gD7VPMQ8j9g0BiDaNjVNVjvl+iKXxL3Jre0v31RmBYeLEmkbj2s02v8vFTbUXi5XS2Q==}
+ '@rolldown/pluginutils@1.0.0-beta.53':
+ resolution: {integrity: sha512-vENRlFU4YbrwVqNDZ7fLvy+JR1CRkyr01jhSiDpE1u6py3OMzQfztQU2jxykW3ALNxO4kSlqIDeYyD0Y9RcQeQ==}
- '@rolldown/pluginutils@1.0.0-beta.45':
- resolution: {integrity: sha512-Le9ulGCrD8ggInzWw/k2J8QcbPz7eGIOWqfJ2L+1R0Opm7n6J37s2hiDWlh6LJN0Lk9L5sUzMvRHKW7UxBZsQA==}
+ '@rolldown/pluginutils@1.0.0-beta.59':
+ resolution: {integrity: sha512-aoh6LAJRyhtazs98ydgpNOYstxUlsOV1KJXcpf/0c0vFcUA8uyd/hwKRhqE/AAPNqAho9RliGsvitCoOzREoVA==}
'@rollup/plugin-alias@5.1.1':
resolution: {integrity: sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==}
@@ -1399,6 +1480,15 @@ packages:
rollup:
optional: true
+ '@rollup/plugin-replace@6.0.3':
+ resolution: {integrity: sha512-J4RZarRvQAm5IF0/LwUUg+obsm+xZhYnbMXmXROyoSE1ATJe3oXSb9L5MMppdxP2ylNSjv6zFBwKYjcKMucVfA==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+
'@rollup/plugin-terser@0.4.4':
resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==}
engines: {node: '>=14.0.0'}
@@ -1527,9 +1617,6 @@ packages:
cpu: [x64]
os: [win32]
- '@sec-ant/readable-stream@0.4.1':
- resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==}
-
'@sindresorhus/is@7.1.0':
resolution: {integrity: sha512-7F/yz2IphV39hiS2zB4QYVkivrptHHh0K8qJJd9HhuWSdvf8AN7NpebW3CcDZDBQsUPMoDKWsY2WWgW7bqOcfA==}
engines: {node: '>=18'}
@@ -1538,11 +1625,14 @@ packages:
resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==}
engines: {node: '>=18'}
+ '@speed-highlight/core@1.2.14':
+ resolution: {integrity: sha512-G4ewlBNhUtlLvrJTb88d2mdy2KRijzs4UhnlrOSRT4bmjh/IqNElZa3zkrZ+TC47TwtlDWzVLFADljF1Ijp5hA==}
+
'@speed-highlight/core@1.2.8':
resolution: {integrity: sha512-IGytNtnUnPIobIbOq5Y6LIlqiHNX+vnToQIS7lj6L5819C+rA8TXRDkkG8vePsiBOGcoW9R6i+dp2YBUKdB09Q==}
- '@standard-schema/spec@1.1.0':
- resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==}
+ '@stablelib/base64@1.0.1':
+ resolution: {integrity: sha512-1bnPQqSxSuc3Ii6MhBysoWCg58j97aUjuCSZrGSmDxNqtytIi0k8utUenAwTZN4V5mXXYGsVUI9zeBqy+jBOSQ==}
'@swc/helpers@0.5.17':
resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
@@ -1637,9 +1727,37 @@ packages:
peerDependencies:
vite: ^5.2.0 || ^6 || ^7
+ '@tanstack/devtools-event-client@0.4.0':
+ resolution: {integrity: sha512-RPfGuk2bDZgcu9bAJodvO2lnZeHuz4/71HjZ0bGb/SPg8+lyTA+RLSKQvo7fSmPSi8/vcH3aKQ8EM9ywf1olaw==}
+ engines: {node: '>=18'}
+
+ '@tanstack/form-core@1.27.7':
+ resolution: {integrity: sha512-nvogpyE98fhb0NDw1Bf2YaCH+L7ZIUgEpqO9TkHucDn6zg3ni521boUpv0i8HKIrmmFwDYjWZoCnrgY4HYWTkw==}
+
+ '@tanstack/pacer-lite@0.1.1':
+ resolution: {integrity: sha512-y/xtNPNt/YeyoVxE/JCx+T7yjEzpezmbb+toK8DDD1P4m7Kzs5YR956+7OKexG3f8aXgC3rLZl7b1V+yNUSy5w==}
+ engines: {node: '>=18'}
+
+ '@tanstack/store@0.7.7':
+ resolution: {integrity: sha512-xa6pTan1bcaqYDS9BDpSiS63qa6EoDkPN9RsRaxHuDdVDNntzq3xNwR5YKTU/V3SkSyC9T4YVOPh2zRQN0nhIQ==}
+
'@tanstack/virtual-core@3.13.12':
resolution: {integrity: sha512-1YBOJfRHV4sXUmWsFSf5rQor4Ss82G8dQWLRbnk3GA4jeP8hQt1hxXh0tmflpC0dz3VgEv/1+qwPyLeWkQuPFA==}
+ '@tanstack/vue-form@1.27.7':
+ resolution: {integrity: sha512-wET2d3R/9GYGgBHMwWnKlHuGczpyTNm7bfkJyZahVDLLm7tI/6HBT970lBN44obvD4Ayu/FX0jF0ARI5JGJgpA==}
+ peerDependencies:
+ vue: ^3.4.0
+
+ '@tanstack/vue-store@0.7.7':
+ resolution: {integrity: sha512-6iv1Odmreff6TgEjQN11xoddsCnpn+/ul7MZ2DadHT3/RSY1YdoFafK8lCa889MEFi/5K0zAhf8psIkgTrRa9A==}
+ peerDependencies:
+ '@vue/composition-api': ^1.2.1
+ vue: ^2.5.0 || ^3.0.0
+ peerDependenciesMeta:
+ '@vue/composition-api':
+ optional: true
+
'@tanstack/vue-virtual@3.13.12':
resolution: {integrity: sha512-vhF7kEU9EXWXh+HdAwKJ2m3xaOnTTmgcdXcF2pim8g4GvI7eRrk2YRuV5nUlZnd/NbCIX4/Ja2OZu5EjJL06Ww==}
peerDependencies:
@@ -1670,6 +1788,9 @@ packages:
'@types/resolve@1.20.2':
resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==}
+ '@types/trusted-types@2.0.7':
+ resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==}
+
'@types/web-bluetooth@0.0.21':
resolution: {integrity: sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==}
@@ -1683,25 +1804,25 @@ packages:
engines: {node: '>=18'}
hasBin: true
- '@vitejs/plugin-vue-jsx@5.1.1':
- resolution: {integrity: sha512-uQkfxzlF8SGHJJVH966lFTdjM/lGcwJGzwAHpVqAPDD/QcsqoUGa+q31ox1BrUfi+FLP2ChVp7uLXE3DkHyDdQ==}
+ '@vitejs/plugin-vue-jsx@5.1.3':
+ resolution: {integrity: sha512-I6Zr8cYVr5WHMW5gNOP09DNqW9rgO8RX73Wa6Czgq/0ndpTfJM4vfDChfOT1+3KtdrNqilNBtNlFwVeB02ZzGw==}
engines: {node: ^20.19.0 || >=22.12.0}
peerDependencies:
- vite: ^5.0.0 || ^6.0.0 || ^7.0.0
+ vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
vue: ^3.0.0
- '@vitejs/plugin-vue@6.0.1':
- resolution: {integrity: sha512-+MaE752hU0wfPFJEUAIxqw18+20euHHdxVtMvbFcOEpjEyfqXH/5DCoTHiVJ0J29EhTJdoTkjEv5YBKU9dnoTw==}
+ '@vitejs/plugin-vue@6.0.3':
+ resolution: {integrity: sha512-TlGPkLFLVOY3T7fZrwdvKpjprR3s4fxRln0ORDo1VQ7HHyxJwTlrjKU3kpVWTlaAjIEuCTokmjkZnr8Tpc925w==}
engines: {node: ^20.19.0 || >=22.12.0}
peerDependencies:
- vite: ^5.0.0 || ^6.0.0 || ^7.0.0
+ vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
vue: ^3.2.25
- '@volar/language-core@2.4.23':
- resolution: {integrity: sha512-hEEd5ET/oSmBC6pi1j6NaNYRWoAiDhINbT8rmwtINugR39loROSlufGdYMF9TaKGfz+ViGs1Idi3mAhnuPcoGQ==}
+ '@volar/language-core@2.4.27':
+ resolution: {integrity: sha512-DjmjBWZ4tJKxfNC1F6HyYERNHPYS7L7OPFyCrestykNdUZMFYzI9WTyvwPcaNaHlrEUwESHYsfEw3isInncZxQ==}
- '@volar/source-map@2.4.23':
- resolution: {integrity: sha512-Z1Uc8IB57Lm6k7q6KIDu/p+JWtf3xsXJqAX/5r18hYOTpJyBn0KXUR8oTJ4WFYOcDzWC9n3IflGgHowx6U6z9Q==}
+ '@volar/source-map@2.4.27':
+ resolution: {integrity: sha512-ynlcBReMgOZj2i6po+qVswtDUeeBRCTgDurjMGShbm8WYZgJ0PA4RmtebBJ0BCYol1qPv3GQF6jK7C9qoVc7lg==}
'@vue-macros/common@3.1.1':
resolution: {integrity: sha512-afW2DMjgCBVs33mWRlz7YsGHzoEEupnl0DK5ZTKsgziAlLh5syc5m+GM7eqeYrgiQpwMaVxa1fk73caCvPxyAw==}
@@ -1712,76 +1833,106 @@ packages:
vue:
optional: true
- '@vue/babel-helper-vue-transform-on@1.5.0':
- resolution: {integrity: sha512-0dAYkerNhhHutHZ34JtTl2czVQHUNWv6xEbkdF5W+Yrv5pCWsqjeORdOgbtW2I9gWlt+wBmVn+ttqN9ZxR5tzA==}
+ '@vue/babel-helper-vue-transform-on@2.0.1':
+ resolution: {integrity: sha512-uZ66EaFbnnZSYqYEyplWvn46GhZ1KuYSThdT68p+am7MgBNbQ3hphTL9L+xSIsWkdktwhPYLwPgVWqo96jDdRA==}
- '@vue/babel-plugin-jsx@1.5.0':
- resolution: {integrity: sha512-mneBhw1oOqCd2247O0Yw/mRwC9jIGACAJUlawkmMBiNmL4dGA2eMzuNZVNqOUfYTa6vqmND4CtOPzmEEEqLKFw==}
+ '@vue/babel-plugin-jsx@2.0.1':
+ resolution: {integrity: sha512-a8CaLQjD/s4PVdhrLD/zT574ZNPnZBOY+IhdtKWRB4HRZ0I2tXBi5ne7d9eCfaYwp5gU5+4KIyFTV1W1YL9xZA==}
peerDependencies:
'@babel/core': ^7.0.0-0
peerDependenciesMeta:
'@babel/core':
optional: true
- '@vue/babel-plugin-resolve-type@1.5.0':
- resolution: {integrity: sha512-Wm/60o+53JwJODm4Knz47dxJnLDJ9FnKnGZJbUUf8nQRAtt6P+undLUAVU3Ha33LxOJe6IPoifRQ6F/0RrU31w==}
+ '@vue/babel-plugin-resolve-type@2.0.1':
+ resolution: {integrity: sha512-ybwgIuRGRRBhOU37GImDoWQoz+TlSqap65qVI6iwg/J7FfLTLmMf97TS7xQH9I7Qtr/gp161kYVdhr1ZMraSYQ==}
peerDependencies:
'@babel/core': ^7.0.0-0
'@vue/compiler-core@3.5.22':
resolution: {integrity: sha512-jQ0pFPmZwTEiRNSb+i9Ow/I/cHv2tXYqsnHKKyCQ08irI2kdF5qmYedmF8si8mA7zepUFmJ2hqzS8CQmNOWOkQ==}
+ '@vue/compiler-core@3.5.26':
+ resolution: {integrity: sha512-vXyI5GMfuoBCnv5ucIT7jhHKl55Y477yxP6fc4eUswjP8FG3FFVFd41eNDArR+Uk3QKn2Z85NavjaxLxOC19/w==}
+
'@vue/compiler-dom@3.5.22':
resolution: {integrity: sha512-W8RknzUM1BLkypvdz10OVsGxnMAuSIZs9Wdx1vzA3mL5fNMN15rhrSCLiTm6blWeACwUwizzPVqGJgOGBEN/hA==}
+ '@vue/compiler-dom@3.5.26':
+ resolution: {integrity: sha512-y1Tcd3eXs834QjswshSilCBnKGeQjQXB6PqFn/1nxcQw4pmG42G8lwz+FZPAZAby6gZeHSt/8LMPfZ4Rb+Bd/A==}
+
'@vue/compiler-sfc@3.5.22':
resolution: {integrity: sha512-tbTR1zKGce4Lj+JLzFXDq36K4vcSZbJ1RBu8FxcDv1IGRz//Dh2EBqksyGVypz3kXpshIfWKGOCcqpSbyGWRJQ==}
+ '@vue/compiler-sfc@3.5.26':
+ resolution: {integrity: sha512-egp69qDTSEZcf4bGOSsprUr4xI73wfrY5oRs6GSgXFTiHrWj4Y3X5Ydtip9QMqiCMCPVwLglB9GBxXtTadJ3mA==}
+
'@vue/compiler-ssr@3.5.22':
resolution: {integrity: sha512-GdgyLvg4R+7T8Nk2Mlighx7XGxq/fJf9jaVofc3IL0EPesTE86cP/8DD1lT3h1JeZr2ySBvyqKQJgbS54IX1Ww==}
+ '@vue/compiler-ssr@3.5.26':
+ resolution: {integrity: sha512-lZT9/Y0nSIRUPVvapFJEVDbEXruZh2IYHMk2zTtEgJSlP5gVOqeWXH54xDKAaFS4rTnDeDBQUYDtxKyoW9FwDw==}
+
'@vue/devtools-api@6.6.4':
resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==}
'@vue/devtools-api@7.7.7':
resolution: {integrity: sha512-lwOnNBH2e7x1fIIbVT7yF5D+YWhqELm55/4ZKf45R9T8r9dE2AIOy8HKjfqzGsoTHFbWbr337O4E0A0QADnjBg==}
- '@vue/devtools-core@7.7.7':
- resolution: {integrity: sha512-9z9TLbfC+AjAi1PQyWX+OErjIaJmdFlbDHcD+cAMYKY6Bh5VlsAtCeGyRMrXwIlMEQPukvnWt3gZBLwTAIMKzQ==}
+ '@vue/devtools-core@8.0.5':
+ resolution: {integrity: sha512-dpCw8nl0GDBuiL9SaY0mtDxoGIEmU38w+TQiYEPOLhW03VDC0lfNMYXS/qhl4I0YlysGp04NLY4UNn6xgD0VIQ==}
peerDependencies:
vue: ^3.0.0
- '@vue/devtools-kit@7.7.7':
- resolution: {integrity: sha512-wgoZtxcTta65cnZ1Q6MbAfePVFxfM+gq0saaeytoph7nEa7yMXoi6sCPy4ufO111B9msnw0VOWjPEFCXuAKRHA==}
+ '@vue/devtools-kit@7.7.9':
+ resolution: {integrity: sha512-PyQ6odHSgiDVd4hnTP+aDk2X4gl2HmLDfiyEnn3/oV+ckFDuswRs4IbBT7vacMuGdwY/XemxBoh302ctbsptuA==}
- '@vue/devtools-shared@7.7.7':
- resolution: {integrity: sha512-+udSj47aRl5aKb0memBvcUG9koarqnxNM5yjuREvqwK6T3ap4mn3Zqqc17QrBFTqSMjr3HK1cvStEZpMDpfdyw==}
+ '@vue/devtools-kit@8.0.5':
+ resolution: {integrity: sha512-q2VV6x1U3KJMTQPUlRMyWEKVbcHuxhqJdSr6Jtjz5uAThAIrfJ6WVZdGZm5cuO63ZnSUz0RCsVwiUUb0mDV0Yg==}
- '@vue/language-core@3.1.2':
- resolution: {integrity: sha512-PyFDCqpdfYUT+oMLqcc61oHfJlC6yjhybaefwQjRdkchIihToOEpJ2Wu/Ebq2yrnJdd1EsaAvZaXVAqcxtnDxQ==}
- peerDependencies:
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
+ '@vue/devtools-shared@7.7.9':
+ resolution: {integrity: sha512-iWAb0v2WYf0QWmxCGy0seZNDPdO3Sp5+u78ORnyeonS6MT4PC7VPrryX2BpMJrwlDeaZ6BD4vP4XKjK0SZqaeA==}
+
+ '@vue/devtools-shared@8.0.5':
+ resolution: {integrity: sha512-bRLn6/spxpmgLk+iwOrR29KrYnJjG9DGpHGkDFG82UM21ZpJ39ztUT9OXX3g+usW7/b2z+h46I9ZiYyB07XMXg==}
+
+ '@vue/language-core@3.2.2':
+ resolution: {integrity: sha512-5DAuhxsxBN9kbriklh3Q5AMaJhyOCNiQJvCskN9/30XOpdLiqZU9Q+WvjArP17ubdGEyZtBzlIeG5nIjEbNOrQ==}
'@vue/reactivity@3.5.22':
resolution: {integrity: sha512-f2Wux4v/Z2pqc9+4SmgZC1p73Z53fyD90NFWXiX9AKVnVBEvLFOWCEgJD3GdGnlxPZt01PSlfmLqbLYzY/Fw4A==}
+ '@vue/reactivity@3.5.26':
+ resolution: {integrity: sha512-9EnYB1/DIiUYYnzlnUBgwU32NNvLp/nhxLXeWRhHUEeWNTn1ECxX8aGO7RTXeX6PPcxe3LLuNBFoJbV4QZ+CFQ==}
+
'@vue/runtime-core@3.5.22':
resolution: {integrity: sha512-EHo4W/eiYeAzRTN5PCextDUZ0dMs9I8mQ2Fy+OkzvRPUYQEyK9yAjbasrMCXbLNhF7P0OUyivLjIy0yc6VrLJQ==}
+ '@vue/runtime-core@3.5.26':
+ resolution: {integrity: sha512-xJWM9KH1kd201w5DvMDOwDHYhrdPTrAatn56oB/LRG4plEQeZRQLw0Bpwih9KYoqmzaxF0OKSn6swzYi84e1/Q==}
+
'@vue/runtime-dom@3.5.22':
resolution: {integrity: sha512-Av60jsryAkI023PlN7LsqrfPvwfxOd2yAwtReCjeuugTJTkgrksYJJstg1e12qle0NarkfhfFu1ox2D+cQotww==}
+ '@vue/runtime-dom@3.5.26':
+ resolution: {integrity: sha512-XLLd/+4sPC2ZkN/6+V4O4gjJu6kSDbHAChvsyWgm1oGbdSO3efvGYnm25yCjtFm/K7rrSDvSfPDgN1pHgS4VNQ==}
+
'@vue/server-renderer@3.5.22':
resolution: {integrity: sha512-gXjo+ao0oHYTSswF+a3KRHZ1WszxIqO7u6XwNHqcqb9JfyIL/pbWrrh/xLv7jeDqla9u+LK7yfZKHih1e1RKAQ==}
peerDependencies:
vue: 3.5.22
+ '@vue/server-renderer@3.5.26':
+ resolution: {integrity: sha512-TYKLXmrwWKSodyVuO1WAubucd+1XlLg4set0YoV+Hu8Lo79mp/YMwWV5mC5FgtsDxX3qo1ONrxFaTP1OQgy1uA==}
+ peerDependencies:
+ vue: 3.5.26
+
'@vue/shared@3.5.22':
resolution: {integrity: sha512-F4yc6palwq3TT0u+FYf0Ns4Tfl9GRFURDN2gWG7L1ecIaS/4fCIuFOjMTnCyjsu/OK6vaDKLCrGAa+KvvH+h4w==}
+ '@vue/shared@3.5.26':
+ resolution: {integrity: sha512-7Z6/y3uFI5PRoKeorTOSXKcDj0MSasfNNltcslbFrPpcw6aXRUALq4IfJlaTRspiWIUOEZbrpM+iQGmCOiWe4A==}
+
'@vueuse/core@12.8.2':
resolution: {integrity: sha512-HbvCmZdzAu3VGi/pWYm5Ut+Kd9mn1ZHnn4L5G8kOQTPs/IwIAmJoBrmYk2ckLArgMXZj0AW3n5CAejLUO+PhdQ==}
@@ -1879,8 +2030,8 @@ packages:
async@3.2.6:
resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==}
- autoprefixer@10.4.21:
- resolution: {integrity: sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==}
+ autoprefixer@10.4.23:
+ resolution: {integrity: sha512-YYTXSFulfwytnjAPlw8QHncHJmlvFKtczb8InXaAx9Q0LbfDnfEYDE55omerIJKihhmU61Ft+cAOSzQVaBUmeA==}
engines: {node: ^10 || ^12 || >=14}
hasBin: true
peerDependencies:
@@ -1912,78 +2063,19 @@ packages:
resolution: {integrity: sha512-JMWsdF+O8Orq3EMukbUN1QfbLK9mX2CkUmQBcW2T0s8OmdAUL5LLM/6wFwSrqXzlXB13yhyK9gTKS1rIizOduQ==}
hasBin: true
- better-auth@1.4.7:
- resolution: {integrity: sha512-kVmDQxzqGwP4FFMOYpS5I7oAaoFW3hwooUAAtcbb2DrOYv5EUvRUDJbTMaPoMTj7URjNDQ6vG9gcCS1Q+0aVBw==}
- peerDependencies:
- '@lynx-js/react': '*'
- '@prisma/client': ^5.22.0
- '@sveltejs/kit': ^2.0.0
- '@tanstack/react-start': ^1.0.0
- better-sqlite3: ^12.4.1
- drizzle-kit: ^0.31.4
- drizzle-orm: ^0.41.0
- mongodb: ^6.18.0
- mysql2: ^3.14.4
- next: ^14.0.0 || ^15.0.0 || ^16.0.0
- pg: ^8.16.3
- prisma: ^5.22.0
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
- solid-js: ^1.0.0
- svelte: ^4.0.0 || ^5.0.0
- vitest: ^4.0.15
- vue: ^3.0.0
- peerDependenciesMeta:
- '@lynx-js/react':
- optional: true
- '@prisma/client':
- optional: true
- '@sveltejs/kit':
- optional: true
- '@tanstack/react-start':
- optional: true
- better-sqlite3:
- optional: true
- drizzle-kit:
- optional: true
- drizzle-orm:
- optional: true
- mongodb:
- optional: true
- mysql2:
- optional: true
- next:
- optional: true
- pg:
- optional: true
- prisma:
- optional: true
- react:
- optional: true
- react-dom:
- optional: true
- solid-js:
- optional: true
- svelte:
- optional: true
- vitest:
- optional: true
- vue:
- optional: true
+ baseline-browser-mapping@2.9.12:
+ resolution: {integrity: sha512-Mij6Lij93pTAIsSYy5cyBQ975Qh9uLEc5rwGTpomiZeXZL9yIS6uORJakb3ScHgfs0serMMfIbXzokPMuEiRyw==}
+ hasBin: true
- better-call@1.1.5:
- resolution: {integrity: sha512-nQJ3S87v6wApbDwbZ++FrQiSiVxWvZdjaO+2v6lZJAG2WWggkB2CziUDjPciz3eAt9TqfRursIQMZIcpkBnvlw==}
- peerDependencies:
- zod: ^4.0.0
- peerDependenciesMeta:
- zod:
- optional: true
+ binary-extensions@2.3.0:
+ resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
+ engines: {node: '>=8'}
bindings@1.5.0:
resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==}
- birpc@2.6.1:
- resolution: {integrity: sha512-LPnFhlDpdSH6FJhJyn4M0kFO7vtQ5iPw24FnG0y21q09xC7e8+1LeR31S1MAIrDAHp4m7aas4bEkTDTvMAtebQ==}
+ birpc@2.9.0:
+ resolution: {integrity: sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw==}
boolbase@1.0.0:
resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
@@ -2000,6 +2092,11 @@ packages:
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true
+ browserslist@4.28.1:
+ resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==}
+ engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+ hasBin: true
+
buffer-crc32@1.0.0:
resolution: {integrity: sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==}
engines: {node: '>=8.0.0'}
@@ -2022,6 +2119,14 @@ packages:
magicast:
optional: true
+ c12@3.3.3:
+ resolution: {integrity: sha512-750hTRvgBy5kcMNPdh95Qo+XUBeGo8C7nsKSmedDmaQI+E0r82DwHeM6vBewDe4rGFbnxoa4V9pw+sPh5+Iz8Q==}
+ peerDependencies:
+ magicast: '*'
+ peerDependenciesMeta:
+ magicast:
+ optional: true
+
cac@6.7.14:
resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
engines: {node: '>=8'}
@@ -2032,10 +2137,21 @@ packages:
caniuse-lite@1.0.30001751:
resolution: {integrity: sha512-A0QJhug0Ly64Ii3eIqHu5X51ebln3k4yTUkY1j8drqpWHVreg/VLijN48cZ1bYPiqOQuqpkIKnzr/Ul8V+p6Cw==}
+ caniuse-lite@1.0.30001762:
+ resolution: {integrity: sha512-PxZwGNvH7Ak8WX5iXzoK1KPZttBXNPuaOvI2ZYU7NrlM+d9Ov+TUvlLOBNGzVXAntMSMMlJPd+jY6ovrVjSmUw==}
+
+ chokidar@3.6.0:
+ resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
+ engines: {node: '>= 8.10.0'}
+
chokidar@4.0.3:
resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
engines: {node: '>= 14.16.0'}
+ chokidar@5.0.0:
+ resolution: {integrity: sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==}
+ engines: {node: '>= 20.19.0'}
+
chownr@3.0.0:
resolution: {integrity: sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==}
engines: {node: '>=18'}
@@ -2050,10 +2166,6 @@ packages:
resolution: {integrity: sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==}
engines: {node: '>=18'}
- clipboardy@5.0.0:
- resolution: {integrity: sha512-MQfKHaD09eP80Pev4qBxZLbxJK/ONnqfSYAPlCmPh+7BDboYtO/3BmB6HGzxDIT0SlTRc2tzS8lQqfcdLtZ0Kg==}
- engines: {node: '>=20'}
-
cliui@8.0.1:
resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
engines: {node: '>=12'}
@@ -2120,6 +2232,9 @@ packages:
resolution: {integrity: sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==}
engines: {node: '>=18'}
+ copy-paste@2.2.0:
+ resolution: {integrity: sha512-jqSL4r9DSeiIvJZStLzY/sMLt9ToTM7RsK237lYOTG+KcbQJHGala3R1TUpa8h1p9adswVgIdV4qGbseVhL4lg==}
+
core-util-is@1.0.3:
resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
@@ -2172,8 +2287,8 @@ packages:
engines: {node: '>=4'}
hasBin: true
- cssnano-preset-default@7.0.9:
- resolution: {integrity: sha512-tCD6AAFgYBOVpMBX41KjbvRh9c2uUjLXRyV7KHSIrwHiq5Z9o0TFfUCoM3TwVrRsRteN3sVXGNvjVNxYzkpTsA==}
+ cssnano-preset-default@7.0.10:
+ resolution: {integrity: sha512-6ZBjW0Lf1K1Z+0OKUAUpEN62tSXmYChXWi2NAA0afxEVsj9a+MbcB1l5qel6BHJHmULai2fCGRthCeKSFbScpA==}
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
peerDependencies:
postcss: ^8.4.32
@@ -2184,8 +2299,8 @@ packages:
peerDependencies:
postcss: ^8.4.32
- cssnano@7.1.1:
- resolution: {integrity: sha512-fm4D8ti0dQmFPeF8DXSAA//btEmqCOgAc/9Oa3C1LW94h5usNrJEfrON7b4FkPZgnDEn6OUs5NdxiJZmAtGOpQ==}
+ cssnano@7.1.2:
+ resolution: {integrity: sha512-HYOPBsNvoiFeR1eghKD5C3ASm64v9YVyJB4Ivnl2gqKoQYvjjN/G0rztvKQq8OxocUtC6sjqY8jwYngIB4AByA==}
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
peerDependencies:
postcss: ^8.4.32
@@ -2197,6 +2312,9 @@ packages:
csstype@3.1.3:
resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
+ csstype@3.2.3:
+ resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==}
+
db0@0.3.4:
resolution: {integrity: sha512-RiXXi4WaNzPTHEOu8UPQKMooIbqOEyqA1t7Z6MsdxSCeb8iUC9ko3LcmsLmeUt2SM5bctfArZKkRQggKZz7JNw==}
peerDependencies:
@@ -2260,6 +2378,10 @@ packages:
resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
engines: {node: '>= 0.8'}
+ dequal@2.0.3:
+ resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
+ engines: {node: '>=6'}
+
destr@2.0.5:
resolution: {integrity: sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==}
@@ -2272,8 +2394,8 @@ packages:
resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==}
engines: {node: '>=8'}
- devalue@5.4.2:
- resolution: {integrity: sha512-MwPZTKEPK2k8Qgfmqrd48ZKVvzSQjgW0lXLxiIBA8dQjtf/6mw6pggHNLcyDKyf+fI6eXxlQwPsfaCMTU5U+Bw==}
+ devalue@5.6.1:
+ resolution: {integrity: sha512-jDwizj+IlEZBunHcOuuFVBnIMPAEHvTsJj0BcIp94xYguLRVBcXO853px/MyIJvbVzWdsGvrRweIUWJw8hBP7A==}
diff@8.0.2:
resolution: {integrity: sha512-sSuxWU5j5SR9QQji/o2qMvqRNYRDOcBTgsJ/DeCf4iSN4gW+gNMXM7wFIP+fdXZxoNiAnHUTGjCr+TSWXdRDKg==}
@@ -2289,6 +2411,9 @@ packages:
resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==}
engines: {node: '>= 4'}
+ dompurify@3.2.7:
+ resolution: {integrity: sha512-WhL/YuveyGXJaerVlMYGWhvQswa7myDG17P7Vu65EWC05o8vfeNbvNf4d/BOvH99+ZW+LlQsc1GDKMa1vNK6dw==}
+
domutils@3.2.2:
resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==}
@@ -2412,6 +2537,9 @@ packages:
electron-to-chromium@1.5.241:
resolution: {integrity: sha512-ILMvKX/ZV5WIJzzdtuHg8xquk2y0BOGlFOxBVwTpbiXqWIH0hamG45ddU4R3PQ0gYu+xgo0vdHXHli9sHIGb4w==}
+ electron-to-chromium@1.5.267:
+ resolution: {integrity: sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw==}
+
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
@@ -2430,6 +2558,10 @@ packages:
resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
engines: {node: '>=0.12'}
+ entities@7.0.0:
+ resolution: {integrity: sha512-FDWG5cmEYf2Z00IkYRhbFrwIwvdFKH07uV8dvNy0omp/Qb1xcyCWp2UDtcwJF4QZZvk0sLudP6/hAu42TaqVhQ==}
+ engines: {node: '>=0.12'}
+
error-stack-parser-es@1.0.5:
resolution: {integrity: sha512-5qucVt2XcuGMcEGgWI7i+yZpmpByQ8J1lHhcL7PwqCwu9FPP3VUXzT4ltHe5i2z9dePwEHcDVOAfSnHsOlCXRA==}
@@ -2495,13 +2627,12 @@ packages:
resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
engines: {node: '>=16.17'}
- execa@9.6.0:
- resolution: {integrity: sha512-jpWzZ1ZhwUmeWRhS7Qv3mhpOhLfwI+uAX4e5fOcXqwMR7EcJ0pj2kV1CVzHVMX/LphnKWD3LObjZCoJ71lKpHw==}
- engines: {node: ^18.19.0 || >=20.5.0}
-
exsolve@1.0.7:
resolution: {integrity: sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==}
+ exsolve@1.0.8:
+ resolution: {integrity: sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==}
+
fast-fifo@1.3.2:
resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==}
@@ -2512,6 +2643,9 @@ packages:
fast-npm-meta@0.4.7:
resolution: {integrity: sha512-aZU3i3eRcSb2NCq8i6N6IlyiTyF6vqAqzBGl2NBF6ngNx/GIqfYbkLDIKZ4z4P0o/RmtsFnVqHwdrSm13o4tnQ==}
+ fast-sha256@1.3.0:
+ resolution: {integrity: sha512-n11RGP/lrWEFI/bWdygLxhI+pVeo1ZYIVwvvPkW7azl/rOy+F3HYRZ2K5zeE9mmkhQppyv9sQFx0JM9UabnpPQ==}
+
fastq@1.19.1:
resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==}
@@ -2524,10 +2658,6 @@ packages:
picomatch:
optional: true
- figures@6.1.0:
- resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==}
- engines: {node: '>=18'}
-
file-uri-to-path@1.0.0:
resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==}
@@ -2539,8 +2669,8 @@ packages:
resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
engines: {node: '>=14'}
- fraction.js@4.3.7:
- resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
+ fraction.js@5.3.4:
+ resolution: {integrity: sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==}
fresh@2.0.0:
resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==}
@@ -2573,10 +2703,6 @@ packages:
resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
engines: {node: '>=16'}
- get-stream@9.0.1:
- resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==}
- engines: {node: '>=18'}
-
get-tsconfig@4.13.0:
resolution: {integrity: sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==}
@@ -2594,6 +2720,9 @@ packages:
resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
engines: {node: '>= 6'}
+ glob-to-regexp@0.4.1:
+ resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
+
glob@10.4.5:
resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
hasBin: true
@@ -2642,9 +2771,9 @@ packages:
resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
engines: {node: '>=16.17.0'}
- human-signals@8.0.1:
- resolution: {integrity: sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ==}
- engines: {node: '>=18.18.0'}
+ iconv-lite@0.4.24:
+ resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
+ engines: {node: '>=0.10.0'}
ieee754@1.2.1:
resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
@@ -2673,6 +2802,10 @@ packages:
iron-webcrypto@1.2.1:
resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==}
+ is-binary-path@2.1.0:
+ resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
+ engines: {node: '>=8'}
+
is-core-module@2.16.1:
resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
engines: {node: '>= 0.4'}
@@ -2719,10 +2852,6 @@ packages:
resolution: {integrity: sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==}
engines: {node: '>=12'}
- is-plain-obj@4.1.0:
- resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
- engines: {node: '>=12'}
-
is-reference@1.2.1:
resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==}
@@ -2737,18 +2866,6 @@ packages:
resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- is-stream@4.0.1:
- resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==}
- engines: {node: '>=18'}
-
- is-unicode-supported@2.1.0:
- resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==}
- engines: {node: '>=18'}
-
- is-wayland@0.1.0:
- resolution: {integrity: sha512-QkbMsWkIfkrzOPxenwye0h56iAXirZYHG9eHVPb22fO9y+wPbaX/CHacOWBa/I++4ohTcByimhM1/nyCsH8KNA==}
- engines: {node: '>=20'}
-
is-what@5.5.0:
resolution: {integrity: sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==}
engines: {node: '>=18'}
@@ -2782,8 +2899,9 @@ packages:
resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==}
hasBin: true
- jose@6.1.3:
- resolution: {integrity: sha512-0TpaTfihd4QMNwrz/ob2Bp7X04yuxJkjRGi4aKmOqwhov54i6u79oCv7T+C7lo70MKH6BesI3vscD1yb/yzKXQ==}
+ js-cookie@3.0.5:
+ resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==}
+ engines: {node: '>=14'}
js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
@@ -2816,6 +2934,9 @@ packages:
knitwork@1.2.0:
resolution: {integrity: sha512-xYSH7AvuQ6nXkq42x0v5S8/Iry+cfulBz/DJQzhIyESdLD7425jXsPy4vn5cCXU+HhRN2kVw51Vd1K6/By4BQg==}
+ knitwork@1.3.0:
+ resolution: {integrity: sha512-4LqMNoONzR43B1W0ek0fhXMsDNW/zxa1NdFAVMY+k28pgZLovR4G3PB5MrpTxCy1QaZCqNoiaKPr5w5qZHfSNw==}
+
kysely@0.28.9:
resolution: {integrity: sha512-3BeXMoiOhpOwu62CiVpO6lxfq4eS6KMYfQdMsN/2kUCRNuF2YiEr7u0HLHaQU+O4Xu8YXE3bHVkwaQ85i72EuA==}
engines: {node: '>=20.0.0'}
@@ -2949,12 +3070,17 @@ packages:
magic-string@0.30.21:
resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}
- magicast@0.3.5:
- resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==}
-
magicast@0.5.0:
resolution: {integrity: sha512-D0cxqnb8DpO66P4LkD9ME6a4AhRK6A+xprXksD5vtsJN6G4zbzdI10vDaWCIyj3eLwjNZrQxUYB20FDhKrMEKQ==}
+ magicast@0.5.1:
+ resolution: {integrity: sha512-xrHS24IxaLrvuo613F719wvOIv9xPHFWQHuvGUBmPnCA/3MQxKI3b+r7n1jAoDHmsbC5bRhTZYR77invLAxVnw==}
+
+ marked@14.0.0:
+ resolution: {integrity: sha512-uIj4+faQ+MgHgwUW1l2PsPglZLOLOT1uErt06dAPtx2kjteLAkbsd/0FiYg/MGS+i7ZKLb7w2WClxHkzOOuryQ==}
+ engines: {node: '>= 18'}
+ hasBin: true
+
mdn-data@2.0.28:
resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==}
@@ -3019,6 +3145,9 @@ packages:
mocked-exports@0.1.1:
resolution: {integrity: sha512-aF7yRQr/Q0O2/4pIXm6PZ5G+jAd7QS4Yu8m+WEeEHGnbo+7mE36CbLSDQiXYV8bVL3NfmdeqPJct0tUlnjVSnA==}
+ monaco-editor@0.55.1:
+ resolution: {integrity: sha512-jz4x+TJNFHwHtwuV9vA9rMujcZRb0CEilTEwG2rRSpe/A7Jdkuj8xPKttCgOh+v/lkHy7HsZ64oj+q3xoAFl9A==}
+
mrmime@2.0.1:
resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==}
engines: {node: '>=10'}
@@ -3039,10 +3168,6 @@ packages:
engines: {node: ^18 || >=20}
hasBin: true
- nanostores@1.1.0:
- resolution: {integrity: sha512-yJBmDJr18xy47dbNVlHcgdPrulSn1nhSE6Ns9vTG+Nx9VPT6iV1MD6aQFp/t52zpf82FhLLTXAXr30NuCnxvwA==}
- engines: {node: ^20.0.0 || >=22.0.0}
-
nanotar@0.2.0:
resolution: {integrity: sha512-9ca1h0Xjvo9bEkE4UOxgAzLV0jHKe6LMaxo37ND2DAhhAtd0j8pR1Wxz+/goMrZO8AEZTWCmyaOsFI/W5AdpCQ==}
@@ -3085,6 +3210,9 @@ packages:
node-releases@2.0.26:
resolution: {integrity: sha512-S2M9YimhSjBSvYnlr5/+umAnPHE++ODwt5e2Ij6FoX45HA/s4vHdkDx1eax2pAPeAOqu4s9b7ppahsyEFdVqQA==}
+ node-releases@2.0.27:
+ resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==}
+
nopt@8.1.0:
resolution: {integrity: sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A==}
engines: {node: ^18.17.0 || >=20.5.0}
@@ -3094,10 +3222,6 @@ packages:
resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
engines: {node: '>=0.10.0'}
- normalize-range@0.1.2:
- resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
- engines: {node: '>=0.10.0'}
-
npm-run-path@5.3.0:
resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
@@ -3117,8 +3241,13 @@ packages:
nuxt-cron@1.8.0:
resolution: {integrity: sha512-XgNdounfdXNHOVlYTFDhc28yerwBP7+MP4Tk8GmC6GkxWo3nCWZ/pmqpan+tCmVVhUn6ltpe5KSCChWgl5P3kg==}
- nuxt@4.2.0:
- resolution: {integrity: sha512-4qzf2Ymf07dMMj50TZdNZgMqCdzDch8NY3NO2ClucUaIvvsr6wd9+JrDpI1CckSTHwqU37/dIPFpvIQZoeHoYA==}
+ nuxt-monaco-editor@1.4.0:
+ resolution: {integrity: sha512-uRvPr3FbuSFV4LIHNUJMTAJnrfggBVP+o8WsIJiN8iRK5u+ejN4Nhuz1u5bM90et30p0S3YYvvB/YNPsNKoD0g==}
+ peerDependencies:
+ monaco-editor: '*'
+
+ nuxt@4.2.2:
+ resolution: {integrity: sha512-n6oYFikgLEb70J4+K19jAzfx4exZcRSRX7yZn09P5qlf2Z59VNOBqNmaZO5ObzvyGUZ308SZfL629/Q2v2FVjw==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
@@ -3135,8 +3264,11 @@ packages:
engines: {node: ^14.16.0 || >=16.10.0}
hasBin: true
- ofetch@1.5.0:
- resolution: {integrity: sha512-A7llJ7eZyziA5xq9//3ZurA8OhFqtS99K5/V1sLBJ5j137CM/OAjlbA/TEJXBuOWwOfLqih+oH5U3ran4za1FQ==}
+ obug@2.1.1:
+ resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==}
+
+ ofetch@1.5.1:
+ resolution: {integrity: sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==}
ohash@2.0.11:
resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==}
@@ -3161,26 +3293,30 @@ packages:
resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
engines: {node: '>=12'}
- oxc-minify@0.95.0:
- resolution: {integrity: sha512-3k//447vscNk5JZXVnr2qv0QONjUU7F8Y6ewAPFVQNgdvYh3gCLYCRjQ/DR5kVkqxFgVa8R/FFBV3X5jlztSzw==}
+ oxc-minify@0.102.0:
+ resolution: {integrity: sha512-FphAHDyTCNepQbiQTSyWFMbNc9zdUmj1WBsoLwvZhWm7rEe/IeIKYKRhy75lWOjwFsi5/i4Qucq43hgs3n2Exw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+
+ oxc-parser@0.102.0:
+ resolution: {integrity: sha512-xMiyHgr2FZsphQ12ZCsXRvSYzmKXCm1ejmyG4GDZIiKOmhyt5iKtWq0klOfFsEQ6jcgbwrUdwcCVYzr1F+h5og==}
engines: {node: ^20.19.0 || >=22.12.0}
oxc-parser@0.93.0:
resolution: {integrity: sha512-ktMzTb3AqYCAsgnGTsWOhJYEBxGhxm6F+Ja9HsRibvVYBnA/BCiALAYLQk6M47mdEyybP9B3sOj56UDT+VIkMg==}
engines: {node: ^20.19.0 || >=22.12.0}
- oxc-parser@0.95.0:
- resolution: {integrity: sha512-Te8fE/SmiiKWIrwBwxz5Dod87uYvsbcZ9JAL5ylPg1DevyKgTkxCXnPEaewk1Su2qpfNmry5RHoN+NywWFCG+A==}
+ oxc-transform@0.102.0:
+ resolution: {integrity: sha512-MR5ohiBS6/kvxRpmUZ3LIDTTJBEC4xLAEZXfYr7vrA0eP7WHewQaNQPFDgT4Bee89TdmVQ5ZKrifGwxLjSyHHw==}
engines: {node: ^20.19.0 || >=22.12.0}
- oxc-transform@0.95.0:
- resolution: {integrity: sha512-SmS5aThb5K0SoUZgzGbikNBjrGHfOY4X5TEqBlaZb1uy5YgXbUSbpakpZJ13yW36LNqy8Im5+y+sIk5dlzpZ/w==}
- engines: {node: ^20.19.0 || >=22.12.0}
-
- oxc-walker@0.5.2:
- resolution: {integrity: sha512-XYoZqWwApSKUmSDEFeOKdy3Cdh95cOcSU8f7yskFWE4Rl3cfL5uwyY+EV7Brk9mdNLy+t5SseJajd6g7KncvlA==}
+ oxc-walker@0.6.0:
+ resolution: {integrity: sha512-BA3hlxq5+Sgzp7TCQF52XDXCK5mwoIZuIuxv/+JuuTzOs2RXkLqWZgZ69d8pJDDjnL7wiREZTWHBzFp/UWH88Q==}
peerDependencies:
- oxc-parser: '>=0.72.0'
+ oxc-parser: '>=0.98.0'
+
+ p-map@7.0.4:
+ resolution: {integrity: sha512-tkAQEw8ysMzmkhgw8k+1U/iPhWNhykKnSk4Rd5zLoPJCuJaGRPo6YposrZgaxHKzDHdDWWZvE/Sk7hsL2X/CpQ==}
+ engines: {node: '>=18'}
package-json-from-dist@1.0.1:
resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
@@ -3188,10 +3324,6 @@ packages:
package-manager-detector@1.5.0:
resolution: {integrity: sha512-uBj69dVlYe/+wxj8JOpr97XfsxH/eumMt6HqjNTmJDf/6NO9s+0uxeOneIz3AsPt2m6y9PqzDzd3ATcU17MNfw==}
- parse-ms@4.0.0:
- resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==}
- engines: {node: '>=18'}
-
parse-path@7.1.0:
resolution: {integrity: sha512-EuCycjZtfPcjWk7KTksnJ5xPMvWGA/6i4zrLYhRG0hGvC3GPU/jGUj3Cy+ZR0v30duV3e23R95T1lE2+lsndSw==}
@@ -3280,20 +3412,20 @@ packages:
peerDependencies:
postcss: ^8.4.38
- postcss-colormin@7.0.4:
- resolution: {integrity: sha512-ziQuVzQZBROpKpfeDwmrG+Vvlr0YWmY/ZAk99XD+mGEBuEojoFekL41NCsdhyNUtZI7DPOoIWIR7vQQK9xwluw==}
+ postcss-colormin@7.0.5:
+ resolution: {integrity: sha512-ekIBP/nwzRWhEMmIxHHbXHcMdzd1HIUzBECaj5KEdLz9DVP2HzT065sEhvOx1dkLjYW7jyD0CngThx6bpFi2fA==}
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
peerDependencies:
postcss: ^8.4.32
- postcss-convert-values@7.0.7:
- resolution: {integrity: sha512-HR9DZLN04Xbe6xugRH6lS4ZQH2zm/bFh/ZyRkpedZozhvh+awAfbA0P36InO4fZfDhvYfNJeNvlTf1sjwGbw/A==}
+ postcss-convert-values@7.0.8:
+ resolution: {integrity: sha512-+XNKuPfkHTCEo499VzLMYn94TiL3r9YqRE3Ty+jP7UX4qjewUONey1t7CG21lrlTLN07GtGM8MqFVp86D4uKJg==}
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
peerDependencies:
postcss: ^8.4.32
- postcss-discard-comments@7.0.4:
- resolution: {integrity: sha512-6tCUoql/ipWwKtVP/xYiFf1U9QgJ0PUvxN7pTcsQ8Ns3Fnwq1pU5D5s1MhT/XySeLq6GXNvn37U46Ded0TckWg==}
+ postcss-discard-comments@7.0.5:
+ resolution: {integrity: sha512-IR2Eja8WfYgN5n32vEGSctVQ1+JARfu4UH8M7bgGh1bC+xI/obsPJXaBpQF7MAByvgwZinhpHpdrmXtvVVlKcQ==}
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
peerDependencies:
postcss: ^8.4.32
@@ -3322,8 +3454,8 @@ packages:
peerDependencies:
postcss: ^8.4.32
- postcss-merge-rules@7.0.6:
- resolution: {integrity: sha512-2jIPT4Tzs8K87tvgCpSukRQ2jjd+hH6Bb8rEEOUDmmhOeTcqDg5fEFK8uKIu+Pvc3//sm3Uu6FRqfyv7YF7+BQ==}
+ postcss-merge-rules@7.0.7:
+ resolution: {integrity: sha512-njWJrd/Ms6XViwowaaCc+/vqhPG3SmXn725AGrnl+BgTuRPEacjiLEaGq16J6XirMJbtKkTwnt67SS+e2WGoew==}
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
peerDependencies:
postcss: ^8.4.32
@@ -3340,8 +3472,8 @@ packages:
peerDependencies:
postcss: ^8.4.32
- postcss-minify-params@7.0.4:
- resolution: {integrity: sha512-3OqqUddfH8c2e7M35W6zIwv7jssM/3miF9cbCSb1iJiWvtguQjlxZGIHK9JRmc8XAKmE2PFGtHSM7g/VcW97sw==}
+ postcss-minify-params@7.0.5:
+ resolution: {integrity: sha512-FGK9ky02h6Ighn3UihsyeAH5XmLEE2MSGH5Tc4tXMFtEDx7B+zTG6hD/+/cT+fbF7PbYojsmmWjyTwFwW1JKQQ==}
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
peerDependencies:
postcss: ^8.4.32
@@ -3388,8 +3520,8 @@ packages:
peerDependencies:
postcss: ^8.4.32
- postcss-normalize-unicode@7.0.4:
- resolution: {integrity: sha512-LvIURTi1sQoZqj8mEIE8R15yvM+OhbR1avynMtI9bUzj5gGKR/gfZFd8O7VMj0QgJaIFzxDwxGl/ASMYAkqO8g==}
+ postcss-normalize-unicode@7.0.5:
+ resolution: {integrity: sha512-X6BBwiRxVaFHrb2WyBMddIeB5HBjJcAaUHyhLrM2FsxSq5TFqcHSsK7Zu1otag+o0ZphQGJewGH1tAyrD0zX1Q==}
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
peerDependencies:
postcss: ^8.4.32
@@ -3412,8 +3544,8 @@ packages:
peerDependencies:
postcss: ^8.4.32
- postcss-reduce-initial@7.0.4:
- resolution: {integrity: sha512-rdIC9IlMBn7zJo6puim58Xd++0HdbvHeHaPgXsimMfG1ijC5A9ULvNLSE0rUKVJOvNMcwewW4Ga21ngyJjY/+Q==}
+ postcss-reduce-initial@7.0.5:
+ resolution: {integrity: sha512-RHagHLidG8hTZcnr4FpyMB2jtgd/OcyAazjMhoy5qmWJOx1uxKh4ntk0Pb46ajKM0rkf32lRH4C8c9qQiPR6IA==}
engines: {node: ^18.12.0 || ^20.9.0 || >=22.0}
peerDependencies:
postcss: ^8.4.32
@@ -3467,10 +3599,6 @@ packages:
resolution: {integrity: sha512-nODzvTiYVRGRqAOvE84Vk5JDPyyxsVk0/fbA/bq7RqlnhksGpset09XTxbpvLTIjoaF7K8Z8DG8yHtKGTPSYRw==}
engines: {node: '>=20'}
- pretty-ms@9.3.0:
- resolution: {integrity: sha512-gjVS5hOP+M3wMm5nmNOucbIrqudzs9v/57bWRHQWLYklXqoXKrVfYW2W9+glfGsqtPgpiz5WwyEEB+ksXIx3gQ==}
- engines: {node: '>=18'}
-
process-nextick-args@2.0.1:
resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
@@ -3504,6 +3632,10 @@ packages:
rc9@2.1.2:
resolution: {integrity: sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==}
+ react@19.2.3:
+ resolution: {integrity: sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA==}
+ engines: {node: '>=0.10.0'}
+
readable-stream@2.3.8:
resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
@@ -3514,10 +3646,18 @@ packages:
readdir-glob@1.1.3:
resolution: {integrity: sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==}
+ readdirp@3.6.0:
+ resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
+ engines: {node: '>=8.10.0'}
+
readdirp@4.1.2:
resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
engines: {node: '>= 14.18.0'}
+ readdirp@5.0.0:
+ resolution: {integrity: sha512-9u/XQ1pvrQtYyMpZe7DXKv2p5CNvyVwzUB6uhLAnQwHMSgKMBR62lc7AHljaeteeHXn11XTAaLLUVZYVZyuRBQ==}
+ engines: {node: '>= 20.19.0'}
+
redis-errors@1.2.0:
resolution: {integrity: sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==}
engines: {node: '>=4'}
@@ -3576,9 +3716,6 @@ packages:
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
hasBin: true
- rou3@0.7.12:
- resolution: {integrity: sha512-iFE4hLDuloSWcD7mjdCDhx2bKcIsYbtOTpfH5MHHLSKMOUyjqQXTeZVa289uuwEGEKFoE/BAPbhaU4B774nceg==}
-
run-applescript@7.1.0:
resolution: {integrity: sha512-DPe5pVFaAsinSaV6QjQ6gdiedWDcRCbUuiQfQa2wmWV7+xC9bGulGI8+TdRmoFkAPaBXk8CrAbnlY2ISniJ47Q==}
engines: {node: '>=18'}
@@ -3592,6 +3729,9 @@ packages:
safe-buffer@5.2.1:
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
+ safer-buffer@2.1.2:
+ resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
+
sax@1.4.1:
resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==}
@@ -3614,8 +3754,8 @@ packages:
serialize-javascript@6.0.2:
resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
- seroval@1.3.2:
- resolution: {integrity: sha512-RbcPH1n5cfwKrru7v7+zrZvjLurgHhGyso3HTyGtRivGWgYjbOmGuivCQaORNELjNONoK35nj28EoWul9sb1zQ==}
+ seroval@1.4.2:
+ resolution: {integrity: sha512-N3HEHRCZYn3cQbsC4B5ldj9j+tHdf4JZoYPlcI4rRYu0Xy4qN8MQf1Z08EibzB0WpgRG5BGK08FTrmM66eSzKQ==}
engines: {node: '>=10'}
serve-placeholder@2.0.2:
@@ -3625,9 +3765,6 @@ packages:
resolution: {integrity: sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ==}
engines: {node: '>= 18'}
- set-cookie-parser@2.7.2:
- resolution: {integrity: sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==}
-
setprototypeof@1.2.0:
resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
@@ -3650,8 +3787,8 @@ packages:
resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
engines: {node: '>=14'}
- simple-git@3.28.0:
- resolution: {integrity: sha512-Rs/vQRwsn1ILH1oBUy8NucJlXmnnLeLCfcvbSehkPzbv3wwoFWIdtfd6Ndo6ZPhlPsCZ60CPI4rxurnwAa+a2w==}
+ simple-git@3.30.0:
+ resolution: {integrity: sha512-q6lxyDsCmEal/MEGhP1aVyQ3oxnagGlBDOVSIB4XUVLl1iZh0Pah6ebC9V4xBap/RfgP2WlI8EKs0WS0rMEJHg==}
sirv@3.0.2:
resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==}
@@ -3686,14 +3823,17 @@ packages:
resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==}
engines: {node: '>=0.10.0'}
- srvx@0.8.16:
- resolution: {integrity: sha512-hmcGW4CgroeSmzgF1Ihwgl+Ths0JqAJ7HwjP2X7e3JzY7u4IydLMcdnlqGQiQGUswz+PO9oh/KtCpOISIvs9QQ==}
+ srvx@0.10.0:
+ resolution: {integrity: sha512-NqIsR+wQCfkvvwczBh8J8uM4wTZx41K2lLSEp/3oMp917ODVVMtW5Me4epCmQ3gH8D+0b+/t4xxkUKutyhimTA==}
engines: {node: '>=20.16.0'}
hasBin: true
standard-as-callback@2.1.0:
resolution: {integrity: sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==}
+ standardwebhooks@1.0.0:
+ resolution: {integrity: sha512-BbHGOQK9olHPMvQNHWul6MYlrRTAOKn03rOe4A8O3CLWhNf4YHBqq2HJKKC+sfqpxiBY52pNeesD6jIiLDz8jg==}
+
statuses@2.0.1:
resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==}
engines: {node: '>= 0.8'}
@@ -3734,10 +3874,6 @@ packages:
resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
engines: {node: '>=12'}
- strip-final-newline@4.0.0:
- resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==}
- engines: {node: '>=18'}
-
strip-literal@3.1.0:
resolution: {integrity: sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==}
@@ -3767,6 +3903,11 @@ packages:
engines: {node: '>=16'}
hasBin: true
+ swr@2.3.4:
+ resolution: {integrity: sha512-bYd2lrhc+VarcpkgWclcUi92wYCpOgMws9Sd1hG1ntAu0NEy+14CbotuFjshBU2kt9rYj9TSmDcybpxpeTU1fg==}
+ peerDependencies:
+ react: ^16.11.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
system-architecture@0.1.0:
resolution: {integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==}
engines: {node: '>=18'}
@@ -3806,6 +3947,10 @@ packages:
tinyexec@1.0.1:
resolution: {integrity: sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==}
+ tinyexec@1.0.2:
+ resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==}
+ engines: {node: '>=18'}
+
tinyglobby@0.2.15:
resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==}
engines: {node: '>=12.0.0'}
@@ -3866,13 +4011,12 @@ packages:
undici-types@7.16.0:
resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==}
- undici@7.16.0:
- resolution: {integrity: sha512-QEg3HPMll0o3t2ourKwOeUAZ159Kn9mx5pnzHRQO8+Wixmh88YdZRiIwat0iNzNNXn0yoEtXJqFpyW7eM8BV7g==}
- engines: {node: '>=20.18.1'}
-
unenv@2.0.0-rc.23:
resolution: {integrity: sha512-NeOb/HbW2OwOzYaV21MewVQYfzlSwG0kVUB74RyV0gEIP44M5DsYTK9e7jDcekB/3YU+pfNWniZj+r4M/aejyQ==}
+ unenv@2.0.0-rc.24:
+ resolution: {integrity: sha512-i7qRCmY42zmCwnYlh9H2SvLEypEFGye5iRmEMKjcGi7zk9UquigRjFtTLz0TYqr0ZGLZhaMHl/foy1bZR+Cwlw==}
+
unhead@2.0.19:
resolution: {integrity: sha512-gEEjkV11Aj+rBnY6wnRfsFtF2RxKOLaPN4i+Gx3UhBxnszvV6ApSNZbGk7WKyy/lErQ6ekPN63qdFL7sa1leow==}
@@ -3892,8 +4036,8 @@ packages:
resolution: {integrity: sha512-5lWVjgi6vuHhJ526bI4nlCOmkCIF3nnfXkCMDeMJrtdvxTs6ZFCM8oNufGTsDbKv/tJ/xj8RpvXjRuPBZJuJog==}
engines: {node: '>=20.19.0'}
- unplugin-vue-router@0.16.0:
- resolution: {integrity: sha512-yFmUQoN07KABkbxMSaNvfjnflwSi3nkSVKi7v6FTwXlzXyRDSx63vQ8Se4ho0T9Ao9I8U5FJB12fzmrGxFB0CA==}
+ unplugin-vue-router@0.19.2:
+ resolution: {integrity: sha512-u5dgLBarxE5cyDK/hzJGfpCTLIAyiTXGlo85COuD4Nssj6G7NxS+i9mhCWz/1p/ud1eMwdcUbTXehQe41jYZUA==}
peerDependencies:
'@vue/compiler-sfc': ^3.5.17
vue-router: ^4.6.0
@@ -3905,8 +4049,12 @@ packages:
resolution: {integrity: sha512-6NCPkv1ClwH+/BGE9QeoTIl09nuiAt0gS28nn1PvYXsGKRwM2TCbFA2QiilmehPDTXIe684k4rZI1yl3A1PCUw==}
engines: {node: '>=18.12.0'}
- unstorage@1.17.1:
- resolution: {integrity: sha512-KKGwRTT0iVBCErKemkJCLs7JdxNVfqTPc/85ae1XES0+bsHbc/sFBfVi5kJp156cc51BHinIH2l3k0EZ24vOBQ==}
+ unplugin@2.3.11:
+ resolution: {integrity: sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww==}
+ engines: {node: '>=18.12.0'}
+
+ unstorage@1.17.3:
+ resolution: {integrity: sha512-i+JYyy0DoKmQ3FximTHbGadmIYb8JEpq7lxUjnjeB702bCPum0vzo6oy5Mfu0lpqISw7hCyMW2yj4nWC8bqJ3Q==}
peerDependencies:
'@azure/app-configuration': ^1.8.0
'@azure/cosmos': ^4.2.0
@@ -3984,9 +4132,20 @@ packages:
peerDependencies:
browserslist: '>= 4.21.0'
+ update-browserslist-db@1.2.3:
+ resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==}
+ hasBin: true
+ peerDependencies:
+ browserslist: '>= 4.21.0'
+
uqr@0.1.2:
resolution: {integrity: sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==}
+ use-sync-external-store@1.6.0:
+ resolution: {integrity: sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
@@ -4000,23 +4159,23 @@ packages:
peerDependencies:
vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0
- vite-node@3.2.4:
- resolution: {integrity: sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==}
- engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
+ vite-node@5.2.0:
+ resolution: {integrity: sha512-7UT39YxUukIA97zWPXUGb0SGSiLexEGlavMwU3HDE6+d/HJhKLjLqu4eX2qv6SQiocdhKLRcusroDwXHQ6CnRQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
- vite-plugin-checker@0.11.0:
- resolution: {integrity: sha512-iUdO9Pl9UIBRPAragwi3as/BXXTtRu4G12L3CMrjx+WVTd9g/MsqNakreib9M/2YRVkhZYiTEwdH2j4Dm0w7lw==}
+ vite-plugin-checker@0.12.0:
+ resolution: {integrity: sha512-CmdZdDOGss7kdQwv73UyVgLPv0FVYe5czAgnmRX2oKljgEvSrODGuClaV3PDR2+3ou7N/OKGauDDBjy2MB07Rg==}
engines: {node: '>=16.11'}
peerDependencies:
'@biomejs/biome': '>=1.7'
- eslint: '>=7'
+ eslint: '>=9.39.1'
meow: ^13.2.0
optionator: ^0.9.4
oxlint: '>=1'
stylelint: '>=16'
typescript: '*'
- vite: '>=5.4.20'
+ vite: '>=5.4.21'
vls: '*'
vti: '*'
vue-tsc: ~2.2.10 || ^3.0.0
@@ -4052,14 +4211,20 @@ packages:
'@nuxt/kit':
optional: true
- vite-plugin-vue-tracer@1.0.1:
- resolution: {integrity: sha512-L5/vAhT6oYbH4RSQYGLN9VfHexWe7SGzca1pJ7oPkL6KtxWA1jbGeb3Ri1JptKzqtd42HinOq4uEYqzhVWrzig==}
+ vite-plugin-static-copy@3.1.4:
+ resolution: {integrity: sha512-iCmr4GSw4eSnaB+G8zc2f4dxSuDjbkjwpuBLLGvQYR9IW7rnDzftnUjOH5p4RYR+d4GsiBqXRvzuFhs5bnzVyw==}
+ engines: {node: ^18.0.0 || >=20.0.0}
+ peerDependencies:
+ vite: ^5.0.0 || ^6.0.0 || ^7.0.0
+
+ vite-plugin-vue-tracer@1.2.0:
+ resolution: {integrity: sha512-a9Z/TLpxwmoE9kIcv28wqQmiszM7ec4zgndXWEsVD/2lEZLRGzcg7ONXmplzGF/UP5W59QNtS809OdywwpUWQQ==}
peerDependencies:
vite: ^6.0.0 || ^7.0.0
vue: ^3.5.0
- vite@7.1.12:
- resolution: {integrity: sha512-ZWyE8YXEXqJrrSLvYgrRP7p62OziLW7xI5HYGWFzOvupfAlrLvURSzv/FyGyy0eidogEM3ujU+kUG1zuHgb6Ug==}
+ vite@7.3.1:
+ resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==}
engines: {node: ^20.19.0 || >=22.12.0}
hasBin: true
peerDependencies:
@@ -4145,6 +4310,14 @@ packages:
typescript:
optional: true
+ vue@3.5.26:
+ resolution: {integrity: sha512-SJ/NTccVyAoNUJmkM9KUqPcYlY+u8OVL1X5EW9RIs3ch5H2uERxyyIUI4MRxVCSOiEcupX9xNGde1tL9ZKpimA==}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
webidl-conversions@3.0.1:
resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
@@ -4203,8 +4376,8 @@ packages:
resolution: {integrity: sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==}
engines: {node: '>=18'}
- yaml@2.8.1:
- resolution: {integrity: sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==}
+ yaml@2.8.2:
+ resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==}
engines: {node: '>= 14.6'}
hasBin: true
@@ -4216,22 +4389,21 @@ packages:
resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
engines: {node: '>=12'}
- yoctocolors@2.1.2:
- resolution: {integrity: sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug==}
- engines: {node: '>=18'}
-
youch-core@0.3.3:
resolution: {integrity: sha512-ho7XuGjLaJ2hWHoK8yFnsUGy2Y5uDpqSTq1FkHLK4/oqKtyUU1AFbOOxY4IpC9f0fTLjwYbslUz0Po5BpD1wrA==}
youch@4.1.0-beta.11:
resolution: {integrity: sha512-sQi6PERyO/mT8w564ojOVeAlYTtVQmC2GaktQAf+IdI75/GKIggosBuvyVXvEV+FATAT6RbLdIjFoiIId4ozoQ==}
+ youch@4.1.0-beta.13:
+ resolution: {integrity: sha512-3+AG1Xvt+R7M7PSDudhbfbwiyveW6B8PLBIwTyEC598biEYIjHhC89i6DBEvR0EZUjGY3uGSnC429HpIa2Z09g==}
+
zip-stream@6.0.1:
resolution: {integrity: sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==}
engines: {node: '>= 14'}
- zod@4.2.1:
- resolution: {integrity: sha512-0wZ1IRqGGhMP76gLqz8EyfBXKk0J2qo2+H3fi4mcUP/KtTocoX08nmIAHl1Z2kJIZbZee8KOpBCSNPRgauucjw==}
+ zod@4.3.5:
+ resolution: {integrity: sha512-k7Nwx6vuWx1IJ9Bjuf4Zt1PEllcwe7cls3VNzm4CQ1/hgtFUK2bRNG3rvnpPUhFjmqJKAKtjV576KnUkHocg/g==}
snapshots:
@@ -4402,26 +4574,100 @@ snapshots:
'@babel/helper-string-parser': 7.27.1
'@babel/helper-validator-identifier': 7.28.5
- '@better-auth/core@1.4.7(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.21)(better-call@1.1.5(zod@4.2.1))(jose@6.1.3)(kysely@0.28.9)(nanostores@1.1.0)':
+ '@bomb.sh/tab@0.0.11(cac@6.7.14)(citty@0.1.6)':
+ optionalDependencies:
+ cac: 6.7.14
+ citty: 0.1.6
+
+ '@clack/core@1.0.0-alpha.7':
dependencies:
- '@better-auth/utils': 0.3.0
- '@better-fetch/fetch': 1.1.21
- '@standard-schema/spec': 1.1.0
- better-call: 1.1.5(zod@4.2.1)
- jose: 6.1.3
- kysely: 0.28.9
- nanostores: 1.1.0
- zod: 4.2.1
+ picocolors: 1.1.1
+ sisteransi: 1.0.5
- '@better-auth/telemetry@1.4.7(@better-auth/core@1.4.7(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.21)(better-call@1.1.5(zod@4.2.1))(jose@6.1.3)(kysely@0.28.9)(nanostores@1.1.0))':
+ '@clack/prompts@1.0.0-alpha.9':
dependencies:
- '@better-auth/core': 1.4.7(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.21)(better-call@1.1.5(zod@4.2.1))(jose@6.1.3)(kysely@0.28.9)(nanostores@1.1.0)
- '@better-auth/utils': 0.3.0
- '@better-fetch/fetch': 1.1.21
+ '@clack/core': 1.0.0-alpha.7
+ picocolors: 1.1.1
+ sisteransi: 1.0.5
- '@better-auth/utils@0.3.0': {}
+ '@clerk/backend@2.29.0(react@19.2.3)':
+ dependencies:
+ '@clerk/shared': 3.41.1(react@19.2.3)
+ '@clerk/types': 4.101.9(react@19.2.3)
+ cookie: 1.0.2
+ standardwebhooks: 1.0.0
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - react
+ - react-dom
- '@better-fetch/fetch@1.1.21': {}
+ '@clerk/nuxt@1.13.10(magicast@0.5.0)(react@19.2.3)(vue@3.5.22(typescript@5.9.3))':
+ dependencies:
+ '@clerk/backend': 2.29.0(react@19.2.3)
+ '@clerk/shared': 3.41.1(react@19.2.3)
+ '@clerk/types': 4.101.9(react@19.2.3)
+ '@clerk/vue': 1.17.7(react@19.2.3)(vue@3.5.22(typescript@5.9.3))
+ '@nuxt/kit': 4.2.0(magicast@0.5.0)
+ '@nuxt/schema': 4.2.0
+ h3: 1.15.4
+ transitivePeerDependencies:
+ - magicast
+ - react
+ - react-dom
+ - vue
+
+ '@clerk/shared@3.41.1(react@19.2.3)':
+ dependencies:
+ csstype: 3.1.3
+ dequal: 2.0.3
+ glob-to-regexp: 0.4.1
+ js-cookie: 3.0.5
+ std-env: 3.10.0
+ swr: 2.3.4(react@19.2.3)
+ optionalDependencies:
+ react: 19.2.3
+
+ '@clerk/shared@3.42.0(react@19.2.3)':
+ dependencies:
+ csstype: 3.1.3
+ dequal: 2.0.3
+ glob-to-regexp: 0.4.1
+ js-cookie: 3.0.5
+ std-env: 3.10.0
+ swr: 2.3.4(react@19.2.3)
+ optionalDependencies:
+ react: 19.2.3
+
+ '@clerk/themes@2.4.46(react@19.2.3)':
+ dependencies:
+ '@clerk/shared': 3.41.1(react@19.2.3)
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - react
+ - react-dom
+
+ '@clerk/types@4.101.10(react@19.2.3)':
+ dependencies:
+ '@clerk/shared': 3.42.0(react@19.2.3)
+ transitivePeerDependencies:
+ - react
+ - react-dom
+
+ '@clerk/types@4.101.9(react@19.2.3)':
+ dependencies:
+ '@clerk/shared': 3.41.1(react@19.2.3)
+ transitivePeerDependencies:
+ - react
+ - react-dom
+
+ '@clerk/vue@1.17.7(react@19.2.3)(vue@3.5.22(typescript@5.9.3))':
+ dependencies:
+ '@clerk/shared': 3.42.0(react@19.2.3)
+ '@clerk/types': 4.101.10(react@19.2.3)
+ vue: 3.5.22(typescript@5.9.3)
+ transitivePeerDependencies:
+ - react
+ - react-dom
'@cloudflare/kv-asset-handler@0.4.0':
dependencies:
@@ -4429,17 +4675,17 @@ snapshots:
'@drizzle-team/brocli@0.10.2': {}
- '@dxup/nuxt@0.2.0(magicast@0.5.0)':
+ '@dxup/nuxt@0.2.2(magicast@0.5.0)':
dependencies:
- '@dxup/unimport': 0.1.0
- '@nuxt/kit': 4.2.0(magicast@0.5.0)
+ '@dxup/unimport': 0.1.2
+ '@nuxt/kit': 4.2.2(magicast@0.5.0)
chokidar: 4.0.3
pathe: 2.0.3
tinyglobby: 0.2.15
transitivePeerDependencies:
- magicast
- '@dxup/unimport@0.1.0': {}
+ '@dxup/unimport@0.1.2': {}
'@emnapi/core@1.6.0':
dependencies:
@@ -4447,11 +4693,22 @@ snapshots:
tslib: 2.8.1
optional: true
+ '@emnapi/core@1.8.1':
+ dependencies:
+ '@emnapi/wasi-threads': 1.1.0
+ tslib: 2.8.1
+ optional: true
+
'@emnapi/runtime@1.6.0':
dependencies:
tslib: 2.8.1
optional: true
+ '@emnapi/runtime@1.8.1':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
'@emnapi/wasi-threads@1.1.0':
dependencies:
tslib: 2.8.1
@@ -4795,15 +5052,18 @@ snapshots:
'@tybys/wasm-util': 0.10.1
optional: true
+ '@napi-rs/wasm-runtime@1.1.1':
+ dependencies:
+ '@emnapi/core': 1.8.1
+ '@emnapi/runtime': 1.8.1
+ '@tybys/wasm-util': 0.10.1
+ optional: true
+
'@neondatabase/serverless@1.0.2':
dependencies:
'@types/node': 22.19.3
'@types/pg': 8.16.0
- '@noble/ciphers@2.1.1': {}
-
- '@noble/hashes@2.0.1': {}
-
'@nodelib/fs.scandir@2.1.5':
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -4816,67 +5076,70 @@ snapshots:
'@nodelib/fs.scandir': 2.1.5
fastq: 1.19.1
- '@nuxt/cli@3.29.3(magicast@0.5.0)':
+ '@nuxt/cli@3.32.0(cac@6.7.14)(magicast@0.5.0)':
dependencies:
- c12: 3.3.1(magicast@0.5.0)
+ '@bomb.sh/tab': 0.0.11(cac@6.7.14)(citty@0.1.6)
+ '@clack/prompts': 1.0.0-alpha.9
+ c12: 3.3.3(magicast@0.5.0)
citty: 0.1.6
- clipboardy: 5.0.0
confbox: 0.2.2
consola: 3.4.2
+ copy-paste: 2.2.0
+ debug: 4.4.3
defu: 6.1.4
- exsolve: 1.0.7
+ exsolve: 1.0.8
fuse.js: 7.1.0
- get-port-please: 3.2.0
giget: 2.0.0
- h3: 1.15.4
jiti: 2.6.1
listhen: 1.9.0
nypm: 0.6.2
- ofetch: 1.5.0
+ ofetch: 1.5.1
ohash: 2.0.11
pathe: 2.0.3
perfect-debounce: 2.0.0
pkg-types: 2.3.0
scule: 1.3.0
semver: 7.7.3
- srvx: 0.8.16
+ srvx: 0.10.0
std-env: 3.10.0
- tinyexec: 1.0.1
+ tinyexec: 1.0.2
ufo: 1.6.1
- undici: 7.16.0
- youch: 4.1.0-beta.11
+ youch: 4.1.0-beta.13
transitivePeerDependencies:
+ - cac
+ - commander
- magicast
+ - supports-color
'@nuxt/devalue@2.0.2': {}
- '@nuxt/devtools-kit@2.7.0(magicast@0.3.5)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))':
+ '@nuxt/devtools-kit@3.1.1(magicast@0.5.1)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))':
dependencies:
- '@nuxt/kit': 3.20.0(magicast@0.3.5)
+ '@nuxt/kit': 4.2.2(magicast@0.5.1)
execa: 8.0.1
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
transitivePeerDependencies:
- magicast
- '@nuxt/devtools-wizard@2.7.0':
+ '@nuxt/devtools-wizard@3.1.1':
dependencies:
consola: 3.4.2
diff: 8.0.2
execa: 8.0.1
- magicast: 0.3.5
+ magicast: 0.5.1
pathe: 2.0.3
pkg-types: 2.3.0
prompts: 2.4.2
semver: 7.7.3
- '@nuxt/devtools@2.7.0(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))':
+ '@nuxt/devtools@3.1.1(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.26(typescript@5.9.3))':
dependencies:
- '@nuxt/devtools-kit': 2.7.0(magicast@0.3.5)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
- '@nuxt/devtools-wizard': 2.7.0
- '@nuxt/kit': 3.20.0(magicast@0.3.5)
- '@vue/devtools-core': 7.7.7(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))
- '@vue/devtools-kit': 7.7.7
- birpc: 2.6.1
+ '@nuxt/devtools-kit': 3.1.1(magicast@0.5.1)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))
+ '@nuxt/devtools-wizard': 3.1.1
+ '@nuxt/kit': 4.2.2(magicast@0.5.1)
+ '@vue/devtools-core': 8.0.5(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.26(typescript@5.9.3))
+ '@vue/devtools-kit': 8.0.5
+ birpc: 2.9.0
consola: 3.4.2
destr: 2.0.5
error-stack-parser-es: 1.0.5
@@ -4888,20 +5151,20 @@ snapshots:
is-installed-globally: 1.0.0
launch-editor: 2.12.0
local-pkg: 1.1.2
- magicast: 0.3.5
+ magicast: 0.5.1
nypm: 0.6.2
ohash: 2.0.11
pathe: 2.0.3
- perfect-debounce: 1.0.0
+ perfect-debounce: 2.0.0
pkg-types: 2.3.0
semver: 7.7.3
- simple-git: 3.28.0
+ simple-git: 3.30.0
sirv: 3.0.2
structured-clone-es: 1.0.0
tinyglobby: 0.2.15
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
- vite-plugin-inspect: 11.3.3(@nuxt/kit@3.20.0(magicast@0.3.5))(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
- vite-plugin-vue-tracer: 1.0.1(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
+ vite-plugin-inspect: 11.3.3(@nuxt/kit@4.2.2(magicast@0.5.0))(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))
+ vite-plugin-vue-tracer: 1.2.0(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.26(typescript@5.9.3))
which: 5.0.0
ws: 8.18.3
transitivePeerDependencies:
@@ -4910,32 +5173,6 @@ snapshots:
- utf-8-validate
- vue
- '@nuxt/kit@3.20.0(magicast@0.3.5)':
- dependencies:
- c12: 3.3.1(magicast@0.3.5)
- consola: 3.4.2
- defu: 6.1.4
- destr: 2.0.5
- errx: 0.1.0
- exsolve: 1.0.7
- ignore: 7.0.5
- jiti: 2.6.1
- klona: 2.0.6
- knitwork: 1.2.0
- mlly: 1.8.0
- ohash: 2.0.11
- pathe: 2.0.3
- pkg-types: 2.3.0
- rc9: 2.1.2
- scule: 1.3.0
- semver: 7.7.3
- tinyglobby: 0.2.15
- ufo: 1.6.1
- unctx: 2.4.1
- untyped: 2.0.0
- transitivePeerDependencies:
- - magicast
-
'@nuxt/kit@3.20.0(magicast@0.5.0)':
dependencies:
c12: 3.3.1(magicast@0.5.0)
@@ -4987,33 +5224,83 @@ snapshots:
transitivePeerDependencies:
- magicast
- '@nuxt/nitro-server@4.2.0(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(magicast@0.5.0)(nuxt@4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1))(typescript@5.9.3)':
+ '@nuxt/kit@4.2.2(magicast@0.5.0)':
dependencies:
- '@nuxt/devalue': 2.0.2
- '@nuxt/kit': 4.2.0(magicast@0.5.0)
- '@unhead/vue': 2.0.19(vue@3.5.22(typescript@5.9.3))
- '@vue/shared': 3.5.22
+ c12: 3.3.3(magicast@0.5.0)
consola: 3.4.2
defu: 6.1.4
destr: 2.0.5
- devalue: 5.4.2
+ errx: 0.1.0
+ exsolve: 1.0.8
+ ignore: 7.0.5
+ jiti: 2.6.1
+ klona: 2.0.6
+ mlly: 1.8.0
+ ohash: 2.0.11
+ pathe: 2.0.3
+ pkg-types: 2.3.0
+ rc9: 2.1.2
+ scule: 1.3.0
+ semver: 7.7.3
+ tinyglobby: 0.2.15
+ ufo: 1.6.1
+ unctx: 2.4.1
+ untyped: 2.0.0
+ transitivePeerDependencies:
+ - magicast
+
+ '@nuxt/kit@4.2.2(magicast@0.5.1)':
+ dependencies:
+ c12: 3.3.3(magicast@0.5.1)
+ consola: 3.4.2
+ defu: 6.1.4
+ destr: 2.0.5
+ errx: 0.1.0
+ exsolve: 1.0.8
+ ignore: 7.0.5
+ jiti: 2.6.1
+ klona: 2.0.6
+ mlly: 1.8.0
+ ohash: 2.0.11
+ pathe: 2.0.3
+ pkg-types: 2.3.0
+ rc9: 2.1.2
+ scule: 1.3.0
+ semver: 7.7.3
+ tinyglobby: 0.2.15
+ ufo: 1.6.1
+ unctx: 2.4.1
+ untyped: 2.0.0
+ transitivePeerDependencies:
+ - magicast
+
+ '@nuxt/nitro-server@4.2.2(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(magicast@0.5.0)(nuxt@4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2))(typescript@5.9.3)':
+ dependencies:
+ '@nuxt/devalue': 2.0.2
+ '@nuxt/kit': 4.2.2(magicast@0.5.0)
+ '@unhead/vue': 2.0.19(vue@3.5.26(typescript@5.9.3))
+ '@vue/shared': 3.5.26
+ consola: 3.4.2
+ defu: 6.1.4
+ destr: 2.0.5
+ devalue: 5.6.1
errx: 0.1.0
escape-string-regexp: 5.0.0
- exsolve: 1.0.7
+ exsolve: 1.0.8
h3: 1.15.4
impound: 1.0.0
klona: 2.0.6
mocked-exports: 0.1.1
nitropack: 2.12.9(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))
- nuxt: 4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1)
+ nuxt: 4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2)
pathe: 2.0.3
pkg-types: 2.3.0
radix3: 1.1.2
std-env: 3.10.0
ufo: 1.6.1
unctx: 2.4.1
- unstorage: 1.17.1(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(ioredis@5.8.2)
- vue: 3.5.22(typescript@5.9.3)
+ unstorage: 1.17.3(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(ioredis@5.8.2)
+ vue: 3.5.26(typescript@5.9.3)
vue-bundle-renderer: 2.2.0
vue-devtools-stub: 0.1.0
transitivePeerDependencies:
@@ -5059,6 +5346,14 @@ snapshots:
pkg-types: 2.3.0
std-env: 3.10.0
+ '@nuxt/schema@4.2.2':
+ dependencies:
+ '@vue/shared': 3.5.26
+ defu: 6.1.4
+ pathe: 2.0.3
+ pkg-types: 2.3.0
+ std-env: 3.10.0
+
'@nuxt/telemetry@2.6.6(magicast@0.5.0)':
dependencies:
'@nuxt/kit': 3.20.0(magicast@0.5.0)
@@ -5068,7 +5363,7 @@ snapshots:
dotenv: 16.6.1
git-url-parse: 16.1.0
is-docker: 3.0.0
- ofetch: 1.5.0
+ ofetch: 1.5.1
package-manager-detector: 1.5.0
pathe: 2.0.3
rc9: 2.1.2
@@ -5076,39 +5371,39 @@ snapshots:
transitivePeerDependencies:
- magicast
- '@nuxt/vite-builder@4.2.0(@types/node@24.9.2)(lightningcss@1.30.2)(magicast@0.5.0)(nuxt@4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1))(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vue@3.5.22(typescript@5.9.3))(yaml@2.8.1)':
+ '@nuxt/vite-builder@4.2.2(@types/node@24.9.2)(lightningcss@1.30.2)(magicast@0.5.0)(nuxt@4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2))(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vue@3.5.26(typescript@5.9.3))(yaml@2.8.2)':
dependencies:
- '@nuxt/kit': 4.2.0(magicast@0.5.0)
- '@rollup/plugin-replace': 6.0.2(rollup@4.52.5)
- '@vitejs/plugin-vue': 6.0.1(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))
- '@vitejs/plugin-vue-jsx': 5.1.1(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))
- autoprefixer: 10.4.21(postcss@8.5.6)
+ '@nuxt/kit': 4.2.2(magicast@0.5.0)
+ '@rollup/plugin-replace': 6.0.3(rollup@4.52.5)
+ '@vitejs/plugin-vue': 6.0.3(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.26(typescript@5.9.3))
+ '@vitejs/plugin-vue-jsx': 5.1.3(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.26(typescript@5.9.3))
+ autoprefixer: 10.4.23(postcss@8.5.6)
consola: 3.4.2
- cssnano: 7.1.1(postcss@8.5.6)
+ cssnano: 7.1.2(postcss@8.5.6)
defu: 6.1.4
- esbuild: 0.25.11
+ esbuild: 0.27.1
escape-string-regexp: 5.0.0
- exsolve: 1.0.7
+ exsolve: 1.0.8
get-port-please: 3.2.0
h3: 1.15.4
jiti: 2.6.1
- knitwork: 1.2.0
+ knitwork: 1.3.0
magic-string: 0.30.21
mlly: 1.8.0
mocked-exports: 0.1.1
- nuxt: 4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1)
+ nuxt: 4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2)
pathe: 2.0.3
pkg-types: 2.3.0
postcss: 8.5.6
rollup-plugin-visualizer: 6.0.5(rollup@4.52.5)
- seroval: 1.3.2
+ seroval: 1.4.2
std-env: 3.10.0
ufo: 1.6.1
- unenv: 2.0.0-rc.23
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
- vite-node: 3.2.4(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
- vite-plugin-checker: 0.11.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
- vue: 3.5.22(typescript@5.9.3)
+ unenv: 2.0.0-rc.24
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
+ vite-node: 5.2.0(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
+ vite-plugin-checker: 0.12.0(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))
+ vue: 3.5.26(typescript@5.9.3)
vue-bundle-renderer: 2.2.0
transitivePeerDependencies:
- '@biomejs/biome'
@@ -5144,123 +5439,128 @@ snapshots:
transitivePeerDependencies:
- magicast
- '@oxc-minify/binding-android-arm64@0.95.0':
+ '@oxc-minify/binding-android-arm64@0.102.0':
optional: true
- '@oxc-minify/binding-darwin-arm64@0.95.0':
+ '@oxc-minify/binding-darwin-arm64@0.102.0':
optional: true
- '@oxc-minify/binding-darwin-x64@0.95.0':
+ '@oxc-minify/binding-darwin-x64@0.102.0':
optional: true
- '@oxc-minify/binding-freebsd-x64@0.95.0':
+ '@oxc-minify/binding-freebsd-x64@0.102.0':
optional: true
- '@oxc-minify/binding-linux-arm-gnueabihf@0.95.0':
+ '@oxc-minify/binding-linux-arm-gnueabihf@0.102.0':
optional: true
- '@oxc-minify/binding-linux-arm-musleabihf@0.95.0':
+ '@oxc-minify/binding-linux-arm64-gnu@0.102.0':
optional: true
- '@oxc-minify/binding-linux-arm64-gnu@0.95.0':
+ '@oxc-minify/binding-linux-arm64-musl@0.102.0':
optional: true
- '@oxc-minify/binding-linux-arm64-musl@0.95.0':
+ '@oxc-minify/binding-linux-riscv64-gnu@0.102.0':
optional: true
- '@oxc-minify/binding-linux-riscv64-gnu@0.95.0':
+ '@oxc-minify/binding-linux-s390x-gnu@0.102.0':
optional: true
- '@oxc-minify/binding-linux-s390x-gnu@0.95.0':
+ '@oxc-minify/binding-linux-x64-gnu@0.102.0':
optional: true
- '@oxc-minify/binding-linux-x64-gnu@0.95.0':
+ '@oxc-minify/binding-linux-x64-musl@0.102.0':
optional: true
- '@oxc-minify/binding-linux-x64-musl@0.95.0':
+ '@oxc-minify/binding-openharmony-arm64@0.102.0':
optional: true
- '@oxc-minify/binding-wasm32-wasi@0.95.0':
+ '@oxc-minify/binding-wasm32-wasi@0.102.0':
dependencies:
- '@napi-rs/wasm-runtime': 1.0.7
+ '@napi-rs/wasm-runtime': 1.1.1
optional: true
- '@oxc-minify/binding-win32-arm64-msvc@0.95.0':
+ '@oxc-minify/binding-win32-arm64-msvc@0.102.0':
optional: true
- '@oxc-minify/binding-win32-x64-msvc@0.95.0':
+ '@oxc-minify/binding-win32-x64-msvc@0.102.0':
+ optional: true
+
+ '@oxc-parser/binding-android-arm64@0.102.0':
optional: true
'@oxc-parser/binding-android-arm64@0.93.0':
optional: true
- '@oxc-parser/binding-android-arm64@0.95.0':
+ '@oxc-parser/binding-darwin-arm64@0.102.0':
optional: true
'@oxc-parser/binding-darwin-arm64@0.93.0':
optional: true
- '@oxc-parser/binding-darwin-arm64@0.95.0':
+ '@oxc-parser/binding-darwin-x64@0.102.0':
optional: true
'@oxc-parser/binding-darwin-x64@0.93.0':
optional: true
- '@oxc-parser/binding-darwin-x64@0.95.0':
+ '@oxc-parser/binding-freebsd-x64@0.102.0':
optional: true
'@oxc-parser/binding-freebsd-x64@0.93.0':
optional: true
- '@oxc-parser/binding-freebsd-x64@0.95.0':
+ '@oxc-parser/binding-linux-arm-gnueabihf@0.102.0':
optional: true
'@oxc-parser/binding-linux-arm-gnueabihf@0.93.0':
optional: true
- '@oxc-parser/binding-linux-arm-gnueabihf@0.95.0':
- optional: true
-
'@oxc-parser/binding-linux-arm-musleabihf@0.93.0':
optional: true
- '@oxc-parser/binding-linux-arm-musleabihf@0.95.0':
+ '@oxc-parser/binding-linux-arm64-gnu@0.102.0':
optional: true
'@oxc-parser/binding-linux-arm64-gnu@0.93.0':
optional: true
- '@oxc-parser/binding-linux-arm64-gnu@0.95.0':
+ '@oxc-parser/binding-linux-arm64-musl@0.102.0':
optional: true
'@oxc-parser/binding-linux-arm64-musl@0.93.0':
optional: true
- '@oxc-parser/binding-linux-arm64-musl@0.95.0':
+ '@oxc-parser/binding-linux-riscv64-gnu@0.102.0':
optional: true
'@oxc-parser/binding-linux-riscv64-gnu@0.93.0':
optional: true
- '@oxc-parser/binding-linux-riscv64-gnu@0.95.0':
+ '@oxc-parser/binding-linux-s390x-gnu@0.102.0':
optional: true
'@oxc-parser/binding-linux-s390x-gnu@0.93.0':
optional: true
- '@oxc-parser/binding-linux-s390x-gnu@0.95.0':
+ '@oxc-parser/binding-linux-x64-gnu@0.102.0':
optional: true
'@oxc-parser/binding-linux-x64-gnu@0.93.0':
optional: true
- '@oxc-parser/binding-linux-x64-gnu@0.95.0':
+ '@oxc-parser/binding-linux-x64-musl@0.102.0':
optional: true
'@oxc-parser/binding-linux-x64-musl@0.93.0':
optional: true
- '@oxc-parser/binding-linux-x64-musl@0.95.0':
+ '@oxc-parser/binding-openharmony-arm64@0.102.0':
+ optional: true
+
+ '@oxc-parser/binding-wasm32-wasi@0.102.0':
+ dependencies:
+ '@napi-rs/wasm-runtime': 1.1.1
optional: true
'@oxc-parser/binding-wasm32-wasi@0.93.0':
@@ -5268,72 +5568,67 @@ snapshots:
'@napi-rs/wasm-runtime': 1.0.7
optional: true
- '@oxc-parser/binding-wasm32-wasi@0.95.0':
- dependencies:
- '@napi-rs/wasm-runtime': 1.0.7
+ '@oxc-parser/binding-win32-arm64-msvc@0.102.0':
optional: true
'@oxc-parser/binding-win32-arm64-msvc@0.93.0':
optional: true
- '@oxc-parser/binding-win32-arm64-msvc@0.95.0':
+ '@oxc-parser/binding-win32-x64-msvc@0.102.0':
optional: true
'@oxc-parser/binding-win32-x64-msvc@0.93.0':
optional: true
- '@oxc-parser/binding-win32-x64-msvc@0.95.0':
- optional: true
+ '@oxc-project/types@0.102.0': {}
'@oxc-project/types@0.93.0': {}
- '@oxc-project/types@0.95.0': {}
-
- '@oxc-transform/binding-android-arm64@0.95.0':
+ '@oxc-transform/binding-android-arm64@0.102.0':
optional: true
- '@oxc-transform/binding-darwin-arm64@0.95.0':
+ '@oxc-transform/binding-darwin-arm64@0.102.0':
optional: true
- '@oxc-transform/binding-darwin-x64@0.95.0':
+ '@oxc-transform/binding-darwin-x64@0.102.0':
optional: true
- '@oxc-transform/binding-freebsd-x64@0.95.0':
+ '@oxc-transform/binding-freebsd-x64@0.102.0':
optional: true
- '@oxc-transform/binding-linux-arm-gnueabihf@0.95.0':
+ '@oxc-transform/binding-linux-arm-gnueabihf@0.102.0':
optional: true
- '@oxc-transform/binding-linux-arm-musleabihf@0.95.0':
+ '@oxc-transform/binding-linux-arm64-gnu@0.102.0':
optional: true
- '@oxc-transform/binding-linux-arm64-gnu@0.95.0':
+ '@oxc-transform/binding-linux-arm64-musl@0.102.0':
optional: true
- '@oxc-transform/binding-linux-arm64-musl@0.95.0':
+ '@oxc-transform/binding-linux-riscv64-gnu@0.102.0':
optional: true
- '@oxc-transform/binding-linux-riscv64-gnu@0.95.0':
+ '@oxc-transform/binding-linux-s390x-gnu@0.102.0':
optional: true
- '@oxc-transform/binding-linux-s390x-gnu@0.95.0':
+ '@oxc-transform/binding-linux-x64-gnu@0.102.0':
optional: true
- '@oxc-transform/binding-linux-x64-gnu@0.95.0':
+ '@oxc-transform/binding-linux-x64-musl@0.102.0':
optional: true
- '@oxc-transform/binding-linux-x64-musl@0.95.0':
+ '@oxc-transform/binding-openharmony-arm64@0.102.0':
optional: true
- '@oxc-transform/binding-wasm32-wasi@0.95.0':
+ '@oxc-transform/binding-wasm32-wasi@0.102.0':
dependencies:
- '@napi-rs/wasm-runtime': 1.0.7
+ '@napi-rs/wasm-runtime': 1.1.1
optional: true
- '@oxc-transform/binding-win32-arm64-msvc@0.95.0':
+ '@oxc-transform/binding-win32-arm64-msvc@0.102.0':
optional: true
- '@oxc-transform/binding-win32-x64-msvc@0.95.0':
+ '@oxc-transform/binding-win32-x64-msvc@0.102.0':
optional: true
'@parcel/watcher-android-arm64@2.5.1':
@@ -5423,11 +5718,17 @@ snapshots:
'@sindresorhus/is': 7.1.0
supports-color: 10.2.2
+ '@poppinss/dumper@0.6.5':
+ dependencies:
+ '@poppinss/colors': 4.1.5
+ '@sindresorhus/is': 7.1.0
+ supports-color: 10.2.2
+
'@poppinss/exception@1.2.2': {}
- '@rolldown/pluginutils@1.0.0-beta.29': {}
+ '@rolldown/pluginutils@1.0.0-beta.53': {}
- '@rolldown/pluginutils@1.0.0-beta.45': {}
+ '@rolldown/pluginutils@1.0.0-beta.59': {}
'@rollup/plugin-alias@5.1.1(rollup@4.52.5)':
optionalDependencies:
@@ -5476,6 +5777,13 @@ snapshots:
optionalDependencies:
rollup: 4.52.5
+ '@rollup/plugin-replace@6.0.3(rollup@4.52.5)':
+ dependencies:
+ '@rollup/pluginutils': 5.3.0(rollup@4.52.5)
+ magic-string: 0.30.21
+ optionalDependencies:
+ rollup: 4.52.5
+
'@rollup/plugin-terser@0.4.4(rollup@4.52.5)':
dependencies:
serialize-javascript: 6.0.2
@@ -5558,15 +5866,15 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.52.5':
optional: true
- '@sec-ant/readable-stream@0.4.1': {}
-
'@sindresorhus/is@7.1.0': {}
'@sindresorhus/merge-streams@4.0.0': {}
+ '@speed-highlight/core@1.2.14': {}
+
'@speed-highlight/core@1.2.8': {}
- '@standard-schema/spec@1.1.0': {}
+ '@stablelib/base64@1.0.1': {}
'@swc/helpers@0.5.17':
dependencies:
@@ -5633,15 +5941,41 @@ snapshots:
'@tailwindcss/oxide-win32-arm64-msvc': 4.1.16
'@tailwindcss/oxide-win32-x64-msvc': 4.1.16
- '@tailwindcss/vite@4.1.16(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))':
+ '@tailwindcss/vite@4.1.16(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))':
dependencies:
'@tailwindcss/node': 4.1.16
'@tailwindcss/oxide': 4.1.16
tailwindcss: 4.1.16
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
+
+ '@tanstack/devtools-event-client@0.4.0': {}
+
+ '@tanstack/form-core@1.27.7':
+ dependencies:
+ '@tanstack/devtools-event-client': 0.4.0
+ '@tanstack/pacer-lite': 0.1.1
+ '@tanstack/store': 0.7.7
+
+ '@tanstack/pacer-lite@0.1.1': {}
+
+ '@tanstack/store@0.7.7': {}
'@tanstack/virtual-core@3.13.12': {}
+ '@tanstack/vue-form@1.27.7(vue@3.5.22(typescript@5.9.3))':
+ dependencies:
+ '@tanstack/form-core': 1.27.7
+ '@tanstack/vue-store': 0.7.7(vue@3.5.22(typescript@5.9.3))
+ vue: 3.5.22(typescript@5.9.3)
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+
+ '@tanstack/vue-store@0.7.7(vue@3.5.22(typescript@5.9.3))':
+ dependencies:
+ '@tanstack/store': 0.7.7
+ vue: 3.5.22(typescript@5.9.3)
+ vue-demi: 0.14.10(vue@3.5.22(typescript@5.9.3))
+
'@tanstack/vue-virtual@3.13.12(vue@3.5.22(typescript@5.9.3))':
dependencies:
'@tanstack/virtual-core': 3.13.12
@@ -5676,13 +6010,16 @@ snapshots:
'@types/resolve@1.20.2': {}
+ '@types/trusted-types@2.0.7':
+ optional: true
+
'@types/web-bluetooth@0.0.21': {}
- '@unhead/vue@2.0.19(vue@3.5.22(typescript@5.9.3))':
+ '@unhead/vue@2.0.19(vue@3.5.26(typescript@5.9.3))':
dependencies:
hookable: 5.5.3
unhead: 2.0.19
- vue: 3.5.22(typescript@5.9.3)
+ vue: 3.5.26(typescript@5.9.3)
'@vercel/nft@0.30.3(rollup@4.52.5)':
dependencies:
@@ -5703,31 +6040,31 @@ snapshots:
- rollup
- supports-color
- '@vitejs/plugin-vue-jsx@5.1.1(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))':
+ '@vitejs/plugin-vue-jsx@5.1.3(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.26(typescript@5.9.3))':
dependencies:
'@babel/core': 7.28.5
'@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.5)
'@babel/plugin-transform-typescript': 7.28.5(@babel/core@7.28.5)
- '@rolldown/pluginutils': 1.0.0-beta.45
- '@vue/babel-plugin-jsx': 1.5.0(@babel/core@7.28.5)
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
- vue: 3.5.22(typescript@5.9.3)
+ '@rolldown/pluginutils': 1.0.0-beta.59
+ '@vue/babel-plugin-jsx': 2.0.1(@babel/core@7.28.5)
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
+ vue: 3.5.26(typescript@5.9.3)
transitivePeerDependencies:
- supports-color
- '@vitejs/plugin-vue@6.0.1(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))':
+ '@vitejs/plugin-vue@6.0.3(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.26(typescript@5.9.3))':
dependencies:
- '@rolldown/pluginutils': 1.0.0-beta.29
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
- vue: 3.5.22(typescript@5.9.3)
+ '@rolldown/pluginutils': 1.0.0-beta.53
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
+ vue: 3.5.26(typescript@5.9.3)
- '@volar/language-core@2.4.23':
+ '@volar/language-core@2.4.27':
dependencies:
- '@volar/source-map': 2.4.23
+ '@volar/source-map': 2.4.27
- '@volar/source-map@2.4.23': {}
+ '@volar/source-map@2.4.27': {}
- '@vue-macros/common@3.1.1(vue@3.5.22(typescript@5.9.3))':
+ '@vue-macros/common@3.1.1(vue@3.5.26(typescript@5.9.3))':
dependencies:
'@vue/compiler-sfc': 3.5.22
ast-kit: 2.1.3
@@ -5735,11 +6072,11 @@ snapshots:
magic-string-ast: 1.0.3
unplugin-utils: 0.3.1
optionalDependencies:
- vue: 3.5.22(typescript@5.9.3)
+ vue: 3.5.26(typescript@5.9.3)
- '@vue/babel-helper-vue-transform-on@1.5.0': {}
+ '@vue/babel-helper-vue-transform-on@2.0.1': {}
- '@vue/babel-plugin-jsx@1.5.0(@babel/core@7.28.5)':
+ '@vue/babel-plugin-jsx@2.0.1(@babel/core@7.28.5)':
dependencies:
'@babel/helper-module-imports': 7.27.1
'@babel/helper-plugin-utils': 7.27.1
@@ -5747,15 +6084,15 @@ snapshots:
'@babel/template': 7.27.2
'@babel/traverse': 7.28.5
'@babel/types': 7.28.5
- '@vue/babel-helper-vue-transform-on': 1.5.0
- '@vue/babel-plugin-resolve-type': 1.5.0(@babel/core@7.28.5)
- '@vue/shared': 3.5.22
+ '@vue/babel-helper-vue-transform-on': 2.0.1
+ '@vue/babel-plugin-resolve-type': 2.0.1(@babel/core@7.28.5)
+ '@vue/shared': 3.5.26
optionalDependencies:
'@babel/core': 7.28.5
transitivePeerDependencies:
- supports-color
- '@vue/babel-plugin-resolve-type@1.5.0(@babel/core@7.28.5)':
+ '@vue/babel-plugin-resolve-type@2.0.1(@babel/core@7.28.5)':
dependencies:
'@babel/code-frame': 7.27.1
'@babel/core': 7.28.5
@@ -5774,11 +6111,24 @@ snapshots:
estree-walker: 2.0.2
source-map-js: 1.2.1
+ '@vue/compiler-core@3.5.26':
+ dependencies:
+ '@babel/parser': 7.28.5
+ '@vue/shared': 3.5.26
+ entities: 7.0.0
+ estree-walker: 2.0.2
+ source-map-js: 1.2.1
+
'@vue/compiler-dom@3.5.22':
dependencies:
'@vue/compiler-core': 3.5.22
'@vue/shared': 3.5.22
+ '@vue/compiler-dom@3.5.26':
+ dependencies:
+ '@vue/compiler-core': 3.5.26
+ '@vue/shared': 3.5.26
+
'@vue/compiler-sfc@3.5.22':
dependencies:
'@babel/parser': 7.28.5
@@ -5791,64 +6141,102 @@ snapshots:
postcss: 8.5.6
source-map-js: 1.2.1
+ '@vue/compiler-sfc@3.5.26':
+ dependencies:
+ '@babel/parser': 7.28.5
+ '@vue/compiler-core': 3.5.26
+ '@vue/compiler-dom': 3.5.26
+ '@vue/compiler-ssr': 3.5.26
+ '@vue/shared': 3.5.26
+ estree-walker: 2.0.2
+ magic-string: 0.30.21
+ postcss: 8.5.6
+ source-map-js: 1.2.1
+
'@vue/compiler-ssr@3.5.22':
dependencies:
'@vue/compiler-dom': 3.5.22
'@vue/shared': 3.5.22
+ '@vue/compiler-ssr@3.5.26':
+ dependencies:
+ '@vue/compiler-dom': 3.5.26
+ '@vue/shared': 3.5.26
+
'@vue/devtools-api@6.6.4': {}
'@vue/devtools-api@7.7.7':
dependencies:
- '@vue/devtools-kit': 7.7.7
+ '@vue/devtools-kit': 7.7.9
- '@vue/devtools-core@7.7.7(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))':
+ '@vue/devtools-core@8.0.5(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.26(typescript@5.9.3))':
dependencies:
- '@vue/devtools-kit': 7.7.7
- '@vue/devtools-shared': 7.7.7
+ '@vue/devtools-kit': 8.0.5
+ '@vue/devtools-shared': 8.0.5
mitt: 3.0.1
nanoid: 5.1.6
pathe: 2.0.3
- vite-hot-client: 2.1.0(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
- vue: 3.5.22(typescript@5.9.3)
+ vite-hot-client: 2.1.0(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))
+ vue: 3.5.26(typescript@5.9.3)
transitivePeerDependencies:
- vite
- '@vue/devtools-kit@7.7.7':
+ '@vue/devtools-kit@7.7.9':
dependencies:
- '@vue/devtools-shared': 7.7.7
- birpc: 2.6.1
+ '@vue/devtools-shared': 7.7.9
+ birpc: 2.9.0
hookable: 5.5.3
mitt: 3.0.1
perfect-debounce: 1.0.0
speakingurl: 14.0.1
superjson: 2.2.5
- '@vue/devtools-shared@7.7.7':
+ '@vue/devtools-kit@8.0.5':
+ dependencies:
+ '@vue/devtools-shared': 8.0.5
+ birpc: 2.9.0
+ hookable: 5.5.3
+ mitt: 3.0.1
+ perfect-debounce: 2.0.0
+ speakingurl: 14.0.1
+ superjson: 2.2.5
+
+ '@vue/devtools-shared@7.7.9':
dependencies:
rfdc: 1.4.1
- '@vue/language-core@3.1.2(typescript@5.9.3)':
+ '@vue/devtools-shared@8.0.5':
dependencies:
- '@volar/language-core': 2.4.23
+ rfdc: 1.4.1
+
+ '@vue/language-core@3.2.2':
+ dependencies:
+ '@volar/language-core': 2.4.27
'@vue/compiler-dom': 3.5.22
- '@vue/shared': 3.5.22
+ '@vue/shared': 3.5.26
alien-signals: 3.0.3
muggle-string: 0.4.1
path-browserify: 1.0.1
picomatch: 4.0.3
- optionalDependencies:
- typescript: 5.9.3
'@vue/reactivity@3.5.22':
dependencies:
'@vue/shared': 3.5.22
+ '@vue/reactivity@3.5.26':
+ dependencies:
+ '@vue/shared': 3.5.26
+
'@vue/runtime-core@3.5.22':
dependencies:
'@vue/reactivity': 3.5.22
'@vue/shared': 3.5.22
+ '@vue/runtime-core@3.5.26':
+ dependencies:
+ '@vue/reactivity': 3.5.26
+ '@vue/shared': 3.5.26
+
'@vue/runtime-dom@3.5.22':
dependencies:
'@vue/reactivity': 3.5.22
@@ -5856,14 +6244,29 @@ snapshots:
'@vue/shared': 3.5.22
csstype: 3.1.3
+ '@vue/runtime-dom@3.5.26':
+ dependencies:
+ '@vue/reactivity': 3.5.26
+ '@vue/runtime-core': 3.5.26
+ '@vue/shared': 3.5.26
+ csstype: 3.2.3
+
'@vue/server-renderer@3.5.22(vue@3.5.22(typescript@5.9.3))':
dependencies:
'@vue/compiler-ssr': 3.5.22
'@vue/shared': 3.5.22
vue: 3.5.22(typescript@5.9.3)
+ '@vue/server-renderer@3.5.26(vue@3.5.26(typescript@5.9.3))':
+ dependencies:
+ '@vue/compiler-ssr': 3.5.26
+ '@vue/shared': 3.5.26
+ vue: 3.5.26(typescript@5.9.3)
+
'@vue/shared@3.5.22': {}
+ '@vue/shared@3.5.26': {}
+
'@vueuse/core@12.8.2(typescript@5.9.3)':
dependencies:
'@types/web-bluetooth': 0.0.21
@@ -5968,12 +6371,11 @@ snapshots:
async@3.2.6: {}
- autoprefixer@10.4.21(postcss@8.5.6):
+ autoprefixer@10.4.23(postcss@8.5.6):
dependencies:
- browserslist: 4.27.0
- caniuse-lite: 1.0.30001751
- fraction.js: 4.3.7
- normalize-range: 0.1.2
+ browserslist: 4.28.1
+ caniuse-lite: 1.0.30001762
+ fraction.js: 5.3.4
picocolors: 1.1.1
postcss: 8.5.6
postcss-value-parser: 4.2.0
@@ -5988,39 +6390,15 @@ snapshots:
baseline-browser-mapping@2.8.20: {}
- better-auth@1.4.7(drizzle-kit@0.31.8)(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(vue@3.5.22(typescript@5.9.3)):
- dependencies:
- '@better-auth/core': 1.4.7(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.21)(better-call@1.1.5(zod@4.2.1))(jose@6.1.3)(kysely@0.28.9)(nanostores@1.1.0)
- '@better-auth/telemetry': 1.4.7(@better-auth/core@1.4.7(@better-auth/utils@0.3.0)(@better-fetch/fetch@1.1.21)(better-call@1.1.5(zod@4.2.1))(jose@6.1.3)(kysely@0.28.9)(nanostores@1.1.0))
- '@better-auth/utils': 0.3.0
- '@better-fetch/fetch': 1.1.21
- '@noble/ciphers': 2.1.1
- '@noble/hashes': 2.0.1
- better-call: 1.1.5(zod@4.2.1)
- defu: 6.1.4
- jose: 6.1.3
- kysely: 0.28.9
- nanostores: 1.1.0
- zod: 4.2.1
- optionalDependencies:
- drizzle-kit: 0.31.8
- drizzle-orm: 0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)
- vue: 3.5.22(typescript@5.9.3)
+ baseline-browser-mapping@2.9.12: {}
- better-call@1.1.5(zod@4.2.1):
- dependencies:
- '@better-auth/utils': 0.3.0
- '@better-fetch/fetch': 1.1.21
- rou3: 0.7.12
- set-cookie-parser: 2.7.2
- optionalDependencies:
- zod: 4.2.1
+ binary-extensions@2.3.0: {}
bindings@1.5.0:
dependencies:
file-uri-to-path: 1.0.0
- birpc@2.6.1: {}
+ birpc@2.9.0: {}
boolbase@1.0.0: {}
@@ -6040,6 +6418,14 @@ snapshots:
node-releases: 2.0.26
update-browserslist-db: 1.1.4(browserslist@4.27.0)
+ browserslist@4.28.1:
+ dependencies:
+ baseline-browser-mapping: 2.9.12
+ caniuse-lite: 1.0.30001762
+ electron-to-chromium: 1.5.267
+ node-releases: 2.0.27
+ update-browserslist-db: 1.2.3(browserslist@4.28.1)
+
buffer-crc32@1.0.0: {}
buffer-from@1.1.2: {}
@@ -6053,23 +6439,6 @@ snapshots:
dependencies:
run-applescript: 7.1.0
- c12@3.3.1(magicast@0.3.5):
- dependencies:
- chokidar: 4.0.3
- confbox: 0.2.2
- defu: 6.1.4
- dotenv: 17.2.3
- exsolve: 1.0.7
- giget: 2.0.0
- jiti: 2.6.1
- ohash: 2.0.11
- pathe: 2.0.3
- perfect-debounce: 2.0.0
- pkg-types: 2.3.0
- rc9: 2.1.2
- optionalDependencies:
- magicast: 0.3.5
-
c12@3.3.1(magicast@0.5.0):
dependencies:
chokidar: 4.0.3
@@ -6087,6 +6456,40 @@ snapshots:
optionalDependencies:
magicast: 0.5.0
+ c12@3.3.3(magicast@0.5.0):
+ dependencies:
+ chokidar: 5.0.0
+ confbox: 0.2.2
+ defu: 6.1.4
+ dotenv: 17.2.3
+ exsolve: 1.0.8
+ giget: 2.0.0
+ jiti: 2.6.1
+ ohash: 2.0.11
+ pathe: 2.0.3
+ perfect-debounce: 2.0.0
+ pkg-types: 2.3.0
+ rc9: 2.1.2
+ optionalDependencies:
+ magicast: 0.5.0
+
+ c12@3.3.3(magicast@0.5.1):
+ dependencies:
+ chokidar: 5.0.0
+ confbox: 0.2.2
+ defu: 6.1.4
+ dotenv: 17.2.3
+ exsolve: 1.0.8
+ giget: 2.0.0
+ jiti: 2.6.1
+ ohash: 2.0.11
+ pathe: 2.0.3
+ perfect-debounce: 2.0.0
+ pkg-types: 2.3.0
+ rc9: 2.1.2
+ optionalDependencies:
+ magicast: 0.5.1
+
cac@6.7.14: {}
caniuse-api@3.0.0:
@@ -6098,10 +6501,28 @@ snapshots:
caniuse-lite@1.0.30001751: {}
+ caniuse-lite@1.0.30001762: {}
+
+ chokidar@3.6.0:
+ dependencies:
+ anymatch: 3.1.3
+ braces: 3.0.3
+ glob-parent: 5.1.2
+ is-binary-path: 2.1.0
+ is-glob: 4.0.3
+ normalize-path: 3.0.0
+ readdirp: 3.6.0
+ optionalDependencies:
+ fsevents: 2.3.3
+
chokidar@4.0.3:
dependencies:
readdirp: 4.1.2
+ chokidar@5.0.0:
+ dependencies:
+ readdirp: 5.0.0
+
chownr@3.0.0: {}
citty@0.1.6:
@@ -6118,13 +6539,6 @@ snapshots:
is-wsl: 3.1.0
is64bit: 2.0.0
- clipboardy@5.0.0:
- dependencies:
- execa: 9.6.0
- is-wayland: 0.1.0
- is-wsl: 3.1.0
- is64bit: 2.0.0
-
cliui@8.0.1:
dependencies:
string-width: 4.2.3
@@ -6177,6 +6591,10 @@ snapshots:
dependencies:
is-what: 5.5.0
+ copy-paste@2.2.0:
+ dependencies:
+ iconv-lite: 0.4.24
+
core-util-is@1.0.3: {}
crc-32@1.2.2: {}
@@ -6229,24 +6647,24 @@ snapshots:
cssesc@3.0.0: {}
- cssnano-preset-default@7.0.9(postcss@8.5.6):
+ cssnano-preset-default@7.0.10(postcss@8.5.6):
dependencies:
browserslist: 4.27.0
css-declaration-sorter: 7.3.0(postcss@8.5.6)
cssnano-utils: 5.0.1(postcss@8.5.6)
postcss: 8.5.6
postcss-calc: 10.1.1(postcss@8.5.6)
- postcss-colormin: 7.0.4(postcss@8.5.6)
- postcss-convert-values: 7.0.7(postcss@8.5.6)
- postcss-discard-comments: 7.0.4(postcss@8.5.6)
+ postcss-colormin: 7.0.5(postcss@8.5.6)
+ postcss-convert-values: 7.0.8(postcss@8.5.6)
+ postcss-discard-comments: 7.0.5(postcss@8.5.6)
postcss-discard-duplicates: 7.0.2(postcss@8.5.6)
postcss-discard-empty: 7.0.1(postcss@8.5.6)
postcss-discard-overridden: 7.0.1(postcss@8.5.6)
postcss-merge-longhand: 7.0.5(postcss@8.5.6)
- postcss-merge-rules: 7.0.6(postcss@8.5.6)
+ postcss-merge-rules: 7.0.7(postcss@8.5.6)
postcss-minify-font-values: 7.0.1(postcss@8.5.6)
postcss-minify-gradients: 7.0.1(postcss@8.5.6)
- postcss-minify-params: 7.0.4(postcss@8.5.6)
+ postcss-minify-params: 7.0.5(postcss@8.5.6)
postcss-minify-selectors: 7.0.5(postcss@8.5.6)
postcss-normalize-charset: 7.0.1(postcss@8.5.6)
postcss-normalize-display-values: 7.0.1(postcss@8.5.6)
@@ -6254,11 +6672,11 @@ snapshots:
postcss-normalize-repeat-style: 7.0.1(postcss@8.5.6)
postcss-normalize-string: 7.0.1(postcss@8.5.6)
postcss-normalize-timing-functions: 7.0.1(postcss@8.5.6)
- postcss-normalize-unicode: 7.0.4(postcss@8.5.6)
+ postcss-normalize-unicode: 7.0.5(postcss@8.5.6)
postcss-normalize-url: 7.0.1(postcss@8.5.6)
postcss-normalize-whitespace: 7.0.1(postcss@8.5.6)
postcss-ordered-values: 7.0.2(postcss@8.5.6)
- postcss-reduce-initial: 7.0.4(postcss@8.5.6)
+ postcss-reduce-initial: 7.0.5(postcss@8.5.6)
postcss-reduce-transforms: 7.0.1(postcss@8.5.6)
postcss-svgo: 7.1.0(postcss@8.5.6)
postcss-unique-selectors: 7.0.4(postcss@8.5.6)
@@ -6267,9 +6685,9 @@ snapshots:
dependencies:
postcss: 8.5.6
- cssnano@7.1.1(postcss@8.5.6):
+ cssnano@7.1.2(postcss@8.5.6):
dependencies:
- cssnano-preset-default: 7.0.9(postcss@8.5.6)
+ cssnano-preset-default: 7.0.10(postcss@8.5.6)
lilconfig: 3.1.3
postcss: 8.5.6
@@ -6279,6 +6697,8 @@ snapshots:
csstype@3.1.3: {}
+ csstype@3.2.3: {}
+
db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)):
optionalDependencies:
drizzle-orm: 0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)
@@ -6306,13 +6726,15 @@ snapshots:
depd@2.0.0: {}
+ dequal@2.0.3: {}
+
destr@2.0.5: {}
detect-libc@1.0.3: {}
detect-libc@2.1.2: {}
- devalue@5.4.2: {}
+ devalue@5.6.1: {}
diff@8.0.2: {}
@@ -6328,6 +6750,10 @@ snapshots:
dependencies:
domelementtype: 2.3.0
+ dompurify@3.2.7:
+ optionalDependencies:
+ '@types/trusted-types': 2.0.7
+
domutils@3.2.2:
dependencies:
dom-serializer: 2.0.0
@@ -6365,6 +6791,8 @@ snapshots:
electron-to-chromium@1.5.241: {}
+ electron-to-chromium@1.5.267: {}
+
emoji-regex@8.0.0: {}
emoji-regex@9.2.2: {}
@@ -6378,6 +6806,8 @@ snapshots:
entities@4.5.0: {}
+ entities@7.0.0: {}
+
error-stack-parser-es@1.0.5: {}
errx@0.1.0: {}
@@ -6510,23 +6940,10 @@ snapshots:
signal-exit: 4.1.0
strip-final-newline: 3.0.0
- execa@9.6.0:
- dependencies:
- '@sindresorhus/merge-streams': 4.0.0
- cross-spawn: 7.0.6
- figures: 6.1.0
- get-stream: 9.0.1
- human-signals: 8.0.1
- is-plain-obj: 4.1.0
- is-stream: 4.0.1
- npm-run-path: 6.0.0
- pretty-ms: 9.3.0
- signal-exit: 4.1.0
- strip-final-newline: 4.0.0
- yoctocolors: 2.1.2
-
exsolve@1.0.7: {}
+ exsolve@1.0.8: {}
+
fast-fifo@1.3.2: {}
fast-glob@3.3.3:
@@ -6539,6 +6956,8 @@ snapshots:
fast-npm-meta@0.4.7: {}
+ fast-sha256@1.3.0: {}
+
fastq@1.19.1:
dependencies:
reusify: 1.1.0
@@ -6547,10 +6966,6 @@ snapshots:
optionalDependencies:
picomatch: 4.0.3
- figures@6.1.0:
- dependencies:
- is-unicode-supported: 2.1.0
-
file-uri-to-path@1.0.0: {}
fill-range@7.1.1:
@@ -6562,7 +6977,7 @@ snapshots:
cross-spawn: 7.0.6
signal-exit: 4.1.0
- fraction.js@4.3.7: {}
+ fraction.js@5.3.4: {}
fresh@2.0.0: {}
@@ -6581,11 +6996,6 @@ snapshots:
get-stream@8.0.1: {}
- get-stream@9.0.1:
- dependencies:
- '@sec-ant/readable-stream': 0.4.1
- is-stream: 4.0.1
-
get-tsconfig@4.13.0:
dependencies:
resolve-pkg-maps: 1.0.0
@@ -6612,6 +7022,8 @@ snapshots:
dependencies:
is-glob: 4.0.3
+ glob-to-regexp@0.4.1: {}
+
glob@10.4.5:
dependencies:
foreground-child: 3.3.1
@@ -6679,7 +7091,9 @@ snapshots:
human-signals@5.0.0: {}
- human-signals@8.0.1: {}
+ iconv-lite@0.4.24:
+ dependencies:
+ safer-buffer: 2.1.2
ieee754@1.2.1: {}
@@ -6689,10 +7103,10 @@ snapshots:
impound@1.0.0:
dependencies:
- exsolve: 1.0.7
+ exsolve: 1.0.8
mocked-exports: 0.1.1
pathe: 2.0.3
- unplugin: 2.3.10
+ unplugin: 2.3.11
unplugin-utils: 0.2.5
inherits@2.0.4: {}
@@ -6715,6 +7129,10 @@ snapshots:
iron-webcrypto@1.2.1: {}
+ is-binary-path@2.1.0:
+ dependencies:
+ binary-extensions: 2.3.0
+
is-core-module@2.16.1:
dependencies:
hasown: 2.0.2
@@ -6746,8 +7164,6 @@ snapshots:
is-path-inside@4.0.0: {}
- is-plain-obj@4.1.0: {}
-
is-reference@1.2.1:
dependencies:
'@types/estree': 1.0.8
@@ -6760,12 +7176,6 @@ snapshots:
is-stream@3.0.0: {}
- is-stream@4.0.1: {}
-
- is-unicode-supported@2.1.0: {}
-
- is-wayland@0.1.0: {}
-
is-what@5.5.0: {}
is-wsl@2.2.0:
@@ -6794,7 +7204,7 @@ snapshots:
jiti@2.6.1: {}
- jose@6.1.3: {}
+ js-cookie@3.0.5: {}
js-tokens@4.0.0: {}
@@ -6812,7 +7222,10 @@ snapshots:
knitwork@1.2.0: {}
- kysely@0.28.9: {}
+ knitwork@1.3.0: {}
+
+ kysely@0.28.9:
+ optional: true
launch-editor@2.12.0:
dependencies:
@@ -6931,7 +7344,7 @@ snapshots:
regexp-tree: 0.1.27
type-level-regexp: 0.1.17
ufo: 1.6.1
- unplugin: 2.3.10
+ unplugin: 2.3.11
magic-string-ast@1.0.3:
dependencies:
@@ -6941,18 +7354,20 @@ snapshots:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.5
- magicast@0.3.5:
- dependencies:
- '@babel/parser': 7.28.5
- '@babel/types': 7.28.5
- source-map-js: 1.2.1
-
magicast@0.5.0:
dependencies:
'@babel/parser': 7.28.5
'@babel/types': 7.28.5
source-map-js: 1.2.1
+ magicast@0.5.1:
+ dependencies:
+ '@babel/parser': 7.28.5
+ '@babel/types': 7.28.5
+ source-map-js: 1.2.1
+
+ marked@14.0.0: {}
+
mdn-data@2.0.28: {}
mdn-data@2.12.2: {}
@@ -7003,6 +7418,11 @@ snapshots:
mocked-exports@0.1.1: {}
+ monaco-editor@0.55.1:
+ dependencies:
+ dompurify: 3.2.7
+ marked: 14.0.0
+
mrmime@2.0.1: {}
ms@2.1.3: {}
@@ -7013,8 +7433,6 @@ snapshots:
nanoid@5.1.6: {}
- nanostores@1.1.0: {}
-
nanotar@0.2.0: {}
nitropack@2.12.9(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)):
@@ -7029,7 +7447,7 @@ snapshots:
'@rollup/plugin-terser': 0.4.4(rollup@4.52.5)
'@vercel/nft': 0.30.3(rollup@4.52.5)
archiver: 7.0.1
- c12: 3.3.1(magicast@0.5.0)
+ c12: 3.3.3(magicast@0.5.0)
chokidar: 4.0.3
citty: 0.1.6
compatx: 0.2.0
@@ -7045,7 +7463,7 @@ snapshots:
esbuild: 0.25.11
escape-string-regexp: 5.0.0
etag: 1.8.1
- exsolve: 1.0.7
+ exsolve: 1.0.8
globby: 15.0.0
gzip-size: 7.0.0
h3: 1.15.4
@@ -7054,7 +7472,7 @@ snapshots:
ioredis: 5.8.2
jiti: 2.6.1
klona: 2.0.6
- knitwork: 1.2.0
+ knitwork: 1.3.0
listhen: 1.9.0
magic-string: 0.30.21
magicast: 0.5.0
@@ -7062,7 +7480,7 @@ snapshots:
mlly: 1.8.0
node-fetch-native: 1.6.7
node-mock-http: 1.0.3
- ofetch: 1.5.0
+ ofetch: 1.5.1
ohash: 2.0.11
pathe: 2.0.3
perfect-debounce: 2.0.0
@@ -7084,7 +7502,7 @@ snapshots:
unenv: 2.0.0-rc.23
unimport: 5.5.0
unplugin-utils: 0.3.1
- unstorage: 1.17.1(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(ioredis@5.8.2)
+ unstorage: 1.17.3(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(ioredis@5.8.2)
untyped: 2.0.0
unwasm: 0.3.11
youch: 4.1.0-beta.11
@@ -7135,14 +7553,14 @@ snapshots:
node-releases@2.0.26: {}
+ node-releases@2.0.27: {}
+
nopt@8.1.0:
dependencies:
abbrev: 3.0.1
normalize-path@3.0.0: {}
- normalize-range@0.1.2: {}
-
npm-run-path@5.3.0:
dependencies:
path-key: 4.0.0
@@ -7166,47 +7584,57 @@ snapshots:
transitivePeerDependencies:
- magicast
- nuxt@4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1):
+ nuxt-monaco-editor@1.4.0(magicast@0.5.0)(monaco-editor@0.55.1)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)):
dependencies:
- '@dxup/nuxt': 0.2.0(magicast@0.5.0)
- '@nuxt/cli': 3.29.3(magicast@0.5.0)
- '@nuxt/devtools': 2.7.0(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))
'@nuxt/kit': 4.2.0(magicast@0.5.0)
- '@nuxt/nitro-server': 4.2.0(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(magicast@0.5.0)(nuxt@4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1))(typescript@5.9.3)
- '@nuxt/schema': 4.2.0
+ defu: 6.1.4
+ monaco-editor: 0.55.1
+ vite-plugin-static-copy: 3.1.4(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))
+ transitivePeerDependencies:
+ - magicast
+ - vite
+
+ nuxt@4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2):
+ dependencies:
+ '@dxup/nuxt': 0.2.2(magicast@0.5.0)
+ '@nuxt/cli': 3.32.0(cac@6.7.14)(magicast@0.5.0)
+ '@nuxt/devtools': 3.1.1(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.26(typescript@5.9.3))
+ '@nuxt/kit': 4.2.2(magicast@0.5.0)
+ '@nuxt/nitro-server': 4.2.2(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(magicast@0.5.0)(nuxt@4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2))(typescript@5.9.3)
+ '@nuxt/schema': 4.2.2
'@nuxt/telemetry': 2.6.6(magicast@0.5.0)
- '@nuxt/vite-builder': 4.2.0(@types/node@24.9.2)(lightningcss@1.30.2)(magicast@0.5.0)(nuxt@4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1))(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vue@3.5.22(typescript@5.9.3))(yaml@2.8.1)
- '@unhead/vue': 2.0.19(vue@3.5.22(typescript@5.9.3))
- '@vue/shared': 3.5.22
- c12: 3.3.1(magicast@0.5.0)
- chokidar: 4.0.3
+ '@nuxt/vite-builder': 4.2.2(@types/node@24.9.2)(lightningcss@1.30.2)(magicast@0.5.0)(nuxt@4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2))(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vue@3.5.26(typescript@5.9.3))(yaml@2.8.2)
+ '@unhead/vue': 2.0.19(vue@3.5.26(typescript@5.9.3))
+ '@vue/shared': 3.5.26
+ c12: 3.3.3(magicast@0.5.0)
+ chokidar: 5.0.0
compatx: 0.2.0
consola: 3.4.2
cookie-es: 2.0.0
defu: 6.1.4
destr: 2.0.5
- devalue: 5.4.2
+ devalue: 5.6.1
errx: 0.1.0
escape-string-regexp: 5.0.0
- exsolve: 1.0.7
+ exsolve: 1.0.8
h3: 1.15.4
hookable: 5.5.3
ignore: 7.0.5
impound: 1.0.0
jiti: 2.6.1
klona: 2.0.6
- knitwork: 1.2.0
+ knitwork: 1.3.0
magic-string: 0.30.21
mlly: 1.8.0
nanotar: 0.2.0
nypm: 0.6.2
- ofetch: 1.5.0
+ ofetch: 1.5.1
ohash: 2.0.11
on-change: 6.0.1
- oxc-minify: 0.95.0
- oxc-parser: 0.95.0
- oxc-transform: 0.95.0
- oxc-walker: 0.5.2(oxc-parser@0.95.0)
+ oxc-minify: 0.102.0
+ oxc-parser: 0.102.0
+ oxc-transform: 0.102.0
+ oxc-walker: 0.6.0(oxc-parser@0.102.0)
pathe: 2.0.3
perfect-debounce: 2.0.0
pkg-types: 2.3.0
@@ -7220,11 +7648,11 @@ snapshots:
uncrypto: 0.1.3
unctx: 2.4.1
unimport: 5.5.0
- unplugin: 2.3.10
- unplugin-vue-router: 0.16.0(@vue/compiler-sfc@3.5.22)(typescript@5.9.3)(vue-router@4.6.3(vue@3.5.22(typescript@5.9.3)))(vue@3.5.22(typescript@5.9.3))
+ unplugin: 2.3.11
+ unplugin-vue-router: 0.19.2(@vue/compiler-sfc@3.5.26)(vue-router@4.6.3(vue@3.5.22(typescript@5.9.3)))(vue@3.5.26(typescript@5.9.3))
untyped: 2.0.0
- vue: 3.5.22(typescript@5.9.3)
- vue-router: 4.6.3(vue@3.5.22(typescript@5.9.3))
+ vue: 3.5.26(typescript@5.9.3)
+ vue-router: 4.6.3(vue@3.5.26(typescript@5.9.3))
optionalDependencies:
'@parcel/watcher': 2.5.1
'@types/node': 24.9.2
@@ -7246,11 +7674,14 @@ snapshots:
- '@vercel/blob'
- '@vercel/functions'
- '@vercel/kv'
+ - '@vitejs/devtools'
- '@vue/compiler-sfc'
- aws4fetch
- bare-abort-controller
- better-sqlite3
- bufferutil
+ - cac
+ - commander
- db0
- drizzle-orm
- encoding
@@ -7294,7 +7725,9 @@ snapshots:
pkg-types: 2.3.0
tinyexec: 1.0.1
- ofetch@1.5.0:
+ obug@2.1.1: {}
+
+ ofetch@1.5.1:
dependencies:
destr: 2.0.5
node-fetch-native: 1.6.7
@@ -7325,23 +7758,43 @@ snapshots:
is-docker: 2.2.1
is-wsl: 2.2.0
- oxc-minify@0.95.0:
+ oxc-minify@0.102.0:
optionalDependencies:
- '@oxc-minify/binding-android-arm64': 0.95.0
- '@oxc-minify/binding-darwin-arm64': 0.95.0
- '@oxc-minify/binding-darwin-x64': 0.95.0
- '@oxc-minify/binding-freebsd-x64': 0.95.0
- '@oxc-minify/binding-linux-arm-gnueabihf': 0.95.0
- '@oxc-minify/binding-linux-arm-musleabihf': 0.95.0
- '@oxc-minify/binding-linux-arm64-gnu': 0.95.0
- '@oxc-minify/binding-linux-arm64-musl': 0.95.0
- '@oxc-minify/binding-linux-riscv64-gnu': 0.95.0
- '@oxc-minify/binding-linux-s390x-gnu': 0.95.0
- '@oxc-minify/binding-linux-x64-gnu': 0.95.0
- '@oxc-minify/binding-linux-x64-musl': 0.95.0
- '@oxc-minify/binding-wasm32-wasi': 0.95.0
- '@oxc-minify/binding-win32-arm64-msvc': 0.95.0
- '@oxc-minify/binding-win32-x64-msvc': 0.95.0
+ '@oxc-minify/binding-android-arm64': 0.102.0
+ '@oxc-minify/binding-darwin-arm64': 0.102.0
+ '@oxc-minify/binding-darwin-x64': 0.102.0
+ '@oxc-minify/binding-freebsd-x64': 0.102.0
+ '@oxc-minify/binding-linux-arm-gnueabihf': 0.102.0
+ '@oxc-minify/binding-linux-arm64-gnu': 0.102.0
+ '@oxc-minify/binding-linux-arm64-musl': 0.102.0
+ '@oxc-minify/binding-linux-riscv64-gnu': 0.102.0
+ '@oxc-minify/binding-linux-s390x-gnu': 0.102.0
+ '@oxc-minify/binding-linux-x64-gnu': 0.102.0
+ '@oxc-minify/binding-linux-x64-musl': 0.102.0
+ '@oxc-minify/binding-openharmony-arm64': 0.102.0
+ '@oxc-minify/binding-wasm32-wasi': 0.102.0
+ '@oxc-minify/binding-win32-arm64-msvc': 0.102.0
+ '@oxc-minify/binding-win32-x64-msvc': 0.102.0
+
+ oxc-parser@0.102.0:
+ dependencies:
+ '@oxc-project/types': 0.102.0
+ optionalDependencies:
+ '@oxc-parser/binding-android-arm64': 0.102.0
+ '@oxc-parser/binding-darwin-arm64': 0.102.0
+ '@oxc-parser/binding-darwin-x64': 0.102.0
+ '@oxc-parser/binding-freebsd-x64': 0.102.0
+ '@oxc-parser/binding-linux-arm-gnueabihf': 0.102.0
+ '@oxc-parser/binding-linux-arm64-gnu': 0.102.0
+ '@oxc-parser/binding-linux-arm64-musl': 0.102.0
+ '@oxc-parser/binding-linux-riscv64-gnu': 0.102.0
+ '@oxc-parser/binding-linux-s390x-gnu': 0.102.0
+ '@oxc-parser/binding-linux-x64-gnu': 0.102.0
+ '@oxc-parser/binding-linux-x64-musl': 0.102.0
+ '@oxc-parser/binding-openharmony-arm64': 0.102.0
+ '@oxc-parser/binding-wasm32-wasi': 0.102.0
+ '@oxc-parser/binding-win32-arm64-msvc': 0.102.0
+ '@oxc-parser/binding-win32-x64-msvc': 0.102.0
oxc-parser@0.93.0:
dependencies:
@@ -7363,55 +7816,35 @@ snapshots:
'@oxc-parser/binding-win32-arm64-msvc': 0.93.0
'@oxc-parser/binding-win32-x64-msvc': 0.93.0
- oxc-parser@0.95.0:
- dependencies:
- '@oxc-project/types': 0.95.0
+ oxc-transform@0.102.0:
optionalDependencies:
- '@oxc-parser/binding-android-arm64': 0.95.0
- '@oxc-parser/binding-darwin-arm64': 0.95.0
- '@oxc-parser/binding-darwin-x64': 0.95.0
- '@oxc-parser/binding-freebsd-x64': 0.95.0
- '@oxc-parser/binding-linux-arm-gnueabihf': 0.95.0
- '@oxc-parser/binding-linux-arm-musleabihf': 0.95.0
- '@oxc-parser/binding-linux-arm64-gnu': 0.95.0
- '@oxc-parser/binding-linux-arm64-musl': 0.95.0
- '@oxc-parser/binding-linux-riscv64-gnu': 0.95.0
- '@oxc-parser/binding-linux-s390x-gnu': 0.95.0
- '@oxc-parser/binding-linux-x64-gnu': 0.95.0
- '@oxc-parser/binding-linux-x64-musl': 0.95.0
- '@oxc-parser/binding-wasm32-wasi': 0.95.0
- '@oxc-parser/binding-win32-arm64-msvc': 0.95.0
- '@oxc-parser/binding-win32-x64-msvc': 0.95.0
+ '@oxc-transform/binding-android-arm64': 0.102.0
+ '@oxc-transform/binding-darwin-arm64': 0.102.0
+ '@oxc-transform/binding-darwin-x64': 0.102.0
+ '@oxc-transform/binding-freebsd-x64': 0.102.0
+ '@oxc-transform/binding-linux-arm-gnueabihf': 0.102.0
+ '@oxc-transform/binding-linux-arm64-gnu': 0.102.0
+ '@oxc-transform/binding-linux-arm64-musl': 0.102.0
+ '@oxc-transform/binding-linux-riscv64-gnu': 0.102.0
+ '@oxc-transform/binding-linux-s390x-gnu': 0.102.0
+ '@oxc-transform/binding-linux-x64-gnu': 0.102.0
+ '@oxc-transform/binding-linux-x64-musl': 0.102.0
+ '@oxc-transform/binding-openharmony-arm64': 0.102.0
+ '@oxc-transform/binding-wasm32-wasi': 0.102.0
+ '@oxc-transform/binding-win32-arm64-msvc': 0.102.0
+ '@oxc-transform/binding-win32-x64-msvc': 0.102.0
- oxc-transform@0.95.0:
- optionalDependencies:
- '@oxc-transform/binding-android-arm64': 0.95.0
- '@oxc-transform/binding-darwin-arm64': 0.95.0
- '@oxc-transform/binding-darwin-x64': 0.95.0
- '@oxc-transform/binding-freebsd-x64': 0.95.0
- '@oxc-transform/binding-linux-arm-gnueabihf': 0.95.0
- '@oxc-transform/binding-linux-arm-musleabihf': 0.95.0
- '@oxc-transform/binding-linux-arm64-gnu': 0.95.0
- '@oxc-transform/binding-linux-arm64-musl': 0.95.0
- '@oxc-transform/binding-linux-riscv64-gnu': 0.95.0
- '@oxc-transform/binding-linux-s390x-gnu': 0.95.0
- '@oxc-transform/binding-linux-x64-gnu': 0.95.0
- '@oxc-transform/binding-linux-x64-musl': 0.95.0
- '@oxc-transform/binding-wasm32-wasi': 0.95.0
- '@oxc-transform/binding-win32-arm64-msvc': 0.95.0
- '@oxc-transform/binding-win32-x64-msvc': 0.95.0
-
- oxc-walker@0.5.2(oxc-parser@0.95.0):
+ oxc-walker@0.6.0(oxc-parser@0.102.0):
dependencies:
magic-regexp: 0.10.0
- oxc-parser: 0.95.0
+ oxc-parser: 0.102.0
+
+ p-map@7.0.4: {}
package-json-from-dist@1.0.1: {}
package-manager-detector@1.5.0: {}
- parse-ms@4.0.0: {}
-
parse-path@7.1.0:
dependencies:
protocols: 2.0.2
@@ -7489,7 +7922,7 @@ snapshots:
postcss-selector-parser: 7.1.0
postcss-value-parser: 4.2.0
- postcss-colormin@7.0.4(postcss@8.5.6):
+ postcss-colormin@7.0.5(postcss@8.5.6):
dependencies:
browserslist: 4.27.0
caniuse-api: 3.0.0
@@ -7497,13 +7930,13 @@ snapshots:
postcss: 8.5.6
postcss-value-parser: 4.2.0
- postcss-convert-values@7.0.7(postcss@8.5.6):
+ postcss-convert-values@7.0.8(postcss@8.5.6):
dependencies:
browserslist: 4.27.0
postcss: 8.5.6
postcss-value-parser: 4.2.0
- postcss-discard-comments@7.0.4(postcss@8.5.6):
+ postcss-discard-comments@7.0.5(postcss@8.5.6):
dependencies:
postcss: 8.5.6
postcss-selector-parser: 7.1.0
@@ -7526,7 +7959,7 @@ snapshots:
postcss-value-parser: 4.2.0
stylehacks: 7.0.6(postcss@8.5.6)
- postcss-merge-rules@7.0.6(postcss@8.5.6):
+ postcss-merge-rules@7.0.7(postcss@8.5.6):
dependencies:
browserslist: 4.27.0
caniuse-api: 3.0.0
@@ -7546,7 +7979,7 @@ snapshots:
postcss: 8.5.6
postcss-value-parser: 4.2.0
- postcss-minify-params@7.0.4(postcss@8.5.6):
+ postcss-minify-params@7.0.5(postcss@8.5.6):
dependencies:
browserslist: 4.27.0
cssnano-utils: 5.0.1(postcss@8.5.6)
@@ -7588,7 +8021,7 @@ snapshots:
postcss: 8.5.6
postcss-value-parser: 4.2.0
- postcss-normalize-unicode@7.0.4(postcss@8.5.6):
+ postcss-normalize-unicode@7.0.5(postcss@8.5.6):
dependencies:
browserslist: 4.27.0
postcss: 8.5.6
@@ -7610,7 +8043,7 @@ snapshots:
postcss: 8.5.6
postcss-value-parser: 4.2.0
- postcss-reduce-initial@7.0.4(postcss@8.5.6):
+ postcss-reduce-initial@7.0.5(postcss@8.5.6):
dependencies:
browserslist: 4.27.0
caniuse-api: 3.0.0
@@ -7657,10 +8090,6 @@ snapshots:
pretty-bytes@7.1.0: {}
- pretty-ms@9.3.0:
- dependencies:
- parse-ms: 4.0.0
-
process-nextick-args@2.0.1: {}
process@0.11.10: {}
@@ -7689,6 +8118,8 @@ snapshots:
defu: 6.1.4
destr: 2.0.5
+ react@19.2.3: {}
+
readable-stream@2.3.8:
dependencies:
core-util-is: 1.0.3
@@ -7711,8 +8142,14 @@ snapshots:
dependencies:
minimatch: 5.1.6
+ readdirp@3.6.0:
+ dependencies:
+ picomatch: 2.3.1
+
readdirp@4.1.2: {}
+ readdirp@5.0.0: {}
+
redis-errors@1.2.0: {}
redis-parser@3.0.0:
@@ -7791,8 +8228,6 @@ snapshots:
'@rollup/rollup-win32-x64-msvc': 4.52.5
fsevents: 2.3.3
- rou3@0.7.12: {}
-
run-applescript@7.1.0: {}
run-parallel@1.2.0:
@@ -7803,6 +8238,8 @@ snapshots:
safe-buffer@5.2.1: {}
+ safer-buffer@2.1.2: {}
+
sax@1.4.1: {}
scule@1.3.0: {}
@@ -7831,7 +8268,7 @@ snapshots:
dependencies:
randombytes: 2.1.0
- seroval@1.3.2: {}
+ seroval@1.4.2: {}
serve-placeholder@2.0.2:
dependencies:
@@ -7846,8 +8283,6 @@ snapshots:
transitivePeerDependencies:
- supports-color
- set-cookie-parser@2.7.2: {}
-
setprototypeof@1.2.0: {}
shadcn-nuxt@2.3.2(magicast@0.5.0):
@@ -7867,7 +8302,7 @@ snapshots:
signal-exit@4.1.0: {}
- simple-git@3.28.0:
+ simple-git@3.30.0:
dependencies:
'@kwsites/file-exists': 1.1.1
'@kwsites/promise-deferred': 1.1.1
@@ -7900,10 +8335,15 @@ snapshots:
speakingurl@14.0.1: {}
- srvx@0.8.16: {}
+ srvx@0.10.0: {}
standard-as-callback@2.1.0: {}
+ standardwebhooks@1.0.0:
+ dependencies:
+ '@stablelib/base64': 1.0.1
+ fast-sha256: 1.3.0
+
statuses@2.0.1: {}
statuses@2.0.2: {}
@@ -7949,8 +8389,6 @@ snapshots:
strip-final-newline@3.0.0: {}
- strip-final-newline@4.0.0: {}
-
strip-literal@3.1.0:
dependencies:
js-tokens: 9.0.1
@@ -7981,6 +8419,12 @@ snapshots:
picocolors: 1.1.1
sax: 1.4.1
+ swr@2.3.4(react@19.2.3):
+ dependencies:
+ dequal: 2.0.3
+ react: 19.2.3
+ use-sync-external-store: 1.6.0(react@19.2.3)
+
system-architecture@0.1.0: {}
tagged-tag@1.0.0: {}
@@ -8025,6 +8469,8 @@ snapshots:
tinyexec@1.0.1: {}
+ tinyexec@1.0.2: {}
+
tinyglobby@0.2.15:
dependencies:
fdir: 6.5.0(picomatch@4.0.3)
@@ -8076,12 +8522,14 @@ snapshots:
undici-types@7.16.0: {}
- undici@7.16.0: {}
-
unenv@2.0.0-rc.23:
dependencies:
pathe: 2.0.3
+ unenv@2.0.0-rc.24:
+ dependencies:
+ pathe: 2.0.3
+
unhead@2.0.19:
dependencies:
hookable: 5.5.3
@@ -8102,7 +8550,7 @@ snapshots:
scule: 1.3.0
strip-literal: 3.1.0
tinyglobby: 0.2.15
- unplugin: 2.3.10
+ unplugin: 2.3.11
unplugin-utils: 0.3.1
unplugin-utils@0.2.5:
@@ -8115,14 +8563,14 @@ snapshots:
pathe: 2.0.3
picomatch: 4.0.3
- unplugin-vue-router@0.16.0(@vue/compiler-sfc@3.5.22)(typescript@5.9.3)(vue-router@4.6.3(vue@3.5.22(typescript@5.9.3)))(vue@3.5.22(typescript@5.9.3)):
+ unplugin-vue-router@0.19.2(@vue/compiler-sfc@3.5.26)(vue-router@4.6.3(vue@3.5.22(typescript@5.9.3)))(vue@3.5.26(typescript@5.9.3)):
dependencies:
'@babel/generator': 7.28.5
- '@vue-macros/common': 3.1.1(vue@3.5.22(typescript@5.9.3))
- '@vue/compiler-sfc': 3.5.22
- '@vue/language-core': 3.1.2(typescript@5.9.3)
+ '@vue-macros/common': 3.1.1(vue@3.5.26(typescript@5.9.3))
+ '@vue/compiler-sfc': 3.5.26
+ '@vue/language-core': 3.2.2
ast-walker-scope: 0.8.3
- chokidar: 4.0.3
+ chokidar: 5.0.0
json5: 2.2.3
local-pkg: 1.1.2
magic-string: 0.30.21
@@ -8132,13 +8580,12 @@ snapshots:
picomatch: 4.0.3
scule: 1.3.0
tinyglobby: 0.2.15
- unplugin: 2.3.10
+ unplugin: 2.3.11
unplugin-utils: 0.3.1
- yaml: 2.8.1
+ yaml: 2.8.2
optionalDependencies:
vue-router: 4.6.3(vue@3.5.22(typescript@5.9.3))
transitivePeerDependencies:
- - typescript
- vue
unplugin@2.3.10:
@@ -8148,7 +8595,14 @@ snapshots:
picomatch: 4.0.3
webpack-virtual-modules: 0.6.2
- unstorage@1.17.1(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(ioredis@5.8.2):
+ unplugin@2.3.11:
+ dependencies:
+ '@jridgewell/remapping': 2.3.5
+ acorn: 8.15.0
+ picomatch: 4.0.3
+ webpack-virtual-modules: 0.6.2
+
+ unstorage@1.17.3(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(ioredis@5.8.2):
dependencies:
anymatch: 3.1.3
chokidar: 4.0.3
@@ -8156,7 +8610,7 @@ snapshots:
h3: 1.15.4
lru-cache: 10.4.3
node-fetch-native: 1.6.7
- ofetch: 1.5.0
+ ofetch: 1.5.1
ufo: 1.6.1
optionalDependencies:
db0: 0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))
@@ -8178,12 +8632,12 @@ snapshots:
unwasm@0.3.11:
dependencies:
- knitwork: 1.2.0
+ knitwork: 1.3.0
magic-string: 0.30.21
mlly: 1.8.0
pathe: 2.0.3
pkg-types: 2.3.0
- unplugin: 2.3.10
+ unplugin: 2.3.11
update-browserslist-db@1.1.4(browserslist@4.27.0):
dependencies:
@@ -8191,27 +8645,37 @@ snapshots:
escalade: 3.2.0
picocolors: 1.1.1
+ update-browserslist-db@1.2.3(browserslist@4.28.1):
+ dependencies:
+ browserslist: 4.28.1
+ escalade: 3.2.0
+ picocolors: 1.1.1
+
uqr@0.1.2: {}
+ use-sync-external-store@1.6.0(react@19.2.3):
+ dependencies:
+ react: 19.2.3
+
util-deprecate@1.0.2: {}
- vite-dev-rpc@1.1.0(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)):
+ vite-dev-rpc@1.1.0(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)):
dependencies:
- birpc: 2.6.1
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
- vite-hot-client: 2.1.0(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
+ birpc: 2.9.0
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
+ vite-hot-client: 2.1.0(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))
- vite-hot-client@2.1.0(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)):
+ vite-hot-client@2.1.0(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)):
dependencies:
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
- vite-node@3.2.4(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1):
+ vite-node@5.2.0(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2):
dependencies:
cac: 6.7.14
- debug: 4.4.3
es-module-lexer: 1.7.0
+ obug: 2.1.1
pathe: 2.0.3
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
transitivePeerDependencies:
- '@types/node'
- jiti
@@ -8221,12 +8685,11 @@ snapshots:
- sass-embedded
- stylus
- sugarss
- - supports-color
- terser
- tsx
- yaml
- vite-plugin-checker@0.11.0(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)):
+ vite-plugin-checker@0.12.0(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)):
dependencies:
'@babel/code-frame': 7.27.1
chokidar: 4.0.3
@@ -8235,12 +8698,12 @@ snapshots:
picomatch: 4.0.3
tiny-invariant: 1.3.3
tinyglobby: 0.2.15
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
vscode-uri: 3.1.0
optionalDependencies:
typescript: 5.9.3
- vite-plugin-inspect@11.3.3(@nuxt/kit@3.20.0(magicast@0.3.5))(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)):
+ vite-plugin-inspect@11.3.3(@nuxt/kit@4.2.2(magicast@0.5.0))(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)):
dependencies:
ansis: 4.2.0
debug: 4.4.3
@@ -8250,26 +8713,34 @@ snapshots:
perfect-debounce: 2.0.0
sirv: 3.0.2
unplugin-utils: 0.3.1
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
- vite-dev-rpc: 1.1.0(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
+ vite-dev-rpc: 1.1.0(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))
optionalDependencies:
- '@nuxt/kit': 3.20.0(magicast@0.3.5)
+ '@nuxt/kit': 4.2.2(magicast@0.5.0)
transitivePeerDependencies:
- supports-color
- vite-plugin-vue-tracer@1.0.1(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)):
+ vite-plugin-static-copy@3.1.4(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)):
+ dependencies:
+ chokidar: 3.6.0
+ p-map: 7.0.4
+ picocolors: 1.1.1
+ tinyglobby: 0.2.15
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
+
+ vite-plugin-vue-tracer@1.2.0(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(vue@3.5.26(typescript@5.9.3)):
dependencies:
estree-walker: 3.0.3
- exsolve: 1.0.7
+ exsolve: 1.0.8
magic-string: 0.30.21
pathe: 2.0.3
source-map-js: 1.2.1
- vite: 7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1)
- vue: 3.5.22(typescript@5.9.3)
+ vite: 7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2)
+ vue: 3.5.26(typescript@5.9.3)
- vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1):
+ vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2):
dependencies:
- esbuild: 0.25.11
+ esbuild: 0.27.1
fdir: 6.5.0(picomatch@4.0.3)
picomatch: 4.0.3
postcss: 8.5.6
@@ -8282,7 +8753,7 @@ snapshots:
lightningcss: 1.30.2
terser: 5.44.0
tsx: 4.21.0
- yaml: 2.8.1
+ yaml: 2.8.2
vscode-uri@3.1.0: {}
@@ -8301,11 +8772,16 @@ snapshots:
'@vue/devtools-api': 6.6.4
vue: 3.5.22(typescript@5.9.3)
- vue-sonner@2.0.9(@nuxt/kit@4.2.0(magicast@0.5.0))(@nuxt/schema@4.2.0)(nuxt@4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1)):
+ vue-router@4.6.3(vue@3.5.26(typescript@5.9.3)):
+ dependencies:
+ '@vue/devtools-api': 6.6.4
+ vue: 3.5.26(typescript@5.9.3)
+
+ vue-sonner@2.0.9(@nuxt/kit@4.2.2(magicast@0.5.0))(@nuxt/schema@4.2.2)(nuxt@4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2)):
optionalDependencies:
- '@nuxt/kit': 4.2.0(magicast@0.5.0)
- '@nuxt/schema': 4.2.0
- nuxt: 4.2.0(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.22)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.1.12(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.1))(yaml@2.8.1)
+ '@nuxt/kit': 4.2.2(magicast@0.5.0)
+ '@nuxt/schema': 4.2.2
+ nuxt: 4.2.2(@parcel/watcher@2.5.1)(@types/node@24.9.2)(@vue/compiler-sfc@3.5.26)(cac@6.7.14)(db0@0.3.4(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9)))(drizzle-orm@0.45.1(@neondatabase/serverless@1.0.2)(@types/pg@8.16.0)(kysely@0.28.9))(ioredis@5.8.2)(lightningcss@1.30.2)(magicast@0.5.0)(rollup@4.52.5)(terser@5.44.0)(tsx@4.21.0)(typescript@5.9.3)(vite@7.3.1(@types/node@24.9.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.0)(tsx@4.21.0)(yaml@2.8.2))(yaml@2.8.2)
vue@3.5.22(typescript@5.9.3):
dependencies:
@@ -8317,6 +8793,16 @@ snapshots:
optionalDependencies:
typescript: 5.9.3
+ vue@3.5.26(typescript@5.9.3):
+ dependencies:
+ '@vue/compiler-dom': 3.5.26
+ '@vue/compiler-sfc': 3.5.26
+ '@vue/runtime-dom': 3.5.26
+ '@vue/server-renderer': 3.5.26(vue@3.5.26(typescript@5.9.3))
+ '@vue/shared': 3.5.26
+ optionalDependencies:
+ typescript: 5.9.3
+
webidl-conversions@3.0.1: {}
webpack-virtual-modules@0.6.2: {}
@@ -8360,7 +8846,7 @@ snapshots:
yallist@5.0.0: {}
- yaml@2.8.1: {}
+ yaml@2.8.2: {}
yargs-parser@21.1.1: {}
@@ -8374,8 +8860,6 @@ snapshots:
y18n: 5.0.8
yargs-parser: 21.1.1
- yoctocolors@2.1.2: {}
-
youch-core@0.3.3:
dependencies:
'@poppinss/exception': 1.2.2
@@ -8389,10 +8873,18 @@ snapshots:
cookie: 1.0.2
youch-core: 0.3.3
+ youch@4.1.0-beta.13:
+ dependencies:
+ '@poppinss/colors': 4.1.5
+ '@poppinss/dumper': 0.6.5
+ '@speed-highlight/core': 1.2.14
+ cookie-es: 2.0.0
+ youch-core: 0.3.3
+
zip-stream@6.0.1:
dependencies:
archiver-utils: 5.0.2
compress-commons: 6.0.2
readable-stream: 4.7.0
- zod@4.2.1: {}
+ zod@4.3.5: {}
diff --git a/public/catppuccin-mocha.json b/public/catppuccin-mocha.json
new file mode 100644
index 0000000..3b5ae31
--- /dev/null
+++ b/public/catppuccin-mocha.json
@@ -0,0 +1,2181 @@
+{
+ "propsTo": "vscode themes in monaco over at vsctim.vercel.app",
+ "inherit": true,
+ "base": "vs-dark",
+ "colors": {
+ "focusBorder": "#cba6f7",
+ "foreground": "#cdd6f4",
+ "disabledForeground": "#a6adc8",
+ "widget.shadow": "#18182580",
+ "selection.background": "#cba6f766",
+ "descriptionForeground": "#cdd6f4",
+ "errorForeground": "#f38ba8",
+ "icon.foreground": "#cba6f7",
+ "sash.hoverBorder": "#cba6f7",
+ "textBlockQuote.background": "#181825",
+ "textBlockQuote.border": "#11111b",
+ "textCodeBlock.background": "#181825",
+ "textLink.activeForeground": "#89dceb",
+ "textLink.foreground": "#89b4fa",
+ "textPreformat.foreground": "#cdd6f4",
+ "textSeparator.foreground": "#cba6f7",
+ "activityBar.background": "#11111b",
+ "activityBar.foreground": "#cba6f7",
+ "activityBar.dropBorder": "#cba6f733",
+ "activityBar.inactiveForeground": "#6c7086",
+ "activityBar.border": "#00000000",
+ "activityBarBadge.background": "#cba6f7",
+ "activityBarBadge.foreground": "#11111b",
+ "activityBar.activeBorder": "#00000000",
+ "activityBar.activeBackground": "#00000000",
+ "activityBar.activeFocusBorder": "#00000000",
+ "activityBarTop.foreground": "#cba6f7",
+ "activityBarTop.activeBorder": "#00000000",
+ "activityBarTop.inactiveForeground": "#6c7086",
+ "activityBarTop.dropBorder": "#cba6f733",
+ "badge.background": "#45475a",
+ "badge.foreground": "#cdd6f4",
+ "breadcrumb.activeSelectionForeground": "#cba6f7",
+ "breadcrumb.background": "#1e1e2e",
+ "breadcrumb.focusForeground": "#cba6f7",
+ "breadcrumb.foreground": "#cdd6f4cc",
+ "breadcrumbPicker.background": "#181825",
+ "button.background": "#cba6f7",
+ "button.foreground": "#11111b",
+ "button.border": "#00000000",
+ "button.separator": "#00000000",
+ "button.hoverBackground": "#dec7fa",
+ "button.secondaryForeground": "#cdd6f4",
+ "button.secondaryBackground": "#585b70",
+ "button.secondaryHoverBackground": "#686b84",
+ "checkbox.background": "#45475a",
+ "checkbox.border": "#00000000",
+ "checkbox.foreground": "#cba6f7",
+ "dropdown.background": "#181825",
+ "dropdown.listBackground": "#585b70",
+ "dropdown.border": "#cba6f7",
+ "dropdown.foreground": "#cdd6f4",
+ "debugToolBar.background": "#11111b",
+ "debugToolBar.border": "#00000000",
+ "debugExceptionWidget.background": "#11111b",
+ "debugExceptionWidget.border": "#cba6f7",
+ "debugTokenExpression.number": "#fab387",
+ "debugTokenExpression.boolean": "#cba6f7",
+ "debugTokenExpression.string": "#a6e3a1",
+ "debugTokenExpression.error": "#f38ba8",
+ "debugIcon.breakpointForeground": "#f38ba8",
+ "debugIcon.breakpointDisabledForeground": "#f38ba899",
+ "debugIcon.breakpointUnverifiedForeground": "#a6738c",
+ "debugIcon.breakpointCurrentStackframeForeground": "#585b70",
+ "debugIcon.breakpointStackframeForeground": "#585b70",
+ "debugIcon.startForeground": "#a6e3a1",
+ "debugIcon.pauseForeground": "#89b4fa",
+ "debugIcon.stopForeground": "#f38ba8",
+ "debugIcon.disconnectForeground": "#585b70",
+ "debugIcon.restartForeground": "#94e2d5",
+ "debugIcon.stepOverForeground": "#cba6f7",
+ "debugIcon.stepIntoForeground": "#cdd6f4",
+ "debugIcon.stepOutForeground": "#cdd6f4",
+ "debugIcon.continueForeground": "#a6e3a1",
+ "debugIcon.stepBackForeground": "#585b70",
+ "debugConsole.infoForeground": "#89b4fa",
+ "debugConsole.warningForeground": "#fab387",
+ "debugConsole.errorForeground": "#f38ba8",
+ "debugConsole.sourceForeground": "#f5e0dc",
+ "debugConsoleInputIcon.foreground": "#cdd6f4",
+ "testing.runAction": "#cba6f7",
+ "testing.iconErrored": "#f38ba8",
+ "testing.iconFailed": "#f38ba8",
+ "testing.iconPassed": "#a6e3a1",
+ "testing.iconQueued": "#89b4fa",
+ "testing.iconUnset": "#cdd6f4",
+ "testing.iconSkipped": "#a6adc8",
+ "testing.iconErrored.retired": "#f38ba8",
+ "testing.iconFailed.retired": "#f38ba8",
+ "testing.iconPassed.retired": "#a6e3a1",
+ "testing.iconQueued.retired": "#89b4fa",
+ "testing.iconUnset.retired": "#cdd6f4",
+ "testing.iconSkipped.retired": "#a6adc8",
+ "testing.peekBorder": "#cba6f7",
+ "testing.peekHeaderBackground": "#585b70",
+ "testing.message.error.lineBackground": "#f38ba826",
+ "testing.message.info.decorationForeground": "#a6e3a1cc",
+ "testing.message.info.lineBackground": "#a6e3a126",
+ "testing.messagePeekBorder": "#cba6f7",
+ "testing.messagePeekHeaderBackground": "#585b70",
+ "testing.coveredBackground": "#a6e3a14d",
+ "testing.coveredBorder": "#00000000",
+ "testing.coveredGutterBackground": "#a6e3a14d",
+ "testing.uncoveredBranchBackground": "#f38ba833",
+ "testing.uncoveredBackground": "#f38ba833",
+ "testing.uncoveredBorder": "#00000000",
+ "testing.uncoveredGutterBackground": "#f38ba840",
+ "testing.coverCountBadgeBackground": "#00000000",
+ "testing.coverCountBadgeForeground": "#cba6f7",
+ "diffEditor.border": "#585b70",
+ "diffEditor.insertedTextBackground": "#a6e3a133",
+ "diffEditor.removedTextBackground": "#f38ba833",
+ "diffEditor.insertedLineBackground": "#a6e3a126",
+ "diffEditor.removedLineBackground": "#f38ba826",
+ "diffEditor.diagonalFill": "#585b7099",
+ "diffEditorOverview.insertedForeground": "#a6e3a1cc",
+ "diffEditorOverview.removedForeground": "#f38ba8cc",
+ "editor.background": "#1e1e2e",
+ "editor.findMatchBackground": "#5e3f53",
+ "editor.findMatchBorder": "#f38ba833",
+ "editor.findMatchHighlightBackground": "#3e5767",
+ "editor.findMatchHighlightBorder": "#89dceb33",
+ "editor.findRangeHighlightBackground": "#3e5767",
+ "editor.findRangeHighlightBorder": "#89dceb33",
+ "editor.foldBackground": "#89dceb40",
+ "editor.foreground": "#cdd6f4",
+ "editor.hoverHighlightBackground": "#89dceb40",
+ "editor.lineHighlightBackground": "#cdd6f412",
+ "editor.lineHighlightBorder": "#00000000",
+ "editor.rangeHighlightBackground": "#89dceb40",
+ "editor.rangeHighlightBorder": "#00000000",
+ "editor.selectionBackground": "#9399b240",
+ "editor.selectionHighlightBackground": "#9399b233",
+ "editor.selectionHighlightBorder": "#9399b233",
+ "editor.wordHighlightBackground": "#9399b233",
+ "editor.wordHighlightStrongBackground": "#89b4fa33",
+ "editorBracketMatch.background": "#9399b21a",
+ "editorBracketMatch.border": "#9399b2",
+ "editorCodeLens.foreground": "#7f849c",
+ "editorCursor.background": "#1e1e2e",
+ "editorCursor.foreground": "#f5e0dc",
+ "editorGroup.border": "#585b70",
+ "editorGroup.dropBackground": "#cba6f733",
+ "editorGroup.emptyBackground": "#1e1e2e",
+ "editorGroupHeader.tabsBackground": "#11111b",
+ "editorGutter.addedBackground": "#a6e3a1",
+ "editorGutter.background": "#1e1e2e",
+ "editorGutter.commentRangeForeground": "#313244",
+ "editorGutter.commentGlyphForeground": "#cba6f7",
+ "editorGutter.deletedBackground": "#f38ba8",
+ "editorGutter.foldingControlForeground": "#9399b2",
+ "editorGutter.modifiedBackground": "#f9e2af",
+ "editorHoverWidget.background": "#181825",
+ "editorHoverWidget.border": "#585b70",
+ "editorHoverWidget.foreground": "#cdd6f4",
+ "editorIndentGuide.activeBackground": "#585b70",
+ "editorIndentGuide.background": "#45475a",
+ "editorInlayHint.foreground": "#585b70",
+ "editorInlayHint.background": "#181825bf",
+ "editorInlayHint.typeForeground": "#bac2de",
+ "editorInlayHint.typeBackground": "#181825bf",
+ "editorInlayHint.parameterForeground": "#a6adc8",
+ "editorInlayHint.parameterBackground": "#181825bf",
+ "editorLineNumber.activeForeground": "#cba6f7",
+ "editorLineNumber.foreground": "#7f849c",
+ "editorLink.activeForeground": "#cba6f7",
+ "editorMarkerNavigation.background": "#181825",
+ "editorMarkerNavigationError.background": "#f38ba8",
+ "editorMarkerNavigationInfo.background": "#89b4fa",
+ "editorMarkerNavigationWarning.background": "#fab387",
+ "editorOverviewRuler.background": "#181825",
+ "editorOverviewRuler.border": "#cdd6f412",
+ "editorOverviewRuler.modifiedForeground": "#f9e2af",
+ "editorRuler.foreground": "#585b70",
+ "editor.stackFrameHighlightBackground": "#f9e2af26",
+ "editor.focusedStackFrameHighlightBackground": "#a6e3a126",
+ "editorStickyScrollHover.background": "#313244",
+ "editorSuggestWidget.background": "#181825",
+ "editorSuggestWidget.border": "#585b70",
+ "editorSuggestWidget.foreground": "#cdd6f4",
+ "editorSuggestWidget.highlightForeground": "#cba6f7",
+ "editorSuggestWidget.selectedBackground": "#313244",
+ "editorWhitespace.foreground": "#9399b266",
+ "editorWidget.background": "#181825",
+ "editorWidget.foreground": "#cdd6f4",
+ "editorWidget.resizeBorder": "#585b70",
+ "editorLightBulb.foreground": "#f9e2af",
+ "editorError.foreground": "#f38ba8",
+ "editorError.border": "#00000000",
+ "editorError.background": "#00000000",
+ "editorWarning.foreground": "#fab387",
+ "editorWarning.border": "#00000000",
+ "editorWarning.background": "#00000000",
+ "editorInfo.foreground": "#89b4fa",
+ "editorInfo.border": "#00000000",
+ "editorInfo.background": "#00000000",
+ "problemsErrorIcon.foreground": "#f38ba8",
+ "problemsInfoIcon.foreground": "#89b4fa",
+ "problemsWarningIcon.foreground": "#fab387",
+ "extensionButton.prominentForeground": "#11111b",
+ "extensionButton.prominentBackground": "#cba6f7",
+ "extensionButton.separator": "#1e1e2e",
+ "extensionButton.prominentHoverBackground": "#dec7fa",
+ "extensionBadge.remoteBackground": "#89b4fa",
+ "extensionBadge.remoteForeground": "#11111b",
+ "extensionIcon.starForeground": "#f9e2af",
+ "extensionIcon.verifiedForeground": "#a6e3a1",
+ "extensionIcon.preReleaseForeground": "#585b70",
+ "extensionIcon.sponsorForeground": "#f5c2e7",
+ "gitDecoration.addedResourceForeground": "#a6e3a1",
+ "gitDecoration.conflictingResourceForeground": "#cba6f7",
+ "gitDecoration.deletedResourceForeground": "#f38ba8",
+ "gitDecoration.ignoredResourceForeground": "#6c7086",
+ "gitDecoration.modifiedResourceForeground": "#f9e2af",
+ "gitDecoration.stageDeletedResourceForeground": "#f38ba8",
+ "gitDecoration.stageModifiedResourceForeground": "#f9e2af",
+ "gitDecoration.submoduleResourceForeground": "#89b4fa",
+ "gitDecoration.untrackedResourceForeground": "#a6e3a1",
+ "scmGraph.historyItemRefColor": "#89b4fa",
+ "scmGraph.historyItemBaseRefColor": "#fab387",
+ "scmGraph.historyItemRemoteRefColor": "#cba6f7",
+ "scmGraph.foreground1": "#f9e2af",
+ "scmGraph.foreground2": "#f38ba8",
+ "scmGraph.foreground3": "#a6e3a1",
+ "scmGraph.foreground4": "#cba6f7",
+ "scmGraph.foreground5": "#94e2d5",
+ "input.background": "#313244",
+ "input.border": "#00000000",
+ "input.foreground": "#cdd6f4",
+ "input.placeholderForeground": "#cdd6f473",
+ "inputOption.activeBackground": "#585b70",
+ "inputOption.activeBorder": "#cba6f7",
+ "inputOption.activeForeground": "#cdd6f4",
+ "inputValidation.errorBackground": "#f38ba8",
+ "inputValidation.errorBorder": "#11111b33",
+ "inputValidation.errorForeground": "#11111b",
+ "inputValidation.infoBackground": "#89b4fa",
+ "inputValidation.infoBorder": "#11111b33",
+ "inputValidation.infoForeground": "#11111b",
+ "inputValidation.warningBackground": "#fab387",
+ "inputValidation.warningBorder": "#11111b33",
+ "inputValidation.warningForeground": "#11111b",
+ "list.activeSelectionBackground": "#313244",
+ "list.activeSelectionForeground": "#cdd6f4",
+ "list.dropBackground": "#cba6f733",
+ "list.focusBackground": "#313244",
+ "list.focusForeground": "#cdd6f4",
+ "list.focusOutline": "#00000000",
+ "list.highlightForeground": "#cba6f7",
+ "list.hoverBackground": "#31324480",
+ "list.hoverForeground": "#cdd6f4",
+ "list.inactiveSelectionBackground": "#313244",
+ "list.inactiveSelectionForeground": "#cdd6f4",
+ "list.warningForeground": "#fab387",
+ "listFilterWidget.background": "#45475a",
+ "listFilterWidget.noMatchesOutline": "#f38ba8",
+ "listFilterWidget.outline": "#00000000",
+ "tree.indentGuidesStroke": "#9399b2",
+ "tree.inactiveIndentGuidesStroke": "#45475a",
+ "menu.background": "#1e1e2e",
+ "menu.border": "#1e1e2e80",
+ "menu.foreground": "#cdd6f4",
+ "menu.selectionBackground": "#585b70",
+ "menu.selectionBorder": "#00000000",
+ "menu.selectionForeground": "#cdd6f4",
+ "menu.separatorBackground": "#585b70",
+ "menubar.selectionBackground": "#45475a",
+ "menubar.selectionForeground": "#cdd6f4",
+ "merge.commonContentBackground": "#45475a",
+ "merge.commonHeaderBackground": "#585b70",
+ "merge.currentContentBackground": "#a6e3a133",
+ "merge.currentHeaderBackground": "#a6e3a166",
+ "merge.incomingContentBackground": "#89b4fa33",
+ "merge.incomingHeaderBackground": "#89b4fa66",
+ "minimap.background": "#18182580",
+ "minimap.findMatchHighlight": "#89dceb4d",
+ "minimap.selectionHighlight": "#585b70bf",
+ "minimap.selectionOccurrenceHighlight": "#585b70bf",
+ "minimap.warningHighlight": "#fab387bf",
+ "minimap.errorHighlight": "#f38ba8bf",
+ "minimapSlider.background": "#cba6f733",
+ "minimapSlider.hoverBackground": "#cba6f766",
+ "minimapSlider.activeBackground": "#cba6f799",
+ "minimapGutter.addedBackground": "#a6e3a1bf",
+ "minimapGutter.deletedBackground": "#f38ba8bf",
+ "minimapGutter.modifiedBackground": "#f9e2afbf",
+ "notificationCenter.border": "#cba6f7",
+ "notificationCenterHeader.foreground": "#cdd6f4",
+ "notificationCenterHeader.background": "#181825",
+ "notificationToast.border": "#cba6f7",
+ "notifications.foreground": "#cdd6f4",
+ "notifications.background": "#181825",
+ "notifications.border": "#cba6f7",
+ "notificationLink.foreground": "#89b4fa",
+ "notificationsErrorIcon.foreground": "#f38ba8",
+ "notificationsWarningIcon.foreground": "#fab387",
+ "notificationsInfoIcon.foreground": "#89b4fa",
+ "panel.background": "#1e1e2e",
+ "panel.border": "#585b70",
+ "panelSection.border": "#585b70",
+ "panelSection.dropBackground": "#cba6f733",
+ "panelTitle.activeBorder": "#cba6f7",
+ "panelTitle.activeForeground": "#cdd6f4",
+ "panelTitle.inactiveForeground": "#a6adc8",
+ "peekView.border": "#cba6f7",
+ "peekViewEditor.background": "#181825",
+ "peekViewEditorGutter.background": "#181825",
+ "peekViewEditor.matchHighlightBackground": "#89dceb4d",
+ "peekViewEditor.matchHighlightBorder": "#00000000",
+ "peekViewResult.background": "#181825",
+ "peekViewResult.fileForeground": "#cdd6f4",
+ "peekViewResult.lineForeground": "#cdd6f4",
+ "peekViewResult.matchHighlightBackground": "#89dceb4d",
+ "peekViewResult.selectionBackground": "#313244",
+ "peekViewResult.selectionForeground": "#cdd6f4",
+ "peekViewTitle.background": "#1e1e2e",
+ "peekViewTitleDescription.foreground": "#bac2deb3",
+ "peekViewTitleLabel.foreground": "#cdd6f4",
+ "pickerGroup.border": "#cba6f7",
+ "pickerGroup.foreground": "#cba6f7",
+ "progressBar.background": "#cba6f7",
+ "scrollbar.shadow": "#11111b",
+ "scrollbarSlider.activeBackground": "#31324466",
+ "scrollbarSlider.background": "#585b7080",
+ "scrollbarSlider.hoverBackground": "#6c7086",
+ "settings.focusedRowBackground": "#585b7033",
+ "settings.headerForeground": "#cdd6f4",
+ "settings.modifiedItemIndicator": "#cba6f7",
+ "settings.dropdownBackground": "#45475a",
+ "settings.dropdownListBorder": "#00000000",
+ "settings.textInputBackground": "#45475a",
+ "settings.textInputBorder": "#00000000",
+ "settings.numberInputBackground": "#45475a",
+ "settings.numberInputBorder": "#00000000",
+ "sideBar.background": "#181825",
+ "sideBar.dropBackground": "#cba6f733",
+ "sideBar.foreground": "#cdd6f4",
+ "sideBar.border": "#00000000",
+ "sideBarSectionHeader.background": "#181825",
+ "sideBarSectionHeader.foreground": "#cdd6f4",
+ "sideBarTitle.foreground": "#cba6f7",
+ "banner.background": "#45475a",
+ "banner.foreground": "#cdd6f4",
+ "banner.iconForeground": "#cdd6f4",
+ "statusBar.background": "#11111b",
+ "statusBar.foreground": "#cdd6f4",
+ "statusBar.border": "#00000000",
+ "statusBar.noFolderBackground": "#11111b",
+ "statusBar.noFolderForeground": "#cdd6f4",
+ "statusBar.noFolderBorder": "#00000000",
+ "statusBar.debuggingBackground": "#fab387",
+ "statusBar.debuggingForeground": "#11111b",
+ "statusBar.debuggingBorder": "#00000000",
+ "statusBarItem.remoteBackground": "#89b4fa",
+ "statusBarItem.remoteForeground": "#11111b",
+ "statusBarItem.activeBackground": "#585b7066",
+ "statusBarItem.hoverBackground": "#585b7033",
+ "statusBarItem.prominentForeground": "#cba6f7",
+ "statusBarItem.prominentBackground": "#00000000",
+ "statusBarItem.prominentHoverBackground": "#585b7033",
+ "statusBarItem.errorForeground": "#f38ba8",
+ "statusBarItem.errorBackground": "#00000000",
+ "statusBarItem.warningForeground": "#fab387",
+ "statusBarItem.warningBackground": "#00000000",
+ "commandCenter.foreground": "#bac2de",
+ "commandCenter.inactiveForeground": "#bac2de",
+ "commandCenter.activeForeground": "#cba6f7",
+ "commandCenter.background": "#181825",
+ "commandCenter.activeBackground": "#585b7033",
+ "commandCenter.border": "#00000000",
+ "commandCenter.inactiveBorder": "#00000000",
+ "commandCenter.activeBorder": "#cba6f7",
+ "tab.activeBackground": "#1e1e2e",
+ "tab.activeBorder": "#00000000",
+ "tab.activeBorderTop": "#cba6f7",
+ "tab.activeForeground": "#cba6f7",
+ "tab.activeModifiedBorder": "#f9e2af",
+ "tab.border": "#181825",
+ "tab.hoverBackground": "#28283d",
+ "tab.hoverBorder": "#00000000",
+ "tab.hoverForeground": "#cba6f7",
+ "tab.inactiveBackground": "#181825",
+ "tab.inactiveForeground": "#6c7086",
+ "tab.inactiveModifiedBorder": "#f9e2af4d",
+ "tab.lastPinnedBorder": "#cba6f7",
+ "tab.unfocusedActiveBackground": "#181825",
+ "tab.unfocusedActiveBorder": "#00000000",
+ "tab.unfocusedActiveBorderTop": "#cba6f74d",
+ "tab.unfocusedInactiveBackground": "#0e0e16",
+ "terminal.foreground": "#cdd6f4",
+ "terminal.ansiBlack": "#45475a",
+ "terminal.ansiRed": "#f38ba8",
+ "terminal.ansiGreen": "#a6e3a1",
+ "terminal.ansiYellow": "#f9e2af",
+ "terminal.ansiBlue": "#89b4fa",
+ "terminal.ansiMagenta": "#f5c2e7",
+ "terminal.ansiCyan": "#94e2d5",
+ "terminal.ansiWhite": "#a6adc8",
+ "terminal.ansiBrightBlack": "#585b70",
+ "terminal.ansiBrightRed": "#f37799",
+ "terminal.ansiBrightGreen": "#89d88b",
+ "terminal.ansiBrightYellow": "#ebd391",
+ "terminal.ansiBrightBlue": "#74a8fc",
+ "terminal.ansiBrightMagenta": "#f2aede",
+ "terminal.ansiBrightCyan": "#6bd7ca",
+ "terminal.ansiBrightWhite": "#bac2de",
+ "terminal.selectionBackground": "#585b70",
+ "terminal.inactiveSelectionBackground": "#585b7080",
+ "terminalCursor.background": "#1e1e2e",
+ "terminalCursor.foreground": "#f5e0dc",
+ "terminal.border": "#585b70",
+ "terminal.dropBackground": "#cba6f733",
+ "terminal.tab.activeBorder": "#cba6f7",
+ "terminalCommandDecoration.defaultBackground": "#585b70",
+ "terminalCommandDecoration.successBackground": "#a6e3a1",
+ "terminalCommandDecoration.errorBackground": "#f38ba8",
+ "titleBar.activeBackground": "#11111b",
+ "titleBar.activeForeground": "#cdd6f4",
+ "titleBar.inactiveBackground": "#11111b",
+ "titleBar.inactiveForeground": "#cdd6f480",
+ "titleBar.border": "#00000000",
+ "welcomePage.tileBackground": "#181825",
+ "welcomePage.progress.background": "#11111b",
+ "welcomePage.progress.foreground": "#cba6f7",
+ "walkThrough.embeddedEditorBackground": "#1e1e2e4d",
+ "symbolIcon.textForeground": "#cdd6f4",
+ "symbolIcon.arrayForeground": "#fab387",
+ "symbolIcon.booleanForeground": "#cba6f7",
+ "symbolIcon.classForeground": "#f9e2af",
+ "symbolIcon.colorForeground": "#f5c2e7",
+ "symbolIcon.constantForeground": "#fab387",
+ "symbolIcon.constructorForeground": "#b4befe",
+ "symbolIcon.enumeratorForeground": "#f9e2af",
+ "symbolIcon.enumeratorMemberForeground": "#f9e2af",
+ "symbolIcon.eventForeground": "#f5c2e7",
+ "symbolIcon.fieldForeground": "#cdd6f4",
+ "symbolIcon.fileForeground": "#cba6f7",
+ "symbolIcon.folderForeground": "#cba6f7",
+ "symbolIcon.functionForeground": "#89b4fa",
+ "symbolIcon.interfaceForeground": "#f9e2af",
+ "symbolIcon.keyForeground": "#94e2d5",
+ "symbolIcon.keywordForeground": "#cba6f7",
+ "symbolIcon.methodForeground": "#89b4fa",
+ "symbolIcon.moduleForeground": "#cdd6f4",
+ "symbolIcon.namespaceForeground": "#f9e2af",
+ "symbolIcon.nullForeground": "#eba0ac",
+ "symbolIcon.numberForeground": "#fab387",
+ "symbolIcon.objectForeground": "#f9e2af",
+ "symbolIcon.operatorForeground": "#94e2d5",
+ "symbolIcon.packageForeground": "#f2cdcd",
+ "symbolIcon.propertyForeground": "#eba0ac",
+ "symbolIcon.referenceForeground": "#f9e2af",
+ "symbolIcon.snippetForeground": "#f2cdcd",
+ "symbolIcon.stringForeground": "#a6e3a1",
+ "symbolIcon.structForeground": "#94e2d5",
+ "symbolIcon.typeParameterForeground": "#eba0ac",
+ "symbolIcon.unitForeground": "#cdd6f4",
+ "symbolIcon.variableForeground": "#cdd6f4",
+ "charts.foreground": "#cdd6f4",
+ "charts.lines": "#bac2de",
+ "charts.red": "#f38ba8",
+ "charts.blue": "#89b4fa",
+ "charts.yellow": "#f9e2af",
+ "charts.orange": "#fab387",
+ "charts.green": "#a6e3a1",
+ "charts.purple": "#cba6f7",
+ "errorLens.errorBackground": "#f38ba826",
+ "errorLens.errorBackgroundLight": "#f38ba826",
+ "errorLens.errorForeground": "#f38ba8",
+ "errorLens.errorForegroundLight": "#f38ba8",
+ "errorLens.errorMessageBackground": "#f38ba826",
+ "errorLens.hintBackground": "#a6e3a126",
+ "errorLens.hintBackgroundLight": "#a6e3a126",
+ "errorLens.hintForeground": "#a6e3a1",
+ "errorLens.hintForegroundLight": "#a6e3a1",
+ "errorLens.hintMessageBackground": "#a6e3a126",
+ "errorLens.infoBackground": "#89b4fa26",
+ "errorLens.infoBackgroundLight": "#89b4fa26",
+ "errorLens.infoForeground": "#89b4fa",
+ "errorLens.infoForegroundLight": "#89b4fa",
+ "errorLens.infoMessageBackground": "#89b4fa26",
+ "errorLens.statusBarErrorForeground": "#f38ba8",
+ "errorLens.statusBarHintForeground": "#a6e3a1",
+ "errorLens.statusBarIconErrorForeground": "#f38ba8",
+ "errorLens.statusBarIconWarningForeground": "#fab387",
+ "errorLens.statusBarInfoForeground": "#89b4fa",
+ "errorLens.statusBarWarningForeground": "#fab387",
+ "errorLens.warningBackground": "#fab38726",
+ "errorLens.warningBackgroundLight": "#fab38726",
+ "errorLens.warningForeground": "#fab387",
+ "errorLens.warningForegroundLight": "#fab387",
+ "errorLens.warningMessageBackground": "#fab38726",
+ "issues.closed": "#cba6f7",
+ "issues.newIssueDecoration": "#f5e0dc",
+ "issues.open": "#a6e3a1",
+ "pullRequests.closed": "#f38ba8",
+ "pullRequests.draft": "#9399b2",
+ "pullRequests.merged": "#cba6f7",
+ "pullRequests.notification": "#cdd6f4",
+ "pullRequests.open": "#a6e3a1",
+ "gitlens.gutterBackgroundColor": "#3132444d",
+ "gitlens.gutterForegroundColor": "#cdd6f4",
+ "gitlens.gutterUncommittedForegroundColor": "#cba6f7",
+ "gitlens.trailingLineBackgroundColor": "#00000000",
+ "gitlens.trailingLineForegroundColor": "#cdd6f44d",
+ "gitlens.lineHighlightBackgroundColor": "#cba6f726",
+ "gitlens.lineHighlightOverviewRulerColor": "#cba6f7cc",
+ "gitlens.openAutolinkedIssueIconColor": "#a6e3a1",
+ "gitlens.closedAutolinkedIssueIconColor": "#cba6f7",
+ "gitlens.closedPullRequestIconColor": "#f38ba8",
+ "gitlens.openPullRequestIconColor": "#a6e3a1",
+ "gitlens.mergedPullRequestIconColor": "#cba6f7",
+ "gitlens.unpublishedChangesIconColor": "#a6e3a1",
+ "gitlens.unpublishedCommitIconColor": "#a6e3a1",
+ "gitlens.unpulledChangesIconColor": "#fab387",
+ "gitlens.decorations.branchAheadForegroundColor": "#a6e3a1",
+ "gitlens.decorations.branchBehindForegroundColor": "#fab387",
+ "gitlens.decorations.branchDivergedForegroundColor": "#f9e2af",
+ "gitlens.decorations.branchUnpublishedForegroundColor": "#a6e3a1",
+ "gitlens.decorations.branchMissingUpstreamForegroundColor": "#fab387",
+ "gitlens.decorations.statusMergingOrRebasingConflictForegroundColor": "#eba0ac",
+ "gitlens.decorations.statusMergingOrRebasingForegroundColor": "#f9e2af",
+ "gitlens.decorations.workspaceRepoMissingForegroundColor": "#a6adc8",
+ "gitlens.decorations.workspaceCurrentForegroundColor": "#cba6f7",
+ "gitlens.decorations.workspaceRepoOpenForegroundColor": "#cba6f7",
+ "gitlens.decorations.worktreeHasUncommittedChangesForegroundColor": "#fab387",
+ "gitlens.decorations.worktreeMissingForegroundColor": "#eba0ac",
+ "gitlens.graphLane1Color": "#cba6f7",
+ "gitlens.graphLane2Color": "#f9e2af",
+ "gitlens.graphLane3Color": "#89b4fa",
+ "gitlens.graphLane4Color": "#f2cdcd",
+ "gitlens.graphLane5Color": "#a6e3a1",
+ "gitlens.graphLane6Color": "#b4befe",
+ "gitlens.graphLane7Color": "#f5e0dc",
+ "gitlens.graphLane8Color": "#f38ba8",
+ "gitlens.graphLane9Color": "#94e2d5",
+ "gitlens.graphLane10Color": "#f5c2e7",
+ "gitlens.graphChangesColumnAddedColor": "#a6e3a1",
+ "gitlens.graphChangesColumnDeletedColor": "#f38ba8",
+ "gitlens.graphMinimapMarkerHeadColor": "#a6e3a1",
+ "gitlens.graphScrollMarkerHeadColor": "#a6e3a1",
+ "gitlens.graphMinimapMarkerUpstreamColor": "#93dd8d",
+ "gitlens.graphScrollMarkerUpstreamColor": "#93dd8d",
+ "gitlens.graphMinimapMarkerHighlightsColor": "#f9e2af",
+ "gitlens.graphScrollMarkerHighlightsColor": "#f9e2af",
+ "gitlens.graphMinimapMarkerLocalBranchesColor": "#89b4fa",
+ "gitlens.graphScrollMarkerLocalBranchesColor": "#89b4fa",
+ "gitlens.graphMinimapMarkerRemoteBranchesColor": "#71a4f9",
+ "gitlens.graphScrollMarkerRemoteBranchesColor": "#71a4f9",
+ "gitlens.graphMinimapMarkerStashesColor": "#cba6f7",
+ "gitlens.graphScrollMarkerStashesColor": "#cba6f7",
+ "gitlens.graphMinimapMarkerTagsColor": "#f2cdcd",
+ "gitlens.graphScrollMarkerTagsColor": "#f2cdcd",
+ "editorBracketHighlight.foreground1": "#f38ba8",
+ "editorBracketHighlight.foreground2": "#fab387",
+ "editorBracketHighlight.foreground3": "#f9e2af",
+ "editorBracketHighlight.foreground4": "#a6e3a1",
+ "editorBracketHighlight.foreground5": "#74c7ec",
+ "editorBracketHighlight.foreground6": "#cba6f7",
+ "editorBracketHighlight.unexpectedBracket.foreground": "#eba0ac",
+ "button.secondaryBorder": "#cba6f7",
+ "table.headerBackground": "#313244",
+ "table.headerForeground": "#cdd6f4",
+ "list.focusAndSelectionBackground": "#45475a"
+ },
+ "rules": [
+ {
+ "foreground": "#cdd6f4",
+ "token": "text"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "source"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "variable.other.readwrite"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "punctuation.definition.variable"
+ },
+ {
+ "foreground": "#9399b2",
+ "fontStyle": "",
+ "token": "punctuation"
+ },
+ {
+ "foreground": "#9399b2",
+ "fontStyle": "italic",
+ "token": "comment"
+ },
+ {
+ "foreground": "#9399b2",
+ "fontStyle": "italic",
+ "token": "punctuation.definition.comment"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "string"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "punctuation.definition.string"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "constant.character.escape"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.numeric"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "variable.other.constant"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "entity.name.constant"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.language.boolean"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.language.false"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.language.true"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "keyword.other.unit.user-defined"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "keyword.other.unit.suffix.floating-point"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "keyword"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "keyword.operator.word"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "keyword.operator.new"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "variable.language.super"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "support.type.primitive"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.type"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.modifier"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "punctuation.definition.keyword"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "entity.name.tag.documentation"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "keyword.operator"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "punctuation.accessor"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "punctuation.definition.generic"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "meta.function.closure punctuation.section.parameters"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "punctuation.definition.tag"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "punctuation.separator.key-value"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "entity.name.function"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "meta.function-call.method"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "support.function"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "support.function.misc"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "variable.function"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "entity.name.class"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "entity.other.inherited-class"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "support.class"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "meta.function-call.constructor"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "entity.name.struct"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "entity.name.enum"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "meta.enum variable.other.readwrite"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "variable.other.enummember"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "meta.property.object"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "meta.type"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "meta.type-alias"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "support.type"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "entity.name.type"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "meta.annotation variable.function"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "meta.annotation variable.annotation.function"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "meta.annotation punctuation.definition.annotation"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "meta.decorator"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "punctuation.decorator"
+ },
+ {
+ "foreground": "#eba0ac",
+ "fontStyle": "italic",
+ "token": "variable.parameter"
+ },
+ {
+ "foreground": "#eba0ac",
+ "fontStyle": "italic",
+ "token": "meta.function.parameters"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "constant.language"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "support.function.builtin"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "entity.other.attribute-name.documentation"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "keyword.control.directive"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "punctuation.definition.directive"
+ },
+ {
+ "foreground": "#89dceb",
+ "token": "punctuation.definition.typeparameters"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "entity.name.namespace"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "support.type.property-name.css"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "support.type.property-name.less"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "variable.language.this"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "variable.language.this punctuation.definition.variable"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "variable.object.property"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "string.template variable"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "string variable"
+ },
+ {
+ "fontStyle": "bold",
+ "token": "keyword.operator.new"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "storage.modifier.specifier.extern.cpp"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "entity.name.scope-resolution.template.call.cpp"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "entity.name.scope-resolution.parameter.cpp"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "entity.name.scope-resolution.cpp"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "entity.name.scope-resolution.function.definition.cpp"
+ },
+ {
+ "fontStyle": "",
+ "token": "storage.type.class.doxygen"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "storage.modifier.reference.cpp"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "meta.interpolation.cs"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "comment.block.documentation.cs"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "source.css entity.other.attribute-name.class.css"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "entity.other.attribute-name.parent-selector.css punctuation.definition.entity.css"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "punctuation.separator.operator.css"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "source.css entity.other.attribute-name.pseudo-class"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "source.css constant.other.unicode-range"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "fontStyle": "",
+ "token": "source.css variable.parameter.url"
+ },
+ {
+ "foreground": "#89dceb",
+ "token": "support.type.vendored.property-name"
+ },
+ {
+ "foreground": "#eba0ac",
+ "token": "source.css meta.property-value variable"
+ },
+ {
+ "foreground": "#eba0ac",
+ "token": "source.css meta.property-value variable.other.less"
+ },
+ {
+ "foreground": "#eba0ac",
+ "token": "source.css meta.property-value variable.other.less punctuation.definition.variable.less"
+ },
+ {
+ "foreground": "#eba0ac",
+ "token": "meta.definition.variable.scss"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "source.css meta.property-list variable"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "meta.property-list variable.other.less"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "meta.property-list variable.other.less punctuation.definition.variable.less"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "keyword.other.unit.percentage.css"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "source.css meta.attribute-selector"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "keyword.other.definition.ini"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "punctuation.support.type.property-name.json"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "support.type.property-name.json"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "punctuation.support.type.property-name.toml"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "support.type.property-name.toml"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "entity.name.tag.yaml"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "punctuation.support.type.property-name.yaml"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "support.type.property-name.yaml"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.language.json"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.language.yaml"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "",
+ "token": "entity.name.type.anchor.yaml"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "",
+ "token": "variable.other.alias.yaml"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "support.type.property-name.table"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "entity.name.section.group-title.ini"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "constant.other.time.datetime.offset.toml"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "punctuation.definition.anchor.yaml"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "punctuation.definition.alias.yaml"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "entity.other.document.begin.yaml"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "markup.changed.diff"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "meta.diff.header.from-file"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "meta.diff.header.to-file"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "punctuation.definition.from-file.diff"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "punctuation.definition.to-file.diff"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "markup.inserted.diff"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "markup.deleted.diff"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "variable.other.env"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "string.quoted variable.other.env"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "support.function.builtin.gdscript"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.language.gdscript"
+ },
+ {
+ "foreground": "#eba0ac",
+ "token": "comment meta.annotation.go"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "comment meta.annotation.parameters.go"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.language.go"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "variable.graphql"
+ },
+ {
+ "foreground": "#f2cdcd",
+ "token": "string.unquoted.alias.graphql"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "constant.character.enum.graphql"
+ },
+ {
+ "foreground": "#f2cdcd",
+ "token": "meta.objectvalues.graphql constant.object.key.graphql string.unquoted.graphql"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.other.doctype"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "meta.tag.sgml.doctype punctuation.definition.tag"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "meta.tag.metadata.doctype entity.name.tag"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "meta.tag.metadata.doctype punctuation.definition.tag"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "",
+ "token": "entity.name.tag"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "text.html constant.character.entity"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "text.html constant.character.entity punctuation"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "constant.character.entity.xml"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "constant.character.entity.xml punctuation"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "constant.character.entity.js.jsx"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "constant.charactger.entity.js.jsx punctuation"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "constant.character.entity.tsx"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "constant.character.entity.tsx punctuation"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "entity.other.attribute-name"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "fontStyle": "",
+ "token": "support.class.component"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "fontStyle": "",
+ "token": "support.class.component.jsx"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "fontStyle": "",
+ "token": "support.class.component.tsx"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "fontStyle": "",
+ "token": "support.class.component.vue"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "punctuation.definition.annotation"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "storage.type.annotation"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "constant.other.enum.java"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "storage.modifier.import.java"
+ },
+ {
+ "fontStyle": "",
+ "token": "comment.block.javadoc.java keyword.other.documentation.javadoc.java"
+ },
+ {
+ "foreground": "#eba0ac",
+ "token": "meta.export variable.other.readwrite.js"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "variable.other.constant.js"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "variable.other.constant.ts"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "variable.other.property.js"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "variable.other.property.ts"
+ },
+ {
+ "foreground": "#eba0ac",
+ "fontStyle": "",
+ "token": "variable.other.jsdoc"
+ },
+ {
+ "foreground": "#eba0ac",
+ "fontStyle": "",
+ "token": "comment.block.documentation variable.other"
+ },
+ {
+ "fontStyle": "",
+ "token": "storage.type.class.jsdoc"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "support.type.object.console.js"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "support.constant.node"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "support.type.object.module.js"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "storage.modifier.implements"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "constant.language.null.js"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "constant.language.null.ts"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "constant.language.undefined.js"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "constant.language.undefined.ts"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "support.type.builtin.ts"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "variable.parameter.generic"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "keyword.declaration.function.arrow.js"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "storage.type.function.arrow.ts"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "punctuation.decorator.ts"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.expression.in.js"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.expression.in.ts"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.expression.infer.ts"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.expression.instanceof.js"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.expression.instanceof.ts"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.expression.is"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.expression.keyof.ts"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.expression.of.js"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.expression.of.ts"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.expression.typeof.ts"
+ },
+ {
+ "foreground": "#94e2d5",
+ "fontStyle": "italic",
+ "token": "support.function.macro.julia"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.language.julia"
+ },
+ {
+ "foreground": "#eba0ac",
+ "token": "constant.other.symbol.julia"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "text.tex keyword.control.preamble"
+ },
+ {
+ "foreground": "#89dceb",
+ "token": "text.tex support.function.be"
+ },
+ {
+ "foreground": "#f2cdcd",
+ "token": "constant.other.general.math.tex"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "variable.language.liquid"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "comment.line.double-dash.documentation.lua storage.type.annotation.lua"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "comment.line.double-dash.documentation.lua entity.name.variable.lua"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "comment.line.double-dash.documentation.lua variable.lua"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "heading.1.markdown punctuation.definition.heading.markdown"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "heading.1.markdown"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "heading.1.quarto punctuation.definition.heading.quarto"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "heading.1.quarto"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "markup.heading.atx.1.mdx"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "markup.heading.atx.1.mdx punctuation.definition.heading.mdx"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "markup.heading.setext.1.markdown"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "markup.heading.heading-0.asciidoc"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "heading.2.markdown punctuation.definition.heading.markdown"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "heading.2.markdown"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "heading.2.quarto punctuation.definition.heading.quarto"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "heading.2.quarto"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "markup.heading.atx.2.mdx"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "markup.heading.atx.2.mdx punctuation.definition.heading.mdx"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "markup.heading.setext.2.markdown"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "markup.heading.heading-1.asciidoc"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "heading.3.markdown punctuation.definition.heading.markdown"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "heading.3.markdown"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "heading.3.quarto punctuation.definition.heading.quarto"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "heading.3.quarto"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "markup.heading.atx.3.mdx"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "markup.heading.atx.3.mdx punctuation.definition.heading.mdx"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "markup.heading.heading-2.asciidoc"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "heading.4.markdown punctuation.definition.heading.markdown"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "heading.4.markdown"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "heading.4.quarto punctuation.definition.heading.quarto"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "heading.4.quarto"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "markup.heading.atx.4.mdx"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "markup.heading.atx.4.mdx punctuation.definition.heading.mdx"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "markup.heading.heading-3.asciidoc"
+ },
+ {
+ "foreground": "#74c7ec",
+ "token": "heading.5.markdown punctuation.definition.heading.markdown"
+ },
+ {
+ "foreground": "#74c7ec",
+ "token": "heading.5.markdown"
+ },
+ {
+ "foreground": "#74c7ec",
+ "token": "heading.5.quarto punctuation.definition.heading.quarto"
+ },
+ {
+ "foreground": "#74c7ec",
+ "token": "heading.5.quarto"
+ },
+ {
+ "foreground": "#74c7ec",
+ "token": "markup.heading.atx.5.mdx"
+ },
+ {
+ "foreground": "#74c7ec",
+ "token": "markup.heading.atx.5.mdx punctuation.definition.heading.mdx"
+ },
+ {
+ "foreground": "#74c7ec",
+ "token": "markup.heading.heading-4.asciidoc"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "heading.6.markdown punctuation.definition.heading.markdown"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "heading.6.markdown"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "heading.6.quarto punctuation.definition.heading.quarto"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "heading.6.quarto"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "markup.heading.atx.6.mdx"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "markup.heading.atx.6.mdx punctuation.definition.heading.mdx"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "markup.heading.heading-5.asciidoc"
+ },
+ {
+ "foreground": "#f38ba8",
+ "fontStyle": "bold",
+ "token": "markup.bold"
+ },
+ {
+ "foreground": "#f38ba8",
+ "fontStyle": "italic",
+ "token": "markup.italic"
+ },
+ {
+ "foreground": "#a6adc8",
+ "fontStyle": "strikethrough",
+ "token": "markup.strikethrough"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "punctuation.definition.link"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "markup.underline.link"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "text.html.markdown punctuation.definition.link.title"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "text.html.quarto punctuation.definition.link.title"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "string.other.link.title.markdown"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "string.other.link.title.quarto"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "markup.link"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "punctuation.definition.constant.markdown"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "punctuation.definition.constant.quarto"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "constant.other.reference.link.markdown"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "constant.other.reference.link.quarto"
+ },
+ {
+ "foreground": "#b4befe",
+ "token": "markup.substitution.attribute-reference"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "punctuation.definition.raw.markdown"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "punctuation.definition.raw.quarto"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "markup.inline.raw.string.markdown"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "markup.inline.raw.string.quarto"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "markup.raw.block.markdown"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "markup.raw.block.quarto"
+ },
+ {
+ "foreground": "#89dceb",
+ "token": "fenced_code.block.language"
+ },
+ {
+ "foreground": "#9399b2",
+ "token": "markup.fenced_code.block punctuation.definition"
+ },
+ {
+ "foreground": "#9399b2",
+ "token": "markup.raw support.asciidoc"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "markup.quote"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "punctuation.definition.quote.begin"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "meta.separator.markdown"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "punctuation.definition.list.begin.markdown"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "punctuation.definition.list.begin.quarto"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "markup.list.bullet"
+ },
+ {
+ "fontStyle": "bold",
+ "token": "markup.heading.quarto"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "entity.other.attribute-name.multipart.nix"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "entity.other.attribute-name.single.nix"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "fontStyle": "",
+ "token": "variable.parameter.name.nix"
+ },
+ {
+ "foreground": "#b4befe",
+ "fontStyle": "",
+ "token": "meta.embedded variable.parameter.name.nix"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "fontStyle": "",
+ "token": "string.unquoted.path.nix"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "support.attribute.builtin"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "meta.attribute.php"
+ },
+ {
+ "foreground": "#eba0ac",
+ "token": "meta.function.parameters.php punctuation.definition.variable.php"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "constant.language.php"
+ },
+ {
+ "foreground": "#89dceb",
+ "token": "text.html.php support.function"
+ },
+ {
+ "fontStyle": "",
+ "token": "keyword.other.phpdoc.php"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "support.variable.magic.python"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "meta.function-call.arguments.python"
+ },
+ {
+ "foreground": "#89dceb",
+ "fontStyle": "italic",
+ "token": "support.function.magic.python"
+ },
+ {
+ "foreground": "#f38ba8",
+ "fontStyle": "italic",
+ "token": "variable.parameter.function.language.special.self.python"
+ },
+ {
+ "foreground": "#f38ba8",
+ "fontStyle": "italic",
+ "token": "variable.language.special.self.python"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.control.flow.python"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.operator.logical.python"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "storage.type.function.python"
+ },
+ {
+ "foreground": "#89dceb",
+ "token": "support.token.decorator.python"
+ },
+ {
+ "foreground": "#89dceb",
+ "token": "meta.function.decorator.identifier.python"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "meta.function-call.python"
+ },
+ {
+ "foreground": "#fab387",
+ "fontStyle": "italic",
+ "token": "entity.name.function.decorator.python"
+ },
+ {
+ "foreground": "#fab387",
+ "fontStyle": "italic",
+ "token": "punctuation.definition.decorator.python"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "constant.character.format.placeholder.other.python"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "support.type.exception.python"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "support.function.builtin.python"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "support.type.python"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.language.python"
+ },
+ {
+ "foreground": "#eba0ac",
+ "fontStyle": "italic",
+ "token": "meta.indexed-name.python"
+ },
+ {
+ "foreground": "#eba0ac",
+ "fontStyle": "italic",
+ "token": "meta.item-access.python"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "fontStyle": "italic",
+ "token": "storage.type.string.python"
+ },
+ {
+ "fontStyle": "",
+ "token": "meta.function.parameters.python"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "meta.function-call.r"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "meta.function-call.arguments.r"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "string.regexp punctuation.definition.string.begin"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "string.regexp punctuation.definition.string.end"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "keyword.control.anchor.regexp"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "string.regexp.ts"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "punctuation.definition.group.regexp"
+ },
+ {
+ "foreground": "#a6e3a1",
+ "token": "keyword.other.back-reference.regexp"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "punctuation.definition.character-class.regexp"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "constant.other.character-class.regexp"
+ },
+ {
+ "foreground": "#f5e0dc",
+ "token": "constant.other.character-class.range.regexp"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "keyword.operator.quantifier.regexp"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.character.numeric.regexp"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "punctuation.definition.group.no-capture.regexp"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "meta.assertion.look-ahead.regexp"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "meta.assertion.negative-look-ahead.regexp"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "meta.annotation.rust"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "meta.annotation.rust punctuation"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "meta.attribute.rust"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "punctuation.definition.attribute.rust"
+ },
+ {
+ "fontStyle": "",
+ "token": "meta.attribute.rust string.quoted.double.rust"
+ },
+ {
+ "fontStyle": "",
+ "token": "meta.attribute.rust string.quoted.single.char.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "entity.name.function.macro.rules.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.type.module.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.modifier.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.type.struct.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.type.enum.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.type.trait.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.type.union.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.type.impl.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.type.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.type.function.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "storage.type.type.rust"
+ },
+ {
+ "foreground": "#cba6f7",
+ "fontStyle": "",
+ "token": "entity.name.type.numeric.rust"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "meta.generic.rust"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "entity.name.impl.rust"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "entity.name.module.rust"
+ },
+ {
+ "foreground": "#f9e2af",
+ "fontStyle": "italic",
+ "token": "entity.name.trait.rust"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "storage.type.source.rust"
+ },
+ {
+ "foreground": "#f9e2af",
+ "token": "entity.name.union.rust"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "meta.enum.rust storage.type.source.rust"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "support.macro.rust"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "meta.macro.rust support.function.rust"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "entity.name.function.macro.rust"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "storage.modifier.lifetime.rust"
+ },
+ {
+ "foreground": "#89b4fa",
+ "fontStyle": "italic",
+ "token": "entity.name.type.lifetime"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "string.quoted.double.rust constant.other.placeholder.rust"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "meta.function.return-type.rust meta.generic.rust storage.type.rust"
+ },
+ {
+ "foreground": "#89b4fa",
+ "token": "meta.function.call.rust"
+ },
+ {
+ "foreground": "#89dceb",
+ "token": "punctuation.brackets.angle.rust"
+ },
+ {
+ "foreground": "#fab387",
+ "token": "constant.other.caps.rust"
+ },
+ {
+ "foreground": "#eba0ac",
+ "token": "meta.function.definition.rust variable.other.rust"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "meta.function.call.rust variable.other.rust"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "variable.language.self.rust"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "variable.other.metavariable.name.rust"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "token": "meta.macro.metavariable.rust keyword.operator.macro.dollar.rust"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "fontStyle": "italic",
+ "token": "comment.line.shebang"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "fontStyle": "italic",
+ "token": "comment.line.shebang punctuation.definition.comment"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "fontStyle": "italic",
+ "token": "comment.line.shebang"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "fontStyle": "italic",
+ "token": "punctuation.definition.comment.shebang.shell"
+ },
+ {
+ "foreground": "#f5c2e7",
+ "fontStyle": "italic",
+ "token": "meta.shebang.shell"
+ },
+ {
+ "foreground": "#94e2d5",
+ "fontStyle": "italic",
+ "token": "comment.line.shebang constant.language"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "meta.function-call.arguments.shell punctuation.definition.variable.shell"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "meta.function-call.arguments.shell punctuation.section.interpolation"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "meta.function-call.arguments.shell punctuation.definition.variable.shell"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "meta.function-call.arguments.shell punctuation.section.interpolation"
+ },
+ {
+ "foreground": "#fab387",
+ "fontStyle": "italic",
+ "token": "meta.string meta.interpolation.parameter.shell variable.other.readwrite"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "source.shell punctuation.section.interpolation"
+ },
+ {
+ "foreground": "#94e2d5",
+ "token": "punctuation.definition.evaluation.backticks.shell"
+ },
+ {
+ "foreground": "#cba6f7",
+ "token": "entity.name.tag.heredoc.shell"
+ },
+ {
+ "foreground": "#cdd6f4",
+ "token": "string.quoted.double.shell variable.other.normal.shell"
+ },
+ {
+ "foreground": "#f38ba8",
+ "token": "markup.heading.typst"
+ }
+ ],
+ "encodedTokensColors": []
+}
diff --git a/server/api/presets/[id].delete.ts b/server/api/presets/[id].delete.ts
new file mode 100644
index 0000000..c785697
--- /dev/null
+++ b/server/api/presets/[id].delete.ts
@@ -0,0 +1,33 @@
+import { getPresetById, deletePreset } from "~/lib/utils/presetsDb";
+
+export default defineEventHandler(async (event) => {
+ const { isAuthenticated, userId } = event.context.auth();
+
+ if (!isAuthenticated || !userId) {
+ throw createError({ statusCode: 401, statusMessage: "Unauthorized" });
+ }
+
+ const id = getRouterParam(event, "id");
+ if (!id) {
+ throw createError({ statusCode: 400, statusMessage: "Missing preset ID" });
+ }
+
+ // Check if the user is the creator of the preset
+ const preset = await getPresetById(id);
+
+ if (!preset) {
+ throw createError({ statusCode: 404, statusMessage: "Preset not found" });
+ }
+
+ if (preset.createdBy !== userId) {
+ throw createError({
+ statusCode: 403,
+ statusMessage: "Forbidden: You can only delete your own presets",
+ });
+ }
+
+ // Delete the preset (cascades to presetUsers)
+ await deletePreset(id);
+
+ return { success: true };
+});
diff --git a/server/api/presets/[id].get.ts b/server/api/presets/[id].get.ts
new file mode 100644
index 0000000..3138ae0
--- /dev/null
+++ b/server/api/presets/[id].get.ts
@@ -0,0 +1,30 @@
+import {
+ getPresetAuthorData,
+ getPresetById,
+ userHasPresetAccess,
+} from "~/lib/utils/presetsDb";
+
+export default defineEventHandler(async (event) => {
+ const { isAuthenticated, userId } = event.context.auth();
+
+ if (!isAuthenticated || !userId) {
+ throw createError({ statusCode: 401, statusMessage: "Unauthorized" });
+ }
+
+ const id = getRouterParam(event, "id");
+ if (!id) {
+ throw createError({ statusCode: 400, statusMessage: "Missing preset ID" });
+ }
+
+ const preset = await getPresetById(id);
+ if (!preset) {
+ throw createError({ statusCode: 404, statusMessage: "Preset not found" });
+ }
+ const author = await getPresetAuthorData(event, id);
+
+ return {
+ success: true,
+ data: preset,
+ author,
+ };
+});
diff --git a/server/api/presets/[id].put.ts b/server/api/presets/[id].put.ts
new file mode 100644
index 0000000..ed07683
--- /dev/null
+++ b/server/api/presets/[id].put.ts
@@ -0,0 +1,44 @@
+import {
+ getPresetById,
+ updatePreset,
+ updatePresetDefaultStatus,
+} from "~/lib/utils/presetsDb";
+
+export default defineEventHandler(async (event) => {
+ const { isAuthenticated, userId } = event.context.auth();
+
+ if (!isAuthenticated || !userId) {
+ throw createError({ statusCode: 401, statusMessage: "Unauthorized" });
+ }
+
+ const id = getRouterParam(event, "id");
+ if (!id) {
+ throw createError({ statusCode: 400, statusMessage: "Missing preset ID" });
+ }
+
+ const body = await readBody(event);
+
+ // Verify ownership
+ const preset = await getPresetById(id);
+
+ if (!preset) {
+ throw createError({ statusCode: 404, statusMessage: "Preset not found" });
+ }
+
+ if (preset.createdBy !== userId) {
+ throw createError({
+ statusCode: 403,
+ statusMessage: "Forbidden: You can only edit your own presets",
+ });
+ }
+
+ // Update preset
+ await updatePreset(id, body.name, JSON.stringify(body.iceServers));
+
+ // Update default status in presetUsers
+ if (body.default !== undefined) {
+ await updatePresetDefaultStatus(id, userId, body.default);
+ }
+
+ return { success: true };
+});
diff --git a/server/api/presets/[id]/import.post.ts b/server/api/presets/[id]/import.post.ts
new file mode 100644
index 0000000..f77214d
--- /dev/null
+++ b/server/api/presets/[id]/import.post.ts
@@ -0,0 +1,69 @@
+import { getPresetById, userHasPresetAccess } from "~/lib/utils/presetsDb";
+import { db } from "~/lib/db/index";
+import * as schema from "~/lib/db/schema";
+
+export default defineEventHandler(async (event) => {
+ const id = getRouterParam(event, "id");
+ const { isAuthenticated, userId } = event.context.auth();
+
+ if (!isAuthenticated || !userId) {
+ setResponseStatus(event, 401);
+ return {
+ success: false,
+ message: "Unauthorized",
+ };
+ }
+
+ if (!id) {
+ setResponseStatus(event, 400);
+ return {
+ success: false,
+ message: "Missing preset ID",
+ };
+ }
+
+ const preset = await getPresetById(id);
+ if (!preset) {
+ setResponseStatus(event, 404);
+ return {
+ success: false,
+ message: "Preset not found",
+ };
+ }
+
+ if (!preset.shareable) {
+ setResponseStatus(event, 403);
+ return {
+ success: false,
+ message: "This preset is not shareable",
+ };
+ }
+
+ // Check if user already has this preset
+ const userAlreadyHasPreset = await db.query.presetUsers.findFirst({
+ where: (presetUsers, { eq, and }) =>
+ and(
+ eq(presetUsers.presetId, id),
+ eq(presetUsers.userId, userId),
+ ),
+ });
+
+ if (userAlreadyHasPreset) {
+ return {
+ success: false,
+ message: "You already have this preset imported",
+ };
+ }
+
+ // Add preset to user
+ await db.insert(schema.presetUsers).values({
+ presetId: id,
+ userId: userId,
+ isDefault: false,
+ });
+
+ return {
+ success: true,
+ message: "Preset imported successfully",
+ };
+});
diff --git a/server/api/presets/[id]/share.post.ts b/server/api/presets/[id]/share.post.ts
new file mode 100644
index 0000000..b7969e0
--- /dev/null
+++ b/server/api/presets/[id]/share.post.ts
@@ -0,0 +1,36 @@
+import { markAsShareable, ownsPreset } from "~/lib/utils/presetsDb";
+
+export default defineEventHandler(async (event) => {
+ const id = getRouterParam(event, "id");
+ const { isAuthenticated, userId } = event.context.auth();
+
+ if (!isAuthenticated || !userId) {
+ setResponseStatus(event, 401);
+ return {
+ success: false,
+ message: "Unauthorized",
+ };
+ }
+ if (!id) {
+ setResponseStatus(event, 400);
+ return {
+ success: false,
+ message: "Missing preset ID",
+ };
+ }
+
+ if (!(await ownsPreset(id, userId))) {
+ setResponseStatus(event, 403);
+ return {
+ success: false,
+ message: "Forbidden",
+ };
+ }
+
+ await markAsShareable(id, true);
+
+ return {
+ success: true,
+ message: "Preset marked as shareable",
+ };
+});
diff --git a/server/api/presets/create.post.ts b/server/api/presets/create.post.ts
new file mode 100644
index 0000000..9839ed4
--- /dev/null
+++ b/server/api/presets/create.post.ts
@@ -0,0 +1,51 @@
+import { clerkClient } from "@clerk/nuxt/server";
+import { schema as zodSchema } from "~/lib/schema/new-preset";
+import { createPreset } from "~/lib/utils/presetsDb";
+
+export default defineEventHandler(async (req) => {
+ const reqBody = await readBody(req);
+ if (reqBody && reqBody.iceServers) {
+ reqBody.iceServers = JSON.stringify(reqBody.iceServers);
+ }
+
+ const body = zodSchema.safeParse(reqBody);
+ if (body.success === false) {
+ setResponseStatus(req, 400);
+ return {
+ success: false,
+ message: "Invalid request body",
+ };
+ }
+
+ const { isAuthenticated, userId } = req.context.auth();
+
+ if (!isAuthenticated) {
+ setResponseStatus(req, 401);
+ return {
+ success: false,
+ message: "Unauthorized",
+ };
+ }
+
+ const user = await clerkClient(req).users.getUser(userId);
+
+ try {
+ await createPreset(
+ user.id,
+ body.data.name,
+ body.data.iceServers,
+ body.data.default,
+ );
+ } catch (e: any) {
+ setResponseStatus(req, 500);
+ return {
+ success: false,
+ message: "Database error",
+ };
+ }
+
+ return {
+ success: true,
+ message: "Preset created successfully",
+ };
+});
diff --git a/server/api/presets/index.get.ts b/server/api/presets/index.get.ts
new file mode 100644
index 0000000..84e7acc
--- /dev/null
+++ b/server/api/presets/index.get.ts
@@ -0,0 +1,15 @@
+import { getUserPresets } from "~/lib/utils/presetsDb";
+
+export default defineEventHandler(async (event) => {
+ const { isAuthenticated, userId } = event.context.auth();
+ console.log("Fetching presets for user:", userId);
+ if (!isAuthenticated) {
+ throw createError({ statusCode: 401, statusMessage: "Unauthorized" });
+ }
+ const data = await getUserPresets(userId);
+
+ return {
+ success: true,
+ data: data,
+ };
+});
diff --git a/server/plugins/migrations.ts b/server/plugins/migrations.ts
new file mode 100644
index 0000000..e9b2cfc
--- /dev/null
+++ b/server/plugins/migrations.ts
@@ -0,0 +1,15 @@
+import { runMigrations } from "../../app/lib/db/migrate";
+
+export default defineNitroPlugin(async () => {
+ // Run migrations once when the server starts
+ try {
+ await runMigrations();
+ } catch (error) {
+ console.error("[Server] Failed to run migrations on startup:", error);
+ // In production, you may want to throw here to prevent server startup
+ // For now, we'll just log the error and continue
+ if (process.env.NODE_ENV === "production") {
+ throw error;
+ }
+ }
+});
diff --git a/server/routes/ws/signaling.ts b/server/routes/ws/signaling.ts
index 50b0cd6..ddc69fc 100644
--- a/server/routes/ws/signaling.ts
+++ b/server/routes/ws/signaling.ts
@@ -124,6 +124,7 @@ export default defineWebSocketHandler({
event: 'offer',
sdp: msg.sdp,
senderId: peer.id,
+ iceServers: msg.iceServers,
}));
}
}