diff --git a/.dockerignore b/.dockerignore
deleted file mode 100644
index 5b0ec201..00000000
--- a/.dockerignore
+++ /dev/null
@@ -1,44 +0,0 @@
-# Dependencies
-**/node_modules
-.pnp
-.pnp.js
-
-# Local env files
-.env
-.env.local
-.env.development.local
-.env.test.local
-.env.production.local
-
-# Testing
-coverage
-
-# Turbo
-.turbo
-
-# Vercel
-.vercel
-
-# Build Outputs
-**/.next/
-**/out/
-**/build
-**/dist
-**/target
-
-
-# Debug
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
-
-# Misc
-.DS_Store
-*.pem
-
-# Unnecessary files
-**/.git/
-.github/
-flatpak/*.xml
-flatpak/*.desktop
-flatpak/*.yml
diff --git a/.envrc b/.envrc
deleted file mode 100644
index 3550a30f..00000000
--- a/.envrc
+++ /dev/null
@@ -1 +0,0 @@
-use flake
diff --git a/.gitignore b/.gitignore
index 0a6f285a..42a97193 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,38 +1,26 @@
-# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
-# Dependencies
node_modules
-.pnp
-.pnp.js
+dist
+dist-ssr
+*.local
-# Local env files
-.env
-.env.local
-.env.development.local
-.env.test.local
-.env.production.local
-
-# Testing
-coverage/
-
-# Turbo
-.turbo/
-
-# Vercel
-.vercel/
-
-# Build Outputs
-.next/
-out/
-build/
-dist/
-
-
-# Debug
-*.log.*
-
-# Misc
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
.DS_Store
-*.pem
-.vscode/
-.idea/
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
+
+src/router.gen.ts
diff --git a/apps/desktop2/.gitignore b/apps/desktop2/.gitignore
deleted file mode 100644
index 42a97193..00000000
--- a/apps/desktop2/.gitignore
+++ /dev/null
@@ -1,26 +0,0 @@
-# Logs
-logs
-*.log
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
-pnpm-debug.log*
-lerna-debug.log*
-
-node_modules
-dist
-dist-ssr
-*.local
-
-# Editor directories and files
-.vscode/*
-!.vscode/extensions.json
-.idea
-.DS_Store
-*.suo
-*.ntvs*
-*.njsproj
-*.sln
-*.sw?
-
-src/router.gen.ts
diff --git a/apps/desktop2/package.json b/apps/desktop2/package.json
deleted file mode 100644
index d492f312..00000000
--- a/apps/desktop2/package.json
+++ /dev/null
@@ -1,60 +0,0 @@
-{
- "name": "@lume/desktop2",
- "private": true,
- "version": "0.0.0",
- "type": "module",
- "scripts": {
- "dev": "vite",
- "build": "vite build",
- "preview": "vite preview"
- },
- "dependencies": {
- "@getalby/bitcoin-connect-react": "^3.6.1",
- "@lume/icons": "workspace:^",
- "@lume/system": "workspace:^",
- "@lume/ui": "workspace:^",
- "@lume/utils": "workspace:^",
- "@radix-ui/react-avatar": "^1.1.0",
- "@radix-ui/react-checkbox": "^1.1.1",
- "@radix-ui/react-popover": "^1.1.1",
- "@radix-ui/react-scroll-area": "^1.1.0",
- "@radix-ui/react-switch": "^1.1.0",
- "@radix-ui/react-tabs": "^1.1.0",
- "@radix-ui/react-tooltip": "^1.1.2",
- "@tanstack/query-persist-client-core": "^5.51.21",
- "@tanstack/react-query": "^5.51.23",
- "@tanstack/react-router": "^1.47.1",
- "embla-carousel-react": "^8.1.8",
- "i18next": "^23.12.2",
- "i18next-resources-to-backend": "^1.2.1",
- "minidenticons": "^4.2.1",
- "nanoid": "^5.0.7",
- "nostr-tools": "^2.7.2",
- "react": "^18.3.1",
- "react-currency-input-field": "^3.8.0",
- "react-dom": "^18.3.1",
- "react-hook-form": "^7.52.2",
- "react-i18next": "^15.0.1",
- "react-string-replace": "^1.1.1",
- "slate": "^0.103.0",
- "slate-react": "^0.107.1",
- "use-debounce": "^10.0.2",
- "virtua": "^0.33.4"
- },
- "devDependencies": {
- "@lume/tailwindcss": "workspace:^",
- "@lume/tsconfig": "workspace:^",
- "@lume/types": "workspace:^",
- "@tanstack/router-devtools": "^1.47.1",
- "@tanstack/router-vite-plugin": "^1.47.0",
- "@types/react": "^18.3.3",
- "@types/react-dom": "^18.3.0",
- "@vitejs/plugin-react-swc": "^3.7.0",
- "autoprefixer": "^10.4.20",
- "postcss": "^8.4.41",
- "tailwindcss": "^3.4.9",
- "typescript": "^5.5.4",
- "vite": "^5.4.0",
- "vite-tsconfig-paths": "^5.0.1"
- }
-}
diff --git a/apps/desktop2/tailwind.config.js b/apps/desktop2/tailwind.config.js
deleted file mode 100644
index 8b3a0b0f..00000000
--- a/apps/desktop2/tailwind.config.js
+++ /dev/null
@@ -1,16 +0,0 @@
-/** @type {import('tailwindcss').Config} */
-
-import preset from "@lume/tailwindcss";
-
-const config = {
- content: [
- "./src/**/*.{js,ts,jsx,tsx}",
- "../../packages/@columns/**/*{.js,.ts,.jsx,.tsx}",
- "../../packages/ark/**/*{.js,.ts,.jsx,.tsx}",
- "../../packages/ui/**/*{.js,.ts,.jsx,.tsx}",
- "index.html",
- ],
- presets: [preset],
-};
-
-export default config;
diff --git a/apps/desktop2/tsconfig.json b/apps/desktop2/tsconfig.json
deleted file mode 100644
index 3de33882..00000000
--- a/apps/desktop2/tsconfig.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "extends": "@lume/tsconfig/base.json",
- "compilerOptions": {
- "outDir": "dist",
- "baseUrl": "./",
- "paths": {
- "@/*": ["./src/*"]
- }
- },
- "include": ["src"],
- "exclude": ["node_modules", "dist"]
-}
diff --git a/apps/web/.gitignore b/apps/web/.gitignore
deleted file mode 100644
index 6240da8b..00000000
--- a/apps/web/.gitignore
+++ /dev/null
@@ -1,21 +0,0 @@
-# build output
-dist/
-# generated types
-.astro/
-
-# dependencies
-node_modules/
-
-# logs
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
-pnpm-debug.log*
-
-
-# environment variables
-.env
-.env.production
-
-# macOS-specific files
-.DS_Store
diff --git a/apps/web/README.md b/apps/web/README.md
deleted file mode 100644
index e34a99b4..00000000
--- a/apps/web/README.md
+++ /dev/null
@@ -1,47 +0,0 @@
-# Astro Starter Kit: Minimal
-
-```sh
-npm create astro@latest -- --template minimal
-```
-
-[](https://stackblitz.com/github/withastro/astro/tree/latest/examples/minimal)
-[](https://codesandbox.io/p/sandbox/github/withastro/astro/tree/latest/examples/minimal)
-[](https://codespaces.new/withastro/astro?devcontainer_path=.devcontainer/minimal/devcontainer.json)
-
-> 🧑🚀 **Seasoned astronaut?** Delete this file. Have fun!
-
-## 🚀 Project Structure
-
-Inside of your Astro project, you'll see the following folders and files:
-
-```text
-/
-├── public/
-├── src/
-│ └── pages/
-│ └── index.astro
-└── package.json
-```
-
-Astro looks for `.astro` or `.md` files in the `src/pages/` directory. Each page is exposed as a route based on its file name.
-
-There's nothing special about `src/components/`, but that's where we like to put any Astro/React/Vue/Svelte/Preact components.
-
-Any static assets, like images, can be placed in the `public/` directory.
-
-## 🧞 Commands
-
-All commands are run from the root of the project, from a terminal:
-
-| Command | Action |
-| :------------------------ | :----------------------------------------------- |
-| `npm install` | Installs dependencies |
-| `npm run dev` | Starts local dev server at `localhost:4321` |
-| `npm run build` | Build your production site to `./dist/` |
-| `npm run preview` | Preview your build locally, before deploying |
-| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
-| `npm run astro -- --help` | Get help using the Astro CLI |
-
-## 👀 Want to learn more?
-
-Feel free to check [our documentation](https://docs.astro.build) or jump into our [Discord server](https://astro.build/chat).
diff --git a/apps/web/astro.config.mjs b/apps/web/astro.config.mjs
deleted file mode 100644
index 1886bb6f..00000000
--- a/apps/web/astro.config.mjs
+++ /dev/null
@@ -1,8 +0,0 @@
-import { defineConfig } from "astro/config";
-
-import tailwind from "@astrojs/tailwind";
-
-// https://astro.build/config
-export default defineConfig({
- integrations: [tailwind()],
-});
diff --git a/apps/web/package.json b/apps/web/package.json
deleted file mode 100644
index ad264190..00000000
--- a/apps/web/package.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "name": "@lume/web",
- "type": "module",
- "version": "0.0.1",
- "scripts": {
- "dev": "astro dev",
- "start": "astro dev",
- "build": "astro check && astro build",
- "preview": "astro preview",
- "astro": "astro"
- },
- "dependencies": {
- "@astrojs/check": "^0.9.2",
- "@astrojs/tailwind": "^5.1.0",
- "@fontsource/alice": "^5.0.13",
- "astro": "^4.13.3",
- "astro-seo-meta": "^4.1.1",
- "astro-seo-schema": "^4.0.2",
- "schema-dts": "^1.1.2",
- "tailwindcss": "^3.4.9",
- "typescript": "^5.5.4"
- },
- "devDependencies": {
- "@tailwindcss/typography": "^0.5.14"
- }
-}
diff --git a/apps/web/public/bg.jpeg b/apps/web/public/bg.jpeg
deleted file mode 100644
index 2e5a6f76..00000000
Binary files a/apps/web/public/bg.jpeg and /dev/null differ
diff --git a/apps/web/public/favicon.ico b/apps/web/public/favicon.ico
deleted file mode 100644
index cd04a90a..00000000
Binary files a/apps/web/public/favicon.ico and /dev/null differ
diff --git a/apps/web/public/icon.png b/apps/web/public/icon.png
deleted file mode 100644
index 68093513..00000000
Binary files a/apps/web/public/icon.png and /dev/null differ
diff --git a/apps/web/public/og-image.jpg b/apps/web/public/og-image.jpg
deleted file mode 100644
index fc039172..00000000
Binary files a/apps/web/public/og-image.jpg and /dev/null differ
diff --git a/apps/web/src/env.d.ts b/apps/web/src/env.d.ts
deleted file mode 100644
index f964fe0c..00000000
--- a/apps/web/src/env.d.ts
+++ /dev/null
@@ -1 +0,0 @@
-///
diff --git a/apps/web/src/pages/index.astro b/apps/web/src/pages/index.astro
deleted file mode 100644
index 29069bb6..00000000
--- a/apps/web/src/pages/index.astro
+++ /dev/null
@@ -1,98 +0,0 @@
----
-import { Seo } from "astro-seo-meta";
----
-
-
-
-
-
-
-
- Lume: The nostr client for desktop
-
-
-
-
-
-
-
-
-
- A friendly and scalable Nostr desktop client.
-
-
- Lume is a Nostr client for desktop, including Linux, Windows, and
- macOS. It is free and open-source; you can look at the source code on GitHub . Lume is actively improving the app and adding new features; you can
- expect a new update every month.
-
-
- Latest version : 4.0.4
-
-
-
- * If you still need to use Lume on Windows and Linux, you can try v3
here
-
-
-
-
-
- Your browser does not support the video tag.
-
-
-
-
-
diff --git a/apps/web/tailwind.config.mjs b/apps/web/tailwind.config.mjs
deleted file mode 100644
index b6431732..00000000
--- a/apps/web/tailwind.config.mjs
+++ /dev/null
@@ -1,15 +0,0 @@
-/** @type {import('tailwindcss').Config} */
-
-const defaultTheme = require("tailwindcss/defaultTheme");
-
-export default {
- content: ["./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}"],
- theme: {
- extend: {
- fontFamily: {
- serif: ["Alice", ...defaultTheme.fontFamily.serif],
- },
- },
- },
- plugins: [require("@tailwindcss/typography")],
-};
diff --git a/apps/web/tsconfig.json b/apps/web/tsconfig.json
deleted file mode 100644
index a3f69810..00000000
--- a/apps/web/tsconfig.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "extends": "astro/tsconfigs/strict"
-}
diff --git a/flake.lock b/flake.lock
deleted file mode 100644
index b2709cc4..00000000
--- a/flake.lock
+++ /dev/null
@@ -1,130 +0,0 @@
-{
- "nodes": {
- "flake-utils": {
- "inputs": {
- "systems": "systems"
- },
- "locked": {
- "lastModified": 1694529238,
- "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "flake-utils_2": {
- "inputs": {
- "systems": "systems_2"
- },
- "locked": {
- "lastModified": 1681202837,
- "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "cfacdce06f30d2b68473a46042957675eebb3401",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "nixpkgs": {
- "locked": {
- "lastModified": 1697723726,
- "narHash": "sha256-SaTWPkI8a5xSHX/rrKzUe+/uVNy6zCGMXgoeMb7T9rg=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "7c9cc5a6e5d38010801741ac830a3f8fd667a7a0",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_2": {
- "locked": {
- "lastModified": 1681358109,
- "narHash": "sha256-eKyxW4OohHQx9Urxi7TQlFBTDWII+F+x2hklDOQPB50=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "96ba1c52e54e74c3197f4d43026b3f3d92e83ff9",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixpkgs-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "root": {
- "inputs": {
- "flake-utils": "flake-utils",
- "nixpkgs": "nixpkgs",
- "rust-overlay": "rust-overlay"
- }
- },
- "rust-overlay": {
- "inputs": {
- "flake-utils": "flake-utils_2",
- "nixpkgs": "nixpkgs_2"
- },
- "locked": {
- "lastModified": 1697940838,
- "narHash": "sha256-eyk92QqAoRNC0V99KOcKcBZjLPixxNBS0PRc4KlSQVs=",
- "owner": "oxalica",
- "repo": "rust-overlay",
- "rev": "a3e829c06eadf848f13d109c7648570ce37ebccd",
- "type": "github"
- },
- "original": {
- "owner": "oxalica",
- "repo": "rust-overlay",
- "type": "github"
- }
- },
- "systems": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- },
- "systems_2": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- }
- },
- "root": "root",
- "version": 7
-}
diff --git a/flake.nix b/flake.nix
deleted file mode 100644
index 1dd60729..00000000
--- a/flake.nix
+++ /dev/null
@@ -1,72 +0,0 @@
-# Nix.flake to build Lume based on Tauri's Guides:
-# Prerequisites -> Installing -> Setting Up Linux -> NixOS
-# https://tauri.app/v1/guides/getting-started/prerequisites/#1-system-dependencies
-#
-# To build Rust backend of Tauri `rust-overlay` is used
-# https://github.com/oxalica/rust-overlay
-
-{
- inputs = {
- nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
- flake-utils.url = "github:numtide/flake-utils";
- rust-overlay.url = "github:oxalica/rust-overlay";
- };
-
- outputs = { self, nixpkgs, flake-utils, rust-overlay }:
- flake-utils.lib.eachDefaultSystem (system:
- let
- overlays = [ (import rust-overlay) ];
- pkgs = import nixpkgs {
- inherit system overlays;
- };
-
- libraries = with pkgs;[
- webkitgtk
- gtk3
- cairo
- gdk-pixbuf
- glib
- dbus
- openssl_3
- librsvg
- libappindicator-gtk3
- ];
-
- packages = with pkgs; [
- curl
- wget
- pkg-config
- dbus
- openssl_3
- glib
- gtk3
- libsoup
- webkitgtk
- librsvg
- ];
-
- rustToolchain = pkgs.rust-bin.stable.latest.default.override {
- extensions = [ "rust-src" ]; # needed by rust-analyzer
- };
- in
- {
- devShells.default = pkgs.mkShell {
- buildInputs = [
- rustToolchain
- pkgs.nodejs
- pkgs.nodePackages.pnpm
- pkgs.bun # experimental in Lume
- ] ++ packages;
-
- shellHook =
- ''
- export LD_LIBRARY_PATH=${pkgs.lib.makeLibraryPath libraries}:$LD_LIBRARY_PATH
- export XDG_DATA_DIRS=${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}:${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}:$XDG_DATA_DIRS
- '';
-
- # Avoid white screen running with Nix
- # https://github.com/tauri-apps/tauri/issues/4315#issuecomment-1207755694
- WEBKIT_DISABLE_COMPOSITING_MODE = 1;
- };
- });
-}
diff --git a/flatpak/0001-disable-tauri-updater.patch b/flatpak/0001-disable-tauri-updater.patch
deleted file mode 100644
index b31eba65..00000000
--- a/flatpak/0001-disable-tauri-updater.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json
-index 21f5d9a5..9a46f36d 100644
---- a/src-tauri/tauri.conf.json
-+++ b/src-tauri/tauri.conf.json
-@@ -64,7 +64,7 @@
- "shortDescription": "",
- "targets": "all",
- "updater": {
-- "active": true,
-+ "active": false,
- "pubkey": "dW50cnVzdGVkIGNvbW1lbnQ6IG1pbmlzaWduIHB1YmxpYyBrZXk6IEU3OTdCMkM3RjU5QzE2NzkKUldSNUZwejF4N0tYNTVHYjMrU0JkL090SlEyNUVLYU5TM2hTU3RXSWtEWngrZWJ4a0pydUhXZHEK",
- "windows": {
- "installMode": "quiet"
diff --git a/flatpak/Containerfile b/flatpak/Containerfile
deleted file mode 100644
index 4df85746..00000000
--- a/flatpak/Containerfile
+++ /dev/null
@@ -1,52 +0,0 @@
-FROM node:20-slim as prepare
-
-RUN apt update && apt install -y git
-
-# Taken from tauri docs https://beta.tauri.app/guides/prerequisites/#rust
-RUN apt install libwebkit2gtk-4.1-dev -y \
- build-essential \
- curl \
- wget \
- file \
- libssl-dev \
- libayatana-appindicator3-dev \
- protobuf-compiler \
- librsvg2-dev
-
-RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
-
-
-FROM prepare as build
-
-ENV PNPM_HOME="/pnpm"
-ENV PATH="$PNPM_HOME:$PATH"
-ENV PATH="/root/.cargo/bin:${PATH}"
-
-#RUN corepack prepare pnpm@latest --activate
-
-RUN corepack enable
-
-ADD . /lume/.
-
-WORKDIR /lume
-
-RUN pnpm install --frozen-lockfile
-
-# Path for disable updater
-#ADD flatpak/0001-disable-tauri-updater.patch .
-#RUN patch -p1 -t -i flatpak/0001-disable-tauri-updater.patch
-
-#ENV VITE_FLATPAK_RESOURCE="/app/lib/lume/resources/config.toml"
-
-# debian build
-RUN pnpm tauri build -b deb
-
-ARG VERSION=3.0.1
-ARG ARCH=amd64
-
-RUN cp -r ./src-tauri/target/release/bundle/deb/lume_${VERSION}_${ARCH}/data lume-package
-
-FROM scratch as final
-
-COPY --from=build lume/lume-package prepare-dist
-#ADD flatpak/*.xml flatpak/*.desktop flatpak/*.yml prepare-dist
diff --git a/flatpak/nu.lume.Lume.appdata.xml b/flatpak/nu.lume.Lume.appdata.xml
deleted file mode 100644
index efe4b35d..00000000
--- a/flatpak/nu.lume.Lume.appdata.xml
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-
- nu.lume.Lume
-
-
- nu.lume.Lume.desktop
-
-
- Lume
-
-
- A cross-platform desktop nostr client
-
-
- Ren Amamiya
-
-
- CC0-1.0
-
-
- GPL-3.0-only
-
-
- https://lume.nu
-
-
- https://github.com/lumehq/lume/issues
-
-
- https://nostree.me/npub1zfss807aer0j26mwp2la0ume0jqde3823rmu97ra6sgyyg956e0s6xw445
-
-
-
- pointing
-
-
- keyboard
-
-
- touch
-
-
-
-
- Lume a cross-platform nostr client, supported nsecbunker, chats and notifications
-
-
-
-
- workstation
-
-
- mobile
-
-
-
-
-
- https://raw.githubusercontent.com/lumehq/lume/flatpak/screenshots/login-screen.png
-
-
-
-
- https://raw.githubusercontent.com/lumehq/lume/flatpak/screenshots/collumns.png
-
-
-
-
- https://raw.githubusercontent.com/lumehq/lume/flatpak/screenshots/home-screen.png
-
-
-
-
-
-
-
-
diff --git a/flatpak/nu.lume.Lume.desktop b/flatpak/nu.lume.Lume.desktop
deleted file mode 100644
index 43ae782a..00000000
--- a/flatpak/nu.lume.Lume.desktop
+++ /dev/null
@@ -1,12 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Type=Application
-
-Name=Lume
-Comment=A cross-platform desktop nostr client
-Icon=lume
-Exec=lume
-Terminal=false
-Categories=Network;InstantMessaging;
-Keywords=nostr;client;chat;
-X-Purism-FormFactor=Workstation;
diff --git a/flatpak/nu.lume.Lume.yml b/flatpak/nu.lume.Lume.yml
deleted file mode 100644
index 48f15a6f..00000000
--- a/flatpak/nu.lume.Lume.yml
+++ /dev/null
@@ -1,40 +0,0 @@
-id: nu.lume.Lume
-runtime: org.gnome.Platform
-runtime-version: '45'
-sdk: org.gnome.Sdk
-command: lume
-rename-icon: lume
-
-finish-args:
- - --socket=wayland
- - --socket=fallback-x11
- - --socket=pulseaudio
- - --share=ipc
- - --share=network
- #- --filesystem=home
- #- --filesystem=xdg-download
- - --talk-name=org.freedesktop.secrets
- - --talk-name=org.freedesktop.Notifications
- - --talk-name=org.kde.StatusNotifierWatcher
- - --filesystem=xdg-run/keyring
- - --device=dri
-
-modules:
- - shared-modules/libappindicator/libappindicator-gtk3-12.10.json
- - name: lume
- sources:
- - type: dir
- path: usr
- - type: file
- path: nu.lume.Lume.desktop
- - type: file
- path: nu.lume.Lume.appdata.xml
- buildsystem: simple
- build-commands:
- - install -Dm755 bin/lume /app/bin/lume
- - mkdir -p /app/lib/lume/resources
- - cp -r lib/lume/resources /app/lib/lume/resources
- - mkdir -p /app/share/icons/hicolor/
- - cp -r share/icons/hicolor/ /app/share/icons/
- - install -Dm644 nu.lume.Lume.appdata.xml /app/share/metainfo/nu.lume.Lume.appdata.xml
- - install -Dm644 nu.lume.Lume.desktop /app/share/applications/nu.lume.Lume.desktop
diff --git a/flatpak/screenshots/collumns.png b/flatpak/screenshots/collumns.png
deleted file mode 100644
index 4a9e7591..00000000
Binary files a/flatpak/screenshots/collumns.png and /dev/null differ
diff --git a/flatpak/screenshots/home-screen.png b/flatpak/screenshots/home-screen.png
deleted file mode 100644
index 95e22755..00000000
Binary files a/flatpak/screenshots/home-screen.png and /dev/null differ
diff --git a/flatpak/screenshots/login-screen.png b/flatpak/screenshots/login-screen.png
deleted file mode 100644
index cfb5c303..00000000
Binary files a/flatpak/screenshots/login-screen.png and /dev/null differ
diff --git a/apps/desktop2/index.html b/index.html
similarity index 100%
rename from apps/desktop2/index.html
rename to index.html
diff --git a/package.json b/package.json
index 6c5fa239..6b2cc8d5 100644
--- a/package.json
+++ b/package.json
@@ -1,25 +1,45 @@
{
"name": "lume",
"private": true,
- "version": "4.0.0",
+ "version": "0.0.0",
+ "type": "module",
"scripts": {
- "build": "turbo run build",
- "dev": "turbo run dev",
- "web:dev": "turbo run dev --filter web",
- "desktop:dev": "turbo run dev --filter @lume/desktop2",
- "desktop:build": "turbo run build --filter @lume/desktop2",
+ "dev": "vite",
+ "build": "vite build",
+ "preview": "vite preview",
"tauri": "tauri"
},
- "devDependencies": {
- "@biomejs/biome": "^1.8.3",
- "@tauri-apps/cli": "2.0.0-rc.1",
- "turbo": "^2.0.12"
- },
- "packageManager": "pnpm@8.9.0",
- "engines": {
- "node": ">=18"
- },
"dependencies": {
+ "@getalby/bitcoin-connect-react": "^3.6.1",
+ "@radix-ui/react-avatar": "^1.1.0",
+ "@radix-ui/react-checkbox": "^1.1.1",
+ "@radix-ui/react-popover": "^1.1.1",
+ "@radix-ui/react-scroll-area": "^1.1.0",
+ "@radix-ui/react-switch": "^1.1.0",
+ "@radix-ui/react-tabs": "^1.1.0",
+ "@radix-ui/react-tooltip": "^1.1.2",
+ "@tanstack/query-persist-client-core": "^5.51.21",
+ "@tanstack/react-query": "^5.51.23",
+ "@tanstack/react-router": "^1.47.1",
+ "embla-carousel-react": "^8.1.8",
+ "i18next": "^23.12.2",
+ "i18next-resources-to-backend": "^1.2.1",
+ "minidenticons": "^4.2.1",
+ "nanoid": "^5.0.7",
+ "nostr-tools": "^2.7.2",
+ "react": "^18.3.1",
+ "react-currency-input-field": "^3.8.0",
+ "react-dom": "^18.3.1",
+ "react-hook-form": "^7.52.2",
+ "react-i18next": "^15.0.1",
+ "react-string-replace": "^1.1.1",
+ "slate": "^0.103.0",
+ "slate-react": "^0.107.1",
+ "use-debounce": "^10.0.2",
+ "virtua": "^0.33.4",
+ "bitcoin-units": "^1.0.0",
+ "dayjs": "^1.11.12",
+ "light-bolt11-decoder": "^3.1.1",
"@tauri-apps/api": "2.0.0-rc.0",
"@tauri-apps/plugin-clipboard-manager": "2.0.0-rc.0",
"@tauri-apps/plugin-dialog": "2.0.0-rc.0",
@@ -31,5 +51,28 @@
"@tauri-apps/plugin-updater": "2.0.0-rc.0",
"@tauri-apps/plugin-upload": "2.0.0-rc.0",
"@tauri-apps/plugin-window-state": "2.0.0-rc.0"
+ },
+ "devDependencies": {
+ "clsx": "^2.1.1",
+ "tailwind-merge": "^2.4.0",
+ "@biomejs/biome": "^1.8.3",
+ "@tauri-apps/cli": "2.0.0-rc.1",
+ "@tanstack/router-devtools": "^1.47.1",
+ "@tanstack/router-vite-plugin": "^1.47.0",
+ "@types/react": "^18.3.3",
+ "@types/react-dom": "^18.3.0",
+ "@vitejs/plugin-react-swc": "^3.7.0",
+ "autoprefixer": "^10.4.20",
+ "postcss": "^8.4.41",
+ "@evilmartians/harmony": "^1.2.0",
+ "@tailwindcss/forms": "^0.5.7",
+ "@tailwindcss/typography": "^0.5.14",
+ "tailwind-gradient-mask-image": "^1.2.0",
+ "tailwind-scrollbar": "^3.1.0",
+ "tailwindcss": "^3.4.9",
+ "tailwindcss-content-visibility": "^0.2.0",
+ "typescript": "^5.5.4",
+ "vite": "^5.4.0",
+ "vite-tsconfig-paths": "^5.0.1"
}
}
diff --git a/packages/icons/index.ts b/packages/icons/index.ts
deleted file mode 100644
index 95b38ef0..00000000
--- a/packages/icons/index.ts
+++ /dev/null
@@ -1,128 +0,0 @@
-export * from "./src/addWidget";
-export * from "./src/arrowLeft";
-export * from "./src/arrowRight";
-export * from "./src/bell";
-export * from "./src/cancel";
-export * from "./src/checkCircle";
-export * from "./src/chevronDown";
-export * from "./src/chevronRight";
-export * from "./src/compose";
-export * from "./src/copy";
-export * from "./src/edit";
-export * from "./src/enter";
-export * from "./src/eyeOff";
-export * from "./src/eyeOn";
-export * from "./src/feed";
-export * from "./src/heartbeat";
-export * from "./src/hide";
-export * from "./src/image";
-export * from "./src/like";
-export * from "./src/lume";
-export * from "./src/media";
-export * from "./src/mute";
-export * from "./src/space";
-export * from "./src/spaceFilled";
-export * from "./src/navArrowDown";
-export * from "./src/plus";
-export * from "./src/plusCircle";
-export * from "./src/refresh";
-export * from "./src/reply";
-export * from "./src/replyMessage";
-export * from "./src/repost";
-export * from "./src/threads";
-export * from "./src/trash";
-export * from "./src/world";
-export * from "./src/zap";
-export * from "./src/trending";
-export * from "./src/empty";
-export * from "./src/cmd";
-export * from "./src/verticalDots";
-export * from "./src/signal";
-export * from "./src/unverified";
-export * from "./src/settings";
-export * from "./src/logout";
-export * from "./src/follow";
-export * from "./src/unfollow";
-export * from "./src/reaction";
-export * from "./src/thread";
-export * from "./src/strangers";
-export * from "./src/download";
-export * from "./src/horizontalDots";
-export * from "./src/arrowRightCircle";
-export * from "./src/hashtag";
-export * from "./src/file";
-export * from "./src/share";
-export * from "./src/expand";
-export * from "./src/focus";
-export * from "./src/chevronUp";
-export * from "./src/secure";
-export * from "./src/verified";
-export * from "./src/mention";
-export * from "./src/groupFeeds";
-export * from "./src/article";
-export * from "./src/follows";
-export * from "./src/alby";
-export * from "./src/stars";
-export * from "./src/nwc";
-export * from "./src/timeline";
-export * from "./src/dots";
-export * from "./src/handArrowDown";
-export * from "./src/relay";
-export * from "./src/explore";
-export * from "./src/explore2";
-export * from "./src/home";
-export * from "./src/chats";
-export * from "./src/community";
-export * from "./src/heading1";
-export * from "./src/heading2";
-export * from "./src/heading3";
-export * from "./src/bold";
-export * from "./src/italic";
-export * from "./src/user";
-export * from "./src/advancedSettings";
-export * from "./src/info";
-export * from "./src/light";
-export * from "./src/dark";
-export * from "./src/system";
-export * from "./src/announcement";
-export * from "./src/depot";
-export * from "./src/search";
-export * from "./src/run";
-export * from "./src/gossip";
-export * from "./src/userAdd";
-export * from "./src/userRemove";
-export * from "./src/pin";
-export * from "./src/homeFilled";
-export * from "./src/relayFilled";
-export * from "./src/depotFilled";
-export * from "./src/nwcFilled";
-export * from "./src/moveLeft";
-export * from "./src/moveRight";
-export * from "./src/help";
-export * from "./src/plusSquare";
-export * from "./src/column";
-export * from "./src/addMedia";
-export * from "./src/check";
-export * from "./src/popperFilled";
-export * from "./src/composeFilled";
-export * from "./src/settingsFilled";
-export * from "./src/bellFilled";
-export * from "./src/foryou";
-export * from "./src/editInterest";
-export * from "./src/newColumn";
-export * from "./src/searchFilled";
-export * from "./src/arrowUp";
-export * from "./src/arrowUpSquare";
-export * from "./src/arrowDown";
-export * from "./src/link";
-export * from "./src/local";
-export * from "./src/global";
-export * from "./src/infoCircle";
-export * from "./src/cancelCircle";
-export * from "./src/laurel";
-export * from "./src/quote";
-export * from "./src/key";
-export * from "./src/remote";
-export * from "./src/nsfw";
-export * from "./src/visit";
-export * from "./src/pow";
diff --git a/packages/icons/package.json b/packages/icons/package.json
deleted file mode 100644
index 7a49fac0..00000000
--- a/packages/icons/package.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "name": "@lume/icons",
- "version": "0.0.0",
- "private": true,
- "main": "./index.ts",
- "dependencies": {
- "react": "^18.3.1"
- },
- "devDependencies": {
- "@lume/tsconfig": "workspace:*",
- "@types/react": "^18.3.3",
- "typescript": "^5.5.4"
- }
-}
diff --git a/packages/icons/tsconfig.json b/packages/icons/tsconfig.json
deleted file mode 100644
index 34a32891..00000000
--- a/packages/icons/tsconfig.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "extends": "@lume/tsconfig/base.json",
- "compilerOptions": {
- "outDir": "dist"
- },
- "include": ["src"],
- "exclude": ["node_modules", "dist"]
-}
diff --git a/packages/system/package.json b/packages/system/package.json
deleted file mode 100644
index 91b0acc1..00000000
--- a/packages/system/package.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "name": "@lume/system",
- "version": "0.0.0",
- "private": true,
- "main": "./src/index.ts",
- "dependencies": {
- "@lume/utils": "workspace:^",
- "@tanstack/query-persist-client-core": "^5.51.21",
- "@tanstack/react-query": "^5.51.23",
- "nostr-tools": "^2.7.2",
- "react": "^18.3.1"
- },
- "devDependencies": {
- "@lume/tsconfig": "workspace:^",
- "@lume/types": "workspace:^",
- "@types/react": "^18.3.3",
- "typescript": "^5.5.4"
- }
-}
diff --git a/packages/system/tailwind.config.js b/packages/system/tailwind.config.js
deleted file mode 100644
index 21ad8bf9..00000000
--- a/packages/system/tailwind.config.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/** @type {import('tailwindcss').Config} */
-
-import preset from "@lume/tailwindcss";
-
-const config = {
- content: ["./src/**/*.{js,ts,jsx,tsx}"],
- presets: [preset],
-};
-
-export default config;
diff --git a/packages/system/tsconfig.json b/packages/system/tsconfig.json
deleted file mode 100644
index 34a32891..00000000
--- a/packages/system/tsconfig.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "extends": "@lume/tsconfig/base.json",
- "compilerOptions": {
- "outDir": "dist"
- },
- "include": ["src"],
- "exclude": ["node_modules", "dist"]
-}
diff --git a/packages/tailwindcss/package.json b/packages/tailwindcss/package.json
deleted file mode 100644
index 874cd546..00000000
--- a/packages/tailwindcss/package.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "name": "@lume/tailwindcss",
- "version": "0.0.0",
- "private": true,
- "license": "MIT",
- "publishConfig": {
- "access": "public"
- },
- "exports": {
- ".": "./tailwind.config.js"
- },
- "devDependencies": {
- "@evilmartians/harmony": "^1.2.0",
- "@tailwindcss/forms": "^0.5.7",
- "@tailwindcss/typography": "^0.5.14",
- "tailwind-gradient-mask-image": "^1.2.0",
- "tailwind-scrollbar": "^3.1.0",
- "tailwindcss": "^3.4.9",
- "tailwindcss-content-visibility": "^0.2.0"
- }
-}
diff --git a/packages/tsconfig/base.json b/packages/tsconfig/base.json
deleted file mode 100644
index aa254028..00000000
--- a/packages/tsconfig/base.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "$schema": "https://json.schemastore.org/tsconfig",
- "display": "Default",
- "compilerOptions": {
- "target": "es2017",
- "lib": ["dom", "dom.iterable", "esnext"],
- "allowJs": true,
- "moduleResolution": "node",
- "skipLibCheck": true,
- "strict": false,
- "forceConsistentCasingInFileNames": true,
- "noEmit": true,
- "incremental": true,
- "esModuleInterop": true,
- "module": "esnext",
- "resolveJsonModule": true,
- "isolatedModules": true,
- "jsx": "preserve",
- "strictNullChecks": false
- },
- "exclude": ["node_modules", "src-tauri"]
-}
diff --git a/packages/tsconfig/package.json b/packages/tsconfig/package.json
deleted file mode 100644
index 019bad6e..00000000
--- a/packages/tsconfig/package.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "name": "@lume/tsconfig",
- "version": "0.0.0",
- "private": true,
- "license": "MIT",
- "publishConfig": {
- "access": "public"
- }
-}
diff --git a/packages/types/package.json b/packages/types/package.json
deleted file mode 100644
index efb63113..00000000
--- a/packages/types/package.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "name": "@lume/types",
- "version": "0.0.0",
- "main": "./index.d.ts",
- "types": "./index.d.ts",
- "private": true,
- "license": "MIT",
- "publishConfig": {
- "access": "public"
- },
- "devDependencies": {
- "typescript": "^5.5.4"
- }
-}
diff --git a/packages/ui/package.json b/packages/ui/package.json
deleted file mode 100644
index 4be16a8a..00000000
--- a/packages/ui/package.json
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "name": "@lume/ui",
- "version": "0.0.0",
- "private": true,
- "main": "./src/index.ts",
- "dependencies": {
- "@lume/icons": "workspace:^",
- "@lume/utils": "workspace:^",
- "react": "^18.3.1",
- "react-dom": "^18.3.1",
- "react-snap-carousel": "^0.4.0"
- },
- "devDependencies": {
- "@lume/tailwindcss": "workspace:^",
- "@lume/tsconfig": "workspace:^",
- "@lume/types": "workspace:^",
- "@types/react": "^18.3.3",
- "tailwindcss": "^3.4.9",
- "typescript": "^5.5.4"
- }
-}
diff --git a/packages/ui/src/index.ts b/packages/ui/src/index.ts
deleted file mode 100644
index 1ca7c729..00000000
--- a/packages/ui/src/index.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-export * from "./container";
-export * from "./box";
-export * from "./spinner";
diff --git a/packages/ui/tailwind.config.js b/packages/ui/tailwind.config.js
deleted file mode 100644
index 49c48c7a..00000000
--- a/packages/ui/tailwind.config.js
+++ /dev/null
@@ -1,8 +0,0 @@
-import sharedConfig from "@lume/tailwindcss";
-
-const config = {
- content: ["./src/**/*.{js,ts,jsx,tsx}"],
- presets: [sharedConfig],
-};
-
-export default config;
diff --git a/packages/ui/tsconfig.json b/packages/ui/tsconfig.json
deleted file mode 100644
index 34a32891..00000000
--- a/packages/ui/tsconfig.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "extends": "@lume/tsconfig/base.json",
- "compilerOptions": {
- "outDir": "dist"
- },
- "include": ["src"],
- "exclude": ["node_modules", "dist"]
-}
diff --git a/packages/utils/index.ts b/packages/utils/index.ts
deleted file mode 100644
index a388a081..00000000
--- a/packages/utils/index.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-export * from "./src/constants";
-export * from "./src/formater";
-export * from "./src/editor";
-export * from "./src/cn";
-export * from "./src/invoice";
-export * from "./src/update";
diff --git a/packages/utils/package.json b/packages/utils/package.json
deleted file mode 100644
index 61a2d3ce..00000000
--- a/packages/utils/package.json
+++ /dev/null
@@ -1,29 +0,0 @@
-{
- "name": "@lume/utils",
- "version": "0.0.0",
- "main": "./index.ts",
- "private": true,
- "license": "MIT",
- "publishConfig": {
- "access": "public"
- },
- "dependencies": {
- "bitcoin-units": "^1.0.0",
- "clsx": "^2.1.1",
- "dayjs": "^1.11.12",
- "light-bolt11-decoder": "^3.1.1",
- "nostr-tools": "^2.7.2",
- "react": "^18.3.1",
- "react-dom": "^18.3.1",
- "slate": "^0.103.0",
- "slate-react": "^0.107.1"
- },
- "devDependencies": {
- "@lume/tsconfig": "workspace:^",
- "@lume/types": "workspace:^",
- "@types/react": "^18.3.3",
- "@types/react-dom": "^18.3.0",
- "tailwind-merge": "^2.4.0",
- "typescript": "^5.5.4"
- }
-}
diff --git a/packages/utils/src/cn.ts b/packages/utils/src/cn.ts
deleted file mode 100644
index ac680b30..00000000
--- a/packages/utils/src/cn.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-import { type ClassValue, clsx } from "clsx";
-import { twMerge } from "tailwind-merge";
-
-export function cn(...inputs: ClassValue[]) {
- return twMerge(clsx(inputs));
-}
diff --git a/packages/utils/src/editor.ts b/packages/utils/src/editor.ts
deleted file mode 100644
index 2428121c..00000000
--- a/packages/utils/src/editor.ts
+++ /dev/null
@@ -1,90 +0,0 @@
-import type { Contact } from "@lume/types";
-import type { ReactNode } from "react";
-import ReactDOM from "react-dom";
-import { type BaseEditor, Transforms } from "slate";
-import { ReactEditor } from "slate-react";
-
-export const Portal = ({ children }: { children?: ReactNode }) => {
- return typeof document === "object"
- ? ReactDOM.createPortal(children, document.body)
- : null;
-};
-
-export const isImagePath = (path: string) => {
- for (const suffix of ["jpg", "jpeg", "gif", "png", "webp", "avif", "tiff"]) {
- if (path.endsWith(suffix)) return true;
- }
- return false;
-};
-
-export const isImageUrl = (url: string) => {
- try {
- if (!url) return false;
- const ext = new URL(url).pathname.split(".").pop();
- return ["jpg", "jpeg", "gif", "png", "webp", "avif", "tiff"].includes(ext);
- } catch {
- return false;
- }
-};
-
-export const insertImage = (editor: ReactEditor | BaseEditor, url: string) => {
- const text = { text: "" };
- const image = [
- {
- type: "image",
- url,
- children: [text],
- },
- ];
- const extraText = [
- {
- type: "paragraph",
- children: [text],
- },
- ];
-
- // @ts-ignore, idk
- ReactEditor.focus(editor);
- Transforms.insertNodes(editor, image);
- Transforms.insertNodes(editor, extraText);
-};
-
-export const insertMention = (
- editor: ReactEditor | BaseEditor,
- contact: Contact,
-) => {
- const text = { text: "" };
- const mention = {
- type: "mention",
- npub: `nostr:${contact.pubkey}`,
- name: contact.profile.name || contact.profile.display_name || "anon",
- children: [text],
- };
-
- // @ts-ignore, idk
- ReactEditor.focus(editor);
- Transforms.insertNodes(editor, mention);
-};
-
-export const insertNostrEvent = (
- editor: ReactEditor | BaseEditor,
- eventId: string,
-) => {
- const text = { text: "" };
- const event = [
- {
- type: "event",
- eventId: `nostr:${eventId}`,
- children: [text],
- },
- ];
- const extraText = [
- {
- type: "paragraph",
- children: [text],
- },
- ];
-
- Transforms.insertNodes(editor, event);
- Transforms.insertNodes(editor, extraText);
-};
diff --git a/packages/utils/src/invoice.ts b/packages/utils/src/invoice.ts
deleted file mode 100644
index 49ca916a..00000000
--- a/packages/utils/src/invoice.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import { decode } from "light-bolt11-decoder";
-import { getBitcoinDisplayValues } from "./formater";
-
-export function decodeZapInvoice(tags?: string[][]) {
- const invoice = tags.find((tag) => tag[0] === "bolt11")?.[1];
- if (!invoice) return;
-
- const decodedInvoice = decode(invoice);
- const amountSection = decodedInvoice.sections.find(
- (s: { name: string }) => s.name === "amount",
- );
-
- const amount = Number.parseInt(amountSection.value);
- const displayValue = getBitcoinDisplayValues(amount);
-
- return displayValue;
-}
diff --git a/packages/utils/src/update.ts b/packages/utils/src/update.ts
deleted file mode 100644
index 2ac52ccc..00000000
--- a/packages/utils/src/update.ts
+++ /dev/null
@@ -1,38 +0,0 @@
-import { check } from "@tauri-apps/plugin-updater";
-import { ask, message } from "@tauri-apps/plugin-dialog";
-import { relaunch } from "@tauri-apps/plugin-process";
-
-export async function checkForAppUpdates(silent: boolean) {
- const update = await check();
-
- if (!update) {
- if (silent) return;
-
- await message("You are on the latest version. Stay awesome!", {
- title: "No Update Available",
- kind: "info",
- okLabel: "OK",
- });
-
- return;
- }
-
- if (update?.available) {
- const yes = await ask(
- `Update to ${update.version} is available!\n\nRelease notes: ${update.body}`,
- {
- title: "Update Available",
- kind: "info",
- okLabel: "Update",
- cancelLabel: "Cancel",
- },
- );
-
- if (yes) {
- await update.downloadAndInstall();
- await relaunch();
- }
-
- return;
- }
-}
diff --git a/packages/utils/tsconfig.json b/packages/utils/tsconfig.json
deleted file mode 100644
index 34a32891..00000000
--- a/packages/utils/tsconfig.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "extends": "@lume/tsconfig/base.json",
- "compilerOptions": {
- "outDir": "dist"
- },
- "include": ["src"],
- "exclude": ["node_modules", "dist"]
-}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 380f2f28..87699b60 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -8,6 +8,39 @@ importers:
.:
dependencies:
+ '@getalby/bitcoin-connect-react':
+ specifier: ^3.6.1
+ version: 3.6.1(@types/react@18.3.3)(immer@10.1.1)(react@18.3.1)(typescript@5.5.4)
+ '@radix-ui/react-avatar':
+ specifier: ^1.1.0
+ version: 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-checkbox':
+ specifier: ^1.1.1
+ version: 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-popover':
+ specifier: ^1.1.1
+ version: 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-scroll-area':
+ specifier: ^1.1.0
+ version: 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-switch':
+ specifier: ^1.1.0
+ version: 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-tabs':
+ specifier: ^1.1.0
+ version: 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-tooltip':
+ specifier: ^1.1.2
+ version: 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@tanstack/query-persist-client-core':
+ specifier: ^5.51.21
+ version: 5.51.21
+ '@tanstack/react-query':
+ specifier: ^5.51.23
+ version: 5.51.23(react@18.3.1)
+ '@tanstack/react-router':
+ specifier: ^1.47.1
+ version: 1.47.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@tauri-apps/api':
specifier: 2.0.0-rc.0
version: 2.0.0-rc.0
@@ -41,64 +74,12 @@ importers:
'@tauri-apps/plugin-window-state':
specifier: 2.0.0-rc.0
version: 2.0.0-rc.0
- devDependencies:
- '@biomejs/biome':
- specifier: ^1.8.3
- version: 1.8.3
- '@tauri-apps/cli':
- specifier: 2.0.0-rc.1
- version: 2.0.0-rc.1
- turbo:
- specifier: ^2.0.12
- version: 2.0.12
-
- apps/desktop2:
- dependencies:
- '@getalby/bitcoin-connect-react':
- specifier: ^3.6.1
- version: 3.6.1(@types/react@18.3.3)(immer@10.1.1)(react@18.3.1)(typescript@5.5.4)
- '@lume/icons':
- specifier: workspace:^
- version: link:../../packages/icons
- '@lume/system':
- specifier: workspace:^
- version: link:../../packages/system
- '@lume/ui':
- specifier: workspace:^
- version: link:../../packages/ui
- '@lume/utils':
- specifier: workspace:^
- version: link:../../packages/utils
- '@radix-ui/react-avatar':
- specifier: ^1.1.0
- version: 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@radix-ui/react-checkbox':
- specifier: ^1.1.1
- version: 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@radix-ui/react-popover':
- specifier: ^1.1.1
- version: 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@radix-ui/react-scroll-area':
- specifier: ^1.1.0
- version: 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@radix-ui/react-switch':
- specifier: ^1.1.0
- version: 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@radix-ui/react-tabs':
- specifier: ^1.1.0
- version: 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@radix-ui/react-tooltip':
- specifier: ^1.1.2
- version: 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@tanstack/query-persist-client-core':
- specifier: ^5.51.21
- version: 5.51.21
- '@tanstack/react-query':
- specifier: ^5.51.23
- version: 5.51.23(react@18.3.1)
- '@tanstack/react-router':
- specifier: ^1.47.1
- version: 1.47.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ bitcoin-units:
+ specifier: ^1.0.0
+ version: 1.0.0
+ dayjs:
+ specifier: ^1.11.12
+ version: 1.11.12
embla-carousel-react:
specifier: ^8.1.8
version: 8.1.8(react@18.3.1)
@@ -108,6 +89,9 @@ importers:
i18next-resources-to-backend:
specifier: ^1.2.1
version: 1.2.1
+ light-bolt11-decoder:
+ specifier: ^3.1.1
+ version: 3.1.1
minidenticons:
specifier: ^4.2.1
version: 4.2.1
@@ -146,23 +130,29 @@ importers:
version: 10.0.2(react@18.3.1)
virtua:
specifier: ^0.33.4
- version: 0.33.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ version: 0.33.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
devDependencies:
- '@lume/tailwindcss':
- specifier: workspace:^
- version: link:../../packages/tailwindcss
- '@lume/tsconfig':
- specifier: workspace:^
- version: link:../../packages/tsconfig
- '@lume/types':
- specifier: workspace:^
- version: link:../../packages/types
+ '@biomejs/biome':
+ specifier: ^1.8.3
+ version: 1.8.3
+ '@evilmartians/harmony':
+ specifier: ^1.2.0
+ version: 1.2.0
+ '@tailwindcss/forms':
+ specifier: ^0.5.7
+ version: 0.5.7(tailwindcss@3.4.9)
+ '@tailwindcss/typography':
+ specifier: ^0.5.14
+ version: 0.5.14(tailwindcss@3.4.9)
'@tanstack/router-devtools':
specifier: ^1.47.1
version: 1.47.1(@tanstack/react-router@1.47.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(csstype@3.1.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@tanstack/router-vite-plugin':
specifier: ^1.47.0
version: 1.47.0(vite@5.4.0)
+ '@tauri-apps/cli':
+ specifier: 2.0.0-rc.1
+ version: 2.0.0-rc.1
'@types/react':
specifier: ^18.3.3
version: 18.3.3
@@ -175,12 +165,27 @@ importers:
autoprefixer:
specifier: ^10.4.20
version: 10.4.20(postcss@8.4.41)
+ clsx:
+ specifier: ^2.1.1
+ version: 2.1.1
postcss:
specifier: ^8.4.41
version: 8.4.41
+ tailwind-gradient-mask-image:
+ specifier: ^1.2.0
+ version: 1.2.0
+ tailwind-merge:
+ specifier: ^2.4.0
+ version: 2.5.0
+ tailwind-scrollbar:
+ specifier: ^3.1.0
+ version: 3.1.0(tailwindcss@3.4.9)
tailwindcss:
specifier: ^3.4.9
version: 3.4.9
+ tailwindcss-content-visibility:
+ specifier: ^0.2.0
+ version: 0.2.0(tailwindcss@3.4.9)
typescript:
specifier: ^5.5.4
version: 5.5.4
@@ -191,205 +196,6 @@ importers:
specifier: ^5.0.1
version: 5.0.1(typescript@5.5.4)(vite@5.4.0)
- apps/web:
- dependencies:
- '@astrojs/check':
- specifier: ^0.9.2
- version: 0.9.2(prettier@3.3.3)(typescript@5.5.4)
- '@astrojs/tailwind':
- specifier: ^5.1.0
- version: 5.1.0(astro@4.13.3(typescript@5.5.4))(tailwindcss@3.4.9)
- '@fontsource/alice':
- specifier: ^5.0.13
- version: 5.0.13
- astro:
- specifier: ^4.13.3
- version: 4.13.3(typescript@5.5.4)
- astro-seo-meta:
- specifier: ^4.1.1
- version: 4.1.1(astro@4.13.3(typescript@5.5.4))
- astro-seo-schema:
- specifier: ^4.0.2
- version: 4.0.2(astro@4.13.3(typescript@5.5.4))(schema-dts@1.1.2(typescript@5.5.4))
- schema-dts:
- specifier: ^1.1.2
- version: 1.1.2(typescript@5.5.4)
- tailwindcss:
- specifier: ^3.4.9
- version: 3.4.9
- typescript:
- specifier: ^5.5.4
- version: 5.5.4
- devDependencies:
- '@tailwindcss/typography':
- specifier: ^0.5.14
- version: 0.5.14(tailwindcss@3.4.9)
-
- packages/icons:
- dependencies:
- react:
- specifier: ^18.3.1
- version: 18.3.1
- devDependencies:
- '@lume/tsconfig':
- specifier: workspace:*
- version: link:../tsconfig
- '@types/react':
- specifier: ^18.3.3
- version: 18.3.3
- typescript:
- specifier: ^5.5.4
- version: 5.5.4
-
- packages/system:
- dependencies:
- '@lume/utils':
- specifier: workspace:^
- version: link:../utils
- '@tanstack/query-persist-client-core':
- specifier: ^5.51.21
- version: 5.51.21
- '@tanstack/react-query':
- specifier: ^5.51.23
- version: 5.51.23(react@18.3.1)
- nostr-tools:
- specifier: ^2.7.2
- version: 2.7.2(typescript@5.5.4)
- react:
- specifier: ^18.3.1
- version: 18.3.1
- devDependencies:
- '@lume/tsconfig':
- specifier: workspace:^
- version: link:../tsconfig
- '@lume/types':
- specifier: workspace:^
- version: link:../types
- '@types/react':
- specifier: ^18.3.3
- version: 18.3.3
- typescript:
- specifier: ^5.5.4
- version: 5.5.4
-
- packages/tailwindcss:
- devDependencies:
- '@evilmartians/harmony':
- specifier: ^1.2.0
- version: 1.2.0
- '@tailwindcss/forms':
- specifier: ^0.5.7
- version: 0.5.7(tailwindcss@3.4.9)
- '@tailwindcss/typography':
- specifier: ^0.5.14
- version: 0.5.14(tailwindcss@3.4.9)
- tailwind-gradient-mask-image:
- specifier: ^1.2.0
- version: 1.2.0
- tailwind-scrollbar:
- specifier: ^3.1.0
- version: 3.1.0(tailwindcss@3.4.9)
- tailwindcss:
- specifier: ^3.4.9
- version: 3.4.9
- tailwindcss-content-visibility:
- specifier: ^0.2.0
- version: 0.2.0(tailwindcss@3.4.9)
-
- packages/tsconfig: {}
-
- packages/types:
- devDependencies:
- typescript:
- specifier: ^5.5.4
- version: 5.5.4
-
- packages/ui:
- dependencies:
- '@lume/icons':
- specifier: workspace:^
- version: link:../icons
- '@lume/utils':
- specifier: workspace:^
- version: link:../utils
- react:
- specifier: ^18.3.1
- version: 18.3.1
- react-dom:
- specifier: ^18.3.1
- version: 18.3.1(react@18.3.1)
- react-snap-carousel:
- specifier: ^0.4.0
- version: 0.4.0(react@18.3.1)
- devDependencies:
- '@lume/tailwindcss':
- specifier: workspace:^
- version: link:../tailwindcss
- '@lume/tsconfig':
- specifier: workspace:^
- version: link:../tsconfig
- '@lume/types':
- specifier: workspace:^
- version: link:../types
- '@types/react':
- specifier: ^18.3.3
- version: 18.3.3
- tailwindcss:
- specifier: ^3.4.9
- version: 3.4.9
- typescript:
- specifier: ^5.5.4
- version: 5.5.4
-
- packages/utils:
- dependencies:
- bitcoin-units:
- specifier: ^1.0.0
- version: 1.0.0
- clsx:
- specifier: ^2.1.1
- version: 2.1.1
- dayjs:
- specifier: ^1.11.12
- version: 1.11.12
- light-bolt11-decoder:
- specifier: ^3.1.1
- version: 3.1.1
- nostr-tools:
- specifier: ^2.7.2
- version: 2.7.2(typescript@5.5.4)
- react:
- specifier: ^18.3.1
- version: 18.3.1
- react-dom:
- specifier: ^18.3.1
- version: 18.3.1(react@18.3.1)
- slate:
- specifier: ^0.103.0
- version: 0.103.0
- slate-react:
- specifier: ^0.107.1
- version: 0.107.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(slate@0.103.0)
- devDependencies:
- '@lume/tsconfig':
- specifier: workspace:^
- version: link:../tsconfig
- '@lume/types':
- specifier: workspace:^
- version: link:../types
- '@types/react':
- specifier: ^18.3.3
- version: 18.3.3
- '@types/react-dom':
- specifier: ^18.3.0
- version: 18.3.0
- tailwind-merge:
- specifier: ^2.4.0
- version: 2.4.0
- typescript:
- specifier: ^5.5.4
- version: 5.5.4
-
packages:
'@alloc/quick-lru@5.2.0':
@@ -400,47 +206,6 @@ packages:
resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
engines: {node: '>=6.0.0'}
- '@astrojs/check@0.9.2':
- resolution: {integrity: sha512-6rWxtJTbd/ctdAlmla0CAvloGaai5IUTG0K21kctJHHGKJKnGH6Xana7m0zNOtHpVPEJi1SgC/TcsN+ltYt0Cg==}
- hasBin: true
- peerDependencies:
- typescript: ^5.0.0
-
- '@astrojs/compiler@2.10.2':
- resolution: {integrity: sha512-bvH+v8AirwpRWCkYJEyWYdc5Cs/BjG2ZTxIJzttHilXgfKJAdW2496KsUQKzf5j2tOHtaHXKKn9hb9WZiBGpEg==}
-
- '@astrojs/internal-helpers@0.4.1':
- resolution: {integrity: sha512-bMf9jFihO8YP940uD70SI/RDzIhUHJAolWVcO1v5PUivxGKvfLZTLTVVxEYzGYyPsA3ivdLNqMnL5VgmQySa+g==}
-
- '@astrojs/language-server@2.13.2':
- resolution: {integrity: sha512-l435EZLKjaUO/6iewJ7xqd3eHf3zAosVWG4woILbxluQcianBoNPepnnqAg7uUriZUaC44ae5v0Q+AfB8UI64g==}
- hasBin: true
- peerDependencies:
- prettier: ^3.0.0
- prettier-plugin-astro: '>=0.11.0'
- peerDependenciesMeta:
- prettier:
- optional: true
- prettier-plugin-astro:
- optional: true
-
- '@astrojs/markdown-remark@5.2.0':
- resolution: {integrity: sha512-vWGM24KZXz11jR3JO+oqYU3T2qpuOi4uGivJ9SQLCAI01+vEkHC60YJMRvHPc+hwd60F7euNs1PeOEixIIiNQw==}
-
- '@astrojs/prism@3.1.0':
- resolution: {integrity: sha512-Z9IYjuXSArkAUx3N6xj6+Bnvx8OdUSHA8YoOgyepp3+zJmtVYJIl/I18GozdJVW1p5u/CNpl3Km7/gwTJK85cw==}
- engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0}
-
- '@astrojs/tailwind@5.1.0':
- resolution: {integrity: sha512-BJoCDKuWhU9FT2qYg+fr6Nfb3qP4ShtyjXGHKA/4mHN94z7BGcmauQK23iy+YH5qWvTnhqkd6mQPQ1yTZTe9Ig==}
- peerDependencies:
- astro: ^3.0.0 || ^4.0.0
- tailwindcss: ^3.0.24
-
- '@astrojs/telemetry@3.1.0':
- resolution: {integrity: sha512-/ca/+D8MIKEC8/A9cSaPUqQNZm+Es/ZinRv0ZAzvu2ios7POQSsVD+VOj7/hypWNsNM3T7RpfgNq7H2TU1KEHA==}
- engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0}
-
'@babel/code-frame@7.24.7':
resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==}
engines: {node: '>=6.9.0'}
@@ -457,10 +222,6 @@ packages:
resolution: {integrity: sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==}
engines: {node: '>=6.9.0'}
- '@babel/helper-annotate-as-pure@7.24.7':
- resolution: {integrity: sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==}
- engines: {node: '>=6.9.0'}
-
'@babel/helper-compilation-targets@7.25.2':
resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==}
engines: {node: '>=6.9.0'}
@@ -520,12 +281,6 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0-0
- '@babel/plugin-transform-react-jsx@7.25.2':
- resolution: {integrity: sha512-KQsqEAVBpU82NM/B/N9j9WOdphom1SZH3R+2V7INrQUH+V9EBFwZsEJl8eBIVeQE62FxJCc70jzEZwqU7RcVqA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
'@babel/runtime@7.25.0':
resolution: {integrity: sha512-7dRy4DwXwtzBrPbZflqxnvfxLF8kdZXPkhymtDeFoFqE6ldzjQFgYTtYIFARcLEYDrqfBfYcZt1WqFxRoyC9Rw==}
engines: {node: '>=6.9.0'}
@@ -595,30 +350,6 @@ packages:
cpu: [x64]
os: [win32]
- '@emmetio/abbreviation@2.3.3':
- resolution: {integrity: sha512-mgv58UrU3rh4YgbE/TzgLQwJ3pFsHHhCLqY20aJq+9comytTXUDNGG/SMtSeMJdkpxgXSXunBGLD8Boka3JyVA==}
-
- '@emmetio/css-abbreviation@2.1.8':
- resolution: {integrity: sha512-s9yjhJ6saOO/uk1V74eifykk2CBYi01STTK3WlXWGOepyKa23ymJ053+DNQjpFcy1ingpaO7AxCcwLvHFY9tuw==}
-
- '@emmetio/css-parser@0.4.0':
- resolution: {integrity: sha512-z7wkxRSZgrQHXVzObGkXG+Vmj3uRlpM11oCZ9pbaz0nFejvCDmAiNDpY75+wgXOcffKpj4rzGtwGaZxfJKsJxw==}
-
- '@emmetio/html-matcher@1.3.0':
- resolution: {integrity: sha512-NTbsvppE5eVyBMuyGfVu2CRrLvo7J4YHb6t9sBFLyY03WYhXET37qA4zOYUjBWFCRHO7pS1B9khERtY0f5JXPQ==}
-
- '@emmetio/scanner@1.0.4':
- resolution: {integrity: sha512-IqRuJtQff7YHHBk4G8YZ45uB9BaAGcwQeVzgj/zj8/UdOhtQpEIupUhSk8dys6spFIWVZVeK20CzGEnqR5SbqA==}
-
- '@emmetio/stream-reader-utils@0.1.0':
- resolution: {integrity: sha512-ZsZ2I9Vzso3Ho/pjZFsmmZ++FWeEd/txqybHTm4OgaZzdS8V9V/YYWQwg5TC38Z7uLWUV1vavpLLbjJtKubR1A==}
-
- '@emmetio/stream-reader@2.2.0':
- resolution: {integrity: sha512-fXVXEyFA5Yv3M3n8sUGT7+fvecGrZP4k6FnWWMSZVQf69kAq0LLpaBQLGcPR30m3zMmKYhECP4k/ZkzvhEW5kw==}
-
- '@emnapi/runtime@1.2.0':
- resolution: {integrity: sha512-bV21/9LQmcQeCPEg3BDFtvwL6cwiTMksYNWQQ4KOxCZikEGalWtenoZ0wCiukJINlGCIi2KXx01g4FoH/LxpzQ==}
-
'@esbuild/aix-ppc64@0.21.5':
resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
engines: {node: '>=12'}
@@ -775,9 +506,6 @@ packages:
'@floating-ui/utils@0.2.7':
resolution: {integrity: sha512-X8R8Oj771YRl/w+c1HqAC1szL8zWQRwFvgDwT129k9ACdBoud/+/rX9V0qiMl6LWUdP9voC2nDVZYPMQQsb6eA==}
- '@fontsource/alice@5.0.13':
- resolution: {integrity: sha512-7ncjjSpRSRKvjJEoru092iFiEoC89lz4oG4+SGg9hh7DI/5SXf+kE+dg+6Fv/bwiK/WJCo4Q2gvPZGRlCE5mcA==}
-
'@getalby/bitcoin-connect-react@3.6.1':
resolution: {integrity: sha512-nUpCE34uVIN6z/sfl8HJNyoC3Hv3+vkpQqVW4W6/NwhMKlE2uTNRPrjAgc/Kei8VhE/OqXMWtsN/FWc3dQx0XA==}
peerDependencies:
@@ -794,119 +522,6 @@ packages:
resolution: {integrity: sha512-hg3WvRXQUf9S9NE1QZaz50IrOOnBr0QehlTRBENX2wRbZPSdpuyVOc4LWyI9tme8hOabeLbNpEl6iMZ7gZENwQ==}
engines: {node: '>=14'}
- '@img/sharp-darwin-arm64@0.33.4':
- resolution: {integrity: sha512-p0suNqXufJs9t3RqLBO6vvrgr5OhgbWp76s5gTRvdmxmuv9E1rcaqGUsl3l4mKVmXPkTkTErXediAui4x+8PSA==}
- engines: {glibc: '>=2.26', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [arm64]
- os: [darwin]
-
- '@img/sharp-darwin-x64@0.33.4':
- resolution: {integrity: sha512-0l7yRObwtTi82Z6ebVI2PnHT8EB2NxBgpK2MiKJZJ7cz32R4lxd001ecMhzzsZig3Yv9oclvqqdV93jo9hy+Dw==}
- engines: {glibc: '>=2.26', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [x64]
- os: [darwin]
-
- '@img/sharp-libvips-darwin-arm64@1.0.2':
- resolution: {integrity: sha512-tcK/41Rq8IKlSaKRCCAuuY3lDJjQnYIW1UXU1kxcEKrfL8WR7N6+rzNoOxoQRJWTAECuKwgAHnPvqXGN8XfkHA==}
- engines: {macos: '>=11', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [arm64]
- os: [darwin]
-
- '@img/sharp-libvips-darwin-x64@1.0.2':
- resolution: {integrity: sha512-Ofw+7oaWa0HiiMiKWqqaZbaYV3/UGL2wAPeLuJTx+9cXpCRdvQhCLG0IH8YGwM0yGWGLpsF4Su9vM1o6aer+Fw==}
- engines: {macos: '>=10.13', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [x64]
- os: [darwin]
-
- '@img/sharp-libvips-linux-arm64@1.0.2':
- resolution: {integrity: sha512-x7kCt3N00ofFmmkkdshwj3vGPCnmiDh7Gwnd4nUwZln2YjqPxV1NlTyZOvoDWdKQVDL911487HOueBvrpflagw==}
- engines: {glibc: '>=2.26', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [arm64]
- os: [linux]
-
- '@img/sharp-libvips-linux-arm@1.0.2':
- resolution: {integrity: sha512-iLWCvrKgeFoglQxdEwzu1eQV04o8YeYGFXtfWU26Zr2wWT3q3MTzC+QTCO3ZQfWd3doKHT4Pm2kRmLbupT+sZw==}
- engines: {glibc: '>=2.28', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [arm]
- os: [linux]
-
- '@img/sharp-libvips-linux-s390x@1.0.2':
- resolution: {integrity: sha512-cmhQ1J4qVhfmS6szYW7RT+gLJq9dH2i4maq+qyXayUSn9/3iY2ZeWpbAgSpSVbV2E1JUL2Gg7pwnYQ1h8rQIog==}
- engines: {glibc: '>=2.28', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [s390x]
- os: [linux]
-
- '@img/sharp-libvips-linux-x64@1.0.2':
- resolution: {integrity: sha512-E441q4Qdb+7yuyiADVi5J+44x8ctlrqn8XgkDTwr4qPJzWkaHwD489iZ4nGDgcuya4iMN3ULV6NwbhRZJ9Z7SQ==}
- engines: {glibc: '>=2.26', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [x64]
- os: [linux]
-
- '@img/sharp-libvips-linuxmusl-arm64@1.0.2':
- resolution: {integrity: sha512-3CAkndNpYUrlDqkCM5qhksfE+qSIREVpyoeHIU6jd48SJZViAmznoQQLAv4hVXF7xyUB9zf+G++e2v1ABjCbEQ==}
- engines: {musl: '>=1.2.2', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [arm64]
- os: [linux]
-
- '@img/sharp-libvips-linuxmusl-x64@1.0.2':
- resolution: {integrity: sha512-VI94Q6khIHqHWNOh6LLdm9s2Ry4zdjWJwH56WoiJU7NTeDwyApdZZ8c+SADC8OH98KWNQXnE01UdJ9CSfZvwZw==}
- engines: {musl: '>=1.2.2', npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [x64]
- os: [linux]
-
- '@img/sharp-linux-arm64@0.33.4':
- resolution: {integrity: sha512-2800clwVg1ZQtxwSoTlHvtm9ObgAax7V6MTAB/hDT945Tfyy3hVkmiHpeLPCKYqYR1Gcmv1uDZ3a4OFwkdBL7Q==}
- engines: {glibc: '>=2.26', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [arm64]
- os: [linux]
-
- '@img/sharp-linux-arm@0.33.4':
- resolution: {integrity: sha512-RUgBD1c0+gCYZGCCe6mMdTiOFS0Zc/XrN0fYd6hISIKcDUbAW5NtSQW9g/powkrXYm6Vzwd6y+fqmExDuCdHNQ==}
- engines: {glibc: '>=2.28', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [arm]
- os: [linux]
-
- '@img/sharp-linux-s390x@0.33.4':
- resolution: {integrity: sha512-h3RAL3siQoyzSoH36tUeS0PDmb5wINKGYzcLB5C6DIiAn2F3udeFAum+gj8IbA/82+8RGCTn7XW8WTFnqag4tQ==}
- engines: {glibc: '>=2.31', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [s390x]
- os: [linux]
-
- '@img/sharp-linux-x64@0.33.4':
- resolution: {integrity: sha512-GoR++s0XW9DGVi8SUGQ/U4AeIzLdNjHka6jidVwapQ/JebGVQIpi52OdyxCNVRE++n1FCLzjDovJNozif7w/Aw==}
- engines: {glibc: '>=2.26', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [x64]
- os: [linux]
-
- '@img/sharp-linuxmusl-arm64@0.33.4':
- resolution: {integrity: sha512-nhr1yC3BlVrKDTl6cO12gTpXMl4ITBUZieehFvMntlCXFzH2bvKG76tBL2Y/OqhupZt81pR7R+Q5YhJxW0rGgQ==}
- engines: {musl: '>=1.2.2', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [arm64]
- os: [linux]
-
- '@img/sharp-linuxmusl-x64@0.33.4':
- resolution: {integrity: sha512-uCPTku0zwqDmZEOi4ILyGdmW76tH7dm8kKlOIV1XC5cLyJ71ENAAqarOHQh0RLfpIpbV5KOpXzdU6XkJtS0daw==}
- engines: {musl: '>=1.2.2', node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [x64]
- os: [linux]
-
- '@img/sharp-wasm32@0.33.4':
- resolution: {integrity: sha512-Bmmauh4sXUsUqkleQahpdNXKvo+wa1V9KhT2pDA4VJGKwnKMJXiSTGphn0gnJrlooda0QxCtXc6RX1XAU6hMnQ==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [wasm32]
-
- '@img/sharp-win32-ia32@0.33.4':
- resolution: {integrity: sha512-99SJ91XzUhYHbx7uhK3+9Lf7+LjwMGQZMDlO/E/YVJ7Nc3lyDFZPGhjwiYdctoH2BOzW9+TnfqcaMKt0jHLdqw==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [ia32]
- os: [win32]
-
- '@img/sharp-win32-x64@0.33.4':
- resolution: {integrity: sha512-3QLocdTRVIrFNye5YocZl+KKpYKP+fksi1QhmOArgx7GyhIbQp/WrJRu176jm8IxromS7RIkzMiMINVdBtC8Aw==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0', yarn: '>=3.2.0'}
- cpu: [x64]
- os: [win32]
-
'@isaacs/cliui@8.0.2':
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
@@ -1410,9 +1025,6 @@ packages:
'@scure/bip39@1.2.1':
resolution: {integrity: sha512-Z3/Fsz1yr904dduJD0NpiyRHhRYHdcnyh73FZWiV+/qhWi83wNJ3NWolYqCEN+ZWsUz2TWwajJggcRE9r1zUYg==}
- '@shikijs/core@1.12.1':
- resolution: {integrity: sha512-biCz/mnkMktImI6hMfMX3H9kOeqsInxWEyCHbSlL8C/2TR1FqfmGxTLRNwYCKsyCyxWLbB8rEqXRVZuyxuLFmA==}
-
'@swc/core-darwin-arm64@1.7.10':
resolution: {integrity: sha512-TYp4x/9w/C/yMU1olK5hTKq/Hi7BjG71UJ4V1U1WxI1JA3uokjQ/GoktDfmH5V5pX4dgGSOJwUe2RjoN8Z/XnA==}
engines: {node: '>=10'}
@@ -1671,33 +1283,15 @@ packages:
'@types/babel__traverse@7.20.6':
resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==}
- '@types/cookie@0.6.0':
- resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
-
- '@types/debug@4.1.12':
- resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
-
'@types/estree@1.0.5':
resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
- '@types/hast@3.0.4':
- resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==}
-
'@types/is-hotkey@0.1.10':
resolution: {integrity: sha512-RvC8KMw5BCac1NvRRyaHgMMEtBaZ6wh0pyPTBu7izn4Sj/AX9Y4aXU5c7rX8PnM/knsuUpC1IeoBkANtxBypsQ==}
'@types/lodash@4.17.7':
resolution: {integrity: sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==}
- '@types/mdast@4.0.4':
- resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
-
- '@types/ms@0.7.34':
- resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==}
-
- '@types/nlcst@2.0.3':
- resolution: {integrity: sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==}
-
'@types/prop-types@15.7.12':
resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==}
@@ -1707,54 +1301,16 @@ packages:
'@types/react@18.3.3':
resolution: {integrity: sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==}
- '@types/unist@3.0.2':
- resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==}
-
- '@ungap/structured-clone@1.2.0':
- resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
-
'@vitejs/plugin-react-swc@3.7.0':
resolution: {integrity: sha512-yrknSb3Dci6svCd/qhHqhFPDSw0QtjumcqdKMoNNzmOl5lMXTTiqzjWtG4Qask2HdvvzaNgSunbQGet8/GrKdA==}
peerDependencies:
vite: ^4 || ^5
- '@volar/kit@2.4.0-alpha.18':
- resolution: {integrity: sha512-dZMSNhesh23lhd61ax2l04IgIcYofAjm8M+5BKAmX47ROweyc8RrrslszCFUJynlmXx6JS1PoHqvo8+E0aAYQQ==}
- peerDependencies:
- typescript: '*'
-
- '@volar/language-core@2.4.0-alpha.18':
- resolution: {integrity: sha512-JAYeJvYQQROmVRtSBIczaPjP3DX4QW1fOqW1Ebs0d3Y3EwSNRglz03dSv0Dm61dzd0Yx3WgTW3hndDnTQqgmyg==}
-
- '@volar/language-server@2.4.0-alpha.18':
- resolution: {integrity: sha512-dciHEE/R5kzI0bY71QfkoCVQ3cQI6g9MHfA4oIP6UhnJy0CdleUalWSygOXoD3Nq7Yk6wn2BRrb1PP5MsadY/Q==}
-
- '@volar/language-service@2.4.0-alpha.18':
- resolution: {integrity: sha512-EuetrtbEtudi9buinWAG5U3Jam5dY27zXd/7GYnx542kBwanWOBM8i4DAQd0z7M11fOxXgybxPA933uaSyaOog==}
-
- '@volar/snapshot-document@2.4.0-alpha.18':
- resolution: {integrity: sha512-JAeclEly/wnILhR4Pu9MpgBLInZJH49O1zoy8fU+pk5I+zpv7JIEby5z2UFAS60+sIDnxBdAGd7rZ5VibE70vg==}
-
- '@volar/source-map@2.4.0-alpha.18':
- resolution: {integrity: sha512-MTeCV9MUwwsH0sNFiZwKtFrrVZUK6p8ioZs3xFzHc2cvDXHWlYN3bChdQtwKX+FY2HG6H3CfAu1pKijolzIQ8g==}
-
- '@volar/typescript@2.4.0-alpha.18':
- resolution: {integrity: sha512-sXh5Y8sqGUkgxpMWUGvRXggxYHAVxg0Pa1C42lQZuPDrW6vHJPR0VCK8Sr7WJsAW530HuNQT/ZIskmXtxjybMQ==}
-
- '@vscode/emmet-helper@2.9.3':
- resolution: {integrity: sha512-rB39LHWWPQYYlYfpv9qCoZOVioPCftKXXqrsyqN1mTWZM6dTnONT63Db+03vgrBbHzJN45IrgS/AGxw9iiqfEw==}
-
- '@vscode/l10n@0.0.18':
- resolution: {integrity: sha512-KYSIHVmslkaCDyw013pphY+d7x1qV8IZupYfeIfzNA+nsaWHbn5uPuQRvdRFsa9zFzGeudPuoGoZ1Op4jrJXIQ==}
-
acorn@8.12.1:
resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==}
engines: {node: '>=0.4.0'}
hasBin: true
- ansi-align@3.0.1:
- resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==}
-
ansi-regex@5.0.1:
resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
engines: {node: '>=8'}
@@ -1785,38 +1341,10 @@ packages:
arg@5.0.2:
resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
- argparse@1.0.10:
- resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
-
- argparse@2.0.1:
- resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
-
aria-hidden@1.2.4:
resolution: {integrity: sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==}
engines: {node: '>=10'}
- aria-query@5.3.0:
- resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==}
-
- array-iterate@2.0.1:
- resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==}
-
- astro-seo-meta@4.1.1:
- resolution: {integrity: sha512-hZdqKLAgjRTW4LPcYMGfH5VuA4Zidv6gYmJgw0Dw7QmPExuSLnEqFHLreRzOdQibqH4JD6PHrHoIHrUb3HUs2A==}
- peerDependencies:
- astro: ^4.0.0
-
- astro-seo-schema@4.0.2:
- resolution: {integrity: sha512-OI9DWasORMpIzKsAmF4s6ghVX8F1INROla4JKBT8WDm/du25jxQsoQcJx99NY3gOQJ7Rv9a+cFPAfr17LsYXEg==}
- peerDependencies:
- astro: ^4.0.0
- schema-dts: ^1.1.0
-
- astro@4.13.3:
- resolution: {integrity: sha512-MyhmM0v5sphiVwxAm5jjKxWeuPZijWPJ8Ajdign9QzEmLWSH8vUYIJWx/dWRQ6vF1I0jXrksoj3wtw5nzXt9nw==}
- engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'}
- hasBin: true
-
autoprefixer@10.4.20:
resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==}
engines: {node: ^10 || ^12 || >=14}
@@ -1824,22 +1352,12 @@ packages:
peerDependencies:
postcss: ^8.1.0
- axobject-query@4.1.0:
- resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
- engines: {node: '>= 0.4'}
-
babel-dead-code-elimination@1.0.6:
resolution: {integrity: sha512-JxFi9qyRJpN0LjEbbjbN8g0ux71Qppn9R8Qe3k6QzHg2CaKsbUQtbn307LQGiDLGjV6JCtEFqfxzVig9MyDCHQ==}
- bail@2.0.2:
- resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==}
-
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
- base-64@1.0.0:
- resolution: {integrity: sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==}
-
big.js@6.2.1:
resolution: {integrity: sha512-bCtHMwL9LeDIozFn+oNhhFoq+yQ3BNdnsLSASUxLciOb1vgvpHsIO1dsENiGMgbb4SkP5TrzWzRiLddn8ahVOQ==}
@@ -1850,10 +1368,6 @@ packages:
bitcoin-units@1.0.0:
resolution: {integrity: sha512-brac+Ttz7ovf/8D0jQHSWHnN2hmdjxDRBStxhjO752URLJlQIFpfZxzUteSZ81UYnRNiMkvsW9WsYPDuxHfnYA==}
- boxen@7.1.1:
- resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==}
- engines: {node: '>=14.16'}
-
brace-expansion@2.0.1:
resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
@@ -1870,57 +1384,17 @@ packages:
resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
engines: {node: '>= 6'}
- camelcase@7.0.1:
- resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==}
- engines: {node: '>=14.16'}
-
caniuse-lite@1.0.30001651:
resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==}
- ccount@2.0.1:
- resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
-
chalk@2.4.2:
resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
engines: {node: '>=4'}
- chalk@5.3.0:
- resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
- engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
-
- character-entities-html4@2.1.0:
- resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==}
-
- character-entities-legacy@3.0.0:
- resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==}
-
- character-entities@2.0.2:
- resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
-
chokidar@3.6.0:
resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
engines: {node: '>= 8.10.0'}
- ci-info@4.0.0:
- resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==}
- engines: {node: '>=8'}
-
- cli-boxes@3.0.0:
- resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==}
- engines: {node: '>=10'}
-
- cli-cursor@4.0.0:
- resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- cli-spinners@2.9.2:
- resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==}
- engines: {node: '>=6'}
-
- cliui@8.0.1:
- resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
- engines: {node: '>=12'}
-
clsx@2.1.1:
resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
engines: {node: '>=6'}
@@ -1938,33 +1412,16 @@ packages:
color-name@1.1.4:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
- color-string@1.9.1:
- resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==}
-
- color@4.2.3:
- resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==}
- engines: {node: '>=12.5.0'}
-
- comma-separated-tokens@2.0.3:
- resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
-
commander@4.1.1:
resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
engines: {node: '>= 6'}
- common-ancestor-path@1.0.1:
- resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==}
-
compute-scroll-into-view@3.1.0:
resolution: {integrity: sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg==}
convert-source-map@2.0.0:
resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
- cookie@0.6.0:
- resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==}
- engines: {node: '>= 0.6'}
-
cross-spawn@7.0.3:
resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
engines: {node: '>= 8'}
@@ -1992,37 +1449,12 @@ packages:
supports-color:
optional: true
- decode-named-character-reference@1.0.2:
- resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==}
-
- dequal@2.0.3:
- resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
- engines: {node: '>=6'}
-
- detect-libc@2.0.3:
- resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==}
- engines: {node: '>=8'}
-
detect-node-es@1.1.0:
resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==}
- deterministic-object-hash@2.0.2:
- resolution: {integrity: sha512-KxektNH63SrbfUyDiwXqRb1rLwKt33AmMv+5Nhsw1kqZ13SJBRTgZHtGbE+hH3a1mVW1cz+4pqSWVPAtLVXTzQ==}
- engines: {node: '>=18'}
-
- devalue@5.0.0:
- resolution: {integrity: sha512-gO+/OMXF7488D+u3ue+G7Y4AA3ZmUnB3eHJXmBTgNHvr4ZNzl36A0ZtG+XCRNYCkYx/bFmw4qtkoFLa+wSrwAA==}
-
- devlop@1.1.0:
- resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
-
didyoumean@1.2.2:
resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
- diff@5.2.0:
- resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==}
- engines: {node: '>=0.3.1'}
-
direction@1.0.4:
resolution: {integrity: sha512-GYqKi1aH7PJXxdhTeZBFrg8vUBeKXi+cNprXsC1kpJcbcVnV9wBsrOu1cQEdG0WeQwlfHiy3XvnKfIrJ2R0NzQ==}
hasBin: true
@@ -2030,10 +1462,6 @@ packages:
dlv@1.1.3:
resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
- dset@3.1.3:
- resolution: {integrity: sha512-20TuZZHCEZ2O71q9/+8BwKwZ0QtD9D8ObhrihJPr+vLLYlSuAU3/zL4cSlgbfeoGHTjCSJBa7NGcrF9/Bx/WJQ==}
- engines: {node: '>=4'}
-
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
@@ -2053,25 +1481,12 @@ packages:
embla-carousel@8.1.8:
resolution: {integrity: sha512-KuHPA8qcAts6YE6ELtt38XYAb26hnKw8Ga0lSXmrhm1oI97t6oACFkqSsy33dfeZQEhaZB6VwWvaWQJRJVgSgA==}
- emmet@2.4.7:
- resolution: {integrity: sha512-O5O5QNqtdlnQM2bmKHtJgyChcrFMgQuulI+WdiOw2NArzprUqqxUW6bgYtKvzKgrsYpuLWalOkdhNP+1jluhCA==}
-
- emoji-regex@10.3.0:
- resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==}
-
emoji-regex@8.0.0:
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
emoji-regex@9.2.2:
resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
- entities@4.5.0:
- resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
- engines: {node: '>=0.12'}
-
- es-module-lexer@1.5.4:
- resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==}
-
esbuild@0.21.5:
resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
engines: {node: '>=12'}
@@ -2085,32 +1500,9 @@ packages:
resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
engines: {node: '>=0.8.0'}
- escape-string-regexp@5.0.0:
- resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
- engines: {node: '>=12'}
-
- esprima@4.0.1:
- resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
- engines: {node: '>=4'}
- hasBin: true
-
- estree-walker@3.0.3:
- resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
-
eventemitter3@5.0.1:
resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
- execa@8.0.1:
- resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
- engines: {node: '>=16.17'}
-
- extend-shallow@2.0.1:
- resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==}
- engines: {node: '>=0.10.0'}
-
- extend@3.0.2:
- resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
-
fast-glob@3.3.2:
resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
engines: {node: '>=8.6.0'}
@@ -2122,21 +1514,6 @@ packages:
resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
engines: {node: '>=8'}
- find-up-simple@1.0.0:
- resolution: {integrity: sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==}
- engines: {node: '>=18'}
-
- find-up@4.1.0:
- resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
- engines: {node: '>=8'}
-
- find-yarn-workspace-root2@1.2.16:
- resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==}
-
- flattie@1.1.1:
- resolution: {integrity: sha512-9UbaD6XdAL97+k/n+N7JwX46K/M6Zc6KcFYskrYL8wbBV/Uyk0CTAMY0VT+qiK5PM7AIc9aTWYtq65U7T+aCNQ==}
- engines: {node: '>=8'}
-
foreground-child@3.3.0:
resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==}
engines: {node: '>=14'}
@@ -2156,25 +1533,10 @@ packages:
resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
engines: {node: '>=6.9.0'}
- get-caller-file@2.0.5:
- resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
- engines: {node: 6.* || 8.* || >= 10.*}
-
- get-east-asian-width@1.2.0:
- resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==}
- engines: {node: '>=18'}
-
get-nonce@1.0.1:
resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==}
engines: {node: '>=6'}
- get-stream@8.0.1:
- resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
- engines: {node: '>=16'}
-
- github-slugger@2.0.0:
- resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==}
-
glob-parent@5.1.2:
resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
engines: {node: '>= 6'}
@@ -2199,13 +1561,6 @@ packages:
peerDependencies:
csstype: ^3.0.10
- graceful-fs@4.2.11:
- resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
-
- gray-matter@4.0.3:
- resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==}
- engines: {node: '>=6.0'}
-
has-flag@3.0.0:
resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
engines: {node: '>=4'}
@@ -2214,52 +1569,9 @@ packages:
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
engines: {node: '>= 0.4'}
- hast-util-from-html@2.0.1:
- resolution: {integrity: sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==}
-
- hast-util-from-parse5@8.0.1:
- resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==}
-
- hast-util-is-element@3.0.0:
- resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==}
-
- hast-util-parse-selector@4.0.0:
- resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==}
-
- hast-util-raw@9.0.4:
- resolution: {integrity: sha512-LHE65TD2YiNsHD3YuXcKPHXPLuYh/gjp12mOfU8jxSrm1f/yJpsb0F/KKljS6U9LJoP0Ux+tCe8iJ2AsPzTdgA==}
-
- hast-util-to-html@9.0.1:
- resolution: {integrity: sha512-hZOofyZANbyWo+9RP75xIDV/gq+OUKx+T46IlwERnKmfpwp81XBFbT9mi26ws+SJchA4RVUQwIBJpqEOBhMzEQ==}
-
- hast-util-to-parse5@8.0.0:
- resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==}
-
- hast-util-to-text@4.0.2:
- resolution: {integrity: sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==}
-
- hast-util-whitespace@3.0.0:
- resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==}
-
- hastscript@8.0.0:
- resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==}
-
- html-escaper@3.0.3:
- resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==}
-
html-parse-stringify@3.0.1:
resolution: {integrity: sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==}
- html-void-elements@3.0.0:
- resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==}
-
- http-cache-semantics@4.1.1:
- resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==}
-
- human-signals@5.0.0:
- resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
- engines: {node: '>=16.17.0'}
-
i18next-resources-to-backend@1.2.1:
resolution: {integrity: sha512-okHbVA+HZ7n1/76MsfhPqDou0fptl2dAlhRDu2ideXloRRduzHsqDOznJBef+R3DFZnbvWoBW+KxJ7fnFjd6Yw==}
@@ -2269,15 +1581,9 @@ packages:
immer@10.1.1:
resolution: {integrity: sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==}
- import-meta-resolve@4.1.0:
- resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==}
-
invariant@2.2.4:
resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==}
- is-arrayish@0.3.2:
- resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==}
-
is-binary-path@2.1.0:
resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
engines: {node: '>=8'}
@@ -2286,15 +1592,6 @@ packages:
resolution: {integrity: sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==}
engines: {node: '>= 0.4'}
- is-docker@3.0.0:
- resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- hasBin: true
-
- is-extendable@0.1.1:
- resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==}
- engines: {node: '>=0.10.0'}
-
is-extglob@2.1.1:
resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
engines: {node: '>=0.10.0'}
@@ -2310,43 +1607,14 @@ packages:
is-hotkey@0.2.0:
resolution: {integrity: sha512-UknnZK4RakDmTgz4PI1wIph5yxSs/mvChWs9ifnlXsKuXgWmOkY/hAE0H/k2MIqH0RlRye0i1oC07MCRSD28Mw==}
- is-inside-container@1.0.0:
- resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
- engines: {node: '>=14.16'}
- hasBin: true
-
- is-interactive@2.0.0:
- resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==}
- engines: {node: '>=12'}
-
is-number@7.0.0:
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
engines: {node: '>=0.12.0'}
- is-plain-obj@4.1.0:
- resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
- engines: {node: '>=12'}
-
is-plain-object@5.0.0:
resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==}
engines: {node: '>=0.10.0'}
- is-stream@3.0.0:
- resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- is-unicode-supported@1.3.0:
- resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==}
- engines: {node: '>=12'}
-
- is-unicode-supported@2.0.0:
- resolution: {integrity: sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==}
- engines: {node: '>=18'}
-
- is-wsl@3.1.0:
- resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==}
- engines: {node: '>=16'}
-
isexe@2.0.0:
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
@@ -2360,14 +1628,6 @@ packages:
js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
- js-yaml@3.14.1:
- resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
- hasBin: true
-
- js-yaml@4.1.0:
- resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
- hasBin: true
-
jsesc@2.5.2:
resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
engines: {node: '>=4'}
@@ -2378,21 +1638,6 @@ packages:
engines: {node: '>=6'}
hasBin: true
- jsonc-parser@2.3.1:
- resolution: {integrity: sha512-H8jvkz1O50L3dMZCsLqiuB2tA7muqbSg1AtGEkN0leAqGjsUzDJir3Zwr02BhqdcITPg3ei3mZ+HjMocAknhhg==}
-
- kind-of@6.0.3:
- resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
- engines: {node: '>=0.10.0'}
-
- kleur@3.0.3:
- resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
- engines: {node: '>=6'}
-
- kleur@4.1.5:
- resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
- engines: {node: '>=6'}
-
light-bolt11-decoder@3.1.1:
resolution: {integrity: sha512-sLg/KCwYkgsHWkefWd6KqpCHrLFWWaXTOX3cf6yD2hAzL0SLpX+lFcaFK2spkjbgzG6hhijKfORDc9WoUHwX0A==}
@@ -2407,14 +1652,6 @@ packages:
lines-and-columns@1.2.4:
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
- load-yaml-file@0.2.0:
- resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==}
- engines: {node: '>=6'}
-
- locate-path@5.0.0:
- resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
- engines: {node: '>=8'}
-
lodash.castarray@4.4.0:
resolution: {integrity: sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==}
@@ -2427,13 +1664,6 @@ packages:
lodash@4.17.21:
resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
- log-symbols@6.0.0:
- resolution: {integrity: sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==}
- engines: {node: '>=18'}
-
- longest-streak@3.1.0:
- resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
-
loose-envify@1.4.0:
resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
hasBin: true
@@ -2444,154 +1674,14 @@ packages:
lru-cache@5.1.1:
resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
- magic-string@0.30.11:
- resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==}
-
- markdown-table@3.0.3:
- resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==}
-
- mdast-util-definitions@6.0.0:
- resolution: {integrity: sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==}
-
- mdast-util-find-and-replace@3.0.1:
- resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==}
-
- mdast-util-from-markdown@2.0.1:
- resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==}
-
- mdast-util-gfm-autolink-literal@2.0.0:
- resolution: {integrity: sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==}
-
- mdast-util-gfm-footnote@2.0.0:
- resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==}
-
- mdast-util-gfm-strikethrough@2.0.0:
- resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==}
-
- mdast-util-gfm-table@2.0.0:
- resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==}
-
- mdast-util-gfm-task-list-item@2.0.0:
- resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==}
-
- mdast-util-gfm@3.0.0:
- resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==}
-
- mdast-util-phrasing@4.1.0:
- resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
-
- mdast-util-to-hast@13.2.0:
- resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==}
-
- mdast-util-to-markdown@2.1.0:
- resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==}
-
- mdast-util-to-string@4.0.0:
- resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
-
- merge-stream@2.0.0:
- resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
-
merge2@1.4.1:
resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
engines: {node: '>= 8'}
- micromark-core-commonmark@2.0.1:
- resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==}
-
- micromark-extension-gfm-autolink-literal@2.1.0:
- resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==}
-
- micromark-extension-gfm-footnote@2.1.0:
- resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==}
-
- micromark-extension-gfm-strikethrough@2.1.0:
- resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==}
-
- micromark-extension-gfm-table@2.1.0:
- resolution: {integrity: sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==}
-
- micromark-extension-gfm-tagfilter@2.0.0:
- resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==}
-
- micromark-extension-gfm-task-list-item@2.1.0:
- resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==}
-
- micromark-extension-gfm@3.0.0:
- resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==}
-
- micromark-factory-destination@2.0.0:
- resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==}
-
- micromark-factory-label@2.0.0:
- resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==}
-
- micromark-factory-space@2.0.0:
- resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==}
-
- micromark-factory-title@2.0.0:
- resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==}
-
- micromark-factory-whitespace@2.0.0:
- resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==}
-
- micromark-util-character@2.1.0:
- resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==}
-
- micromark-util-chunked@2.0.0:
- resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==}
-
- micromark-util-classify-character@2.0.0:
- resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==}
-
- micromark-util-combine-extensions@2.0.0:
- resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==}
-
- micromark-util-decode-numeric-character-reference@2.0.1:
- resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==}
-
- micromark-util-decode-string@2.0.0:
- resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==}
-
- micromark-util-encode@2.0.0:
- resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==}
-
- micromark-util-html-tag-name@2.0.0:
- resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==}
-
- micromark-util-normalize-identifier@2.0.0:
- resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==}
-
- micromark-util-resolve-all@2.0.0:
- resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==}
-
- micromark-util-sanitize-uri@2.0.0:
- resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==}
-
- micromark-util-subtokenize@2.0.1:
- resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==}
-
- micromark-util-symbol@2.0.0:
- resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==}
-
- micromark-util-types@2.0.0:
- resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==}
-
- micromark@4.0.0:
- resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==}
-
micromatch@4.0.7:
resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==}
engines: {node: '>=8.6'}
- mimic-fn@2.1.0:
- resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
- engines: {node: '>=6'}
-
- mimic-fn@4.0.0:
- resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
- engines: {node: '>=12'}
-
mini-svg-data-uri@1.4.4:
resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==}
hasBin: true
@@ -2608,16 +1698,9 @@ packages:
resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
engines: {node: '>=16 || 14 >=14.17'}
- mrmime@2.0.0:
- resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==}
- engines: {node: '>=10'}
-
ms@2.1.2:
resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
- muggle-string@0.4.1:
- resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==}
-
mz@2.7.0:
resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
@@ -2631,9 +1714,6 @@ packages:
engines: {node: ^18 || >=20}
hasBin: true
- nlcst-to-string@4.0.0:
- resolution: {integrity: sha512-YKLBCcUYKAg0FNlOBT6aI91qFmSiFKiluk655WzPF+DDMA02qIyy8uiRqI8QXtcFpEvll12LpL5MXqEmAZ+dcA==}
-
node-releases@2.0.18:
resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==}
@@ -2664,10 +1744,6 @@ packages:
nostr-wasm@0.1.0:
resolution: {integrity: sha512-78BTryCLcLYv96ONU8Ws3Q1JzjlAt+43pWQhIl86xZmWeegYCNLPml7yQ+gG3vR6V5h4XGj+TxO+SS5dsThQIA==}
- npm-run-path@5.3.0:
- resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
object-assign@4.1.1:
resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
engines: {node: '>=0.10.0'}
@@ -2676,66 +1752,13 @@ packages:
resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
engines: {node: '>= 6'}
- onetime@5.1.2:
- resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
- engines: {node: '>=6'}
-
- onetime@6.0.0:
- resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
- engines: {node: '>=12'}
-
- ora@8.0.1:
- resolution: {integrity: sha512-ANIvzobt1rls2BDny5fWZ3ZVKyD6nscLvfFRpQgfWsythlcsVUC9kL0zq6j2Z5z9wwp1kd7wpsD/T9qNPVLCaQ==}
- engines: {node: '>=18'}
-
- p-limit@2.3.0:
- resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
- engines: {node: '>=6'}
-
- p-limit@6.1.0:
- resolution: {integrity: sha512-H0jc0q1vOzlEk0TqAKXKZxdl7kX3OFUzCnNVUnq5Pc3DGo0kpeaMuPqxQn235HibwBEb0/pm9dgKTjXy66fBkg==}
- engines: {node: '>=18'}
-
- p-locate@4.1.0:
- resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
- engines: {node: '>=8'}
-
- p-queue@8.0.1:
- resolution: {integrity: sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA==}
- engines: {node: '>=18'}
-
- p-timeout@6.1.2:
- resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==}
- engines: {node: '>=14.16'}
-
- p-try@2.2.0:
- resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
- engines: {node: '>=6'}
-
package-json-from-dist@1.0.0:
resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==}
- parse-latin@7.0.0:
- resolution: {integrity: sha512-mhHgobPPua5kZ98EF4HWiH167JWBfl4pvAIXXdbaVohtK7a6YBOy56kvhCqduqyo/f3yrHFWmqmiMg/BkBkYYQ==}
-
- parse5@7.1.2:
- resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==}
-
- path-browserify@1.0.1:
- resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
-
- path-exists@4.0.0:
- resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
- engines: {node: '>=8'}
-
path-key@3.1.1:
resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
engines: {node: '>=8'}
- path-key@4.0.0:
- resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
- engines: {node: '>=12'}
-
path-parse@1.0.7:
resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
@@ -2743,9 +1766,6 @@ packages:
resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
engines: {node: '>=16 || 14 >=14.18'}
- path-to-regexp@6.2.2:
- resolution: {integrity: sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==}
-
picocolors@1.0.1:
resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==}
@@ -2757,18 +1777,10 @@ packages:
resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
engines: {node: '>=0.10.0'}
- pify@4.0.1:
- resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==}
- engines: {node: '>=6'}
-
pirates@4.0.6:
resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
engines: {node: '>= 6'}
- pkg-dir@4.2.0:
- resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
- engines: {node: '>=8'}
-
postcss-import@15.1.0:
resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
engines: {node: '>=14.0.0'}
@@ -2814,26 +1826,11 @@ packages:
resolution: {integrity: sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==}
engines: {node: ^10 || ^12 || >=14}
- preferred-pm@4.0.0:
- resolution: {integrity: sha512-gYBeFTZLu055D8Vv3cSPox/0iTPtkzxpLroSYYA7WXgRi31WCJ51Uyl8ZiPeUUjyvs2MBzK+S8v9JVUgHU/Sqw==}
- engines: {node: '>=18.12'}
-
prettier@3.3.3:
resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==}
engines: {node: '>=14'}
hasBin: true
- prismjs@1.29.0:
- resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==}
- engines: {node: '>=6'}
-
- prompts@2.4.2:
- resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==}
- engines: {node: '>= 6'}
-
- property-information@6.5.0:
- resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==}
-
qrcode-generator@1.4.4:
resolution: {integrity: sha512-HM7yY8O2ilqhmULxGMpcHSF1EhJJ9yBj8gvDEuZ6M+KGJ0YY2hKpnXvRD+hZPLrDVck3ExIGhmPtSdcjC+guuw==}
@@ -2889,11 +1886,6 @@ packages:
'@types/react':
optional: true
- react-snap-carousel@0.4.0:
- resolution: {integrity: sha512-uPrXbH2BxJnPodQ+GwEYnbygGZ368RpnAJkNYyiOfko3i0D5cIAuSA4mz+pv9r/O5WhIMo5WOuP4DU56sO7QeA==}
- peerDependencies:
- react: ^16.8.0 || ^17.0.0 || ^18.0.0
-
react-string-replace@1.1.1:
resolution: {integrity: sha512-26TUbLzLfHQ5jO5N7y3Mx88eeKo0Ml0UjCQuX4BMfOd/JX+enQqlKpL1CZnmjeBRvQE8TR+ds9j1rqx9CxhKHQ==}
engines: {node: '>=0.12.0'}
@@ -2922,61 +1914,10 @@ packages:
regenerator-runtime@0.14.1:
resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
- rehype-parse@9.0.0:
- resolution: {integrity: sha512-WG7nfvmWWkCR++KEkZevZb/uw41E8TsH4DsY9UxsTbIXCVGbAs4S+r8FrQ+OtH5EEQAs+5UxKC42VinkmpA1Yw==}
-
- rehype-raw@7.0.0:
- resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==}
-
- rehype-stringify@10.0.0:
- resolution: {integrity: sha512-1TX1i048LooI9QoecrXy7nGFFbFSufxVRAfc6Y9YMRAi56l+oB0zP51mLSV312uRuvVLPV1opSlJmslozR1XHQ==}
-
- rehype@13.0.1:
- resolution: {integrity: sha512-AcSLS2mItY+0fYu9xKxOu1LhUZeBZZBx8//5HKzF+0XP+eP8+6a5MXn2+DW2kfXR6Dtp1FEXMVrjyKAcvcU8vg==}
-
- remark-gfm@4.0.0:
- resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==}
-
- remark-parse@11.0.0:
- resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==}
-
- remark-rehype@11.1.0:
- resolution: {integrity: sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==}
-
- remark-smartypants@3.0.2:
- resolution: {integrity: sha512-ILTWeOriIluwEvPjv67v7Blgrcx+LZOkAUVtKI3putuhlZm84FnqDORNXPPm+HY3NdZOMhyDwZ1E+eZB/Df5dA==}
- engines: {node: '>=16.0.0'}
-
- remark-stringify@11.0.0:
- resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==}
-
- request-light@0.7.0:
- resolution: {integrity: sha512-lMbBMrDoxgsyO+yB3sDcrDuX85yYt7sS8BfQd11jtbW/z5ZWgLZRcEGLsLoYw7I0WSUGQBs8CC8ScIxkTX1+6Q==}
-
- require-directory@2.1.1:
- resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
- engines: {node: '>=0.10.0'}
-
resolve@1.22.8:
resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
hasBin: true
- restore-cursor@4.0.0:
- resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- retext-latin@4.0.0:
- resolution: {integrity: sha512-hv9woG7Fy0M9IlRQloq/N6atV82NxLGveq+3H2WOi79dtIYWN8OaxogDm77f8YnVXJL2VD3bbqowu5E3EMhBYA==}
-
- retext-smartypants@6.1.0:
- resolution: {integrity: sha512-LDPXg95346bqFZnDMHo0S7Rq5p64+B+N8Vz733+wPMDtwb9rCOs9LIdIEhrUOU+TAywX9St+ocQWJt8wrzivcQ==}
-
- retext-stringify@4.0.0:
- resolution: {integrity: sha512-rtfN/0o8kL1e+78+uxPTqu1Klt0yPzKuQ2BfWwwfgIUSayyzxpM1PJzkKt4V8803uB9qSy32MvI7Xep9khTpiA==}
-
- retext@9.0.0:
- resolution: {integrity: sha512-sbMDcpHCNjvlheSgMfEcVrZko3cDzdbe1x/e7G66dFp0Ff7Mldvi2uv6JkJQzdRcvLYE8CA8Oe8siQx8ZOgTcA==}
-
reusify@1.0.4:
resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
@@ -2992,31 +1933,13 @@ packages:
scheduler@0.23.2:
resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==}
- schema-dts@1.1.2:
- resolution: {integrity: sha512-MpNwH0dZJHinVxk9bT8XUdjKTxMYrA5bLtrrGmFA6PTLwlOKnhi67XoRd6/ty+Djt6ZC0slR57qFhZDNMI6DhQ==}
- peerDependencies:
- typescript: '>=4.1.0'
-
scroll-into-view-if-needed@3.1.0:
resolution: {integrity: sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==}
- section-matter@1.0.0:
- resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==}
- engines: {node: '>=4'}
-
semver@6.3.1:
resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
hasBin: true
- semver@7.6.3:
- resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==}
- engines: {node: '>=10'}
- hasBin: true
-
- sharp@0.33.4:
- resolution: {integrity: sha512-7i/dt5kGl7qR4gwPRD2biwD2/SvBn3O04J77XKFgL2OnZtQw+AG9wnuS/csmu80nPRHLYE9E41fyEiG8nhH6/Q==}
- engines: {libvips: '>=8.15.2', node: ^18.17.0 || ^20.3.0 || >=21.0.0}
-
shebang-command@2.0.0:
resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
engines: {node: '>=8'}
@@ -3025,22 +1948,10 @@ packages:
resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
engines: {node: '>=8'}
- shiki@1.12.1:
- resolution: {integrity: sha512-nwmjbHKnOYYAe1aaQyEBHvQymJgfm86ZSS7fT8OaPRr4sbAcBNz7PbfAikMEFSDQ6se2j2zobkXvVKcBOm0ysg==}
-
- signal-exit@3.0.7:
- resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
-
signal-exit@4.1.0:
resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
engines: {node: '>=14'}
- simple-swizzle@0.2.2:
- resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==}
-
- sisteransi@1.0.5:
- resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
-
slate-react@0.107.1:
resolution: {integrity: sha512-CDIFzeSkTqwOaFHIxRg4MnOsv0Ml8/PoaWiM5zL5hvDYFqVXQUEhMNQqpPEFTWJ5xVLzEv/rd9N3WloiCyEWYQ==}
peerDependencies:
@@ -3055,16 +1966,6 @@ packages:
resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==}
engines: {node: '>=0.10.0'}
- space-separated-tokens@2.0.2:
- resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==}
-
- sprintf-js@1.0.3:
- resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
-
- stdin-discarder@0.2.2:
- resolution: {integrity: sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==}
- engines: {node: '>=18'}
-
string-width@4.2.3:
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
engines: {node: '>=8'}
@@ -3073,13 +1974,6 @@ packages:
resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
engines: {node: '>=12'}
- string-width@7.2.0:
- resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==}
- engines: {node: '>=18'}
-
- stringify-entities@4.0.4:
- resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==}
-
strip-ansi@6.0.1:
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
engines: {node: '>=8'}
@@ -3088,18 +1982,6 @@ packages:
resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
engines: {node: '>=12'}
- strip-bom-string@1.0.0:
- resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==}
- engines: {node: '>=0.10.0'}
-
- strip-bom@3.0.0:
- resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
- engines: {node: '>=4'}
-
- strip-final-newline@3.0.0:
- resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
- engines: {node: '>=12'}
-
sucrase@3.35.0:
resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==}
engines: {node: '>=16 || 14 >=14.17'}
@@ -3116,8 +1998,8 @@ packages:
tailwind-gradient-mask-image@1.2.0:
resolution: {integrity: sha512-tUJaGhvqbJFiVKJu6EU5n//KvGdVvY3L3VOFNqjztk13+ifAk00pcSNHBTgHfUiBGOEzDn0gFRbSmsftUV1lXA==}
- tailwind-merge@2.4.0:
- resolution: {integrity: sha512-49AwoOQNKdqKPd9CViyH5wJoSKsCDjUlzL8DxuGp3P1FsGY36NJDAa18jLZcaHAUUuTj+JB8IAo8zWgBNvBF7A==}
+ tailwind-merge@2.5.0:
+ resolution: {integrity: sha512-a6Q/isR5XAo9IR7Hjh80BQDkn8PG9ONJpSO/U3vGzdKyKG125lPHNXdiPfeQ5X0EOG0qKlS/0qnxdBYkLlD6tA==}
tailwind-scrollbar@3.1.0:
resolution: {integrity: sha512-pmrtDIZeHyu2idTejfV59SbaJyvp1VRjYxAjZBH0jnyrPRo6HL1kD5Glz8VPagasqr6oAx6M05+Tuw429Z8jxg==}
@@ -3159,12 +2041,6 @@ packages:
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
engines: {node: '>=8.0'}
- trim-lines@3.0.1:
- resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==}
-
- trough@2.2.0:
- resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==}
-
ts-interface-checker@0.1.13:
resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
@@ -3181,85 +2057,11 @@ packages:
tslib@2.6.3:
resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==}
- turbo-darwin-64@2.0.12:
- resolution: {integrity: sha512-NAgfgbXxX/JScWQmmQnGbPuFZq7LIswHfcMk5JwyBXQM/xmklNOxxac7MnGGIOf19Z2f6S3qHy17VIj0SeGfnA==}
- cpu: [x64]
- os: [darwin]
-
- turbo-darwin-arm64@2.0.12:
- resolution: {integrity: sha512-cP02uer5KSJ+fXL+OfRRk5hnVjV0c60hxDgNcJxrZpfhun7HHoKDDR7w2xhQntiA45aC6ZZEXRqMKpj6GAmKbg==}
- cpu: [arm64]
- os: [darwin]
-
- turbo-linux-64@2.0.12:
- resolution: {integrity: sha512-+mQgGfg1eq5qF+wenK/FKJaNMNAo5DQLC4htQy+8osW+fx6U+8+6UlPQPaycAWDEqwOI7NwuqkeHfkEQLQUTyQ==}
- cpu: [x64]
- os: [linux]
-
- turbo-linux-arm64@2.0.12:
- resolution: {integrity: sha512-KFyEZDXfPU1DK4zimxdCcqAcK7IIttX4mfsgB7NsSEOmH0dhHOih/YFYiyEDC1lTRx0C2RlzQ0Kjjdz48AN5Eg==}
- cpu: [arm64]
- os: [linux]
-
- turbo-windows-64@2.0.12:
- resolution: {integrity: sha512-kJj4KCkZTkDTDCqsSw1m1dbO4WeoQq1mYUm/thXOH0OkeqYbSMt0EyoTcJOgKUDsrMnzZD2gPfYrlYHtV69lVA==}
- cpu: [x64]
- os: [win32]
-
- turbo-windows-arm64@2.0.12:
- resolution: {integrity: sha512-TY3ROxguDilN2olCwcZMaePdW01Xhma0pZU7bNhsQEqca9RGAmsZBuzfGnTMcWPmv4tpnb/PlX1hrt1Hod/44Q==}
- cpu: [arm64]
- os: [win32]
-
- turbo@2.0.12:
- resolution: {integrity: sha512-8s2KwqjwQj7z8Z53SUZSKVkQOZ2/Sl4D2F440oaBY/k2lGju60dW6srEpnn8/RIDeICZmQn3pQHF79Jfnc5Skw==}
- hasBin: true
-
- type-fest@2.19.0:
- resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
- engines: {node: '>=12.20'}
-
- typesafe-path@0.2.2:
- resolution: {integrity: sha512-OJabfkAg1WLZSqJAJ0Z6Sdt3utnbzr/jh+NAHoyWHJe8CMSy79Gm085094M9nvTPy22KzTVn5Zq5mbapCI/hPA==}
-
- typescript-auto-import-cache@0.3.3:
- resolution: {integrity: sha512-ojEC7+Ci1ij9eE6hp8Jl9VUNnsEKzztktP5gtYNRMrTmfXVwA1PITYYAkpxCvvupdSYa/Re51B6KMcv1CTZEUA==}
-
typescript@5.5.4:
resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==}
engines: {node: '>=14.17'}
hasBin: true
- unified@11.0.5:
- resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==}
-
- unist-util-find-after@5.0.0:
- resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==}
-
- unist-util-is@6.0.0:
- resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==}
-
- unist-util-modify-children@4.0.0:
- resolution: {integrity: sha512-+tdN5fGNddvsQdIzUF3Xx82CU9sMM+fA0dLgR9vOmT0oPT2jH+P1nd5lSqfCfXAw+93NhcXNY2qqvTUtE4cQkw==}
-
- unist-util-position@5.0.0:
- resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==}
-
- unist-util-remove-position@5.0.0:
- resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==}
-
- unist-util-stringify-position@4.0.0:
- resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
-
- unist-util-visit-children@3.0.0:
- resolution: {integrity: sha512-RgmdTfSBOg04sdPcpTSD1jzoNBjt9a80/ZCzp5cI9n1qPzLZWF9YdvWGN2zmTumP1HWhXKdUWexjy/Wy/lJ7tA==}
-
- unist-util-visit-parents@6.0.1:
- resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==}
-
- unist-util-visit@5.0.0:
- resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
-
unplugin@1.12.1:
resolution: {integrity: sha512-aXEH9c5qi3uYZHo0niUtxDlT9ylG/luMW/dZslSCkbtC31wCyFkmM0kyoBBh+Grhn7CL+/kvKLfN61/EdxPxMQ==}
engines: {node: '>=14.0.0'}
@@ -3309,17 +2111,8 @@ packages:
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
- vfile-location@5.0.3:
- resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==}
-
- vfile-message@4.0.2:
- resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==}
-
- vfile@6.0.2:
- resolution: {integrity: sha512-zND7NlS8rJYb/sPqkb13ZvbbUoExdbi4w3SfRrMq6R3FvnLQmmfpajJNITuuYm6AZ5uao9vy4BAos3EXBPf2rg==}
-
- virtua@0.33.4:
- resolution: {integrity: sha512-E5PjR2wxebizA0KDFmGnvpPCeRsbAmmJ/Yif+ZH4HPEylrFqIeBOsgNZqHjsMnu5WqfSgEMIq+Qu0WOIC+3UyA==}
+ virtua@0.33.5:
+ resolution: {integrity: sha512-dpohZLgUartIixJgIiQ6HstlsryHS1PY58lGJooMUGI7zAdFm3tNkaO8WB6BmmpZfpXz58UMsd7D7hOoSQuvfQ==}
peerDependencies:
react: '>=16.14.0'
react-dom: '>=16.14.0'
@@ -3377,104 +2170,10 @@ packages:
terser:
optional: true
- vitefu@0.2.5:
- resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==}
- peerDependencies:
- vite: ^3.0.0 || ^4.0.0 || ^5.0.0
- peerDependenciesMeta:
- vite:
- optional: true
-
void-elements@3.1.0:
resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==}
engines: {node: '>=0.10.0'}
- volar-service-css@0.0.59:
- resolution: {integrity: sha512-gLNjJnECbalPvQB7qeJjhkDN8sR5M3ItbVYjnyio61aHaWptIiXm/HfDahcQ2ApwmvWidkMWWegjGq5L0BENDA==}
- peerDependencies:
- '@volar/language-service': ~2.4.0-alpha.12
- peerDependenciesMeta:
- '@volar/language-service':
- optional: true
-
- volar-service-emmet@0.0.59:
- resolution: {integrity: sha512-6EynHcuMwMBETpK29TbZvIMmvzdVG+Tkokk9VWfZeI+SwDptk2tgdhEqiXXvIkqYNgbuu73Itp66lpH76cAU+Q==}
- peerDependencies:
- '@volar/language-service': ~2.4.0-alpha.12
- peerDependenciesMeta:
- '@volar/language-service':
- optional: true
-
- volar-service-html@0.0.59:
- resolution: {integrity: sha512-hEXOsYpILDlITZxnqRLV9OepVWD63GZBsyjMxszwdzlxvGZjzbGcBBinJGGJRwFIV8djdJwnt91bkdg1V5tj6Q==}
- peerDependencies:
- '@volar/language-service': ~2.4.0-alpha.12
- peerDependenciesMeta:
- '@volar/language-service':
- optional: true
-
- volar-service-prettier@0.0.59:
- resolution: {integrity: sha512-FmBR4lsgFRGR3V0LnxZZal0WqdOJjuLL6mQSj4p57M15APtQwuocG/FiF+ONGFnwRXMOIBDBTCARdth+TKgL3A==}
- peerDependencies:
- '@volar/language-service': ~2.4.0-alpha.12
- prettier: ^2.2 || ^3.0
- peerDependenciesMeta:
- '@volar/language-service':
- optional: true
- prettier:
- optional: true
-
- volar-service-typescript-twoslash-queries@0.0.59:
- resolution: {integrity: sha512-skm8e6yhCIkqLwJB6S9MqT5lO9LNFuMD3dYxKpmOZs1CKbXmCZZTmLfEaD5VkJae1xdleEDZFFTHl2O5HLjOGQ==}
- peerDependencies:
- '@volar/language-service': ~2.4.0-alpha.12
- peerDependenciesMeta:
- '@volar/language-service':
- optional: true
-
- volar-service-typescript@0.0.59:
- resolution: {integrity: sha512-VCOpfiu+lUo5lapWLB5L5vmQGtwzmNWn5MueV915eku7blpphmE+Z7hCNcL1NApn7AetXWhiblv8ZhmUx/dGIA==}
- peerDependencies:
- '@volar/language-service': ~2.4.0-alpha.12
- peerDependenciesMeta:
- '@volar/language-service':
- optional: true
-
- vscode-css-languageservice@6.3.0:
- resolution: {integrity: sha512-nU92imtkgzpCL0xikrIb8WvedV553F2BENzgz23wFuok/HLN5BeQmroMy26pUwFxV2eV8oNRmYCUv8iO7kSMhw==}
-
- vscode-html-languageservice@5.3.0:
- resolution: {integrity: sha512-C4Z3KsP5Ih+fjHpiBc5jxmvCl+4iEwvXegIrzu2F5pktbWvQaBT3YkVPk8N+QlSSMk8oCG6PKtZ/Sq2YHb5e8g==}
-
- vscode-jsonrpc@8.2.0:
- resolution: {integrity: sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==}
- engines: {node: '>=14.0.0'}
-
- vscode-languageserver-protocol@3.17.5:
- resolution: {integrity: sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==}
-
- vscode-languageserver-textdocument@1.0.12:
- resolution: {integrity: sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==}
-
- vscode-languageserver-types@3.17.5:
- resolution: {integrity: sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==}
-
- vscode-languageserver@9.0.1:
- resolution: {integrity: sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==}
- hasBin: true
-
- vscode-nls@5.2.0:
- resolution: {integrity: sha512-RAaHx7B14ZU04EU31pT+rKz2/zSl7xMsfIZuo8pd+KZO6PXtQmpevpq3vxvWNcrGbdmhM/rr5Uw5Mz+NBfhVng==}
-
- vscode-uri@2.1.2:
- resolution: {integrity: sha512-8TEXQxlldWAuIODdukIb+TR5s+9Ds40eSJrw+1iDDA9IFORPjMELarNQE3myz5XIkWWpdprmJjm1/SxMlWOC8A==}
-
- vscode-uri@3.0.8:
- resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==}
-
- web-namespaces@2.0.1:
- resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==}
-
webpack-sources@3.2.3:
resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
engines: {node: '>=10.13.0'}
@@ -3482,23 +2181,11 @@ packages:
webpack-virtual-modules@0.6.2:
resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==}
- which-pm-runs@1.1.0:
- resolution: {integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==}
- engines: {node: '>=4'}
-
- which-pm@3.0.0:
- resolution: {integrity: sha512-ysVYmw6+ZBhx3+ZkcPwRuJi38ZOTLJJ33PSHaitLxSKUMsh0LkKd0nC69zZCwt5D+AYUcMK2hhw4yWny20vSGg==}
- engines: {node: '>=18.12'}
-
which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
hasBin: true
- widest-line@4.0.1:
- resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==}
- engines: {node: '>=12'}
-
wrap-ansi@7.0.0:
resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
engines: {node: '>=10'}
@@ -3507,10 +2194,6 @@ packages:
resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
engines: {node: '>=12'}
- y18n@5.0.8:
- resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
- engines: {node: '>=10'}
-
yallist@3.1.1:
resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
@@ -3519,23 +2202,6 @@ packages:
engines: {node: '>= 14'}
hasBin: true
- yargs-parser@21.1.1:
- resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
- engines: {node: '>=12'}
-
- yargs@17.7.2:
- resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
- engines: {node: '>=12'}
-
- yocto-queue@1.1.1:
- resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==}
- engines: {node: '>=12.20'}
-
- zod-to-json-schema@3.23.2:
- resolution: {integrity: sha512-uSt90Gzc/tUfyNqxnjlfBs8W6WSGpNBv0rVsNxP/BVSMHMKGdthPYff4xtCHYloJGM0CFxFsb3NbC0eqPhfImw==}
- peerDependencies:
- zod: ^3.23.3
-
zod@3.23.8:
resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==}
@@ -3554,9 +2220,6 @@ packages:
react:
optional: true
- zwitch@2.0.4:
- resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
-
snapshots:
'@alloc/quick-lru@5.2.0': {}
@@ -3566,95 +2229,6 @@ snapshots:
'@jridgewell/gen-mapping': 0.3.5
'@jridgewell/trace-mapping': 0.3.25
- '@astrojs/check@0.9.2(prettier@3.3.3)(typescript@5.5.4)':
- dependencies:
- '@astrojs/language-server': 2.13.2(prettier@3.3.3)(typescript@5.5.4)
- chokidar: 3.6.0
- fast-glob: 3.3.2
- kleur: 4.1.5
- typescript: 5.5.4
- yargs: 17.7.2
- transitivePeerDependencies:
- - prettier
- - prettier-plugin-astro
-
- '@astrojs/compiler@2.10.2': {}
-
- '@astrojs/internal-helpers@0.4.1': {}
-
- '@astrojs/language-server@2.13.2(prettier@3.3.3)(typescript@5.5.4)':
- dependencies:
- '@astrojs/compiler': 2.10.2
- '@jridgewell/sourcemap-codec': 1.5.0
- '@volar/kit': 2.4.0-alpha.18(typescript@5.5.4)
- '@volar/language-core': 2.4.0-alpha.18
- '@volar/language-server': 2.4.0-alpha.18
- '@volar/language-service': 2.4.0-alpha.18
- '@volar/typescript': 2.4.0-alpha.18
- fast-glob: 3.3.2
- muggle-string: 0.4.1
- volar-service-css: 0.0.59(@volar/language-service@2.4.0-alpha.18)
- volar-service-emmet: 0.0.59(@volar/language-service@2.4.0-alpha.18)
- volar-service-html: 0.0.59(@volar/language-service@2.4.0-alpha.18)
- volar-service-prettier: 0.0.59(@volar/language-service@2.4.0-alpha.18)(prettier@3.3.3)
- volar-service-typescript: 0.0.59(@volar/language-service@2.4.0-alpha.18)
- volar-service-typescript-twoslash-queries: 0.0.59(@volar/language-service@2.4.0-alpha.18)
- vscode-html-languageservice: 5.3.0
- vscode-uri: 3.0.8
- optionalDependencies:
- prettier: 3.3.3
- transitivePeerDependencies:
- - typescript
-
- '@astrojs/markdown-remark@5.2.0':
- dependencies:
- '@astrojs/prism': 3.1.0
- github-slugger: 2.0.0
- hast-util-from-html: 2.0.1
- hast-util-to-text: 4.0.2
- import-meta-resolve: 4.1.0
- mdast-util-definitions: 6.0.0
- rehype-raw: 7.0.0
- rehype-stringify: 10.0.0
- remark-gfm: 4.0.0
- remark-parse: 11.0.0
- remark-rehype: 11.1.0
- remark-smartypants: 3.0.2
- shiki: 1.12.1
- unified: 11.0.5
- unist-util-remove-position: 5.0.0
- unist-util-visit: 5.0.0
- unist-util-visit-parents: 6.0.1
- vfile: 6.0.2
- transitivePeerDependencies:
- - supports-color
-
- '@astrojs/prism@3.1.0':
- dependencies:
- prismjs: 1.29.0
-
- '@astrojs/tailwind@5.1.0(astro@4.13.3(typescript@5.5.4))(tailwindcss@3.4.9)':
- dependencies:
- astro: 4.13.3(typescript@5.5.4)
- autoprefixer: 10.4.20(postcss@8.4.41)
- postcss: 8.4.41
- postcss-load-config: 4.0.2(postcss@8.4.41)
- tailwindcss: 3.4.9
- transitivePeerDependencies:
- - ts-node
-
- '@astrojs/telemetry@3.1.0':
- dependencies:
- ci-info: 4.0.0
- debug: 4.3.6
- dlv: 1.1.3
- dset: 3.1.3
- is-docker: 3.0.0
- is-wsl: 3.1.0
- which-pm-runs: 1.1.0
- transitivePeerDependencies:
- - supports-color
-
'@babel/code-frame@7.24.7':
dependencies:
'@babel/highlight': 7.24.7
@@ -3689,10 +2263,6 @@ snapshots:
'@jridgewell/trace-mapping': 0.3.25
jsesc: 2.5.2
- '@babel/helper-annotate-as-pure@7.24.7':
- dependencies:
- '@babel/types': 7.25.2
-
'@babel/helper-compilation-targets@7.25.2':
dependencies:
'@babel/compat-data': 7.25.2
@@ -3759,17 +2329,6 @@ snapshots:
'@babel/core': 7.25.2
'@babel/helper-plugin-utils': 7.24.8
- '@babel/plugin-transform-react-jsx@7.25.2(@babel/core@7.25.2)':
- dependencies:
- '@babel/core': 7.25.2
- '@babel/helper-annotate-as-pure': 7.24.7
- '@babel/helper-module-imports': 7.24.7
- '@babel/helper-plugin-utils': 7.24.8
- '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.2)
- '@babel/types': 7.25.2
- transitivePeerDependencies:
- - supports-color
-
'@babel/runtime@7.25.0':
dependencies:
regenerator-runtime: 0.14.1
@@ -3833,34 +2392,6 @@ snapshots:
'@biomejs/cli-win32-x64@1.8.3':
optional: true
- '@emmetio/abbreviation@2.3.3':
- dependencies:
- '@emmetio/scanner': 1.0.4
-
- '@emmetio/css-abbreviation@2.1.8':
- dependencies:
- '@emmetio/scanner': 1.0.4
-
- '@emmetio/css-parser@0.4.0':
- dependencies:
- '@emmetio/stream-reader': 2.2.0
- '@emmetio/stream-reader-utils': 0.1.0
-
- '@emmetio/html-matcher@1.3.0':
- dependencies:
- '@emmetio/scanner': 1.0.4
-
- '@emmetio/scanner@1.0.4': {}
-
- '@emmetio/stream-reader-utils@0.1.0': {}
-
- '@emmetio/stream-reader@2.2.0': {}
-
- '@emnapi/runtime@1.2.0':
- dependencies:
- tslib: 2.6.3
- optional: true
-
'@esbuild/aix-ppc64@0.21.5':
optional: true
@@ -3949,8 +2480,6 @@ snapshots:
'@floating-ui/utils@0.2.7': {}
- '@fontsource/alice@5.0.13': {}
-
'@getalby/bitcoin-connect-react@3.6.1(@types/react@18.3.3)(immer@10.1.1)(react@18.3.1)(typescript@5.5.4)':
dependencies:
'@getalby/bitcoin-connect': 3.6.1(@types/react@18.3.3)(immer@10.1.1)(react@18.3.1)(typescript@5.5.4)
@@ -3982,81 +2511,6 @@ snapshots:
transitivePeerDependencies:
- typescript
- '@img/sharp-darwin-arm64@0.33.4':
- optionalDependencies:
- '@img/sharp-libvips-darwin-arm64': 1.0.2
- optional: true
-
- '@img/sharp-darwin-x64@0.33.4':
- optionalDependencies:
- '@img/sharp-libvips-darwin-x64': 1.0.2
- optional: true
-
- '@img/sharp-libvips-darwin-arm64@1.0.2':
- optional: true
-
- '@img/sharp-libvips-darwin-x64@1.0.2':
- optional: true
-
- '@img/sharp-libvips-linux-arm64@1.0.2':
- optional: true
-
- '@img/sharp-libvips-linux-arm@1.0.2':
- optional: true
-
- '@img/sharp-libvips-linux-s390x@1.0.2':
- optional: true
-
- '@img/sharp-libvips-linux-x64@1.0.2':
- optional: true
-
- '@img/sharp-libvips-linuxmusl-arm64@1.0.2':
- optional: true
-
- '@img/sharp-libvips-linuxmusl-x64@1.0.2':
- optional: true
-
- '@img/sharp-linux-arm64@0.33.4':
- optionalDependencies:
- '@img/sharp-libvips-linux-arm64': 1.0.2
- optional: true
-
- '@img/sharp-linux-arm@0.33.4':
- optionalDependencies:
- '@img/sharp-libvips-linux-arm': 1.0.2
- optional: true
-
- '@img/sharp-linux-s390x@0.33.4':
- optionalDependencies:
- '@img/sharp-libvips-linux-s390x': 1.0.2
- optional: true
-
- '@img/sharp-linux-x64@0.33.4':
- optionalDependencies:
- '@img/sharp-libvips-linux-x64': 1.0.2
- optional: true
-
- '@img/sharp-linuxmusl-arm64@0.33.4':
- optionalDependencies:
- '@img/sharp-libvips-linuxmusl-arm64': 1.0.2
- optional: true
-
- '@img/sharp-linuxmusl-x64@0.33.4':
- optionalDependencies:
- '@img/sharp-libvips-linuxmusl-x64': 1.0.2
- optional: true
-
- '@img/sharp-wasm32@0.33.4':
- dependencies:
- '@emnapi/runtime': 1.2.0
- optional: true
-
- '@img/sharp-win32-ia32@0.33.4':
- optional: true
-
- '@img/sharp-win32-x64@0.33.4':
- optional: true
-
'@isaacs/cliui@8.0.2':
dependencies:
string-width: 5.1.2
@@ -4511,10 +2965,6 @@ snapshots:
'@noble/hashes': 1.3.1
'@scure/base': 1.1.1
- '@shikijs/core@1.12.1':
- dependencies:
- '@types/hast': 3.0.4
-
'@swc/core-darwin-arm64@1.7.10':
optional: true
@@ -4765,32 +3215,12 @@ snapshots:
dependencies:
'@babel/types': 7.25.2
- '@types/cookie@0.6.0': {}
-
- '@types/debug@4.1.12':
- dependencies:
- '@types/ms': 0.7.34
-
'@types/estree@1.0.5': {}
- '@types/hast@3.0.4':
- dependencies:
- '@types/unist': 3.0.2
-
'@types/is-hotkey@0.1.10': {}
'@types/lodash@4.17.7': {}
- '@types/mdast@4.0.4':
- dependencies:
- '@types/unist': 3.0.2
-
- '@types/ms@0.7.34': {}
-
- '@types/nlcst@2.0.3':
- dependencies:
- '@types/unist': 3.0.2
-
'@types/prop-types@15.7.12': {}
'@types/react-dom@18.3.0':
@@ -4802,10 +3232,6 @@ snapshots:
'@types/prop-types': 15.7.12
csstype: 3.1.3
- '@types/unist@3.0.2': {}
-
- '@ungap/structured-clone@1.2.0': {}
-
'@vitejs/plugin-react-swc@3.7.0(vite@5.4.0)':
dependencies:
'@swc/core': 1.7.10
@@ -4813,68 +3239,8 @@ snapshots:
transitivePeerDependencies:
- '@swc/helpers'
- '@volar/kit@2.4.0-alpha.18(typescript@5.5.4)':
- dependencies:
- '@volar/language-service': 2.4.0-alpha.18
- '@volar/typescript': 2.4.0-alpha.18
- typesafe-path: 0.2.2
- typescript: 5.5.4
- vscode-languageserver-textdocument: 1.0.12
- vscode-uri: 3.0.8
-
- '@volar/language-core@2.4.0-alpha.18':
- dependencies:
- '@volar/source-map': 2.4.0-alpha.18
-
- '@volar/language-server@2.4.0-alpha.18':
- dependencies:
- '@volar/language-core': 2.4.0-alpha.18
- '@volar/language-service': 2.4.0-alpha.18
- '@volar/snapshot-document': 2.4.0-alpha.18
- '@volar/typescript': 2.4.0-alpha.18
- path-browserify: 1.0.1
- request-light: 0.7.0
- vscode-languageserver: 9.0.1
- vscode-languageserver-protocol: 3.17.5
- vscode-languageserver-textdocument: 1.0.12
- vscode-uri: 3.0.8
-
- '@volar/language-service@2.4.0-alpha.18':
- dependencies:
- '@volar/language-core': 2.4.0-alpha.18
- vscode-languageserver-protocol: 3.17.5
- vscode-languageserver-textdocument: 1.0.12
- vscode-uri: 3.0.8
-
- '@volar/snapshot-document@2.4.0-alpha.18':
- dependencies:
- vscode-languageserver-protocol: 3.17.5
- vscode-languageserver-textdocument: 1.0.12
-
- '@volar/source-map@2.4.0-alpha.18': {}
-
- '@volar/typescript@2.4.0-alpha.18':
- dependencies:
- '@volar/language-core': 2.4.0-alpha.18
- path-browserify: 1.0.1
- vscode-uri: 3.0.8
-
- '@vscode/emmet-helper@2.9.3':
- dependencies:
- emmet: 2.4.7
- jsonc-parser: 2.3.1
- vscode-languageserver-textdocument: 1.0.12
- vscode-languageserver-types: 3.17.5
- vscode-uri: 2.1.2
-
- '@vscode/l10n@0.0.18': {}
-
acorn@8.12.1: {}
- ansi-align@3.0.1:
- dependencies:
- string-width: 4.2.3
-
ansi-regex@5.0.1: {}
ansi-regex@6.0.1: {}
@@ -4898,108 +3264,10 @@ snapshots:
arg@5.0.2: {}
- argparse@1.0.10:
- dependencies:
- sprintf-js: 1.0.3
-
- argparse@2.0.1: {}
-
aria-hidden@1.2.4:
dependencies:
tslib: 2.6.3
- aria-query@5.3.0:
- dependencies:
- dequal: 2.0.3
-
- array-iterate@2.0.1: {}
-
- astro-seo-meta@4.1.1(astro@4.13.3(typescript@5.5.4)):
- dependencies:
- astro: 4.13.3(typescript@5.5.4)
-
- astro-seo-schema@4.0.2(astro@4.13.3(typescript@5.5.4))(schema-dts@1.1.2(typescript@5.5.4)):
- dependencies:
- astro: 4.13.3(typescript@5.5.4)
- schema-dts: 1.1.2(typescript@5.5.4)
-
- astro@4.13.3(typescript@5.5.4):
- dependencies:
- '@astrojs/compiler': 2.10.2
- '@astrojs/internal-helpers': 0.4.1
- '@astrojs/markdown-remark': 5.2.0
- '@astrojs/telemetry': 3.1.0
- '@babel/core': 7.25.2
- '@babel/generator': 7.25.0
- '@babel/parser': 7.25.3
- '@babel/plugin-transform-react-jsx': 7.25.2(@babel/core@7.25.2)
- '@babel/traverse': 7.25.3
- '@babel/types': 7.25.2
- '@types/babel__core': 7.20.5
- '@types/cookie': 0.6.0
- acorn: 8.12.1
- aria-query: 5.3.0
- axobject-query: 4.1.0
- boxen: 7.1.1
- ci-info: 4.0.0
- clsx: 2.1.1
- common-ancestor-path: 1.0.1
- cookie: 0.6.0
- cssesc: 3.0.0
- debug: 4.3.6
- deterministic-object-hash: 2.0.2
- devalue: 5.0.0
- diff: 5.2.0
- dlv: 1.1.3
- dset: 3.1.3
- es-module-lexer: 1.5.4
- esbuild: 0.21.5
- estree-walker: 3.0.3
- execa: 8.0.1
- fast-glob: 3.3.2
- flattie: 1.1.1
- github-slugger: 2.0.0
- gray-matter: 4.0.3
- html-escaper: 3.0.3
- http-cache-semantics: 4.1.1
- js-yaml: 4.1.0
- kleur: 4.1.5
- magic-string: 0.30.11
- mrmime: 2.0.0
- ora: 8.0.1
- p-limit: 6.1.0
- p-queue: 8.0.1
- path-to-regexp: 6.2.2
- preferred-pm: 4.0.0
- prompts: 2.4.2
- rehype: 13.0.1
- semver: 7.6.3
- shiki: 1.12.1
- string-width: 7.2.0
- strip-ansi: 7.1.0
- tsconfck: 3.1.1(typescript@5.5.4)
- unist-util-visit: 5.0.0
- vfile: 6.0.2
- vite: 5.4.0
- vitefu: 0.2.5(vite@5.4.0)
- which-pm: 3.0.0
- yargs-parser: 21.1.1
- zod: 3.23.8
- zod-to-json-schema: 3.23.2(zod@3.23.8)
- optionalDependencies:
- sharp: 0.33.4
- transitivePeerDependencies:
- - '@types/node'
- - less
- - lightningcss
- - sass
- - sass-embedded
- - stylus
- - sugarss
- - supports-color
- - terser
- - typescript
-
autoprefixer@10.4.20(postcss@8.4.41):
dependencies:
browserslist: 4.23.3
@@ -5010,8 +3278,6 @@ snapshots:
postcss: 8.4.41
postcss-value-parser: 4.2.0
- axobject-query@4.1.0: {}
-
babel-dead-code-elimination@1.0.6:
dependencies:
'@babel/core': 7.25.2
@@ -5021,12 +3287,8 @@ snapshots:
transitivePeerDependencies:
- supports-color
- bail@2.0.2: {}
-
balanced-match@1.0.2: {}
- base-64@1.0.0: {}
-
big.js@6.2.1: {}
binary-extensions@2.3.0: {}
@@ -5035,17 +3297,6 @@ snapshots:
dependencies:
big.js: 6.2.1
- boxen@7.1.1:
- dependencies:
- ansi-align: 3.0.1
- camelcase: 7.0.1
- chalk: 5.3.0
- cli-boxes: 3.0.0
- string-width: 5.1.2
- type-fest: 2.19.0
- widest-line: 4.0.1
- wrap-ansi: 8.1.0
-
brace-expansion@2.0.1:
dependencies:
balanced-match: 1.0.2
@@ -5063,26 +3314,14 @@ snapshots:
camelcase-css@2.0.1: {}
- camelcase@7.0.1: {}
-
caniuse-lite@1.0.30001651: {}
- ccount@2.0.1: {}
-
chalk@2.4.2:
dependencies:
ansi-styles: 3.2.1
escape-string-regexp: 1.0.5
supports-color: 5.5.0
- chalk@5.3.0: {}
-
- character-entities-html4@2.1.0: {}
-
- character-entities-legacy@3.0.0: {}
-
- character-entities@2.0.2: {}
-
chokidar@3.6.0:
dependencies:
anymatch: 3.1.3
@@ -5095,22 +3334,6 @@ snapshots:
optionalDependencies:
fsevents: 2.3.3
- ci-info@4.0.0: {}
-
- cli-boxes@3.0.0: {}
-
- cli-cursor@4.0.0:
- dependencies:
- restore-cursor: 4.0.0
-
- cli-spinners@2.9.2: {}
-
- cliui@8.0.1:
- dependencies:
- string-width: 4.2.3
- strip-ansi: 6.0.1
- wrap-ansi: 7.0.0
-
clsx@2.1.1: {}
color-convert@1.9.3:
@@ -5125,30 +3348,12 @@ snapshots:
color-name@1.1.4: {}
- color-string@1.9.1:
- dependencies:
- color-name: 1.1.4
- simple-swizzle: 0.2.2
- optional: true
-
- color@4.2.3:
- dependencies:
- color-convert: 2.0.1
- color-string: 1.9.1
- optional: true
-
- comma-separated-tokens@2.0.3: {}
-
commander@4.1.1: {}
- common-ancestor-path@1.0.1: {}
-
compute-scroll-into-view@3.1.0: {}
convert-source-map@2.0.0: {}
- cookie@0.6.0: {}
-
cross-spawn@7.0.3:
dependencies:
path-key: 3.1.1
@@ -5167,37 +3372,14 @@ snapshots:
dependencies:
ms: 2.1.2
- decode-named-character-reference@1.0.2:
- dependencies:
- character-entities: 2.0.2
-
- dequal@2.0.3: {}
-
- detect-libc@2.0.3:
- optional: true
-
detect-node-es@1.1.0: {}
- deterministic-object-hash@2.0.2:
- dependencies:
- base-64: 1.0.0
-
- devalue@5.0.0: {}
-
- devlop@1.1.0:
- dependencies:
- dequal: 2.0.3
-
didyoumean@1.2.2: {}
- diff@5.2.0: {}
-
direction@1.0.4: {}
dlv@1.1.3: {}
- dset@3.1.3: {}
-
eastasianwidth@0.2.0: {}
electron-to-chromium@1.5.6: {}
@@ -5214,21 +3396,10 @@ snapshots:
embla-carousel@8.1.8: {}
- emmet@2.4.7:
- dependencies:
- '@emmetio/abbreviation': 2.3.3
- '@emmetio/css-abbreviation': 2.1.8
-
- emoji-regex@10.3.0: {}
-
emoji-regex@8.0.0: {}
emoji-regex@9.2.2: {}
- entities@4.5.0: {}
-
- es-module-lexer@1.5.4: {}
-
esbuild@0.21.5:
optionalDependencies:
'@esbuild/aix-ppc64': 0.21.5
@@ -5259,34 +3430,8 @@ snapshots:
escape-string-regexp@1.0.5: {}
- escape-string-regexp@5.0.0: {}
-
- esprima@4.0.1: {}
-
- estree-walker@3.0.3:
- dependencies:
- '@types/estree': 1.0.5
-
eventemitter3@5.0.1: {}
- execa@8.0.1:
- dependencies:
- cross-spawn: 7.0.3
- get-stream: 8.0.1
- human-signals: 5.0.0
- is-stream: 3.0.0
- merge-stream: 2.0.0
- npm-run-path: 5.3.0
- onetime: 6.0.0
- signal-exit: 4.1.0
- strip-final-newline: 3.0.0
-
- extend-shallow@2.0.1:
- dependencies:
- is-extendable: 0.1.1
-
- extend@3.0.2: {}
-
fast-glob@3.3.2:
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -5303,20 +3448,6 @@ snapshots:
dependencies:
to-regex-range: 5.0.1
- find-up-simple@1.0.0: {}
-
- find-up@4.1.0:
- dependencies:
- locate-path: 5.0.0
- path-exists: 4.0.0
-
- find-yarn-workspace-root2@1.2.16:
- dependencies:
- micromatch: 4.0.7
- pkg-dir: 4.2.0
-
- flattie@1.1.1: {}
-
foreground-child@3.3.0:
dependencies:
cross-spawn: 7.0.3
@@ -5331,16 +3462,8 @@ snapshots:
gensync@1.0.0-beta.2: {}
- get-caller-file@2.0.5: {}
-
- get-east-asian-width@1.2.0: {}
-
get-nonce@1.0.1: {}
- get-stream@8.0.1: {}
-
- github-slugger@2.0.0: {}
-
glob-parent@5.1.2:
dependencies:
is-glob: 4.0.3
@@ -5366,121 +3489,16 @@ snapshots:
dependencies:
csstype: 3.1.3
- graceful-fs@4.2.11: {}
-
- gray-matter@4.0.3:
- dependencies:
- js-yaml: 3.14.1
- kind-of: 6.0.3
- section-matter: 1.0.0
- strip-bom-string: 1.0.0
-
has-flag@3.0.0: {}
hasown@2.0.2:
dependencies:
function-bind: 1.1.2
- hast-util-from-html@2.0.1:
- dependencies:
- '@types/hast': 3.0.4
- devlop: 1.1.0
- hast-util-from-parse5: 8.0.1
- parse5: 7.1.2
- vfile: 6.0.2
- vfile-message: 4.0.2
-
- hast-util-from-parse5@8.0.1:
- dependencies:
- '@types/hast': 3.0.4
- '@types/unist': 3.0.2
- devlop: 1.1.0
- hastscript: 8.0.0
- property-information: 6.5.0
- vfile: 6.0.2
- vfile-location: 5.0.3
- web-namespaces: 2.0.1
-
- hast-util-is-element@3.0.0:
- dependencies:
- '@types/hast': 3.0.4
-
- hast-util-parse-selector@4.0.0:
- dependencies:
- '@types/hast': 3.0.4
-
- hast-util-raw@9.0.4:
- dependencies:
- '@types/hast': 3.0.4
- '@types/unist': 3.0.2
- '@ungap/structured-clone': 1.2.0
- hast-util-from-parse5: 8.0.1
- hast-util-to-parse5: 8.0.0
- html-void-elements: 3.0.0
- mdast-util-to-hast: 13.2.0
- parse5: 7.1.2
- unist-util-position: 5.0.0
- unist-util-visit: 5.0.0
- vfile: 6.0.2
- web-namespaces: 2.0.1
- zwitch: 2.0.4
-
- hast-util-to-html@9.0.1:
- dependencies:
- '@types/hast': 3.0.4
- '@types/unist': 3.0.2
- ccount: 2.0.1
- comma-separated-tokens: 2.0.3
- hast-util-raw: 9.0.4
- hast-util-whitespace: 3.0.0
- html-void-elements: 3.0.0
- mdast-util-to-hast: 13.2.0
- property-information: 6.5.0
- space-separated-tokens: 2.0.2
- stringify-entities: 4.0.4
- zwitch: 2.0.4
-
- hast-util-to-parse5@8.0.0:
- dependencies:
- '@types/hast': 3.0.4
- comma-separated-tokens: 2.0.3
- devlop: 1.1.0
- property-information: 6.5.0
- space-separated-tokens: 2.0.2
- web-namespaces: 2.0.1
- zwitch: 2.0.4
-
- hast-util-to-text@4.0.2:
- dependencies:
- '@types/hast': 3.0.4
- '@types/unist': 3.0.2
- hast-util-is-element: 3.0.0
- unist-util-find-after: 5.0.0
-
- hast-util-whitespace@3.0.0:
- dependencies:
- '@types/hast': 3.0.4
-
- hastscript@8.0.0:
- dependencies:
- '@types/hast': 3.0.4
- comma-separated-tokens: 2.0.3
- hast-util-parse-selector: 4.0.0
- property-information: 6.5.0
- space-separated-tokens: 2.0.2
-
- html-escaper@3.0.3: {}
-
html-parse-stringify@3.0.1:
dependencies:
void-elements: 3.1.0
- html-void-elements@3.0.0: {}
-
- http-cache-semantics@4.1.1: {}
-
- human-signals@5.0.0: {}
-
i18next-resources-to-backend@1.2.1:
dependencies:
'@babel/runtime': 7.25.0
@@ -5491,15 +3509,10 @@ snapshots:
immer@10.1.1: {}
- import-meta-resolve@4.1.0: {}
-
invariant@2.2.4:
dependencies:
loose-envify: 1.4.0
- is-arrayish@0.3.2:
- optional: true
-
is-binary-path@2.1.0:
dependencies:
binary-extensions: 2.3.0
@@ -5508,10 +3521,6 @@ snapshots:
dependencies:
hasown: 2.0.2
- is-docker@3.0.0: {}
-
- is-extendable@0.1.1: {}
-
is-extglob@2.1.1: {}
is-fullwidth-code-point@3.0.0: {}
@@ -5522,28 +3531,10 @@ snapshots:
is-hotkey@0.2.0: {}
- is-inside-container@1.0.0:
- dependencies:
- is-docker: 3.0.0
-
- is-interactive@2.0.0: {}
-
is-number@7.0.0: {}
- is-plain-obj@4.1.0: {}
-
is-plain-object@5.0.0: {}
- is-stream@3.0.0: {}
-
- is-unicode-supported@1.3.0: {}
-
- is-unicode-supported@2.0.0: {}
-
- is-wsl@3.1.0:
- dependencies:
- is-inside-container: 1.0.0
-
isexe@2.0.0: {}
jackspeak@3.4.3:
@@ -5556,27 +3547,10 @@ snapshots:
js-tokens@4.0.0: {}
- js-yaml@3.14.1:
- dependencies:
- argparse: 1.0.10
- esprima: 4.0.1
-
- js-yaml@4.1.0:
- dependencies:
- argparse: 2.0.1
-
jsesc@2.5.2: {}
json5@2.2.3: {}
- jsonc-parser@2.3.1: {}
-
- kind-of@6.0.3: {}
-
- kleur@3.0.3: {}
-
- kleur@4.1.5: {}
-
light-bolt11-decoder@3.1.1:
dependencies:
'@scure/base': 1.1.1
@@ -5587,17 +3561,6 @@ snapshots:
lines-and-columns@1.2.4: {}
- load-yaml-file@0.2.0:
- dependencies:
- graceful-fs: 4.2.11
- js-yaml: 3.14.1
- pify: 4.0.1
- strip-bom: 3.0.0
-
- locate-path@5.0.0:
- dependencies:
- p-locate: 4.1.0
-
lodash.castarray@4.4.0: {}
lodash.isplainobject@4.0.6: {}
@@ -5606,13 +3569,6 @@ snapshots:
lodash@4.17.21: {}
- log-symbols@6.0.0:
- dependencies:
- chalk: 5.3.0
- is-unicode-supported: 1.3.0
-
- longest-streak@3.1.0: {}
-
loose-envify@1.4.0:
dependencies:
js-tokens: 4.0.0
@@ -5623,335 +3579,13 @@ snapshots:
dependencies:
yallist: 3.1.1
- magic-string@0.30.11:
- dependencies:
- '@jridgewell/sourcemap-codec': 1.5.0
-
- markdown-table@3.0.3: {}
-
- mdast-util-definitions@6.0.0:
- dependencies:
- '@types/mdast': 4.0.4
- '@types/unist': 3.0.2
- unist-util-visit: 5.0.0
-
- mdast-util-find-and-replace@3.0.1:
- dependencies:
- '@types/mdast': 4.0.4
- escape-string-regexp: 5.0.0
- unist-util-is: 6.0.0
- unist-util-visit-parents: 6.0.1
-
- mdast-util-from-markdown@2.0.1:
- dependencies:
- '@types/mdast': 4.0.4
- '@types/unist': 3.0.2
- decode-named-character-reference: 1.0.2
- devlop: 1.1.0
- mdast-util-to-string: 4.0.0
- micromark: 4.0.0
- micromark-util-decode-numeric-character-reference: 2.0.1
- micromark-util-decode-string: 2.0.0
- micromark-util-normalize-identifier: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
- unist-util-stringify-position: 4.0.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-gfm-autolink-literal@2.0.0:
- dependencies:
- '@types/mdast': 4.0.4
- ccount: 2.0.1
- devlop: 1.1.0
- mdast-util-find-and-replace: 3.0.1
- micromark-util-character: 2.1.0
-
- mdast-util-gfm-footnote@2.0.0:
- dependencies:
- '@types/mdast': 4.0.4
- devlop: 1.1.0
- mdast-util-from-markdown: 2.0.1
- mdast-util-to-markdown: 2.1.0
- micromark-util-normalize-identifier: 2.0.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-gfm-strikethrough@2.0.0:
- dependencies:
- '@types/mdast': 4.0.4
- mdast-util-from-markdown: 2.0.1
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-gfm-table@2.0.0:
- dependencies:
- '@types/mdast': 4.0.4
- devlop: 1.1.0
- markdown-table: 3.0.3
- mdast-util-from-markdown: 2.0.1
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-gfm-task-list-item@2.0.0:
- dependencies:
- '@types/mdast': 4.0.4
- devlop: 1.1.0
- mdast-util-from-markdown: 2.0.1
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-gfm@3.0.0:
- dependencies:
- mdast-util-from-markdown: 2.0.1
- mdast-util-gfm-autolink-literal: 2.0.0
- mdast-util-gfm-footnote: 2.0.0
- mdast-util-gfm-strikethrough: 2.0.0
- mdast-util-gfm-table: 2.0.0
- mdast-util-gfm-task-list-item: 2.0.0
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-phrasing@4.1.0:
- dependencies:
- '@types/mdast': 4.0.4
- unist-util-is: 6.0.0
-
- mdast-util-to-hast@13.2.0:
- dependencies:
- '@types/hast': 3.0.4
- '@types/mdast': 4.0.4
- '@ungap/structured-clone': 1.2.0
- devlop: 1.1.0
- micromark-util-sanitize-uri: 2.0.0
- trim-lines: 3.0.1
- unist-util-position: 5.0.0
- unist-util-visit: 5.0.0
- vfile: 6.0.2
-
- mdast-util-to-markdown@2.1.0:
- dependencies:
- '@types/mdast': 4.0.4
- '@types/unist': 3.0.2
- longest-streak: 3.1.0
- mdast-util-phrasing: 4.1.0
- mdast-util-to-string: 4.0.0
- micromark-util-decode-string: 2.0.0
- unist-util-visit: 5.0.0
- zwitch: 2.0.4
-
- mdast-util-to-string@4.0.0:
- dependencies:
- '@types/mdast': 4.0.4
-
- merge-stream@2.0.0: {}
-
merge2@1.4.1: {}
- micromark-core-commonmark@2.0.1:
- dependencies:
- decode-named-character-reference: 1.0.2
- devlop: 1.1.0
- micromark-factory-destination: 2.0.0
- micromark-factory-label: 2.0.0
- micromark-factory-space: 2.0.0
- micromark-factory-title: 2.0.0
- micromark-factory-whitespace: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-chunked: 2.0.0
- micromark-util-classify-character: 2.0.0
- micromark-util-html-tag-name: 2.0.0
- micromark-util-normalize-identifier: 2.0.0
- micromark-util-resolve-all: 2.0.0
- micromark-util-subtokenize: 2.0.1
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-autolink-literal@2.1.0:
- dependencies:
- micromark-util-character: 2.1.0
- micromark-util-sanitize-uri: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-footnote@2.1.0:
- dependencies:
- devlop: 1.1.0
- micromark-core-commonmark: 2.0.1
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-normalize-identifier: 2.0.0
- micromark-util-sanitize-uri: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-strikethrough@2.1.0:
- dependencies:
- devlop: 1.1.0
- micromark-util-chunked: 2.0.0
- micromark-util-classify-character: 2.0.0
- micromark-util-resolve-all: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-table@2.1.0:
- dependencies:
- devlop: 1.1.0
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-tagfilter@2.0.0:
- dependencies:
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-task-list-item@2.1.0:
- dependencies:
- devlop: 1.1.0
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm@3.0.0:
- dependencies:
- micromark-extension-gfm-autolink-literal: 2.1.0
- micromark-extension-gfm-footnote: 2.1.0
- micromark-extension-gfm-strikethrough: 2.1.0
- micromark-extension-gfm-table: 2.1.0
- micromark-extension-gfm-tagfilter: 2.0.0
- micromark-extension-gfm-task-list-item: 2.1.0
- micromark-util-combine-extensions: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-factory-destination@2.0.0:
- dependencies:
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-factory-label@2.0.0:
- dependencies:
- devlop: 1.1.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-factory-space@2.0.0:
- dependencies:
- micromark-util-character: 2.1.0
- micromark-util-types: 2.0.0
-
- micromark-factory-title@2.0.0:
- dependencies:
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-factory-whitespace@2.0.0:
- dependencies:
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-util-character@2.1.0:
- dependencies:
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-util-chunked@2.0.0:
- dependencies:
- micromark-util-symbol: 2.0.0
-
- micromark-util-classify-character@2.0.0:
- dependencies:
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-util-combine-extensions@2.0.0:
- dependencies:
- micromark-util-chunked: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-util-decode-numeric-character-reference@2.0.1:
- dependencies:
- micromark-util-symbol: 2.0.0
-
- micromark-util-decode-string@2.0.0:
- dependencies:
- decode-named-character-reference: 1.0.2
- micromark-util-character: 2.1.0
- micromark-util-decode-numeric-character-reference: 2.0.1
- micromark-util-symbol: 2.0.0
-
- micromark-util-encode@2.0.0: {}
-
- micromark-util-html-tag-name@2.0.0: {}
-
- micromark-util-normalize-identifier@2.0.0:
- dependencies:
- micromark-util-symbol: 2.0.0
-
- micromark-util-resolve-all@2.0.0:
- dependencies:
- micromark-util-types: 2.0.0
-
- micromark-util-sanitize-uri@2.0.0:
- dependencies:
- micromark-util-character: 2.1.0
- micromark-util-encode: 2.0.0
- micromark-util-symbol: 2.0.0
-
- micromark-util-subtokenize@2.0.1:
- dependencies:
- devlop: 1.1.0
- micromark-util-chunked: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-util-symbol@2.0.0: {}
-
- micromark-util-types@2.0.0: {}
-
- micromark@4.0.0:
- dependencies:
- '@types/debug': 4.1.12
- debug: 4.3.6
- decode-named-character-reference: 1.0.2
- devlop: 1.1.0
- micromark-core-commonmark: 2.0.1
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-chunked: 2.0.0
- micromark-util-combine-extensions: 2.0.0
- micromark-util-decode-numeric-character-reference: 2.0.1
- micromark-util-encode: 2.0.0
- micromark-util-normalize-identifier: 2.0.0
- micromark-util-resolve-all: 2.0.0
- micromark-util-sanitize-uri: 2.0.0
- micromark-util-subtokenize: 2.0.1
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
- transitivePeerDependencies:
- - supports-color
-
micromatch@4.0.7:
dependencies:
braces: 3.0.3
picomatch: 2.3.1
- mimic-fn@2.1.0: {}
-
- mimic-fn@4.0.0: {}
-
mini-svg-data-uri@1.4.4: {}
minidenticons@4.2.1: {}
@@ -5962,12 +3596,8 @@ snapshots:
minipass@7.1.2: {}
- mrmime@2.0.0: {}
-
ms@2.1.2: {}
- muggle-string@0.4.1: {}
-
mz@2.7.0:
dependencies:
any-promise: 1.3.0
@@ -5978,10 +3608,6 @@ snapshots:
nanoid@5.0.7: {}
- nlcst-to-string@4.0.0:
- dependencies:
- '@types/nlcst': 2.0.3
-
node-releases@2.0.18: {}
normalize-path@3.0.0: {}
@@ -6014,78 +3640,14 @@ snapshots:
nostr-wasm@0.1.0:
optional: true
- npm-run-path@5.3.0:
- dependencies:
- path-key: 4.0.0
-
object-assign@4.1.1: {}
object-hash@3.0.0: {}
- onetime@5.1.2:
- dependencies:
- mimic-fn: 2.1.0
-
- onetime@6.0.0:
- dependencies:
- mimic-fn: 4.0.0
-
- ora@8.0.1:
- dependencies:
- chalk: 5.3.0
- cli-cursor: 4.0.0
- cli-spinners: 2.9.2
- is-interactive: 2.0.0
- is-unicode-supported: 2.0.0
- log-symbols: 6.0.0
- stdin-discarder: 0.2.2
- string-width: 7.2.0
- strip-ansi: 7.1.0
-
- p-limit@2.3.0:
- dependencies:
- p-try: 2.2.0
-
- p-limit@6.1.0:
- dependencies:
- yocto-queue: 1.1.1
-
- p-locate@4.1.0:
- dependencies:
- p-limit: 2.3.0
-
- p-queue@8.0.1:
- dependencies:
- eventemitter3: 5.0.1
- p-timeout: 6.1.2
-
- p-timeout@6.1.2: {}
-
- p-try@2.2.0: {}
-
package-json-from-dist@1.0.0: {}
- parse-latin@7.0.0:
- dependencies:
- '@types/nlcst': 2.0.3
- '@types/unist': 3.0.2
- nlcst-to-string: 4.0.0
- unist-util-modify-children: 4.0.0
- unist-util-visit-children: 3.0.0
- vfile: 6.0.2
-
- parse5@7.1.2:
- dependencies:
- entities: 4.5.0
-
- path-browserify@1.0.1: {}
-
- path-exists@4.0.0: {}
-
path-key@3.1.1: {}
- path-key@4.0.0: {}
-
path-parse@1.0.7: {}
path-scurry@1.11.1:
@@ -6093,22 +3655,14 @@ snapshots:
lru-cache: 10.4.3
minipass: 7.1.2
- path-to-regexp@6.2.2: {}
-
picocolors@1.0.1: {}
picomatch@2.3.1: {}
pify@2.3.0: {}
- pify@4.0.1: {}
-
pirates@4.0.6: {}
- pkg-dir@4.2.0:
- dependencies:
- find-up: 4.1.0
-
postcss-import@15.1.0(postcss@8.4.41):
dependencies:
postcss: 8.4.41
@@ -6151,23 +3705,8 @@ snapshots:
picocolors: 1.0.1
source-map-js: 1.2.0
- preferred-pm@4.0.0:
- dependencies:
- find-up-simple: 1.0.0
- find-yarn-workspace-root2: 1.2.16
- which-pm: 3.0.0
-
prettier@3.3.3: {}
- prismjs@1.29.0: {}
-
- prompts@2.4.2:
- dependencies:
- kleur: 3.0.3
- sisteransi: 1.0.5
-
- property-information@6.5.0: {}
-
qrcode-generator@1.4.4: {}
queue-microtask@1.2.3: {}
@@ -6214,10 +3753,6 @@ snapshots:
optionalDependencies:
'@types/react': 18.3.3
- react-snap-carousel@0.4.0(react@18.3.1):
- dependencies:
- react: 18.3.1
-
react-string-replace@1.1.1: {}
react-style-singleton@2.2.1(@types/react@18.3.3)(react@18.3.1):
@@ -6243,112 +3778,12 @@ snapshots:
regenerator-runtime@0.14.1: {}
- rehype-parse@9.0.0:
- dependencies:
- '@types/hast': 3.0.4
- hast-util-from-html: 2.0.1
- unified: 11.0.5
-
- rehype-raw@7.0.0:
- dependencies:
- '@types/hast': 3.0.4
- hast-util-raw: 9.0.4
- vfile: 6.0.2
-
- rehype-stringify@10.0.0:
- dependencies:
- '@types/hast': 3.0.4
- hast-util-to-html: 9.0.1
- unified: 11.0.5
-
- rehype@13.0.1:
- dependencies:
- '@types/hast': 3.0.4
- rehype-parse: 9.0.0
- rehype-stringify: 10.0.0
- unified: 11.0.5
-
- remark-gfm@4.0.0:
- dependencies:
- '@types/mdast': 4.0.4
- mdast-util-gfm: 3.0.0
- micromark-extension-gfm: 3.0.0
- remark-parse: 11.0.0
- remark-stringify: 11.0.0
- unified: 11.0.5
- transitivePeerDependencies:
- - supports-color
-
- remark-parse@11.0.0:
- dependencies:
- '@types/mdast': 4.0.4
- mdast-util-from-markdown: 2.0.1
- micromark-util-types: 2.0.0
- unified: 11.0.5
- transitivePeerDependencies:
- - supports-color
-
- remark-rehype@11.1.0:
- dependencies:
- '@types/hast': 3.0.4
- '@types/mdast': 4.0.4
- mdast-util-to-hast: 13.2.0
- unified: 11.0.5
- vfile: 6.0.2
-
- remark-smartypants@3.0.2:
- dependencies:
- retext: 9.0.0
- retext-smartypants: 6.1.0
- unified: 11.0.5
- unist-util-visit: 5.0.0
-
- remark-stringify@11.0.0:
- dependencies:
- '@types/mdast': 4.0.4
- mdast-util-to-markdown: 2.1.0
- unified: 11.0.5
-
- request-light@0.7.0: {}
-
- require-directory@2.1.1: {}
-
resolve@1.22.8:
dependencies:
is-core-module: 2.15.0
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
- restore-cursor@4.0.0:
- dependencies:
- onetime: 5.1.2
- signal-exit: 3.0.7
-
- retext-latin@4.0.0:
- dependencies:
- '@types/nlcst': 2.0.3
- parse-latin: 7.0.0
- unified: 11.0.5
-
- retext-smartypants@6.1.0:
- dependencies:
- '@types/nlcst': 2.0.3
- nlcst-to-string: 4.0.0
- unist-util-visit: 5.0.0
-
- retext-stringify@4.0.0:
- dependencies:
- '@types/nlcst': 2.0.3
- nlcst-to-string: 4.0.0
- unified: 11.0.5
-
- retext@9.0.0:
- dependencies:
- '@types/nlcst': 2.0.3
- retext-latin: 4.0.0
- retext-stringify: 4.0.0
- unified: 11.0.5
-
reusify@1.0.4: {}
rollup@4.20.0:
@@ -6381,72 +3816,20 @@ snapshots:
dependencies:
loose-envify: 1.4.0
- schema-dts@1.1.2(typescript@5.5.4):
- dependencies:
- typescript: 5.5.4
-
scroll-into-view-if-needed@3.1.0:
dependencies:
compute-scroll-into-view: 3.1.0
- section-matter@1.0.0:
- dependencies:
- extend-shallow: 2.0.1
- kind-of: 6.0.3
-
semver@6.3.1: {}
- semver@7.6.3: {}
-
- sharp@0.33.4:
- dependencies:
- color: 4.2.3
- detect-libc: 2.0.3
- semver: 7.6.3
- optionalDependencies:
- '@img/sharp-darwin-arm64': 0.33.4
- '@img/sharp-darwin-x64': 0.33.4
- '@img/sharp-libvips-darwin-arm64': 1.0.2
- '@img/sharp-libvips-darwin-x64': 1.0.2
- '@img/sharp-libvips-linux-arm': 1.0.2
- '@img/sharp-libvips-linux-arm64': 1.0.2
- '@img/sharp-libvips-linux-s390x': 1.0.2
- '@img/sharp-libvips-linux-x64': 1.0.2
- '@img/sharp-libvips-linuxmusl-arm64': 1.0.2
- '@img/sharp-libvips-linuxmusl-x64': 1.0.2
- '@img/sharp-linux-arm': 0.33.4
- '@img/sharp-linux-arm64': 0.33.4
- '@img/sharp-linux-s390x': 0.33.4
- '@img/sharp-linux-x64': 0.33.4
- '@img/sharp-linuxmusl-arm64': 0.33.4
- '@img/sharp-linuxmusl-x64': 0.33.4
- '@img/sharp-wasm32': 0.33.4
- '@img/sharp-win32-ia32': 0.33.4
- '@img/sharp-win32-x64': 0.33.4
- optional: true
-
shebang-command@2.0.0:
dependencies:
shebang-regex: 3.0.0
shebang-regex@3.0.0: {}
- shiki@1.12.1:
- dependencies:
- '@shikijs/core': 1.12.1
- '@types/hast': 3.0.4
-
- signal-exit@3.0.7: {}
-
signal-exit@4.1.0: {}
- simple-swizzle@0.2.2:
- dependencies:
- is-arrayish: 0.3.2
- optional: true
-
- sisteransi@1.0.5: {}
-
slate-react@0.107.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(slate@0.103.0):
dependencies:
'@juggle/resize-observer': 3.4.0
@@ -6470,12 +3853,6 @@ snapshots:
source-map-js@1.2.0: {}
- space-separated-tokens@2.0.2: {}
-
- sprintf-js@1.0.3: {}
-
- stdin-discarder@0.2.2: {}
-
string-width@4.2.3:
dependencies:
emoji-regex: 8.0.0
@@ -6488,17 +3865,6 @@ snapshots:
emoji-regex: 9.2.2
strip-ansi: 7.1.0
- string-width@7.2.0:
- dependencies:
- emoji-regex: 10.3.0
- get-east-asian-width: 1.2.0
- strip-ansi: 7.1.0
-
- stringify-entities@4.0.4:
- dependencies:
- character-entities-html4: 2.1.0
- character-entities-legacy: 3.0.0
-
strip-ansi@6.0.1:
dependencies:
ansi-regex: 5.0.1
@@ -6507,12 +3873,6 @@ snapshots:
dependencies:
ansi-regex: 6.0.1
- strip-bom-string@1.0.0: {}
-
- strip-bom@3.0.0: {}
-
- strip-final-newline@3.0.0: {}
-
sucrase@3.35.0:
dependencies:
'@jridgewell/gen-mapping': 0.3.5
@@ -6531,7 +3891,7 @@ snapshots:
tailwind-gradient-mask-image@1.2.0: {}
- tailwind-merge@2.4.0: {}
+ tailwind-merge@2.5.0: {}
tailwind-scrollbar@3.1.0(tailwindcss@3.4.9):
dependencies:
@@ -6588,10 +3948,6 @@ snapshots:
dependencies:
is-number: 7.0.0
- trim-lines@3.0.1: {}
-
- trough@2.2.0: {}
-
ts-interface-checker@0.1.13: {}
tsconfck@3.1.1(typescript@5.5.4):
@@ -6600,95 +3956,8 @@ snapshots:
tslib@2.6.3: {}
- turbo-darwin-64@2.0.12:
- optional: true
-
- turbo-darwin-arm64@2.0.12:
- optional: true
-
- turbo-linux-64@2.0.12:
- optional: true
-
- turbo-linux-arm64@2.0.12:
- optional: true
-
- turbo-windows-64@2.0.12:
- optional: true
-
- turbo-windows-arm64@2.0.12:
- optional: true
-
- turbo@2.0.12:
- optionalDependencies:
- turbo-darwin-64: 2.0.12
- turbo-darwin-arm64: 2.0.12
- turbo-linux-64: 2.0.12
- turbo-linux-arm64: 2.0.12
- turbo-windows-64: 2.0.12
- turbo-windows-arm64: 2.0.12
-
- type-fest@2.19.0: {}
-
- typesafe-path@0.2.2: {}
-
- typescript-auto-import-cache@0.3.3:
- dependencies:
- semver: 7.6.3
-
typescript@5.5.4: {}
- unified@11.0.5:
- dependencies:
- '@types/unist': 3.0.2
- bail: 2.0.2
- devlop: 1.1.0
- extend: 3.0.2
- is-plain-obj: 4.1.0
- trough: 2.2.0
- vfile: 6.0.2
-
- unist-util-find-after@5.0.0:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-is: 6.0.0
-
- unist-util-is@6.0.0:
- dependencies:
- '@types/unist': 3.0.2
-
- unist-util-modify-children@4.0.0:
- dependencies:
- '@types/unist': 3.0.2
- array-iterate: 2.0.1
-
- unist-util-position@5.0.0:
- dependencies:
- '@types/unist': 3.0.2
-
- unist-util-remove-position@5.0.0:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-visit: 5.0.0
-
- unist-util-stringify-position@4.0.0:
- dependencies:
- '@types/unist': 3.0.2
-
- unist-util-visit-children@3.0.0:
- dependencies:
- '@types/unist': 3.0.2
-
- unist-util-visit-parents@6.0.1:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-is: 6.0.0
-
- unist-util-visit@5.0.0:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-is: 6.0.0
- unist-util-visit-parents: 6.0.1
-
unplugin@1.12.1:
dependencies:
acorn: 8.12.1
@@ -6731,23 +4000,7 @@ snapshots:
util-deprecate@1.0.2: {}
- vfile-location@5.0.3:
- dependencies:
- '@types/unist': 3.0.2
- vfile: 6.0.2
-
- vfile-message@4.0.2:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-stringify-position: 4.0.0
-
- vfile@6.0.2:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-stringify-position: 4.0.0
- vfile-message: 4.0.2
-
- virtua@0.33.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+ virtua@0.33.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
optionalDependencies:
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
@@ -6771,116 +4024,16 @@ snapshots:
optionalDependencies:
fsevents: 2.3.3
- vitefu@0.2.5(vite@5.4.0):
- optionalDependencies:
- vite: 5.4.0
-
void-elements@3.1.0: {}
- volar-service-css@0.0.59(@volar/language-service@2.4.0-alpha.18):
- dependencies:
- vscode-css-languageservice: 6.3.0
- vscode-languageserver-textdocument: 1.0.12
- vscode-uri: 3.0.8
- optionalDependencies:
- '@volar/language-service': 2.4.0-alpha.18
-
- volar-service-emmet@0.0.59(@volar/language-service@2.4.0-alpha.18):
- dependencies:
- '@emmetio/css-parser': 0.4.0
- '@emmetio/html-matcher': 1.3.0
- '@vscode/emmet-helper': 2.9.3
- vscode-uri: 3.0.8
- optionalDependencies:
- '@volar/language-service': 2.4.0-alpha.18
-
- volar-service-html@0.0.59(@volar/language-service@2.4.0-alpha.18):
- dependencies:
- vscode-html-languageservice: 5.3.0
- vscode-languageserver-textdocument: 1.0.12
- vscode-uri: 3.0.8
- optionalDependencies:
- '@volar/language-service': 2.4.0-alpha.18
-
- volar-service-prettier@0.0.59(@volar/language-service@2.4.0-alpha.18)(prettier@3.3.3):
- dependencies:
- vscode-uri: 3.0.8
- optionalDependencies:
- '@volar/language-service': 2.4.0-alpha.18
- prettier: 3.3.3
-
- volar-service-typescript-twoslash-queries@0.0.59(@volar/language-service@2.4.0-alpha.18):
- dependencies:
- vscode-uri: 3.0.8
- optionalDependencies:
- '@volar/language-service': 2.4.0-alpha.18
-
- volar-service-typescript@0.0.59(@volar/language-service@2.4.0-alpha.18):
- dependencies:
- path-browserify: 1.0.1
- semver: 7.6.3
- typescript-auto-import-cache: 0.3.3
- vscode-languageserver-textdocument: 1.0.12
- vscode-nls: 5.2.0
- vscode-uri: 3.0.8
- optionalDependencies:
- '@volar/language-service': 2.4.0-alpha.18
-
- vscode-css-languageservice@6.3.0:
- dependencies:
- '@vscode/l10n': 0.0.18
- vscode-languageserver-textdocument: 1.0.12
- vscode-languageserver-types: 3.17.5
- vscode-uri: 3.0.8
-
- vscode-html-languageservice@5.3.0:
- dependencies:
- '@vscode/l10n': 0.0.18
- vscode-languageserver-textdocument: 1.0.12
- vscode-languageserver-types: 3.17.5
- vscode-uri: 3.0.8
-
- vscode-jsonrpc@8.2.0: {}
-
- vscode-languageserver-protocol@3.17.5:
- dependencies:
- vscode-jsonrpc: 8.2.0
- vscode-languageserver-types: 3.17.5
-
- vscode-languageserver-textdocument@1.0.12: {}
-
- vscode-languageserver-types@3.17.5: {}
-
- vscode-languageserver@9.0.1:
- dependencies:
- vscode-languageserver-protocol: 3.17.5
-
- vscode-nls@5.2.0: {}
-
- vscode-uri@2.1.2: {}
-
- vscode-uri@3.0.8: {}
-
- web-namespaces@2.0.1: {}
-
webpack-sources@3.2.3: {}
webpack-virtual-modules@0.6.2: {}
- which-pm-runs@1.1.0: {}
-
- which-pm@3.0.0:
- dependencies:
- load-yaml-file: 0.2.0
-
which@2.0.2:
dependencies:
isexe: 2.0.0
- widest-line@4.0.1:
- dependencies:
- string-width: 5.1.2
-
wrap-ansi@7.0.0:
dependencies:
ansi-styles: 4.3.0
@@ -6893,30 +4046,10 @@ snapshots:
string-width: 5.1.2
strip-ansi: 7.1.0
- y18n@5.0.8: {}
-
yallist@3.1.1: {}
yaml@2.5.0: {}
- yargs-parser@21.1.1: {}
-
- yargs@17.7.2:
- dependencies:
- cliui: 8.0.1
- escalade: 3.1.2
- get-caller-file: 2.0.5
- require-directory: 2.1.1
- string-width: 4.2.3
- y18n: 5.0.8
- yargs-parser: 21.1.1
-
- yocto-queue@1.1.1: {}
-
- zod-to-json-schema@3.23.2(zod@3.23.8):
- dependencies:
- zod: 3.23.8
-
zod@3.23.8: {}
zustand@4.5.4(@types/react@18.3.3)(immer@10.1.1)(react@18.3.1):
@@ -6926,5 +4059,3 @@ snapshots:
'@types/react': 18.3.3
immer: 10.1.1
react: 18.3.1
-
- zwitch@2.0.4: {}
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
deleted file mode 100644
index 3ff5faaa..00000000
--- a/pnpm-workspace.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-packages:
- - "apps/*"
- - "packages/*"
diff --git a/apps/desktop2/postcss.config.cjs b/postcss.config.cjs
similarity index 100%
rename from apps/desktop2/postcss.config.cjs
rename to postcss.config.cjs
diff --git a/apps/desktop2/public/.keep b/public/.keep
similarity index 100%
rename from apps/desktop2/public/.keep
rename to public/.keep
diff --git a/apps/desktop2/public/404.jpg b/public/404.jpg
similarity index 100%
rename from apps/desktop2/public/404.jpg
rename to public/404.jpg
diff --git a/apps/desktop2/public/antenas.png b/public/antenas.png
similarity index 100%
rename from apps/desktop2/public/antenas.png
rename to public/antenas.png
diff --git a/apps/desktop2/public/antenas@2x.png b/public/antenas@2x.png
similarity index 100%
rename from apps/desktop2/public/antenas@2x.png
rename to public/antenas@2x.png
diff --git a/apps/desktop2/public/foryou.png b/public/foryou.png
similarity index 100%
rename from apps/desktop2/public/foryou.png
rename to public/foryou.png
diff --git a/apps/desktop2/public/foryou@2x.png b/public/foryou@2x.png
similarity index 100%
rename from apps/desktop2/public/foryou@2x.png
rename to public/foryou@2x.png
diff --git a/apps/desktop2/public/global.png b/public/global.png
similarity index 100%
rename from apps/desktop2/public/global.png
rename to public/global.png
diff --git a/apps/desktop2/public/global@2x.png b/public/global@2x.png
similarity index 100%
rename from apps/desktop2/public/global@2x.png
rename to public/global@2x.png
diff --git a/apps/desktop2/public/group.png b/public/group.png
similarity index 100%
rename from apps/desktop2/public/group.png
rename to public/group.png
diff --git a/apps/desktop2/public/group@2x.png b/public/group@2x.png
similarity index 100%
rename from apps/desktop2/public/group@2x.png
rename to public/group@2x.png
diff --git a/apps/desktop2/public/icon.jpeg b/public/icon.jpeg
similarity index 100%
rename from apps/desktop2/public/icon.jpeg
rename to public/icon.jpeg
diff --git a/apps/desktop2/public/newsfeed.png b/public/newsfeed.png
similarity index 100%
rename from apps/desktop2/public/newsfeed.png
rename to public/newsfeed.png
diff --git a/apps/desktop2/public/newsfeed@2x.png b/public/newsfeed@2x.png
similarity index 100%
rename from apps/desktop2/public/newsfeed@2x.png
rename to public/newsfeed@2x.png
diff --git a/apps/desktop2/public/poster_1.jpeg b/public/poster_1.jpeg
similarity index 100%
rename from apps/desktop2/public/poster_1.jpeg
rename to public/poster_1.jpeg
diff --git a/apps/desktop2/public/poster_2.jpeg b/public/poster_2.jpeg
similarity index 100%
rename from apps/desktop2/public/poster_2.jpeg
rename to public/poster_2.jpeg
diff --git a/apps/desktop2/public/poster_3.jpeg b/public/poster_3.jpeg
similarity index 100%
rename from apps/desktop2/public/poster_3.jpeg
rename to public/poster_3.jpeg
diff --git a/apps/desktop2/public/poster_4.jpeg b/public/poster_4.jpeg
similarity index 100%
rename from apps/desktop2/public/poster_4.jpeg
rename to public/poster_4.jpeg
diff --git a/apps/desktop2/public/trending.png b/public/trending.png
similarity index 100%
rename from apps/desktop2/public/trending.png
rename to public/trending.png
diff --git a/apps/desktop2/public/trending@2x.png b/public/trending@2x.png
similarity index 100%
rename from apps/desktop2/public/trending@2x.png
rename to public/trending@2x.png
diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs
index f6a38008..3abe5164 100644
--- a/src-tauri/src/main.rs
+++ b/src-tauri/src/main.rs
@@ -139,7 +139,7 @@ fn main() {
]);
builder
- .export(Typescript::default(), "../packages/system/src/commands.ts")
+ .export(Typescript::default(), "../src/commands.gen.ts")
.expect("Failed to export typescript bindings");
#[cfg(target_os = "macos")]
diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json
index 876f0a4b..c8c6f64a 100644
--- a/src-tauri/tauri.conf.json
+++ b/src-tauri/tauri.conf.json
@@ -4,9 +4,9 @@
"version": "4.0.15",
"identifier": "nu.lume.Lume",
"build": {
- "beforeBuildCommand": "pnpm desktop:build",
- "beforeDevCommand": "pnpm desktop:dev",
+ "beforeDevCommand": "pnpm dev",
"devUrl": "http://localhost:3000",
+ "beforeBuildCommand": "pnpm build",
"frontendDist": "../dist"
},
"app": {
diff --git a/apps/desktop2/src/app.css b/src/app.css
similarity index 100%
rename from apps/desktop2/src/app.css
rename to src/app.css
diff --git a/apps/desktop2/src/app.tsx b/src/app.tsx
similarity index 93%
rename from apps/desktop2/src/app.tsx
rename to src/app.tsx
index f65c8ff6..4d99e2d7 100644
--- a/apps/desktop2/src/app.tsx
+++ b/src/app.tsx
@@ -3,11 +3,12 @@ import { RouterProvider, createRouter } from "@tanstack/react-router";
import { type } from "@tauri-apps/plugin-os";
import { StrictMode } from "react";
import ReactDOM from "react-dom/client";
-import { routeTree } from "./router.gen"; // auto generated file
+import { routeTree } from "./routes.gen"; // auto generated file
import "./app.css";
const queryClient = new QueryClient();
const platform = type();
+
const router = createRouter({
routeTree,
context: { queryClient, platform },
diff --git a/packages/system/src/commands.ts b/src/commands.gen.ts
similarity index 100%
rename from packages/system/src/commands.ts
rename to src/commands.gen.ts
diff --git a/packages/utils/src/formater.ts b/src/commons.ts
similarity index 52%
rename from packages/utils/src/formater.ts
rename to src/commons.ts
index d06d90e9..eb189045 100644
--- a/packages/utils/src/formater.ts
+++ b/src/commons.ts
@@ -1,7 +1,18 @@
+import type { Contact } from "@/types";
+import { ask, message } from "@tauri-apps/plugin-dialog";
+import { relaunch } from "@tauri-apps/plugin-process";
+import { check } from "@tauri-apps/plugin-updater";
import { BitcoinUnit } from "bitcoin-units";
+import { type ClassValue, clsx } from "clsx";
import dayjs from "dayjs";
import relativeTime from "dayjs/plugin/relativeTime";
import updateLocale from "dayjs/plugin/updateLocale";
+import { decode } from "light-bolt11-decoder";
+import type { ReactNode } from "react";
+import ReactDOM from "react-dom";
+import { type BaseEditor, Transforms } from "slate";
+import { ReactEditor } from "slate-react";
+import { twMerge } from "tailwind-merge";
import { AUDIOS, IMAGES, VIDEOS } from "./constants";
dayjs.extend(relativeTime);
@@ -20,6 +31,78 @@ dayjs.updateLocale("en", {
},
});
+export function cn(...inputs: ClassValue[]) {
+ return twMerge(clsx(inputs));
+}
+
+export const Portal = ({ children }: { children?: ReactNode }) => {
+ return typeof document === "object"
+ ? ReactDOM.createPortal(children, document.body)
+ : null;
+};
+
+export const isImagePath = (path: string) => {
+ for (const suffix of ["jpg", "jpeg", "gif", "png", "webp", "avif", "tiff"]) {
+ if (path.endsWith(suffix)) return true;
+ }
+ return false;
+};
+
+export const isImageUrl = (url: string) => {
+ try {
+ if (!url) return false;
+ const ext = new URL(url).pathname.split(".").pop();
+ return ["jpg", "jpeg", "gif", "png", "webp", "avif", "tiff"].includes(ext);
+ } catch {
+ return false;
+ }
+};
+
+export const insertImage = (editor: ReactEditor | BaseEditor, url: string) => {
+ const text = { text: "" };
+ const image = [
+ {
+ type: "image",
+ url,
+ children: [text],
+ },
+ ];
+ const extraText = [
+ {
+ type: "paragraph",
+ children: [text],
+ },
+ ];
+
+ // @ts-ignore, idk
+ ReactEditor.focus(editor);
+ Transforms.insertNodes(editor, image);
+ Transforms.insertNodes(editor, extraText);
+};
+
+export const insertNostrEvent = (
+ editor: ReactEditor | BaseEditor,
+ eventId: string,
+) => {
+ const text = { text: "" };
+ const event = [
+ {
+ type: "event",
+ eventId: `nostr:${eventId}`,
+ children: [text],
+ },
+ ];
+ const extraText = [
+ {
+ type: "paragraph",
+ children: [text],
+ },
+ ];
+
+ Transforms.insertNodes(editor, event);
+ Transforms.insertNodes(editor, extraText);
+};
+
export function formatCreatedAt(time: number, message = false) {
let formated: string;
@@ -140,3 +223,53 @@ export function getBitcoinDisplayValues(satoshis: number) {
bitcoinDecimal,
};
}
+
+export function decodeZapInvoice(tags?: string[][]) {
+ const invoice = tags.find((tag) => tag[0] === "bolt11")?.[1];
+ if (!invoice) return;
+
+ const decodedInvoice = decode(invoice);
+ const amountSection = decodedInvoice.sections.find(
+ (s: { name: string }) => s.name === "amount",
+ );
+
+ const amount = Number.parseInt(amountSection.value);
+ const displayValue = getBitcoinDisplayValues(amount);
+
+ return displayValue;
+}
+
+export async function checkForAppUpdates(silent: boolean) {
+ const update = await check();
+
+ if (!update) {
+ if (silent) return;
+
+ await message("You are on the latest version. Stay awesome!", {
+ title: "No Update Available",
+ kind: "info",
+ okLabel: "OK",
+ });
+
+ return;
+ }
+
+ if (update?.available) {
+ const yes = await ask(
+ `Update to ${update.version} is available!\n\nRelease notes: ${update.body}`,
+ {
+ title: "Update Available",
+ kind: "info",
+ okLabel: "Update",
+ cancelLabel: "Cancel",
+ },
+ );
+
+ if (yes) {
+ await update.downloadAndInstall();
+ await relaunch();
+ }
+
+ return;
+ }
+}
diff --git a/apps/desktop2/src/components/avatarUploader.tsx b/src/components/avatarUploader.tsx
similarity index 87%
rename from apps/desktop2/src/components/avatarUploader.tsx
rename to src/components/avatarUploader.tsx
index a3e4ce2c..02fdce04 100644
--- a/apps/desktop2/src/components/avatarUploader.tsx
+++ b/src/components/avatarUploader.tsx
@@ -1,6 +1,6 @@
-import { NostrQuery } from "@lume/system";
-import { Spinner } from "@lume/ui";
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
+import { Spinner } from "@/components";
+import { NostrQuery } from "@/system";
import { message } from "@tauri-apps/plugin-dialog";
import {
type Dispatch,
diff --git a/packages/ui/src/box.tsx b/src/components/box.tsx
similarity index 94%
rename from packages/ui/src/box.tsx
rename to src/components/box.tsx
index 017723fd..1228b08c 100644
--- a/packages/ui/src/box.tsx
+++ b/src/components/box.tsx
@@ -1,4 +1,4 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
import type { ReactNode } from "react";
export function Box({
diff --git a/apps/desktop2/src/components/column.tsx b/src/components/column.tsx
similarity index 97%
rename from apps/desktop2/src/components/column.tsx
rename to src/components/column.tsx
index 13ae0704..76ac6aee 100644
--- a/apps/desktop2/src/components/column.tsx
+++ b/src/components/column.tsx
@@ -1,5 +1,5 @@
-import { CheckIcon, HorizontalDotsIcon } from "@lume/icons";
-import type { LumeColumn } from "@lume/types";
+import type { LumeColumn } from "@/types";
+import { CheckIcon, HorizontalDotsIcon } from "@/components";
import { invoke } from "@tauri-apps/api/core";
import { listen } from "@tauri-apps/api/event";
import { Menu, MenuItem, PredefinedMenuItem } from "@tauri-apps/api/menu";
diff --git a/packages/ui/src/container.tsx b/src/components/container.tsx
similarity index 93%
rename from packages/ui/src/container.tsx
rename to src/components/container.tsx
index ad080e0d..44ddce47 100644
--- a/packages/ui/src/container.tsx
+++ b/src/components/container.tsx
@@ -1,4 +1,4 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
import type { ReactNode } from "react";
export function Container({
diff --git a/apps/desktop2/src/components/conversation.tsx b/src/components/conversation.tsx
similarity index 91%
rename from apps/desktop2/src/components/conversation.tsx
rename to src/components/conversation.tsx
index e8a01cc2..316957c7 100644
--- a/apps/desktop2/src/components/conversation.tsx
+++ b/src/components/conversation.tsx
@@ -1,7 +1,7 @@
+import { cn } from "@/commons";
+import { ThreadIcon } from "@/components";
import { Note } from "@/components/note";
-import { ThreadIcon } from "@lume/icons";
-import type { LumeEvent } from "@lume/system";
-import { cn } from "@lume/utils";
+import type { LumeEvent } from "@/system";
import { memo, useMemo } from "react";
export const Conversation = memo(function Conversation({
diff --git a/packages/icons/src/addMedia.tsx b/src/components/icons/addMedia.tsx
similarity index 100%
rename from packages/icons/src/addMedia.tsx
rename to src/components/icons/addMedia.tsx
diff --git a/packages/icons/src/addWidget.tsx b/src/components/icons/addWidget.tsx
similarity index 100%
rename from packages/icons/src/addWidget.tsx
rename to src/components/icons/addWidget.tsx
diff --git a/packages/icons/src/advancedSettings.tsx b/src/components/icons/advancedSettings.tsx
similarity index 100%
rename from packages/icons/src/advancedSettings.tsx
rename to src/components/icons/advancedSettings.tsx
diff --git a/packages/icons/src/alby.tsx b/src/components/icons/alby.tsx
similarity index 100%
rename from packages/icons/src/alby.tsx
rename to src/components/icons/alby.tsx
diff --git a/packages/icons/src/announcement.tsx b/src/components/icons/announcement.tsx
similarity index 100%
rename from packages/icons/src/announcement.tsx
rename to src/components/icons/announcement.tsx
diff --git a/packages/icons/src/antenas.tsx b/src/components/icons/antenas.tsx
similarity index 100%
rename from packages/icons/src/antenas.tsx
rename to src/components/icons/antenas.tsx
diff --git a/packages/icons/src/arrowDown.tsx b/src/components/icons/arrowDown.tsx
similarity index 100%
rename from packages/icons/src/arrowDown.tsx
rename to src/components/icons/arrowDown.tsx
diff --git a/packages/icons/src/arrowLeft.tsx b/src/components/icons/arrowLeft.tsx
similarity index 100%
rename from packages/icons/src/arrowLeft.tsx
rename to src/components/icons/arrowLeft.tsx
diff --git a/packages/icons/src/arrowRight.tsx b/src/components/icons/arrowRight.tsx
similarity index 100%
rename from packages/icons/src/arrowRight.tsx
rename to src/components/icons/arrowRight.tsx
diff --git a/packages/icons/src/arrowRightCircle.tsx b/src/components/icons/arrowRightCircle.tsx
similarity index 100%
rename from packages/icons/src/arrowRightCircle.tsx
rename to src/components/icons/arrowRightCircle.tsx
diff --git a/packages/icons/src/arrowUp.tsx b/src/components/icons/arrowUp.tsx
similarity index 100%
rename from packages/icons/src/arrowUp.tsx
rename to src/components/icons/arrowUp.tsx
diff --git a/packages/icons/src/arrowUpSquare.tsx b/src/components/icons/arrowUpSquare.tsx
similarity index 100%
rename from packages/icons/src/arrowUpSquare.tsx
rename to src/components/icons/arrowUpSquare.tsx
diff --git a/packages/icons/src/article.tsx b/src/components/icons/article.tsx
similarity index 100%
rename from packages/icons/src/article.tsx
rename to src/components/icons/article.tsx
diff --git a/packages/icons/src/bell.tsx b/src/components/icons/bell.tsx
similarity index 100%
rename from packages/icons/src/bell.tsx
rename to src/components/icons/bell.tsx
diff --git a/packages/icons/src/bellFilled.tsx b/src/components/icons/bellFilled.tsx
similarity index 100%
rename from packages/icons/src/bellFilled.tsx
rename to src/components/icons/bellFilled.tsx
diff --git a/packages/icons/src/bold.tsx b/src/components/icons/bold.tsx
similarity index 100%
rename from packages/icons/src/bold.tsx
rename to src/components/icons/bold.tsx
diff --git a/packages/icons/src/cancel.tsx b/src/components/icons/cancel.tsx
similarity index 100%
rename from packages/icons/src/cancel.tsx
rename to src/components/icons/cancel.tsx
diff --git a/packages/icons/src/cancelCircle.tsx b/src/components/icons/cancelCircle.tsx
similarity index 100%
rename from packages/icons/src/cancelCircle.tsx
rename to src/components/icons/cancelCircle.tsx
diff --git a/packages/icons/src/chats.tsx b/src/components/icons/chats.tsx
similarity index 100%
rename from packages/icons/src/chats.tsx
rename to src/components/icons/chats.tsx
diff --git a/packages/icons/src/check.tsx b/src/components/icons/check.tsx
similarity index 100%
rename from packages/icons/src/check.tsx
rename to src/components/icons/check.tsx
diff --git a/packages/icons/src/checkCircle.tsx b/src/components/icons/checkCircle.tsx
similarity index 100%
rename from packages/icons/src/checkCircle.tsx
rename to src/components/icons/checkCircle.tsx
diff --git a/packages/icons/src/chevronDown.tsx b/src/components/icons/chevronDown.tsx
similarity index 100%
rename from packages/icons/src/chevronDown.tsx
rename to src/components/icons/chevronDown.tsx
diff --git a/packages/icons/src/chevronRight.tsx b/src/components/icons/chevronRight.tsx
similarity index 100%
rename from packages/icons/src/chevronRight.tsx
rename to src/components/icons/chevronRight.tsx
diff --git a/packages/icons/src/chevronUp.tsx b/src/components/icons/chevronUp.tsx
similarity index 100%
rename from packages/icons/src/chevronUp.tsx
rename to src/components/icons/chevronUp.tsx
diff --git a/packages/icons/src/cmd.tsx b/src/components/icons/cmd.tsx
similarity index 100%
rename from packages/icons/src/cmd.tsx
rename to src/components/icons/cmd.tsx
diff --git a/packages/icons/src/column.tsx b/src/components/icons/column.tsx
similarity index 100%
rename from packages/icons/src/column.tsx
rename to src/components/icons/column.tsx
diff --git a/packages/icons/src/community.tsx b/src/components/icons/community.tsx
similarity index 100%
rename from packages/icons/src/community.tsx
rename to src/components/icons/community.tsx
diff --git a/packages/icons/src/compose.tsx b/src/components/icons/compose.tsx
similarity index 100%
rename from packages/icons/src/compose.tsx
rename to src/components/icons/compose.tsx
diff --git a/packages/icons/src/composeFilled.tsx b/src/components/icons/composeFilled.tsx
similarity index 100%
rename from packages/icons/src/composeFilled.tsx
rename to src/components/icons/composeFilled.tsx
diff --git a/packages/icons/src/copy.tsx b/src/components/icons/copy.tsx
similarity index 100%
rename from packages/icons/src/copy.tsx
rename to src/components/icons/copy.tsx
diff --git a/packages/icons/src/dark.tsx b/src/components/icons/dark.tsx
similarity index 100%
rename from packages/icons/src/dark.tsx
rename to src/components/icons/dark.tsx
diff --git a/packages/icons/src/depot.tsx b/src/components/icons/depot.tsx
similarity index 100%
rename from packages/icons/src/depot.tsx
rename to src/components/icons/depot.tsx
diff --git a/packages/icons/src/depotFilled.tsx b/src/components/icons/depotFilled.tsx
similarity index 100%
rename from packages/icons/src/depotFilled.tsx
rename to src/components/icons/depotFilled.tsx
diff --git a/packages/icons/src/dots.tsx b/src/components/icons/dots.tsx
similarity index 100%
rename from packages/icons/src/dots.tsx
rename to src/components/icons/dots.tsx
diff --git a/packages/icons/src/download.tsx b/src/components/icons/download.tsx
similarity index 100%
rename from packages/icons/src/download.tsx
rename to src/components/icons/download.tsx
diff --git a/packages/icons/src/edit.tsx b/src/components/icons/edit.tsx
similarity index 100%
rename from packages/icons/src/edit.tsx
rename to src/components/icons/edit.tsx
diff --git a/packages/icons/src/editInterest.tsx b/src/components/icons/editInterest.tsx
similarity index 100%
rename from packages/icons/src/editInterest.tsx
rename to src/components/icons/editInterest.tsx
diff --git a/packages/icons/src/empty.tsx b/src/components/icons/empty.tsx
similarity index 100%
rename from packages/icons/src/empty.tsx
rename to src/components/icons/empty.tsx
diff --git a/packages/icons/src/enter.tsx b/src/components/icons/enter.tsx
similarity index 100%
rename from packages/icons/src/enter.tsx
rename to src/components/icons/enter.tsx
diff --git a/packages/icons/src/expand.tsx b/src/components/icons/expand.tsx
similarity index 100%
rename from packages/icons/src/expand.tsx
rename to src/components/icons/expand.tsx
diff --git a/packages/icons/src/explore.tsx b/src/components/icons/explore.tsx
similarity index 100%
rename from packages/icons/src/explore.tsx
rename to src/components/icons/explore.tsx
diff --git a/packages/icons/src/explore2.tsx b/src/components/icons/explore2.tsx
similarity index 100%
rename from packages/icons/src/explore2.tsx
rename to src/components/icons/explore2.tsx
diff --git a/packages/icons/src/eyeOff.tsx b/src/components/icons/eyeOff.tsx
similarity index 100%
rename from packages/icons/src/eyeOff.tsx
rename to src/components/icons/eyeOff.tsx
diff --git a/packages/icons/src/eyeOn.tsx b/src/components/icons/eyeOn.tsx
similarity index 100%
rename from packages/icons/src/eyeOn.tsx
rename to src/components/icons/eyeOn.tsx
diff --git a/packages/icons/src/feed.tsx b/src/components/icons/feed.tsx
similarity index 100%
rename from packages/icons/src/feed.tsx
rename to src/components/icons/feed.tsx
diff --git a/packages/icons/src/file.tsx b/src/components/icons/file.tsx
similarity index 100%
rename from packages/icons/src/file.tsx
rename to src/components/icons/file.tsx
diff --git a/packages/icons/src/focus.tsx b/src/components/icons/focus.tsx
similarity index 100%
rename from packages/icons/src/focus.tsx
rename to src/components/icons/focus.tsx
diff --git a/packages/icons/src/follow.tsx b/src/components/icons/follow.tsx
similarity index 100%
rename from packages/icons/src/follow.tsx
rename to src/components/icons/follow.tsx
diff --git a/packages/icons/src/follows.tsx b/src/components/icons/follows.tsx
similarity index 100%
rename from packages/icons/src/follows.tsx
rename to src/components/icons/follows.tsx
diff --git a/packages/icons/src/foryou.tsx b/src/components/icons/foryou.tsx
similarity index 100%
rename from packages/icons/src/foryou.tsx
rename to src/components/icons/foryou.tsx
diff --git a/packages/icons/src/global.tsx b/src/components/icons/global.tsx
similarity index 100%
rename from packages/icons/src/global.tsx
rename to src/components/icons/global.tsx
diff --git a/packages/icons/src/gossip.tsx b/src/components/icons/gossip.tsx
similarity index 100%
rename from packages/icons/src/gossip.tsx
rename to src/components/icons/gossip.tsx
diff --git a/packages/icons/src/groupFeeds.tsx b/src/components/icons/groupFeeds.tsx
similarity index 100%
rename from packages/icons/src/groupFeeds.tsx
rename to src/components/icons/groupFeeds.tsx
diff --git a/packages/icons/src/handArrowDown.tsx b/src/components/icons/handArrowDown.tsx
similarity index 100%
rename from packages/icons/src/handArrowDown.tsx
rename to src/components/icons/handArrowDown.tsx
diff --git a/packages/icons/src/hashtag.tsx b/src/components/icons/hashtag.tsx
similarity index 100%
rename from packages/icons/src/hashtag.tsx
rename to src/components/icons/hashtag.tsx
diff --git a/packages/icons/src/heading1.tsx b/src/components/icons/heading1.tsx
similarity index 100%
rename from packages/icons/src/heading1.tsx
rename to src/components/icons/heading1.tsx
diff --git a/packages/icons/src/heading2.tsx b/src/components/icons/heading2.tsx
similarity index 100%
rename from packages/icons/src/heading2.tsx
rename to src/components/icons/heading2.tsx
diff --git a/packages/icons/src/heading3.tsx b/src/components/icons/heading3.tsx
similarity index 100%
rename from packages/icons/src/heading3.tsx
rename to src/components/icons/heading3.tsx
diff --git a/packages/icons/src/heartbeat.tsx b/src/components/icons/heartbeat.tsx
similarity index 100%
rename from packages/icons/src/heartbeat.tsx
rename to src/components/icons/heartbeat.tsx
diff --git a/packages/icons/src/help.tsx b/src/components/icons/help.tsx
similarity index 100%
rename from packages/icons/src/help.tsx
rename to src/components/icons/help.tsx
diff --git a/packages/icons/src/hide.tsx b/src/components/icons/hide.tsx
similarity index 100%
rename from packages/icons/src/hide.tsx
rename to src/components/icons/hide.tsx
diff --git a/packages/icons/src/home.tsx b/src/components/icons/home.tsx
similarity index 100%
rename from packages/icons/src/home.tsx
rename to src/components/icons/home.tsx
diff --git a/packages/icons/src/homeFilled.tsx b/src/components/icons/homeFilled.tsx
similarity index 100%
rename from packages/icons/src/homeFilled.tsx
rename to src/components/icons/homeFilled.tsx
diff --git a/packages/icons/src/horizontalDots.tsx b/src/components/icons/horizontalDots.tsx
similarity index 100%
rename from packages/icons/src/horizontalDots.tsx
rename to src/components/icons/horizontalDots.tsx
diff --git a/packages/icons/src/image.tsx b/src/components/icons/image.tsx
similarity index 100%
rename from packages/icons/src/image.tsx
rename to src/components/icons/image.tsx
diff --git a/src/components/icons/index.ts b/src/components/icons/index.ts
new file mode 100644
index 00000000..00f50c5b
--- /dev/null
+++ b/src/components/icons/index.ts
@@ -0,0 +1,128 @@
+export * from "./addWidget";
+export * from "./arrowLeft";
+export * from "./arrowRight";
+export * from "./bell";
+export * from "./cancel";
+export * from "./checkCircle";
+export * from "./chevronDown";
+export * from "./chevronRight";
+export * from "./compose";
+export * from "./copy";
+export * from "./edit";
+export * from "./enter";
+export * from "./eyeOff";
+export * from "./eyeOn";
+export * from "./feed";
+export * from "./heartbeat";
+export * from "./hide";
+export * from "./image";
+export * from "./like";
+export * from "./lume";
+export * from "./media";
+export * from "./mute";
+export * from "./space";
+export * from "./spaceFilled";
+export * from "./navArrowDown";
+export * from "./plus";
+export * from "./plusCircle";
+export * from "./refresh";
+export * from "./reply";
+export * from "./replyMessage";
+export * from "./repost";
+export * from "./threads";
+export * from "./trash";
+export * from "./world";
+export * from "./zap";
+export * from "./trending";
+export * from "./empty";
+export * from "./cmd";
+export * from "./verticalDots";
+export * from "./signal";
+export * from "./unverified";
+export * from "./settings";
+export * from "./logout";
+export * from "./follow";
+export * from "./unfollow";
+export * from "./reaction";
+export * from "./thread";
+export * from "./strangers";
+export * from "./download";
+export * from "./horizontalDots";
+export * from "./arrowRightCircle";
+export * from "./hashtag";
+export * from "./file";
+export * from "./share";
+export * from "./expand";
+export * from "./focus";
+export * from "./chevronUp";
+export * from "./secure";
+export * from "./verified";
+export * from "./mention";
+export * from "./groupFeeds";
+export * from "./article";
+export * from "./follows";
+export * from "./alby";
+export * from "./stars";
+export * from "./nwc";
+export * from "./timeline";
+export * from "./dots";
+export * from "./handArrowDown";
+export * from "./relay";
+export * from "./explore";
+export * from "./explore2";
+export * from "./home";
+export * from "./chats";
+export * from "./community";
+export * from "./heading1";
+export * from "./heading2";
+export * from "./heading3";
+export * from "./bold";
+export * from "./italic";
+export * from "./user";
+export * from "./advancedSettings";
+export * from "./info";
+export * from "./light";
+export * from "./dark";
+export * from "./system";
+export * from "./announcement";
+export * from "./depot";
+export * from "./search";
+export * from "./run";
+export * from "./gossip";
+export * from "./userAdd";
+export * from "./userRemove";
+export * from "./pin";
+export * from "./homeFilled";
+export * from "./relayFilled";
+export * from "./depotFilled";
+export * from "./nwcFilled";
+export * from "./moveLeft";
+export * from "./moveRight";
+export * from "./help";
+export * from "./plusSquare";
+export * from "./column";
+export * from "./addMedia";
+export * from "./check";
+export * from "./popperFilled";
+export * from "./composeFilled";
+export * from "./settingsFilled";
+export * from "./bellFilled";
+export * from "./foryou";
+export * from "./editInterest";
+export * from "./newColumn";
+export * from "./searchFilled";
+export * from "./arrowUp";
+export * from "./arrowUpSquare";
+export * from "./arrowDown";
+export * from "./link";
+export * from "./local";
+export * from "./global";
+export * from "./infoCircle";
+export * from "./cancelCircle";
+export * from "./laurel";
+export * from "./quote";
+export * from "./key";
+export * from "./remote";
+export * from "./nsfw";
+export * from "./visit";
+export * from "./pow";
diff --git a/packages/icons/src/info.tsx b/src/components/icons/info.tsx
similarity index 100%
rename from packages/icons/src/info.tsx
rename to src/components/icons/info.tsx
diff --git a/packages/icons/src/infoCircle.tsx b/src/components/icons/infoCircle.tsx
similarity index 100%
rename from packages/icons/src/infoCircle.tsx
rename to src/components/icons/infoCircle.tsx
diff --git a/packages/icons/src/italic.tsx b/src/components/icons/italic.tsx
similarity index 100%
rename from packages/icons/src/italic.tsx
rename to src/components/icons/italic.tsx
diff --git a/packages/icons/src/key.tsx b/src/components/icons/key.tsx
similarity index 100%
rename from packages/icons/src/key.tsx
rename to src/components/icons/key.tsx
diff --git a/packages/icons/src/laurel.tsx b/src/components/icons/laurel.tsx
similarity index 100%
rename from packages/icons/src/laurel.tsx
rename to src/components/icons/laurel.tsx
diff --git a/packages/icons/src/light.tsx b/src/components/icons/light.tsx
similarity index 100%
rename from packages/icons/src/light.tsx
rename to src/components/icons/light.tsx
diff --git a/packages/icons/src/like.tsx b/src/components/icons/like.tsx
similarity index 100%
rename from packages/icons/src/like.tsx
rename to src/components/icons/like.tsx
diff --git a/packages/icons/src/link.tsx b/src/components/icons/link.tsx
similarity index 100%
rename from packages/icons/src/link.tsx
rename to src/components/icons/link.tsx
diff --git a/packages/icons/src/local.tsx b/src/components/icons/local.tsx
similarity index 100%
rename from packages/icons/src/local.tsx
rename to src/components/icons/local.tsx
diff --git a/packages/icons/src/logout.tsx b/src/components/icons/logout.tsx
similarity index 100%
rename from packages/icons/src/logout.tsx
rename to src/components/icons/logout.tsx
diff --git a/packages/icons/src/lume.tsx b/src/components/icons/lume.tsx
similarity index 100%
rename from packages/icons/src/lume.tsx
rename to src/components/icons/lume.tsx
diff --git a/packages/icons/src/media.tsx b/src/components/icons/media.tsx
similarity index 100%
rename from packages/icons/src/media.tsx
rename to src/components/icons/media.tsx
diff --git a/packages/icons/src/mention.tsx b/src/components/icons/mention.tsx
similarity index 100%
rename from packages/icons/src/mention.tsx
rename to src/components/icons/mention.tsx
diff --git a/packages/icons/src/moveLeft.tsx b/src/components/icons/moveLeft.tsx
similarity index 100%
rename from packages/icons/src/moveLeft.tsx
rename to src/components/icons/moveLeft.tsx
diff --git a/packages/icons/src/moveRight.tsx b/src/components/icons/moveRight.tsx
similarity index 100%
rename from packages/icons/src/moveRight.tsx
rename to src/components/icons/moveRight.tsx
diff --git a/packages/icons/src/mute.tsx b/src/components/icons/mute.tsx
similarity index 100%
rename from packages/icons/src/mute.tsx
rename to src/components/icons/mute.tsx
diff --git a/packages/icons/src/navArrowDown.tsx b/src/components/icons/navArrowDown.tsx
similarity index 100%
rename from packages/icons/src/navArrowDown.tsx
rename to src/components/icons/navArrowDown.tsx
diff --git a/packages/icons/src/newColumn.tsx b/src/components/icons/newColumn.tsx
similarity index 100%
rename from packages/icons/src/newColumn.tsx
rename to src/components/icons/newColumn.tsx
diff --git a/packages/icons/src/nsfw.tsx b/src/components/icons/nsfw.tsx
similarity index 100%
rename from packages/icons/src/nsfw.tsx
rename to src/components/icons/nsfw.tsx
diff --git a/packages/icons/src/nwc.tsx b/src/components/icons/nwc.tsx
similarity index 100%
rename from packages/icons/src/nwc.tsx
rename to src/components/icons/nwc.tsx
diff --git a/packages/icons/src/nwcFilled.tsx b/src/components/icons/nwcFilled.tsx
similarity index 100%
rename from packages/icons/src/nwcFilled.tsx
rename to src/components/icons/nwcFilled.tsx
diff --git a/packages/icons/src/pin.tsx b/src/components/icons/pin.tsx
similarity index 100%
rename from packages/icons/src/pin.tsx
rename to src/components/icons/pin.tsx
diff --git a/packages/icons/src/plus.tsx b/src/components/icons/plus.tsx
similarity index 100%
rename from packages/icons/src/plus.tsx
rename to src/components/icons/plus.tsx
diff --git a/packages/icons/src/plusCircle.tsx b/src/components/icons/plusCircle.tsx
similarity index 100%
rename from packages/icons/src/plusCircle.tsx
rename to src/components/icons/plusCircle.tsx
diff --git a/packages/icons/src/plusSquare.tsx b/src/components/icons/plusSquare.tsx
similarity index 100%
rename from packages/icons/src/plusSquare.tsx
rename to src/components/icons/plusSquare.tsx
diff --git a/packages/icons/src/popperFilled.tsx b/src/components/icons/popperFilled.tsx
similarity index 100%
rename from packages/icons/src/popperFilled.tsx
rename to src/components/icons/popperFilled.tsx
diff --git a/packages/icons/src/pow.tsx b/src/components/icons/pow.tsx
similarity index 100%
rename from packages/icons/src/pow.tsx
rename to src/components/icons/pow.tsx
diff --git a/packages/icons/src/quote.tsx b/src/components/icons/quote.tsx
similarity index 100%
rename from packages/icons/src/quote.tsx
rename to src/components/icons/quote.tsx
diff --git a/packages/icons/src/reaction.tsx b/src/components/icons/reaction.tsx
similarity index 100%
rename from packages/icons/src/reaction.tsx
rename to src/components/icons/reaction.tsx
diff --git a/packages/icons/src/refresh.tsx b/src/components/icons/refresh.tsx
similarity index 100%
rename from packages/icons/src/refresh.tsx
rename to src/components/icons/refresh.tsx
diff --git a/packages/icons/src/relay.tsx b/src/components/icons/relay.tsx
similarity index 100%
rename from packages/icons/src/relay.tsx
rename to src/components/icons/relay.tsx
diff --git a/packages/icons/src/relayFilled.tsx b/src/components/icons/relayFilled.tsx
similarity index 100%
rename from packages/icons/src/relayFilled.tsx
rename to src/components/icons/relayFilled.tsx
diff --git a/packages/icons/src/remote.tsx b/src/components/icons/remote.tsx
similarity index 100%
rename from packages/icons/src/remote.tsx
rename to src/components/icons/remote.tsx
diff --git a/packages/icons/src/reply.tsx b/src/components/icons/reply.tsx
similarity index 100%
rename from packages/icons/src/reply.tsx
rename to src/components/icons/reply.tsx
diff --git a/packages/icons/src/replyMessage.tsx b/src/components/icons/replyMessage.tsx
similarity index 100%
rename from packages/icons/src/replyMessage.tsx
rename to src/components/icons/replyMessage.tsx
diff --git a/packages/icons/src/repost.tsx b/src/components/icons/repost.tsx
similarity index 100%
rename from packages/icons/src/repost.tsx
rename to src/components/icons/repost.tsx
diff --git a/packages/icons/src/run.tsx b/src/components/icons/run.tsx
similarity index 100%
rename from packages/icons/src/run.tsx
rename to src/components/icons/run.tsx
diff --git a/packages/icons/src/search.tsx b/src/components/icons/search.tsx
similarity index 100%
rename from packages/icons/src/search.tsx
rename to src/components/icons/search.tsx
diff --git a/packages/icons/src/searchFilled.tsx b/src/components/icons/searchFilled.tsx
similarity index 100%
rename from packages/icons/src/searchFilled.tsx
rename to src/components/icons/searchFilled.tsx
diff --git a/packages/icons/src/secure.tsx b/src/components/icons/secure.tsx
similarity index 100%
rename from packages/icons/src/secure.tsx
rename to src/components/icons/secure.tsx
diff --git a/packages/icons/src/settings.tsx b/src/components/icons/settings.tsx
similarity index 100%
rename from packages/icons/src/settings.tsx
rename to src/components/icons/settings.tsx
diff --git a/packages/icons/src/settingsFilled.tsx b/src/components/icons/settingsFilled.tsx
similarity index 100%
rename from packages/icons/src/settingsFilled.tsx
rename to src/components/icons/settingsFilled.tsx
diff --git a/packages/icons/src/share.tsx b/src/components/icons/share.tsx
similarity index 100%
rename from packages/icons/src/share.tsx
rename to src/components/icons/share.tsx
diff --git a/packages/icons/src/signal.tsx b/src/components/icons/signal.tsx
similarity index 100%
rename from packages/icons/src/signal.tsx
rename to src/components/icons/signal.tsx
diff --git a/packages/icons/src/space.tsx b/src/components/icons/space.tsx
similarity index 100%
rename from packages/icons/src/space.tsx
rename to src/components/icons/space.tsx
diff --git a/packages/icons/src/spaceFilled.tsx b/src/components/icons/spaceFilled.tsx
similarity index 100%
rename from packages/icons/src/spaceFilled.tsx
rename to src/components/icons/spaceFilled.tsx
diff --git a/packages/icons/src/stars.tsx b/src/components/icons/stars.tsx
similarity index 100%
rename from packages/icons/src/stars.tsx
rename to src/components/icons/stars.tsx
diff --git a/packages/icons/src/strangers.tsx b/src/components/icons/strangers.tsx
similarity index 100%
rename from packages/icons/src/strangers.tsx
rename to src/components/icons/strangers.tsx
diff --git a/packages/icons/src/system.tsx b/src/components/icons/system.tsx
similarity index 100%
rename from packages/icons/src/system.tsx
rename to src/components/icons/system.tsx
diff --git a/packages/icons/src/thread.tsx b/src/components/icons/thread.tsx
similarity index 100%
rename from packages/icons/src/thread.tsx
rename to src/components/icons/thread.tsx
diff --git a/packages/icons/src/threads.tsx b/src/components/icons/threads.tsx
similarity index 100%
rename from packages/icons/src/threads.tsx
rename to src/components/icons/threads.tsx
diff --git a/packages/icons/src/timeline.tsx b/src/components/icons/timeline.tsx
similarity index 100%
rename from packages/icons/src/timeline.tsx
rename to src/components/icons/timeline.tsx
diff --git a/packages/icons/src/trash.tsx b/src/components/icons/trash.tsx
similarity index 100%
rename from packages/icons/src/trash.tsx
rename to src/components/icons/trash.tsx
diff --git a/packages/icons/src/trending.tsx b/src/components/icons/trending.tsx
similarity index 100%
rename from packages/icons/src/trending.tsx
rename to src/components/icons/trending.tsx
diff --git a/packages/icons/src/unfollow.tsx b/src/components/icons/unfollow.tsx
similarity index 100%
rename from packages/icons/src/unfollow.tsx
rename to src/components/icons/unfollow.tsx
diff --git a/packages/icons/src/unverified.tsx b/src/components/icons/unverified.tsx
similarity index 100%
rename from packages/icons/src/unverified.tsx
rename to src/components/icons/unverified.tsx
diff --git a/packages/icons/src/user.tsx b/src/components/icons/user.tsx
similarity index 100%
rename from packages/icons/src/user.tsx
rename to src/components/icons/user.tsx
diff --git a/packages/icons/src/userAdd.tsx b/src/components/icons/userAdd.tsx
similarity index 100%
rename from packages/icons/src/userAdd.tsx
rename to src/components/icons/userAdd.tsx
diff --git a/packages/icons/src/userRemove.tsx b/src/components/icons/userRemove.tsx
similarity index 100%
rename from packages/icons/src/userRemove.tsx
rename to src/components/icons/userRemove.tsx
diff --git a/packages/icons/src/verified.tsx b/src/components/icons/verified.tsx
similarity index 100%
rename from packages/icons/src/verified.tsx
rename to src/components/icons/verified.tsx
diff --git a/packages/icons/src/verticalDots.tsx b/src/components/icons/verticalDots.tsx
similarity index 100%
rename from packages/icons/src/verticalDots.tsx
rename to src/components/icons/verticalDots.tsx
diff --git a/packages/icons/src/visit.tsx b/src/components/icons/visit.tsx
similarity index 100%
rename from packages/icons/src/visit.tsx
rename to src/components/icons/visit.tsx
diff --git a/packages/icons/src/world.tsx b/src/components/icons/world.tsx
similarity index 100%
rename from packages/icons/src/world.tsx
rename to src/components/icons/world.tsx
diff --git a/packages/icons/src/zap.tsx b/src/components/icons/zap.tsx
similarity index 100%
rename from packages/icons/src/zap.tsx
rename to src/components/icons/zap.tsx
diff --git a/src/components/index.ts b/src/components/index.ts
new file mode 100644
index 00000000..7b848f41
--- /dev/null
+++ b/src/components/index.ts
@@ -0,0 +1,14 @@
+export * from "./container";
+export * from "./box";
+export * from "./spinner";
+export * from "./quote";
+export * from "./text";
+export * from "./toolbar";
+export * from "./repost";
+export * from "./conversation";
+export * from "./column";
+export * from "./avatarUploader";
+
+export * from "./note";
+export * from "./user";
+export * from "./icons";
diff --git a/apps/desktop2/src/components/note/buttons/open.tsx b/src/components/note/buttons/open.tsx
similarity index 94%
rename from apps/desktop2/src/components/note/buttons/open.tsx
rename to src/components/note/buttons/open.tsx
index 43e9d4bd..8fd5fbba 100644
--- a/apps/desktop2/src/components/note/buttons/open.tsx
+++ b/src/components/note/buttons/open.tsx
@@ -1,7 +1,7 @@
-import { VisitIcon } from "@lume/icons";
+import { VisitIcon } from "@/components";
+import { LumeWindow } from "@/system";
import * as Tooltip from "@radix-ui/react-tooltip";
import { useNoteContext } from "../provider";
-import { LumeWindow } from "@lume/system";
export function NoteOpenThread() {
const event = useNoteContext();
diff --git a/apps/desktop2/src/components/note/buttons/reply.tsx b/src/components/note/buttons/reply.tsx
similarity index 92%
rename from apps/desktop2/src/components/note/buttons/reply.tsx
rename to src/components/note/buttons/reply.tsx
index 96601f5b..7ff4d8b2 100644
--- a/apps/desktop2/src/components/note/buttons/reply.tsx
+++ b/src/components/note/buttons/reply.tsx
@@ -1,8 +1,8 @@
-import { ReplyIcon } from "@lume/icons";
+import { cn } from "@/commons";
+import { ReplyIcon } from "@/components";
+import { LumeWindow } from "@/system";
import * as Tooltip from "@radix-ui/react-tooltip";
import { useNoteContext } from "../provider";
-import { cn } from "@lume/utils";
-import { LumeWindow } from "@lume/system";
export function NoteReply({ large = false }: { large?: boolean }) {
const event = useNoteContext();
diff --git a/apps/desktop2/src/components/note/buttons/repost.tsx b/src/components/note/buttons/repost.tsx
similarity index 92%
rename from apps/desktop2/src/components/note/buttons/repost.tsx
rename to src/components/note/buttons/repost.tsx
index 223f7a8e..78948e70 100644
--- a/apps/desktop2/src/components/note/buttons/repost.tsx
+++ b/src/components/note/buttons/repost.tsx
@@ -1,7 +1,7 @@
-import { RepostIcon } from "@lume/icons";
-import { LumeWindow } from "@lume/system";
-import { Spinner } from "@lume/ui";
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
+import { Spinner } from "@/components";
+import { RepostIcon } from "@/components";
+import { LumeWindow } from "@/system";
import { useRouteContext } from "@tanstack/react-router";
import { Menu, MenuItem } from "@tauri-apps/api/menu";
import { message } from "@tauri-apps/plugin-dialog";
diff --git a/apps/desktop2/src/components/note/buttons/zap.tsx b/src/components/note/buttons/zap.tsx
similarity index 86%
rename from apps/desktop2/src/components/note/buttons/zap.tsx
rename to src/components/note/buttons/zap.tsx
index aea47c10..15af4bb9 100644
--- a/apps/desktop2/src/components/note/buttons/zap.tsx
+++ b/src/components/note/buttons/zap.tsx
@@ -1,6 +1,6 @@
-import { ZapIcon } from "@lume/icons";
-import { LumeWindow } from "@lume/system";
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
+import { ZapIcon } from "@/components";
+import { LumeWindow } from "@/system";
import { useRouteContext } from "@tanstack/react-router";
import { useNoteContext } from "../provider";
diff --git a/apps/desktop2/src/components/note/child.tsx b/src/components/note/child.tsx
similarity index 87%
rename from apps/desktop2/src/components/note/child.tsx
rename to src/components/note/child.tsx
index d29f037c..9bb2ed5c 100644
--- a/apps/desktop2/src/components/note/child.tsx
+++ b/src/components/note/child.tsx
@@ -1,8 +1,8 @@
-import { useEvent } from "@lume/system";
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
+import { InfoIcon } from "@/components";
+import { useEvent } from "@/system";
+import type { EventTag } from "@/types";
import { Note } from ".";
-import { InfoIcon } from "@lume/icons";
-import type { EventTag } from "@lume/types";
export function NoteChild({
event,
diff --git a/apps/desktop2/src/components/note/content.tsx b/src/components/note/content.tsx
similarity index 99%
rename from apps/desktop2/src/components/note/content.tsx
rename to src/components/note/content.tsx
index 024ef1ff..78143d2b 100644
--- a/apps/desktop2/src/components/note/content.tsx
+++ b/src/components/note/content.tsx
@@ -1,4 +1,4 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
import { useRouteContext } from "@tanstack/react-router";
import { nanoid } from "nanoid";
import { type ReactNode, useMemo, useState } from "react";
diff --git a/apps/desktop2/src/components/note/contentLarge.tsx b/src/components/note/contentLarge.tsx
similarity index 98%
rename from apps/desktop2/src/components/note/contentLarge.tsx
rename to src/components/note/contentLarge.tsx
index 7e88923b..5b932051 100644
--- a/apps/desktop2/src/components/note/contentLarge.tsx
+++ b/src/components/note/contentLarge.tsx
@@ -1,4 +1,4 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
import { nanoid } from "nanoid";
import { type ReactNode, useMemo } from "react";
import reactStringReplace from "react-string-replace";
diff --git a/apps/desktop2/src/components/note/index.ts b/src/components/note/index.ts
similarity index 100%
rename from apps/desktop2/src/components/note/index.ts
rename to src/components/note/index.ts
diff --git a/apps/desktop2/src/components/note/mentions/hashtag.tsx b/src/components/note/mentions/hashtag.tsx
similarity index 100%
rename from apps/desktop2/src/components/note/mentions/hashtag.tsx
rename to src/components/note/mentions/hashtag.tsx
diff --git a/apps/desktop2/src/components/note/mentions/note.tsx b/src/components/note/mentions/note.tsx
similarity index 93%
rename from apps/desktop2/src/components/note/mentions/note.tsx
rename to src/components/note/mentions/note.tsx
index b2538138..b71cf44d 100644
--- a/apps/desktop2/src/components/note/mentions/note.tsx
+++ b/src/components/note/mentions/note.tsx
@@ -1,7 +1,7 @@
+import { Spinner } from "@/components";
+import { LinkIcon } from "@/components";
import { User } from "@/components/user";
-import { LinkIcon } from "@lume/icons";
-import { LumeWindow, useEvent } from "@lume/system";
-import { Spinner } from "@lume/ui";
+import { LumeWindow, useEvent } from "@/system";
export function MentionNote({
eventId,
diff --git a/apps/desktop2/src/components/note/mentions/user.tsx b/src/components/note/mentions/user.tsx
similarity index 81%
rename from apps/desktop2/src/components/note/mentions/user.tsx
rename to src/components/note/mentions/user.tsx
index 391b072b..2fefda6f 100644
--- a/apps/desktop2/src/components/note/mentions/user.tsx
+++ b/src/components/note/mentions/user.tsx
@@ -1,5 +1,5 @@
-import { LumeWindow, useProfile } from "@lume/system";
-import { displayNpub } from "@lume/utils";
+import { displayNpub } from "@/commons";
+import { LumeWindow, useProfile } from "@/system";
export function MentionUser({ pubkey }: { pubkey: string }) {
const { isLoading, isError, profile } = useProfile(pubkey);
diff --git a/apps/desktop2/src/components/note/menu.tsx b/src/components/note/menu.tsx
similarity index 96%
rename from apps/desktop2/src/components/note/menu.tsx
rename to src/components/note/menu.tsx
index 4ab542cd..9898b4c9 100644
--- a/apps/desktop2/src/components/note/menu.tsx
+++ b/src/components/note/menu.tsx
@@ -1,8 +1,8 @@
-import { HorizontalDotsIcon } from "@lume/icons";
-import { writeText } from "@tauri-apps/plugin-clipboard-manager";
-import { useNoteContext } from "./provider";
-import { useCallback } from "react";
+import { HorizontalDotsIcon } from "@/components";
import { Menu, MenuItem, PredefinedMenuItem } from "@tauri-apps/api/menu";
+import { writeText } from "@tauri-apps/plugin-clipboard-manager";
+import { useCallback } from "react";
+import { useNoteContext } from "./provider";
export function NoteMenu() {
const event = useNoteContext();
diff --git a/apps/desktop2/src/components/note/preview/image.tsx b/src/components/note/preview/image.tsx
similarity index 100%
rename from apps/desktop2/src/components/note/preview/image.tsx
rename to src/components/note/preview/image.tsx
diff --git a/apps/desktop2/src/components/note/preview/images.tsx b/src/components/note/preview/images.tsx
similarity index 97%
rename from apps/desktop2/src/components/note/preview/images.tsx
rename to src/components/note/preview/images.tsx
index 0be699a1..e542c9ae 100644
--- a/apps/desktop2/src/components/note/preview/images.tsx
+++ b/src/components/note/preview/images.tsx
@@ -1,6 +1,6 @@
-import { ArrowLeftIcon, ArrowRightIcon } from "@lume/icons";
-import { Spinner } from "@lume/ui";
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
+import { Spinner } from "@/components";
+import { ArrowLeftIcon, ArrowRightIcon } from "@/components";
import { useRouteContext } from "@tanstack/react-router";
import { open } from "@tauri-apps/plugin-shell";
import useEmblaCarousel from "embla-carousel-react";
diff --git a/apps/desktop2/src/components/note/preview/video.tsx b/src/components/note/preview/video.tsx
similarity index 100%
rename from apps/desktop2/src/components/note/preview/video.tsx
rename to src/components/note/preview/video.tsx
diff --git a/apps/desktop2/src/components/note/preview/videos.tsx b/src/components/note/preview/videos.tsx
similarity index 100%
rename from apps/desktop2/src/components/note/preview/videos.tsx
rename to src/components/note/preview/videos.tsx
diff --git a/apps/desktop2/src/components/note/provider.tsx b/src/components/note/provider.tsx
similarity index 91%
rename from apps/desktop2/src/components/note/provider.tsx
rename to src/components/note/provider.tsx
index 6a0ec508..b6299a5e 100644
--- a/apps/desktop2/src/components/note/provider.tsx
+++ b/src/components/note/provider.tsx
@@ -1,4 +1,4 @@
-import type { LumeEvent } from "@lume/system";
+import type { LumeEvent } from "@/system";
import { type ReactNode, createContext, useContext } from "react";
const NoteContext = createContext(null);
diff --git a/apps/desktop2/src/components/note/root.tsx b/src/components/note/root.tsx
similarity index 88%
rename from apps/desktop2/src/components/note/root.tsx
rename to src/components/note/root.tsx
index a1f5e7c8..8a4521af 100644
--- a/apps/desktop2/src/components/note/root.tsx
+++ b/src/components/note/root.tsx
@@ -1,4 +1,4 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
import type { ReactNode } from "react";
export function NoteRoot({
diff --git a/apps/desktop2/src/components/note/user.tsx b/src/components/note/user.tsx
similarity index 95%
rename from apps/desktop2/src/components/note/user.tsx
rename to src/components/note/user.tsx
index 24674d78..6a613f76 100644
--- a/apps/desktop2/src/components/note/user.tsx
+++ b/src/components/note/user.tsx
@@ -1,5 +1,5 @@
-import { LumeWindow } from "@lume/system";
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
+import { LumeWindow } from "@/system";
import { Menu, MenuItem } from "@tauri-apps/api/menu";
import { writeText } from "@tauri-apps/plugin-clipboard-manager";
import { useCallback } from "react";
diff --git a/apps/desktop2/src/components/quote.tsx b/src/components/quote.tsx
similarity index 90%
rename from apps/desktop2/src/components/quote.tsx
rename to src/components/quote.tsx
index e748b68b..85dfd7a1 100644
--- a/apps/desktop2/src/components/quote.tsx
+++ b/src/components/quote.tsx
@@ -1,7 +1,7 @@
+import { cn } from "@/commons";
+import { QuoteIcon } from "@/components";
import { Note } from "@/components/note";
-import { QuoteIcon } from "@lume/icons";
-import type { LumeEvent } from "@lume/system";
-import { cn } from "@lume/utils";
+import type { LumeEvent } from "@/system";
import { memo } from "react";
export const Quote = memo(function Quote({
diff --git a/apps/desktop2/src/components/repost.tsx b/src/components/repost.tsx
similarity index 94%
rename from apps/desktop2/src/components/repost.tsx
rename to src/components/repost.tsx
index 9858c239..6c818536 100644
--- a/apps/desktop2/src/components/repost.tsx
+++ b/src/components/repost.tsx
@@ -1,8 +1,8 @@
+import { cn } from "@/commons";
+import { Spinner } from "@/components";
import { Note } from "@/components/note";
import { User } from "@/components/user";
-import { type LumeEvent, NostrQuery } from "@lume/system";
-import { Spinner } from "@lume/ui";
-import { cn } from "@lume/utils";
+import { type LumeEvent, NostrQuery } from "@/system";
import { useQuery } from "@tanstack/react-query";
import { memo } from "react";
diff --git a/packages/ui/src/spinner.tsx b/src/components/spinner.tsx
similarity index 97%
rename from packages/ui/src/spinner.tsx
rename to src/components/spinner.tsx
index a87f314a..33421428 100644
--- a/packages/ui/src/spinner.tsx
+++ b/src/components/spinner.tsx
@@ -1,4 +1,4 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
import type { ReactNode } from "react";
export function Spinner({
diff --git a/apps/desktop2/src/components/text.tsx b/src/components/text.tsx
similarity index 90%
rename from apps/desktop2/src/components/text.tsx
rename to src/components/text.tsx
index e4902945..a326a759 100644
--- a/apps/desktop2/src/components/text.tsx
+++ b/src/components/text.tsx
@@ -1,6 +1,6 @@
+import { cn } from "@/commons";
import { Note } from "@/components/note";
-import type { LumeEvent } from "@lume/system";
-import { cn } from "@lume/utils";
+import type { LumeEvent } from "@/system";
import { memo } from "react";
export const TextNote = memo(function TextNote({
diff --git a/apps/desktop2/src/components/toolbar.tsx b/src/components/toolbar.tsx
similarity index 100%
rename from apps/desktop2/src/components/toolbar.tsx
rename to src/components/toolbar.tsx
diff --git a/apps/desktop2/src/components/user/about.tsx b/src/components/user/about.tsx
similarity index 89%
rename from apps/desktop2/src/components/user/about.tsx
rename to src/components/user/about.tsx
index 66edcd4c..29ba6827 100644
--- a/apps/desktop2/src/components/user/about.tsx
+++ b/src/components/user/about.tsx
@@ -1,4 +1,4 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
import { useUserContext } from "./provider";
export function UserAbout({ className }: { className?: string }) {
diff --git a/apps/desktop2/src/components/user/avatar.tsx b/src/components/user/avatar.tsx
similarity index 98%
rename from apps/desktop2/src/components/user/avatar.tsx
rename to src/components/user/avatar.tsx
index fa37b3fd..6e52bbc6 100644
--- a/apps/desktop2/src/components/user/avatar.tsx
+++ b/src/components/user/avatar.tsx
@@ -1,4 +1,4 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
import * as Avatar from "@radix-ui/react-avatar";
import { useRouteContext } from "@tanstack/react-router";
import { minidenticon } from "minidenticons";
diff --git a/apps/desktop2/src/components/user/cover.tsx b/src/components/user/cover.tsx
similarity index 94%
rename from apps/desktop2/src/components/user/cover.tsx
rename to src/components/user/cover.tsx
index dc21f0a4..0097b32e 100644
--- a/apps/desktop2/src/components/user/cover.tsx
+++ b/src/components/user/cover.tsx
@@ -1,4 +1,4 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
import { useUserContext } from "./provider";
export function UserCover({ className }: { className?: string }) {
diff --git a/apps/desktop2/src/components/user/followButton.tsx b/src/components/user/followButton.tsx
similarity index 89%
rename from apps/desktop2/src/components/user/followButton.tsx
rename to src/components/user/followButton.tsx
index 6f6ef73f..93f91367 100644
--- a/apps/desktop2/src/components/user/followButton.tsx
+++ b/src/components/user/followButton.tsx
@@ -1,8 +1,8 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
+import { Spinner } from "@/components";
+import { NostrAccount } from "@/system";
import { useEffect, useState } from "react";
-import { Spinner } from "@lume/ui";
import { useUserContext } from "./provider";
-import { NostrAccount } from "@lume/system";
export function UserFollowButton({
simple = false,
diff --git a/apps/desktop2/src/components/user/index.ts b/src/components/user/index.ts
similarity index 100%
rename from apps/desktop2/src/components/user/index.ts
rename to src/components/user/index.ts
diff --git a/apps/desktop2/src/components/user/name.tsx b/src/components/user/name.tsx
similarity index 88%
rename from apps/desktop2/src/components/user/name.tsx
rename to src/components/user/name.tsx
index ea792d10..f50d0481 100644
--- a/apps/desktop2/src/components/user/name.tsx
+++ b/src/components/user/name.tsx
@@ -1,4 +1,4 @@
-import { cn, displayNpub } from "@lume/utils";
+import { cn, displayNpub } from "@/commons";
import { useUserContext } from "./provider";
export function UserName({
diff --git a/apps/desktop2/src/components/user/nip05.tsx b/src/components/user/nip05.tsx
similarity index 93%
rename from apps/desktop2/src/components/user/nip05.tsx
rename to src/components/user/nip05.tsx
index 7da6d409..5b78a64c 100644
--- a/apps/desktop2/src/components/user/nip05.tsx
+++ b/src/components/user/nip05.tsx
@@ -1,10 +1,10 @@
-import { VerifiedIcon } from "@lume/icons";
-import { displayLongHandle, displayNpub } from "@lume/utils";
+import { displayLongHandle, displayNpub } from "@/commons";
+import { VerifiedIcon } from "@/components";
+import { NostrQuery } from "@/system";
import * as Tooltip from "@radix-ui/react-tooltip";
+import { experimental_createPersister } from "@tanstack/query-persist-client-core";
import { useQuery } from "@tanstack/react-query";
import { useUserContext } from "./provider";
-import { NostrQuery } from "@lume/system";
-import { experimental_createPersister } from "@tanstack/query-persist-client-core";
export function UserNip05() {
const user = useUserContext();
diff --git a/apps/desktop2/src/components/user/provider.tsx b/src/components/user/provider.tsx
similarity index 87%
rename from apps/desktop2/src/components/user/provider.tsx
rename to src/components/user/provider.tsx
index cc83bb53..59bfb5d4 100644
--- a/apps/desktop2/src/components/user/provider.tsx
+++ b/src/components/user/provider.tsx
@@ -1,5 +1,5 @@
-import { useProfile } from "@lume/system";
-import type { Metadata } from "@lume/types";
+import type { Metadata } from "@/types";
+import { useProfile } from "@/system";
import { type ReactNode, createContext, useContext } from "react";
const UserContext = createContext<{
diff --git a/apps/desktop2/src/components/user/root.tsx b/src/components/user/root.tsx
similarity index 85%
rename from apps/desktop2/src/components/user/root.tsx
rename to src/components/user/root.tsx
index 2f4fd185..14887c11 100644
--- a/apps/desktop2/src/components/user/root.tsx
+++ b/src/components/user/root.tsx
@@ -1,4 +1,4 @@
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
import type { ReactNode } from "react";
export function UserRoot({
diff --git a/apps/desktop2/src/components/user/time.tsx b/src/components/user/time.tsx
similarity index 85%
rename from apps/desktop2/src/components/user/time.tsx
rename to src/components/user/time.tsx
index 68a05fb8..08a45550 100644
--- a/apps/desktop2/src/components/user/time.tsx
+++ b/src/components/user/time.tsx
@@ -1,4 +1,4 @@
-import { cn, formatCreatedAt } from "@lume/utils";
+import { cn, formatCreatedAt } from "@/commons";
import { useMemo } from "react";
export function UserTime({
diff --git a/packages/utils/src/constants.ts b/src/constants.ts
similarity index 91%
rename from packages/utils/src/constants.ts
rename to src/constants.ts
index 999311e2..8d49b93a 100644
--- a/packages/utils/src/constants.ts
+++ b/src/constants.ts
@@ -1,29 +1,3 @@
-export const NOSTR_MENTIONS = [
- "@npub1",
- "nostr:npub1",
- "nostr:nprofile1",
- "nostr:naddr1",
- "npub1",
- "nprofile1",
- "naddr1",
- "Nostr:npub1",
- "Nostr:nprofile1",
- "Nostr:naddre1",
-];
-
-export const NOSTR_EVENTS = [
- "@nevent1",
- "@note1",
- "@nostr:note1",
- "@nostr:nevent1",
- "nostr:note1",
- "note1",
- "nostr:nevent1",
- "nevent1",
- "Nostr:note1",
- "Nostr:nevent1",
-];
-
export const IMAGES = ["jpg", "jpeg", "gif", "png", "webp", "avif", "tiff"];
export const VIDEOS = [
@@ -279,7 +253,7 @@ export const TOPICS = [
],
},
{
- icon: "🧑🎨",
+ icon: "🧑",
title: "Design",
content: [
"#nostrdesign",
diff --git a/apps/desktop2/src/locale.ts b/src/locale.ts
similarity index 100%
rename from apps/desktop2/src/locale.ts
rename to src/locale.ts
diff --git a/src/routes.gen.ts b/src/routes.gen.ts
new file mode 100644
index 00000000..5a272eb0
--- /dev/null
+++ b/src/routes.gen.ts
@@ -0,0 +1,778 @@
+/* prettier-ignore-start */
+
+/* eslint-disable */
+
+// @ts-nocheck
+
+// noinspection JSUnusedGlobalSymbols
+
+// This file is auto-generated by TanStack Router
+
+import { createFileRoute } from '@tanstack/react-router'
+
+// Import Routes
+
+import { Route as rootRoute } from './routes/__root'
+import { Route as TrendingImport } from './routes/trending'
+import { Route as TopicImport } from './routes/topic'
+import { Route as StoreImport } from './routes/store'
+import { Route as SettingsImport } from './routes/settings'
+import { Route as SearchImport } from './routes/search'
+import { Route as OnboardingImport } from './routes/onboarding'
+import { Route as NewsfeedImport } from './routes/newsfeed'
+import { Route as GroupImport } from './routes/group'
+import { Route as GlobalImport } from './routes/global'
+import { Route as CreateTopicImport } from './routes/create-topic'
+import { Route as CreateNewsfeedImport } from './routes/create-newsfeed'
+import { Route as CreateGroupImport } from './routes/create-group'
+import { Route as BootstrapRelaysImport } from './routes/bootstrap-relays'
+import { Route as AccountImport } from './routes/$account'
+import { Route as IndexImport } from './routes/index'
+import { Route as EditorIndexImport } from './routes/editor/index'
+import { Route as ZapIdImport } from './routes/zap.$id'
+import { Route as UsersPubkeyImport } from './routes/users/$pubkey'
+import { Route as TrendingUsersImport } from './routes/trending.users'
+import { Route as TrendingNotesImport } from './routes/trending.notes'
+import { Route as SettingsWalletImport } from './routes/settings/wallet'
+import { Route as SettingsUserImport } from './routes/settings/user'
+import { Route as SettingsRelayImport } from './routes/settings/relay'
+import { Route as SettingsGeneralImport } from './routes/settings/general'
+import { Route as SettingsBitcoinConnectImport } from './routes/settings/bitcoin-connect'
+import { Route as SettingsBackupImport } from './routes/settings/backup'
+import { Route as SearchUsersImport } from './routes/search.users'
+import { Route as SearchNotesImport } from './routes/search.notes'
+import { Route as PanelAccountImport } from './routes/panel.$account'
+import { Route as EventsIdImport } from './routes/events/$id'
+import { Route as CreateNewsfeedUsersImport } from './routes/create-newsfeed.users'
+import { Route as CreateNewsfeedF2fImport } from './routes/create-newsfeed.f2f'
+import { Route as AuthCreateProfileImport } from './routes/auth/create-profile'
+import { Route as AccountHomeImport } from './routes/$account.home'
+import { Route as AuthAccountBackupImport } from './routes/auth/$account.backup'
+
+// Create Virtual Routes
+
+const LandingLazyImport = createFileRoute('/landing')()
+const AuthLazyImport = createFileRoute('/auth')()
+const AuthRemoteLazyImport = createFileRoute('/auth/remote')()
+const AuthImportLazyImport = createFileRoute('/auth/import')()
+
+// Create/Update Routes
+
+const LandingLazyRoute = LandingLazyImport.update({
+ path: '/landing',
+ getParentRoute: () => rootRoute,
+} as any).lazy(() => import('./routes/landing.lazy').then((d) => d.Route))
+
+const AuthLazyRoute = AuthLazyImport.update({
+ path: '/auth',
+ getParentRoute: () => rootRoute,
+} as any).lazy(() => import('./routes/auth.lazy').then((d) => d.Route))
+
+const TrendingRoute = TrendingImport.update({
+ path: '/trending',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const TopicRoute = TopicImport.update({
+ path: '/topic',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const StoreRoute = StoreImport.update({
+ path: '/store',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const SettingsRoute = SettingsImport.update({
+ path: '/settings',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const SearchRoute = SearchImport.update({
+ path: '/search',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const OnboardingRoute = OnboardingImport.update({
+ path: '/onboarding',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const NewsfeedRoute = NewsfeedImport.update({
+ path: '/newsfeed',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const GroupRoute = GroupImport.update({
+ path: '/group',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const GlobalRoute = GlobalImport.update({
+ path: '/global',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const CreateTopicRoute = CreateTopicImport.update({
+ path: '/create-topic',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const CreateNewsfeedRoute = CreateNewsfeedImport.update({
+ path: '/create-newsfeed',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const CreateGroupRoute = CreateGroupImport.update({
+ path: '/create-group',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const BootstrapRelaysRoute = BootstrapRelaysImport.update({
+ path: '/bootstrap-relays',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const AccountRoute = AccountImport.update({
+ path: '/$account',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const IndexRoute = IndexImport.update({
+ path: '/',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const EditorIndexRoute = EditorIndexImport.update({
+ path: '/editor/',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const AuthRemoteLazyRoute = AuthRemoteLazyImport.update({
+ path: '/remote',
+ getParentRoute: () => AuthLazyRoute,
+} as any).lazy(() => import('./routes/auth/remote.lazy').then((d) => d.Route))
+
+const AuthImportLazyRoute = AuthImportLazyImport.update({
+ path: '/import',
+ getParentRoute: () => AuthLazyRoute,
+} as any).lazy(() => import('./routes/auth/import.lazy').then((d) => d.Route))
+
+const ZapIdRoute = ZapIdImport.update({
+ path: '/zap/$id',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const UsersPubkeyRoute = UsersPubkeyImport.update({
+ path: '/users/$pubkey',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const TrendingUsersRoute = TrendingUsersImport.update({
+ path: '/users',
+ getParentRoute: () => TrendingRoute,
+} as any)
+
+const TrendingNotesRoute = TrendingNotesImport.update({
+ path: '/notes',
+ getParentRoute: () => TrendingRoute,
+} as any)
+
+const SettingsWalletRoute = SettingsWalletImport.update({
+ path: '/wallet',
+ getParentRoute: () => SettingsRoute,
+} as any)
+
+const SettingsUserRoute = SettingsUserImport.update({
+ path: '/user',
+ getParentRoute: () => SettingsRoute,
+} as any)
+
+const SettingsRelayRoute = SettingsRelayImport.update({
+ path: '/relay',
+ getParentRoute: () => SettingsRoute,
+} as any)
+
+const SettingsGeneralRoute = SettingsGeneralImport.update({
+ path: '/general',
+ getParentRoute: () => SettingsRoute,
+} as any)
+
+const SettingsBitcoinConnectRoute = SettingsBitcoinConnectImport.update({
+ path: '/bitcoin-connect',
+ getParentRoute: () => SettingsRoute,
+} as any)
+
+const SettingsBackupRoute = SettingsBackupImport.update({
+ path: '/backup',
+ getParentRoute: () => SettingsRoute,
+} as any)
+
+const SearchUsersRoute = SearchUsersImport.update({
+ path: '/users',
+ getParentRoute: () => SearchRoute,
+} as any)
+
+const SearchNotesRoute = SearchNotesImport.update({
+ path: '/notes',
+ getParentRoute: () => SearchRoute,
+} as any)
+
+const PanelAccountRoute = PanelAccountImport.update({
+ path: '/panel/$account',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const EventsIdRoute = EventsIdImport.update({
+ path: '/events/$id',
+ getParentRoute: () => rootRoute,
+} as any)
+
+const CreateNewsfeedUsersRoute = CreateNewsfeedUsersImport.update({
+ path: '/users',
+ getParentRoute: () => CreateNewsfeedRoute,
+} as any)
+
+const CreateNewsfeedF2fRoute = CreateNewsfeedF2fImport.update({
+ path: '/f2f',
+ getParentRoute: () => CreateNewsfeedRoute,
+} as any)
+
+const AuthCreateProfileRoute = AuthCreateProfileImport.update({
+ path: '/create-profile',
+ getParentRoute: () => AuthLazyRoute,
+} as any)
+
+const AccountHomeRoute = AccountHomeImport.update({
+ path: '/home',
+ getParentRoute: () => AccountRoute,
+} as any)
+
+const AuthAccountBackupRoute = AuthAccountBackupImport.update({
+ path: '/$account/backup',
+ getParentRoute: () => AuthLazyRoute,
+} as any)
+
+// Populate the FileRoutesByPath interface
+
+declare module '@tanstack/react-router' {
+ interface FileRoutesByPath {
+ '/': {
+ id: '/'
+ path: '/'
+ fullPath: '/'
+ preLoaderRoute: typeof IndexImport
+ parentRoute: typeof rootRoute
+ }
+ '/$account': {
+ id: '/$account'
+ path: '/$account'
+ fullPath: '/$account'
+ preLoaderRoute: typeof AccountImport
+ parentRoute: typeof rootRoute
+ }
+ '/bootstrap-relays': {
+ id: '/bootstrap-relays'
+ path: '/bootstrap-relays'
+ fullPath: '/bootstrap-relays'
+ preLoaderRoute: typeof BootstrapRelaysImport
+ parentRoute: typeof rootRoute
+ }
+ '/create-group': {
+ id: '/create-group'
+ path: '/create-group'
+ fullPath: '/create-group'
+ preLoaderRoute: typeof CreateGroupImport
+ parentRoute: typeof rootRoute
+ }
+ '/create-newsfeed': {
+ id: '/create-newsfeed'
+ path: '/create-newsfeed'
+ fullPath: '/create-newsfeed'
+ preLoaderRoute: typeof CreateNewsfeedImport
+ parentRoute: typeof rootRoute
+ }
+ '/create-topic': {
+ id: '/create-topic'
+ path: '/create-topic'
+ fullPath: '/create-topic'
+ preLoaderRoute: typeof CreateTopicImport
+ parentRoute: typeof rootRoute
+ }
+ '/global': {
+ id: '/global'
+ path: '/global'
+ fullPath: '/global'
+ preLoaderRoute: typeof GlobalImport
+ parentRoute: typeof rootRoute
+ }
+ '/group': {
+ id: '/group'
+ path: '/group'
+ fullPath: '/group'
+ preLoaderRoute: typeof GroupImport
+ parentRoute: typeof rootRoute
+ }
+ '/newsfeed': {
+ id: '/newsfeed'
+ path: '/newsfeed'
+ fullPath: '/newsfeed'
+ preLoaderRoute: typeof NewsfeedImport
+ parentRoute: typeof rootRoute
+ }
+ '/onboarding': {
+ id: '/onboarding'
+ path: '/onboarding'
+ fullPath: '/onboarding'
+ preLoaderRoute: typeof OnboardingImport
+ parentRoute: typeof rootRoute
+ }
+ '/search': {
+ id: '/search'
+ path: '/search'
+ fullPath: '/search'
+ preLoaderRoute: typeof SearchImport
+ parentRoute: typeof rootRoute
+ }
+ '/settings': {
+ id: '/settings'
+ path: '/settings'
+ fullPath: '/settings'
+ preLoaderRoute: typeof SettingsImport
+ parentRoute: typeof rootRoute
+ }
+ '/store': {
+ id: '/store'
+ path: '/store'
+ fullPath: '/store'
+ preLoaderRoute: typeof StoreImport
+ parentRoute: typeof rootRoute
+ }
+ '/topic': {
+ id: '/topic'
+ path: '/topic'
+ fullPath: '/topic'
+ preLoaderRoute: typeof TopicImport
+ parentRoute: typeof rootRoute
+ }
+ '/trending': {
+ id: '/trending'
+ path: '/trending'
+ fullPath: '/trending'
+ preLoaderRoute: typeof TrendingImport
+ parentRoute: typeof rootRoute
+ }
+ '/auth': {
+ id: '/auth'
+ path: '/auth'
+ fullPath: '/auth'
+ preLoaderRoute: typeof AuthLazyImport
+ parentRoute: typeof rootRoute
+ }
+ '/landing': {
+ id: '/landing'
+ path: '/landing'
+ fullPath: '/landing'
+ preLoaderRoute: typeof LandingLazyImport
+ parentRoute: typeof rootRoute
+ }
+ '/$account/home': {
+ id: '/$account/home'
+ path: '/home'
+ fullPath: '/$account/home'
+ preLoaderRoute: typeof AccountHomeImport
+ parentRoute: typeof AccountImport
+ }
+ '/auth/create-profile': {
+ id: '/auth/create-profile'
+ path: '/create-profile'
+ fullPath: '/auth/create-profile'
+ preLoaderRoute: typeof AuthCreateProfileImport
+ parentRoute: typeof AuthLazyImport
+ }
+ '/create-newsfeed/f2f': {
+ id: '/create-newsfeed/f2f'
+ path: '/f2f'
+ fullPath: '/create-newsfeed/f2f'
+ preLoaderRoute: typeof CreateNewsfeedF2fImport
+ parentRoute: typeof CreateNewsfeedImport
+ }
+ '/create-newsfeed/users': {
+ id: '/create-newsfeed/users'
+ path: '/users'
+ fullPath: '/create-newsfeed/users'
+ preLoaderRoute: typeof CreateNewsfeedUsersImport
+ parentRoute: typeof CreateNewsfeedImport
+ }
+ '/events/$id': {
+ id: '/events/$id'
+ path: '/events/$id'
+ fullPath: '/events/$id'
+ preLoaderRoute: typeof EventsIdImport
+ parentRoute: typeof rootRoute
+ }
+ '/panel/$account': {
+ id: '/panel/$account'
+ path: '/panel/$account'
+ fullPath: '/panel/$account'
+ preLoaderRoute: typeof PanelAccountImport
+ parentRoute: typeof rootRoute
+ }
+ '/search/notes': {
+ id: '/search/notes'
+ path: '/notes'
+ fullPath: '/search/notes'
+ preLoaderRoute: typeof SearchNotesImport
+ parentRoute: typeof SearchImport
+ }
+ '/search/users': {
+ id: '/search/users'
+ path: '/users'
+ fullPath: '/search/users'
+ preLoaderRoute: typeof SearchUsersImport
+ parentRoute: typeof SearchImport
+ }
+ '/settings/backup': {
+ id: '/settings/backup'
+ path: '/backup'
+ fullPath: '/settings/backup'
+ preLoaderRoute: typeof SettingsBackupImport
+ parentRoute: typeof SettingsImport
+ }
+ '/settings/bitcoin-connect': {
+ id: '/settings/bitcoin-connect'
+ path: '/bitcoin-connect'
+ fullPath: '/settings/bitcoin-connect'
+ preLoaderRoute: typeof SettingsBitcoinConnectImport
+ parentRoute: typeof SettingsImport
+ }
+ '/settings/general': {
+ id: '/settings/general'
+ path: '/general'
+ fullPath: '/settings/general'
+ preLoaderRoute: typeof SettingsGeneralImport
+ parentRoute: typeof SettingsImport
+ }
+ '/settings/relay': {
+ id: '/settings/relay'
+ path: '/relay'
+ fullPath: '/settings/relay'
+ preLoaderRoute: typeof SettingsRelayImport
+ parentRoute: typeof SettingsImport
+ }
+ '/settings/user': {
+ id: '/settings/user'
+ path: '/user'
+ fullPath: '/settings/user'
+ preLoaderRoute: typeof SettingsUserImport
+ parentRoute: typeof SettingsImport
+ }
+ '/settings/wallet': {
+ id: '/settings/wallet'
+ path: '/wallet'
+ fullPath: '/settings/wallet'
+ preLoaderRoute: typeof SettingsWalletImport
+ parentRoute: typeof SettingsImport
+ }
+ '/trending/notes': {
+ id: '/trending/notes'
+ path: '/notes'
+ fullPath: '/trending/notes'
+ preLoaderRoute: typeof TrendingNotesImport
+ parentRoute: typeof TrendingImport
+ }
+ '/trending/users': {
+ id: '/trending/users'
+ path: '/users'
+ fullPath: '/trending/users'
+ preLoaderRoute: typeof TrendingUsersImport
+ parentRoute: typeof TrendingImport
+ }
+ '/users/$pubkey': {
+ id: '/users/$pubkey'
+ path: '/users/$pubkey'
+ fullPath: '/users/$pubkey'
+ preLoaderRoute: typeof UsersPubkeyImport
+ parentRoute: typeof rootRoute
+ }
+ '/zap/$id': {
+ id: '/zap/$id'
+ path: '/zap/$id'
+ fullPath: '/zap/$id'
+ preLoaderRoute: typeof ZapIdImport
+ parentRoute: typeof rootRoute
+ }
+ '/auth/import': {
+ id: '/auth/import'
+ path: '/import'
+ fullPath: '/auth/import'
+ preLoaderRoute: typeof AuthImportLazyImport
+ parentRoute: typeof AuthLazyImport
+ }
+ '/auth/remote': {
+ id: '/auth/remote'
+ path: '/remote'
+ fullPath: '/auth/remote'
+ preLoaderRoute: typeof AuthRemoteLazyImport
+ parentRoute: typeof AuthLazyImport
+ }
+ '/editor/': {
+ id: '/editor/'
+ path: '/editor'
+ fullPath: '/editor'
+ preLoaderRoute: typeof EditorIndexImport
+ parentRoute: typeof rootRoute
+ }
+ '/auth/$account/backup': {
+ id: '/auth/$account/backup'
+ path: '/$account/backup'
+ fullPath: '/auth/$account/backup'
+ preLoaderRoute: typeof AuthAccountBackupImport
+ parentRoute: typeof AuthLazyImport
+ }
+ }
+}
+
+// Create and export the route tree
+
+export const routeTree = rootRoute.addChildren({
+ IndexRoute,
+ AccountRoute: AccountRoute.addChildren({ AccountHomeRoute }),
+ BootstrapRelaysRoute,
+ CreateGroupRoute,
+ CreateNewsfeedRoute: CreateNewsfeedRoute.addChildren({
+ CreateNewsfeedF2fRoute,
+ CreateNewsfeedUsersRoute,
+ }),
+ CreateTopicRoute,
+ GlobalRoute,
+ GroupRoute,
+ NewsfeedRoute,
+ OnboardingRoute,
+ SearchRoute: SearchRoute.addChildren({ SearchNotesRoute, SearchUsersRoute }),
+ SettingsRoute: SettingsRoute.addChildren({
+ SettingsBackupRoute,
+ SettingsBitcoinConnectRoute,
+ SettingsGeneralRoute,
+ SettingsRelayRoute,
+ SettingsUserRoute,
+ SettingsWalletRoute,
+ }),
+ StoreRoute,
+ TopicRoute,
+ TrendingRoute: TrendingRoute.addChildren({
+ TrendingNotesRoute,
+ TrendingUsersRoute,
+ }),
+ AuthLazyRoute: AuthLazyRoute.addChildren({
+ AuthCreateProfileRoute,
+ AuthImportLazyRoute,
+ AuthRemoteLazyRoute,
+ AuthAccountBackupRoute,
+ }),
+ LandingLazyRoute,
+ EventsIdRoute,
+ PanelAccountRoute,
+ UsersPubkeyRoute,
+ ZapIdRoute,
+ EditorIndexRoute,
+})
+
+/* prettier-ignore-end */
+
+/* ROUTE_MANIFEST_START
+{
+ "routes": {
+ "__root__": {
+ "filePath": "__root.tsx",
+ "children": [
+ "/",
+ "/$account",
+ "/bootstrap-relays",
+ "/create-group",
+ "/create-newsfeed",
+ "/create-topic",
+ "/global",
+ "/group",
+ "/newsfeed",
+ "/onboarding",
+ "/search",
+ "/settings",
+ "/store",
+ "/topic",
+ "/trending",
+ "/auth",
+ "/landing",
+ "/events/$id",
+ "/panel/$account",
+ "/users/$pubkey",
+ "/zap/$id",
+ "/editor/"
+ ]
+ },
+ "/": {
+ "filePath": "index.tsx"
+ },
+ "/$account": {
+ "filePath": "$account.tsx",
+ "children": [
+ "/$account/home"
+ ]
+ },
+ "/bootstrap-relays": {
+ "filePath": "bootstrap-relays.tsx"
+ },
+ "/create-group": {
+ "filePath": "create-group.tsx"
+ },
+ "/create-newsfeed": {
+ "filePath": "create-newsfeed.tsx",
+ "children": [
+ "/create-newsfeed/f2f",
+ "/create-newsfeed/users"
+ ]
+ },
+ "/create-topic": {
+ "filePath": "create-topic.tsx"
+ },
+ "/global": {
+ "filePath": "global.tsx"
+ },
+ "/group": {
+ "filePath": "group.tsx"
+ },
+ "/newsfeed": {
+ "filePath": "newsfeed.tsx"
+ },
+ "/onboarding": {
+ "filePath": "onboarding.tsx"
+ },
+ "/search": {
+ "filePath": "search.tsx",
+ "children": [
+ "/search/notes",
+ "/search/users"
+ ]
+ },
+ "/settings": {
+ "filePath": "settings.tsx",
+ "children": [
+ "/settings/backup",
+ "/settings/bitcoin-connect",
+ "/settings/general",
+ "/settings/relay",
+ "/settings/user",
+ "/settings/wallet"
+ ]
+ },
+ "/store": {
+ "filePath": "store.tsx"
+ },
+ "/topic": {
+ "filePath": "topic.tsx"
+ },
+ "/trending": {
+ "filePath": "trending.tsx",
+ "children": [
+ "/trending/notes",
+ "/trending/users"
+ ]
+ },
+ "/auth": {
+ "filePath": "auth.lazy.tsx",
+ "children": [
+ "/auth/create-profile",
+ "/auth/import",
+ "/auth/remote",
+ "/auth/$account/backup"
+ ]
+ },
+ "/landing": {
+ "filePath": "landing.lazy.tsx"
+ },
+ "/$account/home": {
+ "filePath": "$account.home.tsx",
+ "parent": "/$account"
+ },
+ "/auth/create-profile": {
+ "filePath": "auth/create-profile.tsx",
+ "parent": "/auth"
+ },
+ "/create-newsfeed/f2f": {
+ "filePath": "create-newsfeed.f2f.tsx",
+ "parent": "/create-newsfeed"
+ },
+ "/create-newsfeed/users": {
+ "filePath": "create-newsfeed.users.tsx",
+ "parent": "/create-newsfeed"
+ },
+ "/events/$id": {
+ "filePath": "events/$id.tsx"
+ },
+ "/panel/$account": {
+ "filePath": "panel.$account.tsx"
+ },
+ "/search/notes": {
+ "filePath": "search.notes.tsx",
+ "parent": "/search"
+ },
+ "/search/users": {
+ "filePath": "search.users.tsx",
+ "parent": "/search"
+ },
+ "/settings/backup": {
+ "filePath": "settings/backup.tsx",
+ "parent": "/settings"
+ },
+ "/settings/bitcoin-connect": {
+ "filePath": "settings/bitcoin-connect.tsx",
+ "parent": "/settings"
+ },
+ "/settings/general": {
+ "filePath": "settings/general.tsx",
+ "parent": "/settings"
+ },
+ "/settings/relay": {
+ "filePath": "settings/relay.tsx",
+ "parent": "/settings"
+ },
+ "/settings/user": {
+ "filePath": "settings/user.tsx",
+ "parent": "/settings"
+ },
+ "/settings/wallet": {
+ "filePath": "settings/wallet.tsx",
+ "parent": "/settings"
+ },
+ "/trending/notes": {
+ "filePath": "trending.notes.tsx",
+ "parent": "/trending"
+ },
+ "/trending/users": {
+ "filePath": "trending.users.tsx",
+ "parent": "/trending"
+ },
+ "/users/$pubkey": {
+ "filePath": "users/$pubkey.tsx"
+ },
+ "/zap/$id": {
+ "filePath": "zap.$id.tsx"
+ },
+ "/auth/import": {
+ "filePath": "auth/import.lazy.tsx",
+ "parent": "/auth"
+ },
+ "/auth/remote": {
+ "filePath": "auth/remote.lazy.tsx",
+ "parent": "/auth"
+ },
+ "/editor/": {
+ "filePath": "editor/index.tsx"
+ },
+ "/auth/$account/backup": {
+ "filePath": "auth/$account.backup.tsx",
+ "parent": "/auth"
+ }
+ }
+}
+ROUTE_MANIFEST_END */
diff --git a/apps/desktop2/src/routes/$account.home.tsx b/src/routes/$account.home.tsx
similarity index 97%
rename from apps/desktop2/src/routes/$account.home.tsx
rename to src/routes/$account.home.tsx
index a4f0787a..c4eee1a4 100644
--- a/apps/desktop2/src/routes/$account.home.tsx
+++ b/src/routes/$account.home.tsx
@@ -1,8 +1,8 @@
+import { ArrowLeftIcon, ArrowRightIcon, PlusIcon } from "@/components";
import { Column } from "@/components/column";
import { Toolbar } from "@/components/toolbar";
-import { ArrowLeftIcon, ArrowRightIcon, PlusIcon } from "@lume/icons";
-import { NostrQuery } from "@lume/system";
-import type { ColumnEvent, LumeColumn } from "@lume/types";
+import { NostrQuery } from "@/system";
+import type { ColumnEvent, LumeColumn } from "@/types";
import { createFileRoute } from "@tanstack/react-router";
import { listen } from "@tauri-apps/api/event";
import { getCurrentWindow } from "@tauri-apps/api/window";
diff --git a/apps/desktop2/src/routes/$account.tsx b/src/routes/$account.tsx
similarity index 98%
rename from apps/desktop2/src/routes/$account.tsx
rename to src/routes/$account.tsx
index cac414ae..5eea70ce 100644
--- a/apps/desktop2/src/routes/$account.tsx
+++ b/src/routes/$account.tsx
@@ -1,12 +1,12 @@
-import { User } from "@/components/user";
+import { cn } from "@/commons";
import {
ChevronDownIcon,
ComposeFilledIcon,
PlusIcon,
SearchIcon,
-} from "@lume/icons";
-import { LumeWindow, NostrAccount, NostrQuery } from "@lume/system";
-import { cn } from "@lume/utils";
+} from "@/components";
+import { User } from "@/components/user";
+import { LumeWindow, NostrAccount, NostrQuery } from "@/system";
import { Outlet, createFileRoute } from "@tanstack/react-router";
import { Menu, MenuItem, PredefinedMenuItem } from "@tauri-apps/api/menu";
import { getCurrentWindow } from "@tauri-apps/api/window";
diff --git a/apps/desktop2/src/routes/__root.tsx b/src/routes/__root.tsx
similarity index 93%
rename from apps/desktop2/src/routes/__root.tsx
rename to src/routes/__root.tsx
index 06232ce8..cd3a2b30 100644
--- a/apps/desktop2/src/routes/__root.tsx
+++ b/src/routes/__root.tsx
@@ -1,4 +1,4 @@
-import { Spinner } from "@lume/ui";
+import { Spinner } from "@/components";
import type { QueryClient } from "@tanstack/react-query";
import { Outlet, createRootRouteWithContext } from "@tanstack/react-router";
import type { OsType } from "@tauri-apps/plugin-os";
diff --git a/apps/desktop2/src/routes/auth.lazy.tsx b/src/routes/auth.lazy.tsx
similarity index 87%
rename from apps/desktop2/src/routes/auth.lazy.tsx
rename to src/routes/auth.lazy.tsx
index a708e347..7e0ecdb6 100644
--- a/apps/desktop2/src/routes/auth.lazy.tsx
+++ b/src/routes/auth.lazy.tsx
@@ -1,4 +1,4 @@
-import { Container } from "@lume/ui";
+import { Container } from "@/components";
import { Outlet, createLazyFileRoute } from "@tanstack/react-router";
export const Route = createLazyFileRoute("/auth")({
diff --git a/apps/desktop2/src/routes/auth/$account.backup.tsx b/src/routes/auth/$account.backup.tsx
similarity index 97%
rename from apps/desktop2/src/routes/auth/$account.backup.tsx
rename to src/routes/auth/$account.backup.tsx
index 6699aa44..de0aa6a7 100644
--- a/apps/desktop2/src/routes/auth/$account.backup.tsx
+++ b/src/routes/auth/$account.backup.tsx
@@ -1,6 +1,6 @@
-import { CheckIcon } from "@lume/icons";
-import { Spinner } from "@lume/ui";
-import { displayNsec } from "@lume/utils";
+import { displayNsec } from "@/commons";
+import { Spinner } from "@/components";
+import { CheckIcon } from "@/components";
import * as Checkbox from "@radix-ui/react-checkbox";
import { createFileRoute, useNavigate } from "@tanstack/react-router";
import { invoke } from "@tauri-apps/api/core";
diff --git a/apps/desktop2/src/routes/auth/create-profile.tsx b/src/routes/auth/create-profile.tsx
similarity index 96%
rename from apps/desktop2/src/routes/auth/create-profile.tsx
rename to src/routes/auth/create-profile.tsx
index ddb9b658..72b50a6e 100644
--- a/apps/desktop2/src/routes/auth/create-profile.tsx
+++ b/src/routes/auth/create-profile.tsx
@@ -1,8 +1,8 @@
+import { Spinner } from "@/components";
+import { PlusIcon } from "@/components";
import { AvatarUploader } from "@/components/avatarUploader";
-import { PlusIcon } from "@lume/icons";
-import { NostrAccount } from "@lume/system";
-import type { Metadata } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { NostrAccount } from "@/system";
+import type { Metadata } from "@/types";
import { createFileRoute, useNavigate } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
import { useState } from "react";
diff --git a/apps/desktop2/src/routes/auth/import.lazy.tsx b/src/routes/auth/import.lazy.tsx
similarity index 97%
rename from apps/desktop2/src/routes/auth/import.lazy.tsx
rename to src/routes/auth/import.lazy.tsx
index 1bcadfb3..bcf8d24e 100644
--- a/apps/desktop2/src/routes/auth/import.lazy.tsx
+++ b/src/routes/auth/import.lazy.tsx
@@ -1,5 +1,5 @@
-import { NostrAccount } from "@lume/system";
-import { Spinner } from "@lume/ui";
+import { Spinner } from "@/components";
+import { NostrAccount } from "@/system";
import { createLazyFileRoute } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
import { useState } from "react";
diff --git a/apps/desktop2/src/routes/auth/remote.lazy.tsx b/src/routes/auth/remote.lazy.tsx
similarity index 96%
rename from apps/desktop2/src/routes/auth/remote.lazy.tsx
rename to src/routes/auth/remote.lazy.tsx
index 51779493..e64a4ebb 100644
--- a/apps/desktop2/src/routes/auth/remote.lazy.tsx
+++ b/src/routes/auth/remote.lazy.tsx
@@ -1,5 +1,5 @@
-import { NostrAccount } from "@lume/system";
-import { Spinner } from "@lume/ui";
+import { Spinner } from "@/components";
+import { NostrAccount } from "@/system";
import { createLazyFileRoute } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
import { useState } from "react";
diff --git a/apps/desktop2/src/routes/bootstrap-relays.tsx b/src/routes/bootstrap-relays.tsx
similarity index 96%
rename from apps/desktop2/src/routes/bootstrap-relays.tsx
rename to src/routes/bootstrap-relays.tsx
index 2a6d7a21..48878ac7 100644
--- a/apps/desktop2/src/routes/bootstrap-relays.tsx
+++ b/src/routes/bootstrap-relays.tsx
@@ -1,7 +1,7 @@
-import { CancelIcon, PlusIcon } from "@lume/icons";
-import { NostrQuery } from "@lume/system";
-import type { Relay } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { Spinner } from "@/components";
+import { CancelIcon, PlusIcon } from "@/components";
+import { NostrQuery } from "@/system";
+import type { Relay } from "@/types";
import { createFileRoute } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
import { useEffect, useState } from "react";
diff --git a/apps/desktop2/src/routes/create-group.tsx b/src/routes/create-group.tsx
similarity index 97%
rename from apps/desktop2/src/routes/create-group.tsx
rename to src/routes/create-group.tsx
index ced17242..5485d392 100644
--- a/apps/desktop2/src/routes/create-group.tsx
+++ b/src/routes/create-group.tsx
@@ -1,8 +1,8 @@
+import { Spinner } from "@/components";
+import { CancelIcon, PlusIcon } from "@/components";
import { User } from "@/components/user";
-import { CancelIcon, PlusIcon } from "@lume/icons";
-import { NostrAccount, NostrQuery } from "@lume/system";
-import type { ColumnRouteSearch } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { NostrAccount, NostrQuery } from "@/system";
+import type { ColumnRouteSearch } from "@/types";
import { createFileRoute } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
import { useState } from "react";
diff --git a/apps/desktop2/src/routes/create-newsfeed.f2f.tsx b/src/routes/create-newsfeed.f2f.tsx
similarity index 95%
rename from apps/desktop2/src/routes/create-newsfeed.f2f.tsx
rename to src/routes/create-newsfeed.f2f.tsx
index a5c45b79..adfecc38 100644
--- a/apps/desktop2/src/routes/create-newsfeed.f2f.tsx
+++ b/src/routes/create-newsfeed.f2f.tsx
@@ -1,6 +1,6 @@
-import { NostrAccount } from "@lume/system";
-import type { ColumnRouteSearch } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { Spinner } from "@/components";
+import { NostrAccount } from "@/system";
+import type { ColumnRouteSearch } from "@/types";
import { createFileRoute } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
import { useState } from "react";
diff --git a/apps/desktop2/src/routes/create-newsfeed.tsx b/src/routes/create-newsfeed.tsx
similarity index 95%
rename from apps/desktop2/src/routes/create-newsfeed.tsx
rename to src/routes/create-newsfeed.tsx
index 068cbf1b..2b099327 100644
--- a/apps/desktop2/src/routes/create-newsfeed.tsx
+++ b/src/routes/create-newsfeed.tsx
@@ -1,5 +1,5 @@
-import type { ColumnRouteSearch } from "@lume/types";
-import { cn } from "@lume/utils";
+import type { ColumnRouteSearch } from "@/types";
+import { cn } from "@/commons";
import { Link, Outlet } from "@tanstack/react-router";
import { createFileRoute } from "@tanstack/react-router";
diff --git a/apps/desktop2/src/routes/create-newsfeed.users.tsx b/src/routes/create-newsfeed.users.tsx
similarity index 96%
rename from apps/desktop2/src/routes/create-newsfeed.users.tsx
rename to src/routes/create-newsfeed.users.tsx
index cbbc747a..5b10c17b 100644
--- a/apps/desktop2/src/routes/create-newsfeed.users.tsx
+++ b/src/routes/create-newsfeed.users.tsx
@@ -1,7 +1,7 @@
+import { Spinner } from "@/components";
import { User } from "@/components/user";
-import { NostrAccount } from "@lume/system";
-import type { ColumnRouteSearch } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { NostrAccount } from "@/system";
+import type { ColumnRouteSearch } from "@/types";
import { createFileRoute } from "@tanstack/react-router";
import { Await, defer } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
diff --git a/apps/desktop2/src/routes/create-topic.tsx b/src/routes/create-topic.tsx
similarity index 94%
rename from apps/desktop2/src/routes/create-topic.tsx
rename to src/routes/create-topic.tsx
index d1604ba0..7aeaed30 100644
--- a/apps/desktop2/src/routes/create-topic.tsx
+++ b/src/routes/create-topic.tsx
@@ -1,8 +1,8 @@
-import { CheckCircleIcon } from "@lume/icons";
-import { NostrQuery } from "@lume/system";
-import type { ColumnRouteSearch } from "@lume/types";
-import { Spinner } from "@lume/ui";
-import { TOPICS } from "@lume/utils";
+import { Spinner } from "@/components";
+import { CheckCircleIcon } from "@/components";
+import { TOPICS } from "@/constants";
+import { NostrQuery } from "@/system";
+import type { ColumnRouteSearch } from "@/types";
import { createFileRoute } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
import { useState } from "react";
diff --git a/apps/desktop2/src/routes/editor/-components/media.tsx b/src/routes/editor/-components/media.tsx
similarity index 90%
rename from apps/desktop2/src/routes/editor/-components/media.tsx
rename to src/routes/editor/-components/media.tsx
index 8763e6e5..709a3d69 100644
--- a/apps/desktop2/src/routes/editor/-components/media.tsx
+++ b/src/routes/editor/-components/media.tsx
@@ -1,7 +1,7 @@
-import { AddMediaIcon } from "@lume/icons";
-import { NostrQuery } from "@lume/system";
-import { Spinner } from "@lume/ui";
-import { insertImage, isImagePath } from "@lume/utils";
+import { insertImage, isImagePath } from "@/commons";
+import { Spinner } from "@/components";
+import { AddMediaIcon } from "@/components";
+import { NostrQuery } from "@/system";
import type { UnlistenFn } from "@tauri-apps/api/event";
import { getCurrentWindow } from "@tauri-apps/api/window";
import { message } from "@tauri-apps/plugin-dialog";
diff --git a/apps/desktop2/src/routes/editor/-components/pow.tsx b/src/routes/editor/-components/pow.tsx
similarity index 92%
rename from apps/desktop2/src/routes/editor/-components/pow.tsx
rename to src/routes/editor/-components/pow.tsx
index 05cc8276..ac94f4e0 100644
--- a/apps/desktop2/src/routes/editor/-components/pow.tsx
+++ b/src/routes/editor/-components/pow.tsx
@@ -1,4 +1,4 @@
-import { PowIcon } from "@lume/icons";
+import { PowIcon } from "@/components";
import type { Dispatch, SetStateAction } from "react";
export function PowButton({
diff --git a/apps/desktop2/src/routes/editor/-components/warning.tsx b/src/routes/editor/-components/warning.tsx
similarity index 92%
rename from apps/desktop2/src/routes/editor/-components/warning.tsx
rename to src/routes/editor/-components/warning.tsx
index 2a9ca757..4598514c 100644
--- a/apps/desktop2/src/routes/editor/-components/warning.tsx
+++ b/src/routes/editor/-components/warning.tsx
@@ -1,4 +1,4 @@
-import { NsfwIcon } from "@lume/icons";
+import { NsfwIcon } from "@/components";
import type { Dispatch, SetStateAction } from "react";
export function WarningButton({
diff --git a/apps/desktop2/src/routes/editor/index.tsx b/src/routes/editor/index.tsx
similarity index 98%
rename from apps/desktop2/src/routes/editor/index.tsx
rename to src/routes/editor/index.tsx
index db794403..ca5e3753 100644
--- a/apps/desktop2/src/routes/editor/index.tsx
+++ b/src/routes/editor/index.tsx
@@ -1,10 +1,10 @@
+import { cn, insertImage, insertNostrEvent, isImageUrl } from "@/commons";
+import { Spinner } from "@/components";
+import { ComposeFilledIcon } from "@/components";
import { Note } from "@/components/note";
import { MentionNote } from "@/components/note/mentions/note";
import { User } from "@/components/user";
-import { ComposeFilledIcon } from "@lume/icons";
-import { LumeEvent, useEvent } from "@lume/system";
-import { Spinner } from "@lume/ui";
-import { cn, insertImage, insertNostrEvent, isImageUrl } from "@lume/utils";
+import { LumeEvent, useEvent } from "@/system";
import { createFileRoute } from "@tanstack/react-router";
import { nip19 } from "nostr-tools";
import { useEffect, useState } from "react";
diff --git a/apps/desktop2/src/routes/events/$id.tsx b/src/routes/events/$id.tsx
similarity index 97%
rename from apps/desktop2/src/routes/events/$id.tsx
rename to src/routes/events/$id.tsx
index a1c96695..e088ac6c 100644
--- a/apps/desktop2/src/routes/events/$id.tsx
+++ b/src/routes/events/$id.tsx
@@ -1,6 +1,6 @@
import { Note } from "@/components/note";
-import { LumeEvent, NostrQuery } from "@lume/system";
-import type { Meta } from "@lume/types";
+import { LumeEvent, NostrQuery } from "@/system";
+import type { Meta } from "@/types";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import { createFileRoute } from "@tanstack/react-router";
import { getCurrentWindow } from "@tauri-apps/api/window";
diff --git a/apps/desktop2/src/routes/events/-components/child.tsx b/src/routes/events/-components/child.tsx
similarity index 95%
rename from apps/desktop2/src/routes/events/-components/child.tsx
rename to src/routes/events/-components/child.tsx
index 549890f7..8934be63 100644
--- a/apps/desktop2/src/routes/events/-components/child.tsx
+++ b/src/routes/events/-components/child.tsx
@@ -1,5 +1,5 @@
import { Note } from "@/components/note";
-import type { LumeEvent } from "@lume/system";
+import type { LumeEvent } from "@/system";
import NoteParent from "./parent";
import { memo } from "react";
diff --git a/apps/desktop2/src/routes/events/-components/parent.tsx b/src/routes/events/-components/parent.tsx
similarity index 95%
rename from apps/desktop2/src/routes/events/-components/parent.tsx
rename to src/routes/events/-components/parent.tsx
index fd685308..9c23ae4f 100644
--- a/apps/desktop2/src/routes/events/-components/parent.tsx
+++ b/src/routes/events/-components/parent.tsx
@@ -1,7 +1,7 @@
import { Note } from "@/components/note";
-import type { LumeEvent } from "@lume/system";
-import NoteChild from "./child";
+import type { LumeEvent } from "@/system";
import { memo } from "react";
+import NoteChild from "./child";
const NoteParent = memo(function NoteParent({ event }: { event: LumeEvent }) {
return (
diff --git a/apps/desktop2/src/routes/global.tsx b/src/routes/global.tsx
similarity index 95%
rename from apps/desktop2/src/routes/global.tsx
rename to src/routes/global.tsx
index 8496d9e4..bfb5f8bb 100644
--- a/apps/desktop2/src/routes/global.tsx
+++ b/src/routes/global.tsx
@@ -1,11 +1,11 @@
+import { Spinner } from "@/components";
+import { ArrowRightCircleIcon } from "@/components";
import { Conversation } from "@/components/conversation";
import { Quote } from "@/components/quote";
import { RepostNote } from "@/components/repost";
import { TextNote } from "@/components/text";
-import { ArrowRightCircleIcon } from "@lume/icons";
-import { type LumeEvent, NostrQuery } from "@lume/system";
-import { type ColumnRouteSearch, Kind } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { type LumeEvent, NostrQuery } from "@/system";
+import { type ColumnRouteSearch, Kind } from "@/types";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import { useInfiniteQuery } from "@tanstack/react-query";
import { createFileRoute } from "@tanstack/react-router";
diff --git a/apps/desktop2/src/routes/group.tsx b/src/routes/group.tsx
similarity index 95%
rename from apps/desktop2/src/routes/group.tsx
rename to src/routes/group.tsx
index 40f95f67..1dafa412 100644
--- a/apps/desktop2/src/routes/group.tsx
+++ b/src/routes/group.tsx
@@ -1,11 +1,11 @@
+import { Spinner } from "@/components";
+import { ArrowRightCircleIcon } from "@/components";
import { Conversation } from "@/components/conversation";
import { Quote } from "@/components/quote";
import { RepostNote } from "@/components/repost";
import { TextNote } from "@/components/text";
-import { ArrowRightCircleIcon } from "@lume/icons";
-import { type LumeEvent, NostrQuery } from "@lume/system";
-import { type ColumnRouteSearch, Kind } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { type LumeEvent, NostrQuery } from "@/system";
+import { type ColumnRouteSearch, Kind } from "@/types";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import { useInfiniteQuery } from "@tanstack/react-query";
import { createFileRoute, redirect } from "@tanstack/react-router";
diff --git a/apps/desktop2/src/routes/index.tsx b/src/routes/index.tsx
similarity index 95%
rename from apps/desktop2/src/routes/index.tsx
rename to src/routes/index.tsx
index 0943098a..35151b46 100644
--- a/apps/desktop2/src/routes/index.tsx
+++ b/src/routes/index.tsx
@@ -1,8 +1,8 @@
+import { checkForAppUpdates, displayNpub } from "@/commons";
+import { Spinner } from "@/components";
+import { PlusIcon, RelayIcon } from "@/components";
import { User } from "@/components/user";
-import { PlusIcon, RelayIcon } from "@lume/icons";
-import { NostrAccount } from "@lume/system";
-import { Spinner } from "@lume/ui";
-import { checkForAppUpdates, displayNpub } from "@lume/utils";
+import { NostrAccount } from "@/system";
import { Link } from "@tanstack/react-router";
import { createFileRoute, redirect } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
diff --git a/apps/desktop2/src/routes/landing.lazy.tsx b/src/routes/landing.lazy.tsx
similarity index 97%
rename from apps/desktop2/src/routes/landing.lazy.tsx
rename to src/routes/landing.lazy.tsx
index f92d370a..d74e841b 100644
--- a/apps/desktop2/src/routes/landing.lazy.tsx
+++ b/src/routes/landing.lazy.tsx
@@ -1,4 +1,4 @@
-import { KeyIcon, RemoteIcon } from "@lume/icons";
+import { KeyIcon, RemoteIcon } from "@/components";
import { Link, createLazyFileRoute } from "@tanstack/react-router";
export const Route = createLazyFileRoute("/landing")({
diff --git a/apps/desktop2/src/routes/newsfeed.tsx b/src/routes/newsfeed.tsx
similarity index 96%
rename from apps/desktop2/src/routes/newsfeed.tsx
rename to src/routes/newsfeed.tsx
index 3e804c01..aefc3180 100644
--- a/apps/desktop2/src/routes/newsfeed.tsx
+++ b/src/routes/newsfeed.tsx
@@ -1,11 +1,11 @@
+import { Spinner } from "@/components";
+import { ArrowRightCircleIcon, ArrowUpIcon } from "@/components";
import { Conversation } from "@/components/conversation";
import { Quote } from "@/components/quote";
import { RepostNote } from "@/components/repost";
import { TextNote } from "@/components/text";
-import { ArrowRightCircleIcon, ArrowUpIcon } from "@lume/icons";
-import { LumeEvent, NostrAccount, NostrQuery } from "@lume/system";
-import { type ColumnRouteSearch, Kind, type Meta } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { LumeEvent, NostrAccount, NostrQuery } from "@/system";
+import { type ColumnRouteSearch, Kind, type Meta } from "@/types";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import { type InfiniteData, useInfiniteQuery } from "@tanstack/react-query";
import { createFileRoute, redirect } from "@tanstack/react-router";
diff --git a/apps/desktop2/src/routes/onboarding.tsx b/src/routes/onboarding.tsx
similarity index 98%
rename from apps/desktop2/src/routes/onboarding.tsx
rename to src/routes/onboarding.tsx
index 17993c60..e0661afa 100644
--- a/apps/desktop2/src/routes/onboarding.tsx
+++ b/src/routes/onboarding.tsx
@@ -1,4 +1,4 @@
-import type { ColumnRouteSearch } from "@lume/types";
+import type { ColumnRouteSearch } from "@/types";
import { createFileRoute } from "@tanstack/react-router";
export const Route = createFileRoute("/onboarding")({
diff --git a/apps/desktop2/src/routes/panel.$account.tsx b/src/routes/panel.$account.tsx
similarity index 98%
rename from apps/desktop2/src/routes/panel.$account.tsx
rename to src/routes/panel.$account.tsx
index 17d7676e..32068e75 100644
--- a/apps/desktop2/src/routes/panel.$account.tsx
+++ b/src/routes/panel.$account.tsx
@@ -1,14 +1,14 @@
-import { Note } from "@/components/note";
-import { User } from "@/components/user";
-import { HorizontalDotsIcon, InfoIcon, RepostIcon } from "@lume/icons";
-import { type LumeEvent, LumeWindow, NostrQuery, useEvent } from "@lume/system";
-import { Kind } from "@lume/types";
-import { Spinner } from "@lume/ui";
import {
checkForAppUpdates,
decodeZapInvoice,
formatCreatedAt,
-} from "@lume/utils";
+} from "@/commons";
+import { Spinner } from "@/components";
+import { HorizontalDotsIcon, InfoIcon, RepostIcon } from "@/components";
+import { Note } from "@/components/note";
+import { User } from "@/components/user";
+import { type LumeEvent, LumeWindow, NostrQuery, useEvent } from "@/system";
+import { Kind } from "@/types";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import * as Tabs from "@radix-ui/react-tabs";
import { useQuery } from "@tanstack/react-query";
diff --git a/apps/desktop2/src/routes/search.notes.tsx b/src/routes/search.notes.tsx
similarity index 94%
rename from apps/desktop2/src/routes/search.notes.tsx
rename to src/routes/search.notes.tsx
index 7df990be..6bf48a32 100644
--- a/apps/desktop2/src/routes/search.notes.tsx
+++ b/src/routes/search.notes.tsx
@@ -1,10 +1,10 @@
+import { Spinner } from "@/components";
import { Conversation } from "@/components/conversation";
import { Quote } from "@/components/quote";
import { RepostNote } from "@/components/repost";
import { TextNote } from "@/components/text";
-import { LumeEvent, NostrQuery } from "@lume/system";
-import { Kind, type NostrEvent } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { LumeEvent, NostrQuery } from "@/system";
+import { Kind, type NostrEvent } from "@/types";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import { useQuery } from "@tanstack/react-query";
import { createFileRoute } from "@tanstack/react-router";
diff --git a/apps/desktop2/src/routes/search.tsx b/src/routes/search.tsx
similarity index 100%
rename from apps/desktop2/src/routes/search.tsx
rename to src/routes/search.tsx
diff --git a/apps/desktop2/src/routes/search.users.tsx b/src/routes/search.users.tsx
similarity index 95%
rename from apps/desktop2/src/routes/search.users.tsx
rename to src/routes/search.users.tsx
index 96c7adda..85194658 100644
--- a/apps/desktop2/src/routes/search.users.tsx
+++ b/src/routes/search.users.tsx
@@ -1,7 +1,7 @@
+import { Spinner } from "@/components";
import { User } from "@/components/user";
-import { LumeWindow, NostrQuery } from "@lume/system";
-import type { NostrEvent } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { LumeWindow, NostrQuery } from "@/system";
+import type { NostrEvent } from "@/types";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import { useQuery } from "@tanstack/react-query";
import { createFileRoute } from "@tanstack/react-router";
diff --git a/apps/desktop2/src/routes/settings.tsx b/src/routes/settings.tsx
similarity index 98%
rename from apps/desktop2/src/routes/settings.tsx
rename to src/routes/settings.tsx
index fa268f36..c2f1f1af 100644
--- a/apps/desktop2/src/routes/settings.tsx
+++ b/src/routes/settings.tsx
@@ -1,11 +1,11 @@
+import { cn } from "@/commons";
import {
RelayIcon,
SecureIcon,
SettingsIcon,
UserIcon,
ZapIcon,
-} from "@lume/icons";
-import { cn } from "@lume/utils";
+} from "@/components";
import { Link } from "@tanstack/react-router";
import { Outlet, createFileRoute } from "@tanstack/react-router";
diff --git a/apps/desktop2/src/routes/settings/backup.tsx b/src/routes/settings/backup.tsx
similarity index 95%
rename from apps/desktop2/src/routes/settings/backup.tsx
rename to src/routes/settings/backup.tsx
index 2f039145..c60ab74c 100644
--- a/apps/desktop2/src/routes/settings/backup.tsx
+++ b/src/routes/settings/backup.tsx
@@ -1,6 +1,6 @@
+import { displayNpub } from "@/commons";
import { User } from "@/components/user";
-import { NostrAccount } from "@lume/system";
-import { displayNpub } from "@lume/utils";
+import { NostrAccount } from "@/system";
import { createFileRoute } from "@tanstack/react-router";
import { invoke } from "@tauri-apps/api/core";
import { writeText } from "@tauri-apps/plugin-clipboard-manager";
diff --git a/apps/desktop2/src/routes/settings/bitcoin-connect.tsx b/src/routes/settings/bitcoin-connect.tsx
similarity index 95%
rename from apps/desktop2/src/routes/settings/bitcoin-connect.tsx
rename to src/routes/settings/bitcoin-connect.tsx
index c025ec02..139b9e6c 100644
--- a/apps/desktop2/src/routes/settings/bitcoin-connect.tsx
+++ b/src/routes/settings/bitcoin-connect.tsx
@@ -1,5 +1,5 @@
import { Button, init } from "@getalby/bitcoin-connect-react";
-import { NostrAccount } from "@lume/system";
+import { NostrAccount } from "@/system";
import { createFileRoute } from "@tanstack/react-router";
import { getCurrentWebviewWindow } from "@tauri-apps/api/webviewWindow";
diff --git a/apps/desktop2/src/routes/settings/general.tsx b/src/routes/settings/general.tsx
similarity index 99%
rename from apps/desktop2/src/routes/settings/general.tsx
rename to src/routes/settings/general.tsx
index 994ac759..c1da0904 100644
--- a/apps/desktop2/src/routes/settings/general.tsx
+++ b/src/routes/settings/general.tsx
@@ -1,4 +1,4 @@
-import { NostrQuery, type Settings } from "@lume/system";
+import { NostrQuery, type Settings } from "@/system";
import * as Switch from "@radix-ui/react-switch";
import { createFileRoute } from "@tanstack/react-router";
import { invoke } from "@tauri-apps/api/core";
diff --git a/apps/desktop2/src/routes/settings/relay.tsx b/src/routes/settings/relay.tsx
similarity index 98%
rename from apps/desktop2/src/routes/settings/relay.tsx
rename to src/routes/settings/relay.tsx
index 33f48301..d35e62a8 100644
--- a/apps/desktop2/src/routes/settings/relay.tsx
+++ b/src/routes/settings/relay.tsx
@@ -1,5 +1,5 @@
-import { CancelIcon, PlusIcon } from "@lume/icons";
-import { NostrQuery } from "@lume/system";
+import { CancelIcon, PlusIcon } from "@/components";
+import { NostrQuery } from "@/system";
import { createFileRoute } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
import { useEffect, useState } from "react";
diff --git a/apps/desktop2/src/routes/settings/user.tsx b/src/routes/settings/user.tsx
similarity index 97%
rename from apps/desktop2/src/routes/settings/user.tsx
rename to src/routes/settings/user.tsx
index f7c4e209..5ecc44ff 100644
--- a/apps/desktop2/src/routes/settings/user.tsx
+++ b/src/routes/settings/user.tsx
@@ -1,8 +1,8 @@
+import { Spinner } from "@/components";
import { AvatarUploader } from "@/components/avatarUploader";
-import { PlusIcon } from "@lume/icons";
-import { NostrAccount } from "@lume/system";
-import type { Metadata } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { NostrAccount } from "@/system";
+import type { Metadata } from "@/types";
+import { PlusIcon } from "@/components";
import { Link } from "@tanstack/react-router";
import { createFileRoute } from "@tanstack/react-router";
import { message } from "@tauri-apps/plugin-dialog";
diff --git a/apps/desktop2/src/routes/settings/wallet.tsx b/src/routes/settings/wallet.tsx
similarity index 94%
rename from apps/desktop2/src/routes/settings/wallet.tsx
rename to src/routes/settings/wallet.tsx
index a6f0166b..7cabf3d2 100644
--- a/apps/desktop2/src/routes/settings/wallet.tsx
+++ b/src/routes/settings/wallet.tsx
@@ -1,5 +1,5 @@
-import { NostrAccount } from "@lume/system";
-import { getBitcoinDisplayValues } from "@lume/utils";
+import { getBitcoinDisplayValues } from "@/commons";
+import { NostrAccount } from "@/system";
import { createFileRoute, redirect } from "@tanstack/react-router";
export const Route = createFileRoute("/settings/wallet")({
diff --git a/apps/desktop2/src/routes/store.tsx b/src/routes/store.tsx
similarity index 97%
rename from apps/desktop2/src/routes/store.tsx
rename to src/routes/store.tsx
index 321b688d..1862baf6 100644
--- a/apps/desktop2/src/routes/store.tsx
+++ b/src/routes/store.tsx
@@ -1,5 +1,5 @@
-import { CommunityIcon, LaurelIcon } from "@lume/icons";
-import type { LumeColumn } from "@lume/types";
+import { CommunityIcon, LaurelIcon } from "@/components";
+import type { LumeColumn } from "@/types";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import { createFileRoute } from "@tanstack/react-router";
import { resolveResource } from "@tauri-apps/api/path";
diff --git a/apps/desktop2/src/routes/topic.tsx b/src/routes/topic.tsx
similarity index 95%
rename from apps/desktop2/src/routes/topic.tsx
rename to src/routes/topic.tsx
index fb7efaa4..cae8c85e 100644
--- a/apps/desktop2/src/routes/topic.tsx
+++ b/src/routes/topic.tsx
@@ -1,11 +1,11 @@
+import { Spinner } from "@/components";
+import { ArrowRightCircleIcon } from "@/components";
import { Conversation } from "@/components/conversation";
import { Quote } from "@/components/quote";
import { RepostNote } from "@/components/repost";
import { TextNote } from "@/components/text";
-import { ArrowRightCircleIcon } from "@lume/icons";
-import { type LumeEvent, NostrQuery } from "@lume/system";
-import { type ColumnRouteSearch, Kind } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { type LumeEvent, NostrQuery } from "@/system";
+import { type ColumnRouteSearch, Kind } from "@/types";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import { useInfiniteQuery } from "@tanstack/react-query";
import { createFileRoute, redirect } from "@tanstack/react-router";
diff --git a/apps/desktop2/src/routes/trending.notes.tsx b/src/routes/trending.notes.tsx
similarity index 95%
rename from apps/desktop2/src/routes/trending.notes.tsx
rename to src/routes/trending.notes.tsx
index 955faf06..236725e4 100644
--- a/apps/desktop2/src/routes/trending.notes.tsx
+++ b/src/routes/trending.notes.tsx
@@ -1,10 +1,10 @@
+import { Spinner } from "@/components";
import { Conversation } from "@/components/conversation";
import { Quote } from "@/components/quote";
import { RepostNote } from "@/components/repost";
import { TextNote } from "@/components/text";
-import { LumeEvent } from "@lume/system";
-import { Kind, type NostrEvent } from "@lume/types";
-import { Spinner } from "@lume/ui";
+import { Kind, type NostrEvent } from "@/types";
+import { LumeEvent } from "@/system";
import * as ScrollArea from "@radix-ui/react-scroll-area";
import { Await, createFileRoute } from "@tanstack/react-router";
import { defer } from "@tanstack/react-router";
diff --git a/apps/desktop2/src/routes/trending.tsx b/src/routes/trending.tsx
similarity index 89%
rename from apps/desktop2/src/routes/trending.tsx
rename to src/routes/trending.tsx
index 0dcf738e..1fedafde 100644
--- a/apps/desktop2/src/routes/trending.tsx
+++ b/src/routes/trending.tsx
@@ -1,7 +1,7 @@
-import { ArticleIcon, GroupFeedsIcon } from "@lume/icons";
-import { NostrQuery } from "@lume/system";
-import type { ColumnRouteSearch } from "@lume/types";
-import { cn } from "@lume/utils";
+import { cn } from "@/commons";
+import { ArticleIcon, GroupFeedsIcon } from "@/components";
+import { NostrQuery } from "@/system";
+import type { ColumnRouteSearch } from "@/types";
import { Link, Outlet } from "@tanstack/react-router";
import { createFileRoute } from "@tanstack/react-router";
diff --git a/apps/desktop2/src/routes/trending.users.tsx b/src/routes/trending.users.tsx
similarity index 98%
rename from apps/desktop2/src/routes/trending.users.tsx
rename to src/routes/trending.users.tsx
index fdc3ebf0..72e61aa9 100644
--- a/apps/desktop2/src/routes/trending.users.tsx
+++ b/src/routes/trending.users.tsx
@@ -1,5 +1,5 @@
+import { Spinner } from "@/components";
import { User } from "@/components/user";
-import { Spinner } from "@lume/ui";
import { Await, defer } from "@tanstack/react-router";
import { createFileRoute } from "@tanstack/react-router";
import { Suspense } from "react";
diff --git a/apps/desktop2/src/routes/users/$pubkey.tsx b/src/routes/users/$pubkey.tsx
similarity index 95%
rename from apps/desktop2/src/routes/users/$pubkey.tsx
rename to src/routes/users/$pubkey.tsx
index 6a2938a5..5d24395f 100644
--- a/apps/desktop2/src/routes/users/$pubkey.tsx
+++ b/src/routes/users/$pubkey.tsx
@@ -1,11 +1,11 @@
+import { Box, Container, Spinner } from "@/components";
import { Conversation } from "@/components/conversation";
import { Quote } from "@/components/quote";
import { RepostNote } from "@/components/repost";
import { TextNote } from "@/components/text";
import { User } from "@/components/user";
-import { type LumeEvent, NostrQuery } from "@lume/system";
-import { Kind } from "@lume/types";
-import { Box, Container, Spinner } from "@lume/ui";
+import { type LumeEvent, NostrQuery } from "@/system";
+import { Kind } from "@/types";
import { createFileRoute, defer } from "@tanstack/react-router";
import { Await } from "@tanstack/react-router";
import { Suspense, useCallback } from "react";
diff --git a/apps/desktop2/src/routes/zap.$id.tsx b/src/routes/zap.$id.tsx
similarity index 98%
rename from apps/desktop2/src/routes/zap.$id.tsx
rename to src/routes/zap.$id.tsx
index bf568ff2..b79f9061 100644
--- a/apps/desktop2/src/routes/zap.$id.tsx
+++ b/src/routes/zap.$id.tsx
@@ -1,5 +1,5 @@
import { User } from "@/components/user";
-import { NostrQuery } from "@lume/system";
+import { NostrQuery } from "@/system";
import { createFileRoute } from "@tanstack/react-router";
import { getCurrentWebviewWindow } from "@tauri-apps/api/webviewWindow";
import { message } from "@tauri-apps/plugin-dialog";
diff --git a/packages/system/src/account.ts b/src/system/account.ts
similarity index 97%
rename from packages/system/src/account.ts
rename to src/system/account.ts
index 7954e664..b1468990 100644
--- a/packages/system/src/account.ts
+++ b/src/system/account.ts
@@ -1,5 +1,5 @@
-import type { Metadata } from "@lume/types";
-import { type Result, commands } from "./commands";
+import { type Result, commands } from "@/commands.gen";
+import type { Metadata } from "@/types";
export const NostrAccount = {
getAccounts: async () => {
diff --git a/packages/system/src/event.ts b/src/system/event.ts
similarity index 98%
rename from packages/system/src/event.ts
rename to src/system/event.ts
index ee6e0531..b628b8ac 100644
--- a/packages/system/src/event.ts
+++ b/src/system/event.ts
@@ -1,5 +1,5 @@
-import type { EventTag, Kind, Meta, NostrEvent } from "@lume/types";
-import { type Result, commands } from "./commands";
+import { type Result, commands } from "@/commands.gen";
+import type { EventTag, Kind, Meta, NostrEvent } from "@/types";
export class LumeEvent {
public id: string;
diff --git a/packages/system/src/hooks/useEvent.ts b/src/system/hooks/useEvent.ts
similarity index 100%
rename from packages/system/src/hooks/useEvent.ts
rename to src/system/hooks/useEvent.ts
diff --git a/packages/system/src/hooks/useProfile.ts b/src/system/hooks/useProfile.ts
similarity index 92%
rename from packages/system/src/hooks/useProfile.ts
rename to src/system/hooks/useProfile.ts
index 466bad1b..c756c830 100644
--- a/packages/system/src/hooks/useProfile.ts
+++ b/src/system/hooks/useProfile.ts
@@ -1,7 +1,7 @@
-import type { Metadata } from "@lume/types";
-import { useQuery } from "@tanstack/react-query";
-import { commands } from "../commands";
+import { commands } from "@/commands.gen";
+import type { Metadata } from "@/types";
import { experimental_createPersister } from "@tanstack/query-persist-client-core";
+import { useQuery } from "@tanstack/react-query";
export function useProfile(pubkey: string, embed?: string) {
const {
diff --git a/packages/system/src/index.ts b/src/system/index.ts
similarity index 86%
rename from packages/system/src/index.ts
rename to src/system/index.ts
index 54d2a154..52a21595 100644
--- a/packages/system/src/index.ts
+++ b/src/system/index.ts
@@ -2,6 +2,5 @@ export * from "./event";
export * from "./account";
export * from "./query";
export * from "./window";
-export * from "./commands";
export * from "./hooks/useEvent";
export * from "./hooks/useProfile";
diff --git a/packages/system/src/query.ts b/src/system/query.ts
similarity index 98%
rename from packages/system/src/query.ts
rename to src/system/query.ts
index 3a1d5429..e58be7f0 100644
--- a/packages/system/src/query.ts
+++ b/src/system/query.ts
@@ -1,11 +1,11 @@
-import type { LumeColumn, Metadata, NostrEvent, Relay } from "@lume/types";
+import { type Result, type RichEvent, commands } from "@/commands.gen";
+import type { LumeColumn, Metadata, NostrEvent, Relay } from "@/types";
import { resolveResource } from "@tauri-apps/api/path";
import { getCurrentWindow } from "@tauri-apps/api/window";
import { open } from "@tauri-apps/plugin-dialog";
import { readFile, readTextFile } from "@tauri-apps/plugin-fs";
import { relaunch } from "@tauri-apps/plugin-process";
import { nip19 } from "nostr-tools";
-import { type Result, type RichEvent, commands } from "./commands";
import { LumeEvent } from "./event";
function toLumeEvents(richEvents: RichEvent[]) {
diff --git a/packages/system/src/window.ts b/src/system/window.ts
similarity index 97%
rename from packages/system/src/window.ts
rename to src/system/window.ts
index 8be2353b..1df8a3aa 100644
--- a/packages/system/src/window.ts
+++ b/src/system/window.ts
@@ -1,5 +1,5 @@
-import type { NostrEvent } from "@lume/types";
-import { commands } from "./commands";
+import { commands } from "@/commands.gen";
+import type { NostrEvent } from "@/types";
import type { LumeEvent } from "./event";
export const LumeWindow = {
diff --git a/packages/types/index.d.ts b/src/types.ts
similarity index 96%
rename from packages/types/index.d.ts
rename to src/types.ts
index 46987f62..b1b76302 100644
--- a/packages/types/index.d.ts
+++ b/src/types.ts
@@ -11,10 +11,8 @@ export enum Kind {
Repost = 6,
Reaction = 7,
ZapReceipt = 9735,
- // NIP-89: App Metadata
AppRecommendation = 31989,
AppHandler = 31990,
- // #TODO: Add all nostr kinds
}
export interface Meta {
diff --git a/packages/tailwindcss/tailwind.config.js b/tailwind.config.js
similarity index 95%
rename from packages/tailwindcss/tailwind.config.js
rename to tailwind.config.js
index e7337e71..9d1c68ad 100644
--- a/packages/tailwindcss/tailwind.config.js
+++ b/tailwind.config.js
@@ -2,7 +2,11 @@
import harmonyPalette from "@evilmartians/harmony/tailwind";
-const config = {
+export default {
+ content: [
+ "./src/**/*.{js,ts,jsx,tsx}",
+ "index.html",
+ ],
theme: {
colors: harmonyPalette,
extend: {
@@ -52,5 +56,3 @@ const config = {
require("tailwindcss-content-visibility"),
],
};
-
-export default config;
diff --git a/tsconfig.json b/tsconfig.json
new file mode 100644
index 00000000..adb0672d
--- /dev/null
+++ b/tsconfig.json
@@ -0,0 +1,39 @@
+{
+ "compilerOptions": {
+ "target": "ESNext",
+ "useDefineForClassFields": true,
+ "lib": [
+ "ESNext",
+ "ES2020",
+ "DOM",
+ "DOM.Iterable"
+ ],
+ "module": "ESNext",
+ "skipLibCheck": true,
+ "baseUrl": "./",
+ "paths": {
+ "@/*": [
+ "./src/*"
+ ]
+ },
+ "moduleResolution": "bundler",
+ "allowImportingTsExtensions": true,
+ "resolveJsonModule": true,
+ "isolatedModules": true,
+ "noEmit": true,
+ "jsx": "react-jsx",
+ "strict": true,
+ "noUnusedLocals": true,
+ "noUnusedParameters": true,
+ "noFallthroughCasesInSwitch": true,
+ "strictNullChecks": false
+ },
+ "include": [
+ "src"
+ ],
+ "references": [
+ {
+ "path": "./tsconfig.node.json"
+ }
+ ]
+}
diff --git a/tsconfig.node.json b/tsconfig.node.json
new file mode 100644
index 00000000..d37a14f7
--- /dev/null
+++ b/tsconfig.node.json
@@ -0,0 +1,12 @@
+{
+ "compilerOptions": {
+ "composite": true,
+ "skipLibCheck": true,
+ "module": "ESNext",
+ "moduleResolution": "bundler",
+ "allowSyntheticDefaultImports": true
+ },
+ "include": [
+ "vite.config.ts"
+ ]
+}
diff --git a/apps/desktop2/tsr.config.json b/tsr.config.json
similarity index 67%
rename from apps/desktop2/tsr.config.json
rename to tsr.config.json
index 77360553..9e55950b 100644
--- a/apps/desktop2/tsr.config.json
+++ b/tsr.config.json
@@ -1,6 +1,6 @@
{
"routesDirectory": "./src/routes",
- "generatedRouteTree": "./src/router.gen.ts",
+ "generatedRouteTree": "./src/routes.gen.ts",
"routeFileIgnorePrefix": "-",
"quoteStyle": "single"
}
diff --git a/turbo.json b/turbo.json
deleted file mode 100644
index 98c86c97..00000000
--- a/turbo.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "$schema": "https://turbo.build/schema.json",
- "tasks": {
- "build": {
- "outputs": [
- "dist/**"
- ],
- "cache": false
- },
- "dev": {
- "cache": false,
- "persistent": true
- },
- "type-check": {}
- }
-}
diff --git a/apps/desktop2/vite.config.ts b/vite.config.ts
similarity index 100%
rename from apps/desktop2/vite.config.ts
rename to vite.config.ts