cfb5659020
The old DomainFavicon component had a multi-step fallback chain (HTML scraping, direct URL guessing, then the configured provider) which meant the configurable setting was almost never reached. The new ExternalFavicon component uses the configured favicon URL template directly via RFC 6570 URI templates. - Rename config field faviconProvider -> faviconUrl - Add faviconUrl() utility with uri-templates for RFC 6570 support - Remove local Favicon component from ProfileRightSidebar - Update all consumers to use ExternalFavicon
112 lines
3.8 KiB
JSON
112 lines
3.8 KiB
JSON
{
|
|
"name": "mkstack",
|
|
"private": true,
|
|
"version": "0.0.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "npm i --silent && vite",
|
|
"build": "npm i --silent && vite build -l error && cp dist/index.html dist/404.html && echo 'Project built successfully!'",
|
|
"test": "npm i --silent && tsc --noEmit && eslint && vitest run --reporter=dot --silent && vite build -l error && cp dist/index.html dist/404.html && echo 'All tests passed!'",
|
|
"icons": "bash scripts/generate-icons.sh",
|
|
"build:apk": "bash scripts/build-apk.sh"
|
|
},
|
|
"dependencies": {
|
|
"@capacitor/app": "^8.0.0",
|
|
"@capacitor/core": "^8.1.0",
|
|
"@capacitor/local-notifications": "^8.0.1",
|
|
"@capacitor/status-bar": "^8.0.0",
|
|
"@fontsource-variable/inter": "^5.2.6",
|
|
"@getalby/sdk": "^5.1.1",
|
|
"@hookform/resolvers": "^5.2.2",
|
|
"@nostrify/nostrify": "^0.50.1",
|
|
"@nostrify/react": "^0.2.26",
|
|
"@radix-ui/react-accordion": "^1.2.0",
|
|
"@radix-ui/react-alert-dialog": "^1.1.1",
|
|
"@radix-ui/react-aspect-ratio": "^1.1.0",
|
|
"@radix-ui/react-avatar": "^1.1.0",
|
|
"@radix-ui/react-checkbox": "^1.1.1",
|
|
"@radix-ui/react-collapsible": "^1.1.0",
|
|
"@radix-ui/react-context-menu": "^2.2.1",
|
|
"@radix-ui/react-dialog": "^1.1.2",
|
|
"@radix-ui/react-dropdown-menu": "^2.1.1",
|
|
"@radix-ui/react-hover-card": "^1.1.1",
|
|
"@radix-ui/react-label": "^2.1.0",
|
|
"@radix-ui/react-menubar": "^1.1.1",
|
|
"@radix-ui/react-navigation-menu": "^1.2.0",
|
|
"@radix-ui/react-popover": "^1.1.1",
|
|
"@radix-ui/react-progress": "^1.1.0",
|
|
"@radix-ui/react-radio-group": "^1.2.0",
|
|
"@radix-ui/react-scroll-area": "^1.1.0",
|
|
"@radix-ui/react-select": "^2.1.1",
|
|
"@radix-ui/react-separator": "^1.1.0",
|
|
"@radix-ui/react-slider": "^1.2.0",
|
|
"@radix-ui/react-slot": "^1.1.0",
|
|
"@radix-ui/react-switch": "^1.1.0",
|
|
"@radix-ui/react-tabs": "^1.1.0",
|
|
"@radix-ui/react-toast": "^1.2.1",
|
|
"@radix-ui/react-toggle": "^1.1.0",
|
|
"@radix-ui/react-toggle-group": "^1.1.0",
|
|
"@radix-ui/react-tooltip": "^1.1.4",
|
|
"@tanstack/react-query": "^5.56.2",
|
|
"@unhead/addons": "^2.0.10",
|
|
"@unhead/react": "^2.0.10",
|
|
"buffer": "^6.0.3",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"cmdk": "^1.0.0",
|
|
"date-fns": "^3.6.0",
|
|
"embla-carousel-react": "^8.3.0",
|
|
"fflate": "^0.8.2",
|
|
"hls.js": "^1.6.15",
|
|
"idb": "^8.0.3",
|
|
"input-otp": "^1.2.4",
|
|
"lucide-react": "^0.462.0",
|
|
"nostr-tools": "^2.13.0",
|
|
"qrcode": "^1.5.4",
|
|
"react": "^18.3.1",
|
|
"react-day-picker": "^8.10.1",
|
|
"react-dom": "^18.3.1",
|
|
"react-hook-form": "^7.71.1",
|
|
"react-intersection-observer": "^9.16.0",
|
|
"react-markdown": "^10.1.0",
|
|
"react-resizable-panels": "^2.1.3",
|
|
"react-router-dom": "^6.26.2",
|
|
"recharts": "^2.12.7",
|
|
"rehype-sanitize": "^6.0.0",
|
|
"tailwind-merge": "^2.5.2",
|
|
"tailwindcss-animate": "^1.0.7",
|
|
"uri-templates": "^0.2.0",
|
|
"vaul": "^0.9.3",
|
|
"zod": "^4.3.6"
|
|
},
|
|
"devDependencies": {
|
|
"@capacitor/android": "^8.1.0",
|
|
"@capacitor/cli": "^8.1.0",
|
|
"@eslint/js": "^9.9.0",
|
|
"@html-eslint/eslint-plugin": "^0.41.0",
|
|
"@html-eslint/parser": "^0.41.0",
|
|
"@tailwindcss/typography": "^0.5.15",
|
|
"@testing-library/jest-dom": "^6.6.3",
|
|
"@testing-library/react": "^16.3.0",
|
|
"@types/node": "^22.5.5",
|
|
"@types/qrcode": "^1.5.5",
|
|
"@types/react": "^18.3.1",
|
|
"@types/react-dom": "^18.3.1",
|
|
"@vitejs/plugin-react-swc": "^3.5.0",
|
|
"@webbtc/webln-types": "^3.0.0",
|
|
"@webxdc/types": "^2.1.2",
|
|
"autoprefixer": "^10.4.20",
|
|
"eslint": "^9.9.0",
|
|
"eslint-plugin-react-hooks": "^5.1.0-rc.0",
|
|
"eslint-plugin-react-refresh": "^0.4.9",
|
|
"globals": "^15.9.0",
|
|
"jsdom": "^26.1.0",
|
|
"postcss": "^8.4.47",
|
|
"tailwindcss": "^3.4.11",
|
|
"typescript": "^5.5.3",
|
|
"typescript-eslint": "^8.0.1",
|
|
"vite": "^6.3.5",
|
|
"vitest": "^3.1.4"
|
|
}
|
|
}
|