mirror of
https://github.com/aljazceru/mutiny-web.git
synced 2026-02-23 15:14:19 +01:00
remove solid-start and use solid router / meta instead
This commit is contained in:
committed by
Tony Giorgio
parent
bfa48ccdb2
commit
d38f0d61a2
@@ -1,7 +1,7 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Mutiny Wallet</title>
|
||||
<title data-sm="">Mutiny Wallet</title>
|
||||
<meta charset="utf-8" />
|
||||
<meta
|
||||
name="viewport"
|
||||
@@ -82,7 +82,8 @@
|
||||
</p>
|
||||
</div>
|
||||
</noscript>
|
||||
<script type="module" async src="./src/entry-client.tsx"></script>
|
||||
<div id="root"></div>
|
||||
<script type="module" src="/src/index.tsx"></script>
|
||||
<script>
|
||||
// Check for WebAssembly support
|
||||
if (
|
||||
|
||||
13
package.json
13
package.json
@@ -4,10 +4,8 @@
|
||||
"license": "MIT",
|
||||
"packageManager": "pnpm@8.6.6",
|
||||
"scripts": {
|
||||
"dev": "solid-start dev",
|
||||
"host": "solid-start dev --host",
|
||||
"build": "solid-start build",
|
||||
"start": "solid-start start",
|
||||
"dev": "vite",
|
||||
"build": "tsc && vite build",
|
||||
"check-types": "tsc --noemit",
|
||||
"eslint": "eslint src",
|
||||
"pre-commit": "pnpm run eslint && pnpm run check-types && pnpm run format",
|
||||
@@ -33,11 +31,11 @@
|
||||
"postcss": "^8.4.31",
|
||||
"prettier": "^3.0.3",
|
||||
"prettier-plugin-tailwindcss": "^0.5.6",
|
||||
"solid-start-node": "^0.3.9",
|
||||
"tailwindcss": "^3.3.5",
|
||||
"typescript": "^5.2.2",
|
||||
"vite": "^4.5.0",
|
||||
"vite-plugin-pwa": "^0.14.7",
|
||||
"vite-plugin-solid": "^2.7.0",
|
||||
"vite-plugin-wasm": "^3.2.2",
|
||||
"workbox-window": "^6.6.0"
|
||||
},
|
||||
@@ -61,16 +59,17 @@
|
||||
"@mutinywallet/waila-wasm": "^0.2.4",
|
||||
"@solid-primitives/upload": "^0.0.111",
|
||||
"@solid-primitives/websocket": "^1.2.0",
|
||||
"@solidjs/meta": "^0.29.1",
|
||||
"@solidjs/router": "^0.9.0",
|
||||
"@thisbeyond/solid-select": "^0.14.0",
|
||||
"i18next": "^22.5.1",
|
||||
"i18next-browser-languagedetector": "^7.1.0",
|
||||
"qr-scanner": "^1.4.2",
|
||||
"solid-js": "^1.8.5",
|
||||
"solid-qr-code": "^0.0.8",
|
||||
"solid-start": "^0.3.9",
|
||||
"undici": "^5.27.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16.8"
|
||||
"node": ">=18"
|
||||
}
|
||||
}
|
||||
|
||||
185
pnpm-lock.yaml
generated
185
pnpm-lock.yaml
generated
@@ -65,6 +65,12 @@ importers:
|
||||
'@solid-primitives/websocket':
|
||||
specifier: ^1.2.0
|
||||
version: 1.2.0(solid-js@1.8.5)
|
||||
'@solidjs/meta':
|
||||
specifier: ^0.29.1
|
||||
version: 0.29.1(solid-js@1.8.5)
|
||||
'@solidjs/router':
|
||||
specifier: ^0.9.0
|
||||
version: 0.9.0(solid-js@1.8.5)
|
||||
'@thisbeyond/solid-select':
|
||||
specifier: ^0.14.0
|
||||
version: 0.14.0(solid-js@1.8.5)
|
||||
@@ -73,7 +79,7 @@ importers:
|
||||
version: 22.5.1
|
||||
i18next-browser-languagedetector:
|
||||
specifier: ^7.1.0
|
||||
version: 7.1.0
|
||||
version: 7.2.0
|
||||
qr-scanner:
|
||||
specifier: ^1.4.2
|
||||
version: 1.4.2
|
||||
@@ -83,9 +89,6 @@ importers:
|
||||
solid-qr-code:
|
||||
specifier: ^0.0.8
|
||||
version: 0.0.8(qr.js@0.0.0)(solid-js@1.8.5)
|
||||
solid-start:
|
||||
specifier: ^0.3.9
|
||||
version: 0.3.9(@solidjs/meta@0.29.1)(@solidjs/router@0.8.3)(solid-js@1.8.5)(solid-start-node@0.3.9)(vite@4.5.0)
|
||||
undici:
|
||||
specifier: ^5.27.1
|
||||
version: 5.27.1
|
||||
@@ -141,9 +144,6 @@ importers:
|
||||
prettier-plugin-tailwindcss:
|
||||
specifier: ^0.5.6
|
||||
version: 0.5.6(@ianvs/prettier-plugin-sort-imports@4.1.1)(prettier@3.0.3)
|
||||
solid-start-node:
|
||||
specifier: ^0.3.9
|
||||
version: 0.3.9(solid-start@0.3.9)(vite@4.5.0)
|
||||
tailwindcss:
|
||||
specifier: ^3.3.5
|
||||
version: 3.3.5
|
||||
@@ -156,6 +156,9 @@ importers:
|
||||
vite-plugin-pwa:
|
||||
specifier: ^0.14.7
|
||||
version: 0.14.7(vite@4.5.0)(workbox-build@6.6.0)(workbox-window@6.6.0)
|
||||
vite-plugin-solid:
|
||||
specifier: ^2.7.0
|
||||
version: 2.7.0(solid-js@1.8.5)(vite@4.5.0)
|
||||
vite-plugin-wasm:
|
||||
specifier: ^3.2.2
|
||||
version: 3.2.2(vite@4.5.0)
|
||||
@@ -1453,6 +1456,13 @@ packages:
|
||||
engines: {node: '>=6.9.0'}
|
||||
dependencies:
|
||||
regenerator-runtime: 0.14.0
|
||||
dev: true
|
||||
|
||||
/@babel/runtime@7.23.2:
|
||||
resolution: {integrity: sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==}
|
||||
engines: {node: '>=6.9.0'}
|
||||
dependencies:
|
||||
regenerator-runtime: 0.14.0
|
||||
|
||||
/@babel/template@7.22.5:
|
||||
resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==}
|
||||
@@ -2123,6 +2133,7 @@ packages:
|
||||
/@fastify/busboy@2.0.0:
|
||||
resolution: {integrity: sha512-JUFJad5lv7jxj926GPgymrWQxxjPYuJNiNjNMzqT+HiuP6Vl3dk5xzG+8sTX96np0ZAluvaMzPsjhHZ5rNuNQQ==}
|
||||
engines: {node: '>=14'}
|
||||
dev: false
|
||||
|
||||
/@floating-ui/core@1.4.1:
|
||||
resolution: {integrity: sha512-jk3WqquEJRlcyu7997NtR5PibI+y5bi+LS3hPmguVClypenMsCY3CBa3LAQnozRCtCrYWSEtAdiskpamuJRFOQ==}
|
||||
@@ -3516,6 +3527,7 @@ packages:
|
||||
solid-js: '>=1.8.4'
|
||||
dependencies:
|
||||
solid-js: 1.8.5
|
||||
dev: false
|
||||
|
||||
/@solidjs/router@0.8.3(solid-js@1.7.9):
|
||||
resolution: {integrity: sha512-oJuqQo10rVTiQYhe1qXIG1NyZIZ2YOwHnlLc8Xx+g/iJhFCJo1saLOIrD/Dkh2fpIaIny5ZMkz1cYYqoTYGJbg==}
|
||||
@@ -3524,12 +3536,13 @@ packages:
|
||||
dependencies:
|
||||
solid-js: 1.7.9
|
||||
|
||||
/@solidjs/router@0.8.3(solid-js@1.8.5):
|
||||
resolution: {integrity: sha512-oJuqQo10rVTiQYhe1qXIG1NyZIZ2YOwHnlLc8Xx+g/iJhFCJo1saLOIrD/Dkh2fpIaIny5ZMkz1cYYqoTYGJbg==}
|
||||
/@solidjs/router@0.9.0(solid-js@1.8.5):
|
||||
resolution: {integrity: sha512-q1RxUhLa8lKdbhqEPkG+8RwBQKIH5f5AIWiOxVoUTK4UllgsR0C0FNT++ufnIAb9LNkx3ahE4WxAHZqH4l1vEQ==}
|
||||
peerDependencies:
|
||||
solid-js: ^1.5.3
|
||||
dependencies:
|
||||
solid-js: 1.8.5
|
||||
dev: false
|
||||
|
||||
/@storybook/addon-actions@7.2.2(react-dom@18.2.0)(react@18.2.0):
|
||||
resolution: {integrity: sha512-Ev9oGlpxrt7tCpCmAYA04hsZYKnZIiksaQDCgKAf6I2+yUZBBkZh490yBPkMExpH5bLk7fAgjCMZP9gOyzaq3A==}
|
||||
@@ -5039,6 +5052,7 @@ packages:
|
||||
resolution: {integrity: sha512-TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w==}
|
||||
dependencies:
|
||||
undici-types: 5.26.5
|
||||
dev: true
|
||||
|
||||
/@types/normalize-package-data@2.4.1:
|
||||
resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==}
|
||||
@@ -7648,20 +7662,6 @@ packages:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/esbuild-plugin-solid@0.5.0(esbuild@0.17.19)(solid-js@1.8.5):
|
||||
resolution: {integrity: sha512-ITK6n+0ayGFeDVUZWNMxX+vLsasEN1ILrg4pISsNOQ+mq4ljlJJiuXotInd+HE0MzwTcA9wExT1yzDE2hsqPsg==}
|
||||
peerDependencies:
|
||||
esbuild: '>=0.12'
|
||||
solid-js: '>= 1.0'
|
||||
dependencies:
|
||||
'@babel/core': 7.22.10
|
||||
'@babel/preset-typescript': 7.22.5(@babel/core@7.22.10)
|
||||
babel-preset-solid: 1.7.7(@babel/core@7.22.10)
|
||||
esbuild: 0.17.19
|
||||
solid-js: 1.8.5
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/esbuild-register@3.4.2(esbuild@0.18.20):
|
||||
resolution: {integrity: sha512-kG/XyTDyz6+YDuyfB9ZoSIOOmgyFCH+xPRtsCa8W85HLRV5Csp+o3jWVbOSHgSLfyLc5DmP+KFDNwty4mEjC+Q==}
|
||||
peerDependencies:
|
||||
@@ -9049,16 +9049,16 @@ packages:
|
||||
resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==}
|
||||
engines: {node: '>=14.18.0'}
|
||||
|
||||
/i18next-browser-languagedetector@7.1.0:
|
||||
resolution: {integrity: sha512-cr2k7u1XJJ4HTOjM9GyOMtbOA47RtUoWRAtt52z43r3AoMs2StYKyjS3URPhzHaf+mn10hY9dZWamga5WPQjhA==}
|
||||
/i18next-browser-languagedetector@7.2.0:
|
||||
resolution: {integrity: sha512-U00DbDtFIYD3wkWsr2aVGfXGAj2TgnELzOX9qv8bT0aJtvPV9CRO77h+vgmHFBMe7LAxdwvT/7VkCWGya6L3tA==}
|
||||
dependencies:
|
||||
'@babel/runtime': 7.22.10
|
||||
'@babel/runtime': 7.23.2
|
||||
dev: false
|
||||
|
||||
/i18next@22.5.1:
|
||||
resolution: {integrity: sha512-8TGPgM3pAD+VRsMtUMNknRz3kzqwp/gPALrWMsDnmC1mKqJwpWyooQRLMcbTwq8z8YwSmuj+ZYvc+xCuEpkssA==}
|
||||
dependencies:
|
||||
'@babel/runtime': 7.22.10
|
||||
'@babel/runtime': 7.23.2
|
||||
dev: false
|
||||
|
||||
/iconv-lite@0.4.24:
|
||||
@@ -10100,9 +10100,6 @@ packages:
|
||||
braces: 3.0.2
|
||||
picomatch: 2.3.1
|
||||
|
||||
/micromorph@0.3.1:
|
||||
resolution: {integrity: sha512-dbX4sz405e/QQtbHFMJj0SaVP+xuBBpSpR44AQYTjsrPek8oKyeRXkbtYN1XyFVdV7WjHp5DZMwxJOJiBfH1Jw==}
|
||||
|
||||
/mime-db@1.52.0:
|
||||
resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
|
||||
engines: {node: '>= 0.6'}
|
||||
@@ -11531,7 +11528,7 @@ packages:
|
||||
/regenerator-transform@0.15.2:
|
||||
resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==}
|
||||
dependencies:
|
||||
'@babel/runtime': 7.22.10
|
||||
'@babel/runtime': 7.23.2
|
||||
|
||||
/regex-parser@2.2.11:
|
||||
resolution: {integrity: sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==}
|
||||
@@ -12120,6 +12117,7 @@ packages:
|
||||
'@babel/helper-module-imports': 7.22.5
|
||||
'@babel/types': 7.22.10
|
||||
solid-js: 1.8.5
|
||||
dev: true
|
||||
|
||||
/solid-start-node@0.3.0(solid-start@0.2.29)(undici@5.22.1)(vite@4.4.7):
|
||||
resolution: {integrity: sha512-kg0J6aTvnxGj3OnK4L6EQWY6O3y4dn0CB8Q+6e++Pbzw+VMs8uZg/H9/jg+Ul3fw9uitsnwgxQmieKviaSIxMQ==}
|
||||
@@ -12142,25 +12140,6 @@ packages:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/solid-start-node@0.3.9(solid-start@0.3.9)(vite@4.5.0):
|
||||
resolution: {integrity: sha512-BWE4g2CqTzq3L2e4TX7kfFC++YiOUqbNFuReLW0gji091qb2sVKqaCBLInfsoLDNAdNdU2Fj659ZZn33b2JqUQ==}
|
||||
peerDependencies:
|
||||
solid-start: '*'
|
||||
vite: '*'
|
||||
dependencies:
|
||||
'@rollup/plugin-commonjs': 24.1.0(rollup@3.28.0)
|
||||
'@rollup/plugin-json': 6.0.0(rollup@3.28.0)
|
||||
'@rollup/plugin-node-resolve': 15.2.0(rollup@3.28.0)
|
||||
compression: 1.7.4
|
||||
polka: 1.0.0-next.22
|
||||
rollup: 3.28.0
|
||||
sirv: 2.0.3
|
||||
solid-start: 0.3.9(@solidjs/meta@0.29.1)(@solidjs/router@0.8.3)(solid-js@1.8.5)(solid-start-node@0.3.9)(vite@4.5.0)
|
||||
terser: 5.19.2
|
||||
vite: 4.5.0(@types/node@20.8.10)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/solid-start@0.2.29(@solidjs/meta@0.28.6)(@solidjs/router@0.8.3)(solid-js@1.7.9)(solid-start-node@0.3.0)(vite@4.4.7):
|
||||
resolution: {integrity: sha512-Lvov1rQSJGPsBAPh/ot4UGuxrMeb2PjRV/QXT3eoTPjbTjtLGfo9OJWtZHXHuCIrFgqiNQvX/K95jZgfR6jJ+w==}
|
||||
hasBin: true
|
||||
@@ -12236,82 +12215,6 @@ packages:
|
||||
- '@nuxt/kit'
|
||||
- supports-color
|
||||
|
||||
/solid-start@0.3.9(@solidjs/meta@0.29.1)(@solidjs/router@0.8.3)(solid-js@1.8.5)(solid-start-node@0.3.9)(vite@4.5.0):
|
||||
resolution: {integrity: sha512-hh3JaoUW6prfnwuAaB/rF4zkM/8Z+vGLO+8iUosiqfBmYWdkCPCGRsKrc1UhBK9H4Z3b6wirqFfP/5aeq0cLGw==}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
'@solidjs/meta': ^0.29.1
|
||||
'@solidjs/router': ^0.8.2
|
||||
solid-js: ^1.8.4
|
||||
solid-start-aws: '*'
|
||||
solid-start-cloudflare-pages: '*'
|
||||
solid-start-cloudflare-workers: '*'
|
||||
solid-start-deno: '*'
|
||||
solid-start-netlify: '*'
|
||||
solid-start-node: '*'
|
||||
solid-start-static: '*'
|
||||
solid-start-vercel: '*'
|
||||
vite: ^4.4.6
|
||||
peerDependenciesMeta:
|
||||
solid-start-aws:
|
||||
optional: true
|
||||
solid-start-cloudflare-pages:
|
||||
optional: true
|
||||
solid-start-cloudflare-workers:
|
||||
optional: true
|
||||
solid-start-deno:
|
||||
optional: true
|
||||
solid-start-netlify:
|
||||
optional: true
|
||||
solid-start-node:
|
||||
optional: true
|
||||
solid-start-static:
|
||||
optional: true
|
||||
solid-start-vercel:
|
||||
optional: true
|
||||
dependencies:
|
||||
'@babel/core': 7.22.10
|
||||
'@babel/generator': 7.22.10
|
||||
'@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.10)
|
||||
'@babel/preset-env': 7.22.10(@babel/core@7.22.10)
|
||||
'@babel/preset-typescript': 7.22.5(@babel/core@7.22.10)
|
||||
'@babel/template': 7.22.5
|
||||
'@solidjs/meta': 0.29.1(solid-js@1.8.5)
|
||||
'@solidjs/router': 0.8.3(solid-js@1.8.5)
|
||||
'@types/cookie': 0.5.1
|
||||
'@types/debug': 4.1.8
|
||||
chokidar: 3.5.3
|
||||
compression: 1.7.4
|
||||
connect: 3.7.0
|
||||
debug: 4.3.4
|
||||
dequal: 2.0.3
|
||||
dotenv: 16.3.1
|
||||
es-module-lexer: 1.3.0
|
||||
esbuild: 0.17.19
|
||||
esbuild-plugin-solid: 0.5.0(esbuild@0.17.19)(solid-js@1.8.5)
|
||||
fast-glob: 3.3.1
|
||||
get-port: 6.1.2
|
||||
micromorph: 0.3.1
|
||||
parse-multipart-data: 1.5.0
|
||||
picocolors: 1.0.0
|
||||
rollup: 3.28.0
|
||||
rollup-plugin-visualizer: 5.9.2(rollup@3.28.0)
|
||||
rollup-route-manifest: 1.0.0(rollup@3.28.0)
|
||||
sade: 1.8.1
|
||||
set-cookie-parser: 2.6.0
|
||||
sirv: 2.0.3
|
||||
solid-js: 1.8.5
|
||||
solid-start-node: 0.3.9(solid-start@0.3.9)(vite@4.5.0)
|
||||
terser: 5.19.2
|
||||
undici: 5.27.1
|
||||
vite: 4.5.0(@types/node@20.8.10)
|
||||
vite-plugin-inspect: 0.7.38(rollup@3.28.0)(vite@4.5.0)
|
||||
vite-plugin-solid: 2.7.0(solid-js@1.8.5)(vite@4.5.0)
|
||||
wait-on: 6.0.1(debug@4.3.4)
|
||||
transitivePeerDependencies:
|
||||
- '@nuxt/kit'
|
||||
- supports-color
|
||||
|
||||
/source-map-js@1.0.2:
|
||||
resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
@@ -13163,6 +13066,7 @@ packages:
|
||||
|
||||
/undici-types@5.26.5:
|
||||
resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
|
||||
dev: true
|
||||
|
||||
/undici@5.22.1:
|
||||
resolution: {integrity: sha512-Ji2IJhFXZY0x/0tVBXeQwgPlLWw13GVzpsWPQ3rV50IFMMof2I55PZZxtm4P6iNq+L5znYN9nSTAq0ZyE6lSJw==}
|
||||
@@ -13175,6 +13079,7 @@ packages:
|
||||
engines: {node: '>=14.0'}
|
||||
dependencies:
|
||||
'@fastify/busboy': 2.0.0
|
||||
dev: false
|
||||
|
||||
/unicode-canonical-property-names-ecmascript@2.0.0:
|
||||
resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==}
|
||||
@@ -13371,29 +13276,6 @@ packages:
|
||||
- rollup
|
||||
- supports-color
|
||||
|
||||
/vite-plugin-inspect@0.7.38(rollup@3.28.0)(vite@4.5.0):
|
||||
resolution: {integrity: sha512-+p6pJVtBOLGv+RBrcKAFUdx+euizg0bjL35HhPyM0MjtKlqoC5V9xkCmO9Ctc8JrTyXqODbHqiLWJKumu5zJ7g==}
|
||||
engines: {node: '>=14'}
|
||||
peerDependencies:
|
||||
'@nuxt/kit': '*'
|
||||
vite: ^3.1.0 || ^4.0.0
|
||||
peerDependenciesMeta:
|
||||
'@nuxt/kit':
|
||||
optional: true
|
||||
dependencies:
|
||||
'@antfu/utils': 0.7.6
|
||||
'@rollup/pluginutils': 5.0.3(rollup@3.28.0)
|
||||
debug: 4.3.4
|
||||
error-stack-parser-es: 0.1.1
|
||||
fs-extra: 11.1.1
|
||||
open: 9.1.0
|
||||
picocolors: 1.0.0
|
||||
sirv: 2.0.3
|
||||
vite: 4.5.0(@types/node@20.8.10)
|
||||
transitivePeerDependencies:
|
||||
- rollup
|
||||
- supports-color
|
||||
|
||||
/vite-plugin-pwa@0.14.7(vite@4.5.0)(workbox-build@6.6.0)(workbox-window@6.6.0):
|
||||
resolution: {integrity: sha512-dNJaf0fYOWncmjxv9HiSa2xrSjipjff7IkYE5oIUJ2x5HKu3cXgA8LRgzOwTc5MhwyFYRSU0xyN0Phbx3NsQYw==}
|
||||
peerDependencies:
|
||||
@@ -13448,6 +13330,7 @@ packages:
|
||||
vitefu: 0.2.4(vite@4.5.0)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/vite-plugin-wasm@3.2.2(vite@4.5.0):
|
||||
resolution: {integrity: sha512-cdbBUNR850AEoMd5nvLmnyeq63CSfoP1ctD/L2vLk/5+wsgAPlAVAzUK5nGKWO/jtehNlrSSHLteN+gFQw7VOA==}
|
||||
@@ -13562,6 +13445,7 @@ packages:
|
||||
rollup: 3.28.0
|
||||
optionalDependencies:
|
||||
fsevents: 2.3.2
|
||||
dev: true
|
||||
|
||||
/vitefu@0.2.4(vite@4.4.7):
|
||||
resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==}
|
||||
@@ -13582,6 +13466,7 @@ packages:
|
||||
optional: true
|
||||
dependencies:
|
||||
vite: 4.5.0(@types/node@20.8.10)
|
||||
dev: true
|
||||
|
||||
/wait-on@6.0.1(debug@4.3.4):
|
||||
resolution: {integrity: sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==}
|
||||
@@ -13753,7 +13638,7 @@ packages:
|
||||
'@apideck/better-ajv-errors': 0.3.6(ajv@8.12.0)
|
||||
'@babel/core': 7.22.10
|
||||
'@babel/preset-env': 7.22.10(@babel/core@7.22.10)
|
||||
'@babel/runtime': 7.22.10
|
||||
'@babel/runtime': 7.23.2
|
||||
'@rollup/plugin-babel': 5.3.1(@babel/core@7.22.10)(rollup@2.79.1)
|
||||
'@rollup/plugin-node-resolve': 11.2.1(rollup@2.79.1)
|
||||
'@rollup/plugin-replace': 2.4.2(rollup@2.79.1)
|
||||
|
||||
36
src/App.tsx
Normal file
36
src/App.tsx
Normal file
@@ -0,0 +1,36 @@
|
||||
// @refresh reload
|
||||
import { Capacitor } from "@capacitor/core";
|
||||
import { StatusBar, Style } from "@capacitor/status-bar";
|
||||
import { Title } from "@solidjs/meta";
|
||||
import { ErrorBoundary, Suspense } from "solid-js";
|
||||
|
||||
import { ErrorDisplay, I18nProvider } from "~/components";
|
||||
import { Router } from "~/router";
|
||||
import { Provider as MegaStoreProvider } from "~/state/megaStore";
|
||||
|
||||
const setStatusBarStyleDark = async () => {
|
||||
await StatusBar.setStyle({ style: Style.Dark });
|
||||
};
|
||||
|
||||
if (Capacitor.isNativePlatform()) {
|
||||
await setStatusBarStyleDark();
|
||||
}
|
||||
|
||||
export default function App() {
|
||||
return (
|
||||
<Suspense>
|
||||
<Title>Mutiny Wallet</Title>
|
||||
<ErrorBoundary fallback={(e) => <ErrorDisplay error={e} />}>
|
||||
<MegaStoreProvider>
|
||||
<I18nProvider>
|
||||
<ErrorBoundary
|
||||
fallback={(e) => <ErrorDisplay error={e} />}
|
||||
>
|
||||
<Router />
|
||||
</ErrorBoundary>
|
||||
</I18nProvider>
|
||||
</MegaStoreProvider>
|
||||
</ErrorBoundary>
|
||||
</Suspense>
|
||||
);
|
||||
}
|
||||
@@ -1,4 +1,5 @@
|
||||
import { Contact } from "@mutinywallet/mutiny-wasm";
|
||||
import { A } from "@solidjs/router";
|
||||
import {
|
||||
createEffect,
|
||||
createResource,
|
||||
@@ -8,7 +9,6 @@ import {
|
||||
Show,
|
||||
Switch
|
||||
} from "solid-js";
|
||||
import { A } from "solid-start";
|
||||
|
||||
import {
|
||||
ActivityDetailsModal,
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { Capacitor } from "@capacitor/core";
|
||||
import { Dialog } from "@kobalte/core";
|
||||
import { useNavigate } from "@solidjs/router";
|
||||
import {
|
||||
createEffect,
|
||||
createResource,
|
||||
@@ -12,7 +13,6 @@ import {
|
||||
Show,
|
||||
Switch
|
||||
} from "solid-js";
|
||||
import { useNavigate } from "solid-start";
|
||||
|
||||
import close from "~/assets/icons/close.svg";
|
||||
import currencySwap from "~/assets/icons/currency-swap.svg";
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { A, useNavigate } from "@solidjs/router";
|
||||
import { Match, Show, Switch } from "solid-js";
|
||||
import { A, useNavigate } from "solid-start";
|
||||
|
||||
import shuffle from "~/assets/icons/shuffle.svg";
|
||||
import {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { createForm } from "@modular-forms/solid";
|
||||
import { useNavigate } from "@solidjs/router";
|
||||
import { createSignal, For, Show } from "solid-js";
|
||||
import { useNavigate } from "solid-start";
|
||||
|
||||
import { Button, ExternalLink, InfoBox, NiceP, VStack } from "~/components";
|
||||
import { useI18n } from "~/i18n/context";
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { Dialog } from "@kobalte/core";
|
||||
import { SubmitHandler } from "@modular-forms/solid";
|
||||
import { Contact } from "@mutinywallet/mutiny-wasm";
|
||||
import { useNavigate } from "@solidjs/router";
|
||||
import { createSignal, Match, Show, Switch } from "solid-js";
|
||||
import { useNavigate } from "solid-start";
|
||||
|
||||
import close from "~/assets/icons/close.svg";
|
||||
import {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { A } from "@solidjs/router";
|
||||
import { createSignal, Show } from "solid-js";
|
||||
import { A } from "solid-start";
|
||||
|
||||
import { Button, InfoBox, SimpleDialog, TextField } from "~/components";
|
||||
import { useI18n } from "~/i18n/context";
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { A, Title } from "solid-start";
|
||||
import { Title } from "@solidjs/meta";
|
||||
import { A } from "@solidjs/router";
|
||||
|
||||
import { ExternalLink } from "~/components";
|
||||
import {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { A, useLocation } from "solid-start";
|
||||
import { A, useLocation } from "@solidjs/router";
|
||||
|
||||
import gift from "~/assets/icons/gift.svg";
|
||||
import { useI18n } from "~/i18n/context";
|
||||
|
||||
@@ -6,7 +6,12 @@ import { I18nContext } from "~/i18n/context";
|
||||
|
||||
export const I18nProvider: ParentComponent = (props) => {
|
||||
const [i18nConfigured] = createResource(async () => {
|
||||
await i18nConfig;
|
||||
console.log("about to get the config");
|
||||
try {
|
||||
await i18nConfig;
|
||||
} catch (e) {
|
||||
console.error("Config error", e);
|
||||
}
|
||||
return true;
|
||||
});
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { A } from "@solidjs/router";
|
||||
import { ParentComponent, Show } from "solid-js";
|
||||
import { A } from "solid-start";
|
||||
|
||||
import forward from "~/assets/icons/forward.svg";
|
||||
import { useI18n } from "~/i18n/context";
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { A } from "solid-start";
|
||||
import { A } from "@solidjs/router";
|
||||
|
||||
import airplane from "~/assets/icons/airplane.svg";
|
||||
import receive from "~/assets/icons/big-receive.svg";
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Title } from "@solidjs/meta";
|
||||
import { Match, Switch } from "solid-js";
|
||||
import { Title } from "solid-start";
|
||||
|
||||
import nodevice from "~/assets/no-device.png";
|
||||
import {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { A } from "solid-start";
|
||||
import { A } from "@solidjs/router";
|
||||
|
||||
import { Back } from "~/assets/svg/Back";
|
||||
import { useI18n } from "~/i18n/context";
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { useLocation, useNavigate } from "solid-start";
|
||||
import { useLocation, useNavigate } from "@solidjs/router";
|
||||
|
||||
import { BackButton } from "~/components";
|
||||
import { useI18n } from "~/i18n/context";
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { A } from "@solidjs/router";
|
||||
import { JSX, ParentComponent, Show, splitProps } from "solid-js";
|
||||
import { Dynamic } from "solid-js/web";
|
||||
import { A } from "solid-start";
|
||||
|
||||
import { LoadingSpinner } from "~/components";
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@ import {
|
||||
Separator
|
||||
} from "@kobalte/core";
|
||||
import { TagItem, TagKind } from "@mutinywallet/mutiny-wasm";
|
||||
import { A } from "@solidjs/router";
|
||||
import {
|
||||
createResource,
|
||||
createSignal,
|
||||
@@ -15,7 +16,6 @@ import {
|
||||
Suspense,
|
||||
Switch
|
||||
} from "solid-js";
|
||||
import { A } from "solid-start";
|
||||
|
||||
import check from "~/assets/icons/check.svg";
|
||||
import close from "~/assets/icons/close.svg";
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
import { mount, StartClient } from "solid-start/entry-client";
|
||||
|
||||
mount(() => <StartClient />, document);
|
||||
@@ -1,9 +0,0 @@
|
||||
import {
|
||||
createHandler,
|
||||
renderAsync,
|
||||
StartServer
|
||||
} from "solid-start/entry-server";
|
||||
|
||||
export default createHandler(
|
||||
renderAsync((event) => <StartServer event={event} />)
|
||||
);
|
||||
23
src/index.tsx
Normal file
23
src/index.tsx
Normal file
@@ -0,0 +1,23 @@
|
||||
/* @refresh reload */
|
||||
import { render } from "solid-js/web";
|
||||
|
||||
import "./root.css";
|
||||
|
||||
import { MetaProvider } from "@solidjs/meta";
|
||||
import { Router } from "@solidjs/router";
|
||||
|
||||
import App from "./App";
|
||||
|
||||
const root = document.getElementById("root");
|
||||
|
||||
render(
|
||||
() => (
|
||||
<Router>
|
||||
{/* important that there's only one of these. hardcoded meta elements in index.html can be decorated with data-sm to be mutatable */}
|
||||
<MetaProvider>
|
||||
<App />
|
||||
</MetaProvider>
|
||||
</Router>
|
||||
),
|
||||
root!
|
||||
);
|
||||
105
src/root.tsx
105
src/root.tsx
@@ -1,105 +0,0 @@
|
||||
// @refresh reload
|
||||
import { Suspense } from "solid-js";
|
||||
import {
|
||||
Body,
|
||||
ErrorBoundary,
|
||||
Head,
|
||||
Html,
|
||||
Link,
|
||||
Meta,
|
||||
Scripts,
|
||||
Title
|
||||
} from "solid-start";
|
||||
|
||||
import "./root.css";
|
||||
|
||||
import { Capacitor } from "@capacitor/core";
|
||||
import { StatusBar, Style } from "@capacitor/status-bar";
|
||||
|
||||
import { ErrorDisplay, I18nProvider } from "~/components";
|
||||
import { Router } from "~/router";
|
||||
import { Provider as MegaStoreProvider } from "~/state/megaStore";
|
||||
|
||||
const setStatusBarStyleDark = async () => {
|
||||
await StatusBar.setStyle({ style: Style.Dark });
|
||||
};
|
||||
|
||||
if (Capacitor.isNativePlatform()) {
|
||||
await setStatusBarStyleDark();
|
||||
}
|
||||
|
||||
export default function Root() {
|
||||
return (
|
||||
<Html lang="en">
|
||||
<Head>
|
||||
<Title>Mutiny Wallet</Title>
|
||||
<Meta charset="utf-8" />
|
||||
<Meta
|
||||
name="viewport"
|
||||
content="width=device-width, initial-scale=1.0 height=device-height viewport-fit=cover user-scalable=no"
|
||||
/>
|
||||
<Link rel="manifest" href="/manifest.webmanifest" />
|
||||
<Meta name="theme-color" content="rgb(23,23,23)" />
|
||||
<Meta
|
||||
name="description"
|
||||
content="Mutiny is a self-custodial lightning wallet that runs in the browser."
|
||||
/>
|
||||
<Link rel="icon" href="/favicon.ico" />
|
||||
<Meta name="twitter:card" content="summary_large_image" />
|
||||
<Meta name="twitter:title" content="Mutiny Wallet" />
|
||||
<Meta
|
||||
name="twitter:description"
|
||||
content="Mutiny is a self-custodial lightning wallet that runs in the browser."
|
||||
/>
|
||||
<Meta
|
||||
name="twitter:site"
|
||||
content="https://app.mutinywallet.com/"
|
||||
/>
|
||||
<Meta
|
||||
name="twitter:image"
|
||||
content="https://app.mutinywallet.com/images/twitter_card_image.png"
|
||||
/>
|
||||
<Meta property="og:type" content="website" />
|
||||
<Meta property="og:title" content="Mutiny Wallet" />
|
||||
<Meta
|
||||
property="og:description"
|
||||
content="Mutiny is a self-custodial lightning wallet that runs in the browser."
|
||||
/>
|
||||
<Meta
|
||||
property="og:url"
|
||||
content="https://app.mutinywallet.com/"
|
||||
/>
|
||||
<Meta
|
||||
property="og:image"
|
||||
content="https://app.mutinywallet.com/images/twitter_card_image.png"
|
||||
/>
|
||||
<Link
|
||||
rel="apple-touch-icon"
|
||||
href="/images/icon.png"
|
||||
sizes="512x512"
|
||||
/>
|
||||
<Link
|
||||
rel="mask-icon"
|
||||
href="/mutiny_logo_mask.svg"
|
||||
color="#000"
|
||||
/>
|
||||
</Head>
|
||||
<Body>
|
||||
<Suspense>
|
||||
<ErrorBoundary fallback={(e) => <ErrorDisplay error={e} />}>
|
||||
<MegaStoreProvider>
|
||||
<I18nProvider>
|
||||
<ErrorBoundary
|
||||
fallback={(e) => <ErrorDisplay error={e} />}
|
||||
>
|
||||
<Router />
|
||||
</ErrorBoundary>
|
||||
</I18nProvider>
|
||||
</MegaStoreProvider>
|
||||
</ErrorBoundary>
|
||||
</Suspense>
|
||||
<Scripts />
|
||||
</Body>
|
||||
</Html>
|
||||
);
|
||||
}
|
||||
@@ -1,13 +1,38 @@
|
||||
// @refresh reload
|
||||
import { Match, onCleanup, Switch } from "solid-js";
|
||||
import { FileRoutes, Routes, useNavigate } from "solid-start";
|
||||
|
||||
import "./root.css";
|
||||
|
||||
import { App as CapacitorApp } from "@capacitor/app";
|
||||
import { Capacitor } from "@capacitor/core";
|
||||
import { Route, Routes, useNavigate } from "@solidjs/router";
|
||||
import { Match, onCleanup, Switch } from "solid-js";
|
||||
|
||||
import { SetupErrorDisplay, Toaster } from "~/components";
|
||||
import {
|
||||
Activity,
|
||||
Feedback,
|
||||
Gift as GiftReceive,
|
||||
Main,
|
||||
NotFound,
|
||||
Receive,
|
||||
Redshift,
|
||||
Scanner,
|
||||
Send,
|
||||
Swap
|
||||
} from "~/routes";
|
||||
import {
|
||||
Admin,
|
||||
Backup,
|
||||
Channels,
|
||||
Connections,
|
||||
Currency,
|
||||
EmergencyKit,
|
||||
Encrypt,
|
||||
Gift,
|
||||
LnUrlAuth,
|
||||
Plus,
|
||||
Restore,
|
||||
Servers,
|
||||
Settings,
|
||||
SyncNostrContacts
|
||||
} from "~/routes/settings";
|
||||
|
||||
import { useMegaStore } from "./state/megaStore";
|
||||
|
||||
@@ -63,9 +88,37 @@ export function Router() {
|
||||
<SetupErrorDisplay initialError={state.setup_error!} />
|
||||
</Match>
|
||||
<Match when={true}>
|
||||
<GlobalListeners />
|
||||
<Routes>
|
||||
<GlobalListeners />
|
||||
<FileRoutes />
|
||||
<Route path="/" component={Main} />
|
||||
<Route path="/activity" component={Activity} />
|
||||
<Route path="/feedback" component={Feedback} />
|
||||
<Route path="/gift" component={GiftReceive} />
|
||||
<Route path="/receive" component={Receive} />
|
||||
<Route path="/redshift" component={Redshift} />
|
||||
<Route path="/scanner" component={Scanner} />
|
||||
<Route path="/send" component={Send} />
|
||||
<Route path="/swap" component={Swap} />
|
||||
<Route path="/settings">
|
||||
<Route path="/" component={Settings} />
|
||||
<Route path="/admin" component={Admin} />
|
||||
<Route path="/backup" component={Backup} />
|
||||
<Route path="/channels" component={Channels} />
|
||||
<Route path="/connections" component={Connections} />
|
||||
<Route path="/currency" component={Currency} />
|
||||
<Route path="/emergencykit" component={EmergencyKit} />
|
||||
<Route path="/encrypt" component={Encrypt} />
|
||||
<Route path="/gift" component={Gift} />
|
||||
<Route path="/lnurlauth" component={LnUrlAuth} />
|
||||
<Route path="/plus" component={Plus} />
|
||||
<Route path="/restore" component={Restore} />
|
||||
<Route path="/servers" component={Servers} />
|
||||
<Route
|
||||
path="/syncnostrcontacts"
|
||||
component={SyncNostrContacts}
|
||||
/>
|
||||
</Route>
|
||||
<Route path="/*all" component={NotFound} />
|
||||
</Routes>
|
||||
<Toaster />
|
||||
</Match>
|
||||
|
||||
@@ -98,7 +98,7 @@ function ContactRow() {
|
||||
const TAB =
|
||||
"flex-1 inline-block px-8 py-4 text-lg font-semibold rounded-lg ui-selected:bg-white/10 bg-neutral-950 hover:bg-white/10";
|
||||
|
||||
export default function Activity() {
|
||||
export function Activity() {
|
||||
const i18n = useI18n();
|
||||
const [state, _actions] = useMegaStore();
|
||||
return (
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { createForm, required, SubmitHandler } from "@modular-forms/solid";
|
||||
import { A, useLocation } from "@solidjs/router";
|
||||
import { createSignal, Match, Show, Switch } from "solid-js";
|
||||
import { A, useLocation } from "solid-start";
|
||||
|
||||
import feedback from "~/assets/icons/feedback.svg";
|
||||
import { ExternalLink, InfoBox, MegaCheck, NavBar } from "~/components";
|
||||
@@ -164,7 +164,7 @@ function FeedbackForm(props: { onSubmitted: () => void }) {
|
||||
);
|
||||
}
|
||||
|
||||
export default function Feedback() {
|
||||
export function Feedback() {
|
||||
const i18n = useI18n();
|
||||
const [submitted, setSubmitted] = createSignal(false);
|
||||
const location = useLocation();
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { useSearchParams } from "@solidjs/router";
|
||||
import {
|
||||
createMemo,
|
||||
createResource,
|
||||
@@ -7,7 +8,6 @@ import {
|
||||
Suspense,
|
||||
Switch
|
||||
} from "solid-js";
|
||||
import { useSearchParams } from "solid-start";
|
||||
|
||||
import treasureClosed from "~/assets/treasure-closed.png";
|
||||
import treasure from "~/assets/treasure.gif";
|
||||
@@ -91,7 +91,7 @@ function InboundWarning() {
|
||||
);
|
||||
}
|
||||
|
||||
export default function GiftPage() {
|
||||
export function Gift() {
|
||||
const [state, _] = useMegaStore();
|
||||
const i18n = useI18n();
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { A } from "@solidjs/router";
|
||||
import { Show, Suspense } from "solid-js";
|
||||
import { A } from "solid-start";
|
||||
|
||||
import scan from "~/assets/icons/scan.svg";
|
||||
import settings from "~/assets/icons/settings.svg";
|
||||
@@ -24,7 +24,7 @@ import { useI18n } from "~/i18n/context";
|
||||
import { FeedbackLink } from "~/routes/Feedback";
|
||||
import { useMegaStore } from "~/state/megaStore";
|
||||
|
||||
export default function App() {
|
||||
export function Main() {
|
||||
const i18n = useI18n();
|
||||
const [state, _actions] = useMegaStore();
|
||||
|
||||
@@ -6,6 +6,7 @@ import {
|
||||
MutinyInvoice,
|
||||
TagItem
|
||||
} from "@mutinywallet/mutiny-wasm";
|
||||
import { useNavigate } from "@solidjs/router";
|
||||
import {
|
||||
createEffect,
|
||||
createMemo,
|
||||
@@ -16,7 +17,6 @@ import {
|
||||
Show,
|
||||
Switch
|
||||
} from "solid-js";
|
||||
import { useNavigate } from "solid-start";
|
||||
|
||||
import side2side from "~/assets/icons/side-to-side.svg";
|
||||
import {
|
||||
@@ -107,7 +107,7 @@ function FeeWarning(props: { fee: bigint; flavor: ReceiveFlavor }) {
|
||||
);
|
||||
}
|
||||
|
||||
export default function Receive() {
|
||||
export function Receive() {
|
||||
const [state, actions] = useMegaStore();
|
||||
const navigate = useNavigate();
|
||||
const i18n = useI18n();
|
||||
|
||||
@@ -374,7 +374,7 @@ const KV: ParentComponent<{ key: string }> = (props) => {
|
||||
);
|
||||
};
|
||||
|
||||
export default function Redshift() {
|
||||
export function Redshift() {
|
||||
const i18n = useI18n();
|
||||
const [state, _actions] = useMegaStore();
|
||||
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
import { Clipboard } from "@capacitor/clipboard";
|
||||
import { Capacitor } from "@capacitor/core";
|
||||
import { useNavigate } from "@solidjs/router";
|
||||
import { createEffect, createSignal } from "solid-js";
|
||||
import { useNavigate } from "solid-start";
|
||||
|
||||
import { Button, Scanner as Reader, showToast } from "~/components";
|
||||
import { useI18n } from "~/i18n/context";
|
||||
import { useMegaStore } from "~/state/megaStore";
|
||||
|
||||
export default function Scanner() {
|
||||
export function Scanner() {
|
||||
const i18n = useI18n();
|
||||
const [_state, actions] = useMegaStore();
|
||||
const [scanResult, setScanResult] = createSignal<string>();
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import { Clipboard } from "@capacitor/clipboard";
|
||||
import { Capacitor } from "@capacitor/core";
|
||||
import { Contact, MutinyInvoice, TagItem } from "@mutinywallet/mutiny-wasm";
|
||||
import { useNavigate } from "@solidjs/router";
|
||||
import {
|
||||
createEffect,
|
||||
createMemo,
|
||||
@@ -10,7 +11,6 @@ import {
|
||||
Show,
|
||||
Switch
|
||||
} from "solid-js";
|
||||
import { useNavigate } from "solid-start";
|
||||
|
||||
import { Paste } from "~/assets/svg/Paste";
|
||||
import { Scan } from "~/assets/svg/Scan";
|
||||
@@ -237,7 +237,7 @@ function Failure(props: { reason: string }) {
|
||||
);
|
||||
}
|
||||
|
||||
export default function Send() {
|
||||
export function Send() {
|
||||
const [state, actions] = useMegaStore();
|
||||
const navigate = useNavigate();
|
||||
const i18n = useI18n();
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
import {
|
||||
AmountCard,
|
||||
Button,
|
||||
DefaultMain,
|
||||
Fee,
|
||||
LargeHeader,
|
||||
NavBar,
|
||||
OnboardWarning,
|
||||
SafeArea,
|
||||
ShareCard,
|
||||
VStack
|
||||
} from "~/components";
|
||||
|
||||
const SAMPLE =
|
||||
"bitcoin:tb1prqm8xtlgme0vmw5s30lgf0a4f5g4mkgsqundwmpu6thrg8zr6uvq2qrhzq?amount=0.001&lightning=lntbs1m1pj9n9xjsp5xgdrmvprtm67p7nq4neparalexlhlmtxx87zx6xeqthsplu842zspp546d6zd2seyaxpapaxx62m88yz3xueqtjmn9v6wj8y56np8weqsxqdqqnp4qdn2hj8tfknpuvdg6tz9yrf3e27ltrx9y58c24jh89lnm43yjwfc5xqrpwjcqpj9qrsgq5sdgh0m3ur5mu5hrmmag4mx9yvy86f83pd0x9ww80kgck6tac3thuzkj0mrtltaxwnlfea95h2re7tj4qsnwzxlvrdmyq2h9mgapnycpppz6k6";
|
||||
export default function Admin() {
|
||||
return (
|
||||
<SafeArea>
|
||||
<DefaultMain>
|
||||
<LargeHeader>Storybook</LargeHeader>
|
||||
<OnboardWarning />
|
||||
<VStack>
|
||||
<AmountCard amountSats={"100000"} fee={"69"} />
|
||||
<ShareCard text={SAMPLE} />
|
||||
<Button loading intent="blue">
|
||||
Button
|
||||
</Button>
|
||||
<Fee amountSats={15000n} />
|
||||
</VStack>
|
||||
</DefaultMain>
|
||||
<NavBar activeTab="none" />
|
||||
</SafeArea>
|
||||
);
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
import { createForm, required } from "@modular-forms/solid";
|
||||
import { MutinyChannel, MutinyPeer } from "@mutinywallet/mutiny-wasm";
|
||||
import { useNavigate } from "@solidjs/router";
|
||||
import {
|
||||
createMemo,
|
||||
createResource,
|
||||
@@ -9,7 +10,6 @@ import {
|
||||
Show,
|
||||
Switch
|
||||
} from "solid-js";
|
||||
import { useNavigate } from "solid-start";
|
||||
|
||||
import {
|
||||
ActivityDetailsModal,
|
||||
@@ -50,7 +50,7 @@ type ChannelOpenDetails = {
|
||||
failure_reason?: Error;
|
||||
};
|
||||
|
||||
export default function Swap() {
|
||||
export function Swap() {
|
||||
const [state, _actions] = useMegaStore();
|
||||
const navigate = useNavigate();
|
||||
const i18n = useI18n();
|
||||
|
||||
@@ -1,15 +1,13 @@
|
||||
import { Title } from "solid-start";
|
||||
import { HttpStatusCode } from "solid-start/server";
|
||||
import { Title } from "@solidjs/meta";
|
||||
|
||||
import { ButtonLink, DefaultMain, LargeHeader, SafeArea } from "~/components";
|
||||
import { useI18n } from "~/i18n/context";
|
||||
|
||||
export default function NotFound() {
|
||||
export function NotFound() {
|
||||
const i18n = useI18n();
|
||||
return (
|
||||
<SafeArea>
|
||||
<Title>{i18n.t("error.not_found.title")}</Title>
|
||||
<HttpStatusCode code={404} />
|
||||
<DefaultMain>
|
||||
<LargeHeader>{i18n.t("error.not_found.title")}</LargeHeader>
|
||||
<p>{i18n.t("error.not_found.wtf_paul")}</p>
|
||||
|
||||
10
src/routes/index.ts
Normal file
10
src/routes/index.ts
Normal file
@@ -0,0 +1,10 @@
|
||||
export * from "./[...404]";
|
||||
export * from "./Activity";
|
||||
export * from "./Feedback";
|
||||
export * from "./Gift";
|
||||
export * from "./Main";
|
||||
export * from "./Receive";
|
||||
export * from "./Redshift";
|
||||
export * from "./Scanner";
|
||||
export * from "./Send";
|
||||
export * from "./Swap";
|
||||
@@ -13,7 +13,7 @@ import {
|
||||
} from "~/components";
|
||||
import { useI18n } from "~/i18n/context";
|
||||
|
||||
export default function Admin() {
|
||||
export function Admin() {
|
||||
const i18n = useI18n();
|
||||
return (
|
||||
<MutinyWalletGuard>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { useNavigate } from "@solidjs/router";
|
||||
import { createEffect, createSignal, Show } from "solid-js";
|
||||
import { useNavigate } from "solid-start";
|
||||
|
||||
import {
|
||||
BackLink,
|
||||
@@ -52,7 +52,7 @@ function Quiz(props: { setHasCheckedAll: (hasChecked: boolean) => void }) {
|
||||
);
|
||||
}
|
||||
|
||||
export default function Backup() {
|
||||
export function Backup() {
|
||||
const i18n = useI18n();
|
||||
const [store, actions] = useMegaStore();
|
||||
const navigate = useNavigate();
|
||||
|
||||
@@ -125,7 +125,7 @@ export function LiquidityMonitor() {
|
||||
);
|
||||
}
|
||||
|
||||
export default function Channels() {
|
||||
export function Channels() {
|
||||
const i18n = useI18n();
|
||||
return (
|
||||
<MutinyWalletGuard>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { NwcProfile, type BudgetPeriod } from "@mutinywallet/mutiny-wasm";
|
||||
import { useSearchParams } from "@solidjs/router";
|
||||
import { createResource, createSignal, For, Show } from "solid-js";
|
||||
import { QRCodeSVG } from "solid-qr-code";
|
||||
import { useSearchParams } from "solid-start";
|
||||
|
||||
import {
|
||||
AmountSats,
|
||||
@@ -384,7 +384,7 @@ function Nwc() {
|
||||
);
|
||||
}
|
||||
|
||||
export default function Connections() {
|
||||
export function Connections() {
|
||||
const i18n = useI18n();
|
||||
return (
|
||||
<MutinyWalletGuard>
|
||||
|
||||
@@ -10,7 +10,7 @@ import {
|
||||
} from "~/components";
|
||||
import { useI18n } from "~/i18n/context";
|
||||
|
||||
export default function Currency() {
|
||||
export function Currency() {
|
||||
const i18n = useI18n();
|
||||
return (
|
||||
<MutinyWalletGuard>
|
||||
|
||||
@@ -29,7 +29,7 @@ function EmergencyStack() {
|
||||
);
|
||||
}
|
||||
|
||||
export default function EmergencyKit() {
|
||||
export function EmergencyKit() {
|
||||
const i18n = useI18n();
|
||||
return (
|
||||
<SafeArea>
|
||||
|
||||
@@ -25,7 +25,7 @@ type EncryptPasswordForm = {
|
||||
confirmPassword: string;
|
||||
};
|
||||
|
||||
export default function Encrypt() {
|
||||
export function Encrypt() {
|
||||
const i18n = useI18n();
|
||||
const [store, _actions] = useMegaStore();
|
||||
const [error, setError] = createSignal<Error>();
|
||||
|
||||
@@ -130,7 +130,7 @@ function ExistingGifts() {
|
||||
);
|
||||
}
|
||||
|
||||
export default function GiftPage() {
|
||||
export function Gift() {
|
||||
const i18n = useI18n();
|
||||
const [state, _actions] = useMegaStore();
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ import {
|
||||
import { useI18n } from "~/i18n/context";
|
||||
import { useMegaStore } from "~/state/megaStore";
|
||||
|
||||
export default function LnUrlAuth() {
|
||||
export function LnUrlAuth() {
|
||||
const i18n = useI18n();
|
||||
const [state, _] = useMegaStore();
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { A } from "@solidjs/router";
|
||||
import {
|
||||
createResource,
|
||||
createSignal,
|
||||
@@ -6,7 +7,6 @@ import {
|
||||
Suspense,
|
||||
Switch
|
||||
} from "solid-js";
|
||||
import { A } from "solid-start";
|
||||
|
||||
import party from "~/assets/party.gif";
|
||||
import {
|
||||
@@ -198,7 +198,7 @@ function PlusCTA() {
|
||||
);
|
||||
}
|
||||
|
||||
export default function Plus() {
|
||||
export function Plus() {
|
||||
const i18n = useI18n();
|
||||
const [state, _actions] = useMegaStore();
|
||||
|
||||
|
||||
@@ -251,7 +251,7 @@ function TwelveWordsEntry() {
|
||||
);
|
||||
}
|
||||
|
||||
export default function RestorePage() {
|
||||
export function Restore() {
|
||||
const i18n = useI18n();
|
||||
return (
|
||||
<SafeArea>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { Capacitor } from "@capacitor/core";
|
||||
import { A } from "@solidjs/router";
|
||||
import { For, Show } from "solid-js";
|
||||
import { A } from "solid-start";
|
||||
|
||||
import forward from "~/assets/icons/forward.svg";
|
||||
import {
|
||||
@@ -63,7 +63,7 @@ function SettingsLinkList(props: {
|
||||
);
|
||||
}
|
||||
|
||||
export default function Settings() {
|
||||
export function Settings() {
|
||||
const i18n = useI18n();
|
||||
const [state, _actions] = useMegaStore();
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
@@ -150,7 +150,7 @@ function AsyncSettingsEditor() {
|
||||
);
|
||||
}
|
||||
|
||||
export default function Servers() {
|
||||
export function Servers() {
|
||||
const i18n = useI18n();
|
||||
return (
|
||||
<SafeArea>
|
||||
|
||||
@@ -92,7 +92,7 @@ export function SyncContactsForm() {
|
||||
);
|
||||
}
|
||||
|
||||
export default function SyncNostrContacts() {
|
||||
export function SyncNostrContacts() {
|
||||
const [state, actions] = useMegaStore();
|
||||
const [loading, setLoading] = createSignal(false);
|
||||
const [error, setError] = createSignal<Error>();
|
||||
|
||||
14
src/routes/settings/index.ts
Normal file
14
src/routes/settings/index.ts
Normal file
@@ -0,0 +1,14 @@
|
||||
export * from "./Root";
|
||||
export * from "./Admin";
|
||||
export * from "./Backup";
|
||||
export * from "./Channels";
|
||||
export * from "./Connections";
|
||||
export * from "./Currency";
|
||||
export * from "./EmergencyKit";
|
||||
export * from "./Encrypt";
|
||||
export * from "./Gift";
|
||||
export * from "./LnUrlAuth";
|
||||
export * from "./Plus";
|
||||
export * from "./Restore";
|
||||
export * from "./Servers";
|
||||
export * from "./SyncNostrContacts";
|
||||
@@ -6,6 +6,7 @@ import {
|
||||
MutinyWallet,
|
||||
TagItem
|
||||
} from "@mutinywallet/mutiny-wasm";
|
||||
import { useNavigate, useSearchParams } from "@solidjs/router";
|
||||
import {
|
||||
createContext,
|
||||
onCleanup,
|
||||
@@ -14,7 +15,6 @@ import {
|
||||
useContext
|
||||
} from "solid-js";
|
||||
import { createStore } from "solid-js/store";
|
||||
import { useNavigate, useSearchParams } from "solid-start";
|
||||
|
||||
import { checkBrowserCompatibility } from "~/logic/browserCompatibility";
|
||||
import {
|
||||
|
||||
1
src/vite-env.d.ts
vendored
Normal file
1
src/vite-env.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
/// <reference types="vite/client" />
|
||||
@@ -1,14 +1,17 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"declaration": true,
|
||||
"declarationDir": "./types",
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"esModuleInterop": true,
|
||||
"target": "ESNext",
|
||||
"module": "ESNext",
|
||||
"moduleResolution": "node",
|
||||
"jsxImportSource": "solid-js",
|
||||
"noEmit": true,
|
||||
"jsx": "preserve",
|
||||
"strict": true,
|
||||
"types": ["solid-start/env", "node", "vite-plugin-pwa/client"],
|
||||
"types": ["node", "vite-plugin-pwa/client"],
|
||||
"baseUrl": "./",
|
||||
"paths": {
|
||||
"~/*": ["./src/*"]
|
||||
|
||||
5
types/index.d.ts
vendored
Normal file
5
types/index.d.ts
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
declare module "*.svg" {
|
||||
const content: any;
|
||||
export default content;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import solid from "solid-start/vite";
|
||||
import { defineConfig } from "vite";
|
||||
import solid from "vite-plugin-solid";
|
||||
import { VitePWA, VitePWAOptions } from "vite-plugin-pwa";
|
||||
import wasm from "vite-plugin-wasm";
|
||||
import autoprefixer from "autoprefixer";
|
||||
@@ -22,6 +22,11 @@ const pwaOptions: Partial<VitePWAOptions> = {
|
||||
};
|
||||
|
||||
export default defineConfig({
|
||||
build: {
|
||||
target: "esnext",
|
||||
outDir: "dist/public",
|
||||
emptyOutDir: true
|
||||
},
|
||||
server: {
|
||||
port: 3420,
|
||||
fs: {
|
||||
@@ -29,7 +34,7 @@ export default defineConfig({
|
||||
allow: [".."]
|
||||
}
|
||||
},
|
||||
plugins: [wasm(), solid({ ssr: false }), VitePWA(pwaOptions)],
|
||||
plugins: [wasm(), solid(), VitePWA(pwaOptions)],
|
||||
define: {
|
||||
"import.meta.env.__COMMIT_HASH__": JSON.stringify(commitHash),
|
||||
"import.meta.env.__RELEASE_VERSION__": JSON.stringify(process.env.npm_package_version)
|
||||
@@ -41,19 +46,19 @@ export default defineConfig({
|
||||
// Don't want vite to bundle these late during dev causing reload
|
||||
include: [
|
||||
"qr-scanner",
|
||||
"@kobalte/core",
|
||||
"@solid-primitives/upload",
|
||||
"i18next",
|
||||
"i18next-browser-languagedetector",
|
||||
"@capacitor-mlkit/barcode-scanner",
|
||||
"@nostr-dev-kit/ndk",
|
||||
"@capacitor-mlkit/barcode-scanning",
|
||||
"@capacitor/app",
|
||||
"@capacitor/app-launcher",
|
||||
"@capacitor/clipboard",
|
||||
"@capacitor/core",
|
||||
"@capacitor/filesystem",
|
||||
"@capacitor/toast",
|
||||
"@capacitor/haptics",
|
||||
"@capacitor/app",
|
||||
"@capacitor/browser",
|
||||
"@capacitor/share",
|
||||
"@capacitor/status-bar",
|
||||
"@capacitor/toast",
|
||||
],
|
||||
// This is necessary because otherwise `vite dev` can't find the wasm
|
||||
exclude: ["@mutinywallet/mutiny-wasm", "@mutinywallet/waila-wasm"]
|
||||
|
||||
Reference in New Issue
Block a user