From f682fcb5de1b9ae5d4e5cb21227c0d0f58e5886a Mon Sep 17 00:00:00 2001 From: AtHeartEngineer <1675654+AtHeartEngineer@users.noreply.github.com> Date: Tue, 25 Jul 2023 00:18:39 -0400 Subject: [PATCH] logos, local fonts, cleaned up theme, minor bugs --- package-lock.json | 239 +++++++++++++++++- package.json | 4 +- src/app.html | 11 +- src/app.postcss | 25 +- src/routes/+layout.svelte | 4 +- src/routes/AppHeader.svelte | 4 +- src/routes/about/+page.svelte | 2 +- src/routes/chat/Chat.svelte | 21 +- src/routes/identity/BackupIdentity.svelte | 30 +++ src/routes/signup/+layout.svelte | 9 +- src/theme.postcss | 186 +++++++------- static/android-icon-144x144.png | Bin 0 -> 2157 bytes static/android-icon-192x192.png | Bin 0 -> 1245 bytes static/android-icon-36x36.png | Bin 0 -> 1614 bytes static/android-icon-48x48.png | Bin 0 -> 1682 bytes static/android-icon-72x72.png | Bin 0 -> 1796 bytes static/android-icon-96x96.png | Bin 0 -> 1877 bytes static/apple-icon-114x114.png | Bin 0 -> 1981 bytes static/apple-icon-120x120.png | Bin 0 -> 2069 bytes static/apple-icon-144x144.png | Bin 0 -> 2157 bytes static/apple-icon-152x152.png | Bin 0 -> 2233 bytes static/apple-icon-180x180.png | Bin 0 -> 2543 bytes static/apple-icon-57x57.png | Bin 0 -> 1669 bytes static/apple-icon-60x60.png | Bin 0 -> 1714 bytes static/apple-icon-72x72.png | Bin 0 -> 1796 bytes static/apple-icon-76x76.png | Bin 0 -> 1768 bytes static/apple-icon-precomposed.png | Bin 0 -> 2247 bytes static/apple-icon.png | Bin 0 -> 2247 bytes static/browserconfig.xml | 2 + static/favicon-16x16.png | Bin 0 -> 1418 bytes static/favicon-256.png | Bin 0 -> 3738 bytes static/favicon-32x32.png | Bin 0 -> 1587 bytes static/favicon-96x96.png | Bin 0 -> 1877 bytes static/favicon.ico | Bin 0 -> 1150 bytes static/favicon.png | Bin 1571 -> 2944 bytes static/fonts/Nippo/Fonts/OTF/Nippo-Bold.otf | Bin 0 -> 28976 bytes .../Nippo/Fonts/OTF/Nippo-Extralight.otf | Bin 0 -> 28496 bytes static/fonts/Nippo/Fonts/OTF/Nippo-Light.otf | Bin 0 -> 29204 bytes static/fonts/Nippo/Fonts/OTF/Nippo-Medium.otf | Bin 0 -> 29652 bytes .../fonts/Nippo/Fonts/OTF/Nippo-Regular.otf | Bin 0 -> 29308 bytes static/fonts/Nippo/Fonts/WEB/README.md | 31 +++ static/fonts/Nippo/Fonts/WEB/css/nippo.css | 95 +++++++ .../Nippo/Fonts/WEB/fonts/Nippo-Bold.eot | Bin 0 -> 45182 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Bold.ttf | Bin 0 -> 45028 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Bold.woff | Bin 0 -> 19100 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Bold.woff2 | Bin 0 -> 14880 bytes .../Fonts/WEB/fonts/Nippo-Extralight.eot | Bin 0 -> 46242 bytes .../Fonts/WEB/fonts/Nippo-Extralight.ttf | Bin 0 -> 46060 bytes .../Fonts/WEB/fonts/Nippo-Extralight.woff | Bin 0 -> 18876 bytes .../Fonts/WEB/fonts/Nippo-Extralight.woff2 | Bin 0 -> 14920 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Light.eot | Bin 0 -> 46480 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Light.ttf | Bin 0 -> 46308 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Light.woff | Bin 0 -> 19980 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Light.woff2 | Bin 0 -> 15648 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Medium.eot | Bin 0 -> 46166 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Medium.ttf | Bin 0 -> 45992 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Medium.woff | Bin 0 -> 20140 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Medium.woff2 | Bin 0 -> 15708 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Regular.eot | Bin 0 -> 46250 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Regular.ttf | Bin 0 -> 46092 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Regular.woff | Bin 0 -> 20164 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Regular.woff2 | Bin 0 -> 15884 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Variable.eot | Bin 0 -> 70096 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Variable.ttf | Bin 0 -> 69896 bytes .../Nippo/Fonts/WEB/fonts/Nippo-Variable.woff | Bin 0 -> 19736 bytes .../Fonts/WEB/fonts/Nippo-Variable.woff2 | Bin 0 -> 29108 bytes static/fonts/Nippo/License/FFL.txt | 58 +++++ static/fonts/Nippo/Nippo-Variable.ttf | Bin 0 -> 69896 bytes static/fonts/Space_Grotesk/OFL.txt | 93 +++++++ static/fonts/Space_Grotesk/README.txt | 67 +++++ .../SpaceGrotesk-VariableFont_wght.ttf | Bin 0 -> 134112 bytes .../static/SpaceGrotesk-Bold.ttf | Bin 0 -> 86400 bytes .../static/SpaceGrotesk-Light.ttf | Bin 0 -> 86556 bytes .../static/SpaceGrotesk-Medium.ttf | Bin 0 -> 86528 bytes .../static/SpaceGrotesk-Regular.ttf | Bin 0 -> 86504 bytes .../static/SpaceGrotesk-SemiBold.ttf | Bin 0 -> 86452 bytes static/fonts/Space_Mono/OFL.txt | 93 +++++++ static/fonts/Space_Mono/SpaceMono-Bold.ttf | Bin 0 -> 86636 bytes .../fonts/Space_Mono/SpaceMono-BoldItalic.ttf | Bin 0 -> 95292 bytes static/fonts/Space_Mono/SpaceMono-Italic.ttf | Bin 0 -> 103524 bytes static/fonts/Space_Mono/SpaceMono-Regular.ttf | Bin 0 -> 90904 bytes static/logo-icon-hires-bg.png | Bin 0 -> 12508 bytes static/logo-icon-hires.png | Bin 0 -> 12020 bytes static/logo-icon.png | Bin 0 -> 1042 bytes static/logo-icon.svg | 4 + static/logo-text.png | Bin 0 -> 4286 bytes static/logo-text.svg | 12 + static/manifest.json | 41 +++ static/ms-icon-144x144.png | Bin 0 -> 2157 bytes static/ms-icon-150x150.png | Bin 0 -> 2278 bytes static/ms-icon-310x310.png | Bin 0 -> 5602 bytes static/ms-icon-70x70.png | Bin 0 -> 1782 bytes 92 files changed, 909 insertions(+), 122 deletions(-) create mode 100644 static/android-icon-144x144.png create mode 100644 static/android-icon-192x192.png create mode 100644 static/android-icon-36x36.png create mode 100644 static/android-icon-48x48.png create mode 100644 static/android-icon-72x72.png create mode 100644 static/android-icon-96x96.png create mode 100644 static/apple-icon-114x114.png create mode 100644 static/apple-icon-120x120.png create mode 100644 static/apple-icon-144x144.png create mode 100644 static/apple-icon-152x152.png create mode 100644 static/apple-icon-180x180.png create mode 100644 static/apple-icon-57x57.png create mode 100644 static/apple-icon-60x60.png create mode 100644 static/apple-icon-72x72.png create mode 100644 static/apple-icon-76x76.png create mode 100644 static/apple-icon-precomposed.png create mode 100644 static/apple-icon.png create mode 100644 static/browserconfig.xml create mode 100644 static/favicon-16x16.png create mode 100644 static/favicon-256.png create mode 100644 static/favicon-32x32.png create mode 100644 static/favicon-96x96.png create mode 100644 static/favicon.ico create mode 100644 static/fonts/Nippo/Fonts/OTF/Nippo-Bold.otf create mode 100644 static/fonts/Nippo/Fonts/OTF/Nippo-Extralight.otf create mode 100644 static/fonts/Nippo/Fonts/OTF/Nippo-Light.otf create mode 100644 static/fonts/Nippo/Fonts/OTF/Nippo-Medium.otf create mode 100644 static/fonts/Nippo/Fonts/OTF/Nippo-Regular.otf create mode 100644 static/fonts/Nippo/Fonts/WEB/README.md create mode 100644 static/fonts/Nippo/Fonts/WEB/css/nippo.css create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Bold.eot create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Bold.ttf create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Bold.woff create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Bold.woff2 create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Extralight.eot create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Extralight.ttf create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Extralight.woff create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Extralight.woff2 create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Light.eot create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Light.ttf create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Light.woff create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Light.woff2 create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Medium.eot create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Medium.ttf create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Medium.woff create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Medium.woff2 create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Regular.eot create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Regular.ttf create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Regular.woff create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Regular.woff2 create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Variable.eot create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Variable.ttf create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Variable.woff create mode 100644 static/fonts/Nippo/Fonts/WEB/fonts/Nippo-Variable.woff2 create mode 100644 static/fonts/Nippo/License/FFL.txt create mode 100644 static/fonts/Nippo/Nippo-Variable.ttf create mode 100644 static/fonts/Space_Grotesk/OFL.txt create mode 100644 static/fonts/Space_Grotesk/README.txt create mode 100644 static/fonts/Space_Grotesk/SpaceGrotesk-VariableFont_wght.ttf create mode 100644 static/fonts/Space_Grotesk/static/SpaceGrotesk-Bold.ttf create mode 100644 static/fonts/Space_Grotesk/static/SpaceGrotesk-Light.ttf create mode 100644 static/fonts/Space_Grotesk/static/SpaceGrotesk-Medium.ttf create mode 100644 static/fonts/Space_Grotesk/static/SpaceGrotesk-Regular.ttf create mode 100644 static/fonts/Space_Grotesk/static/SpaceGrotesk-SemiBold.ttf create mode 100644 static/fonts/Space_Mono/OFL.txt create mode 100644 static/fonts/Space_Mono/SpaceMono-Bold.ttf create mode 100644 static/fonts/Space_Mono/SpaceMono-BoldItalic.ttf create mode 100644 static/fonts/Space_Mono/SpaceMono-Italic.ttf create mode 100644 static/fonts/Space_Mono/SpaceMono-Regular.ttf create mode 100644 static/logo-icon-hires-bg.png create mode 100644 static/logo-icon-hires.png create mode 100644 static/logo-icon.png create mode 100644 static/logo-icon.svg create mode 100644 static/logo-text.png create mode 100644 static/logo-text.svg create mode 100644 static/manifest.json create mode 100644 static/ms-icon-144x144.png create mode 100644 static/ms-icon-150x150.png create mode 100644 static/ms-icon-310x310.png create mode 100644 static/ms-icon-70x70.png diff --git a/package-lock.json b/package-lock.json index 79394c9..eb76671 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,6 +11,7 @@ "@semaphore-protocol/group": "^3.10.1", "discreetly-interfaces": "^0.1.5", "poseidon-lite": "^0.2.0", + "qrcode": "^1.5.3", "socket.io-client": "^4.7.1" }, "devDependencies": { @@ -21,6 +22,7 @@ "@sveltejs/adapter-cloudflare": "^2.3.0", "@sveltejs/kit": "^1.21.0", "@tailwindcss/forms": "^0.5.3", + "@types/qrcode": "^1.5.1", "@typescript-eslint/eslint-plugin": "^5.45.0", "@typescript-eslint/parser": "^5.45.0", "autoprefixer": "^10.4.14", @@ -1431,6 +1433,15 @@ "integrity": "sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg==", "dev": true }, + "node_modules/@types/qrcode": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@types/qrcode/-/qrcode-1.5.1.tgz", + "integrity": "sha512-HpSN675K0PmxIDRpjMI3Mc2GiKo3dNu+X/F5SoItiaDS1lVfgC6Wac1c5lQDfKWbTJUSHWiHKzpJpBZG7k9gaA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/semver": { "version": "7.5.0", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz", @@ -1676,7 +1687,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, "engines": { "node": ">=8" } @@ -1939,6 +1949,14 @@ "node": ">=6" } }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, "node_modules/camelcase-css": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", @@ -2061,6 +2079,16 @@ "wasmbuilder": "0.0.16" } }, + "node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, "node_modules/code-red": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/code-red/-/code-red-1.0.3.tgz", @@ -2168,6 +2196,14 @@ } } }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -2213,6 +2249,11 @@ "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", "dev": true }, + "node_modules/dijkstrajs": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.3.tgz", + "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==" + }, "node_modules/dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -2272,6 +2313,16 @@ "integrity": "sha512-pmf1rbAStw8UEQ0sr2cdJtWl48ZMuPD9Sto8HVQOq9vx9j2WgDEN6lYoaqFvqEHYOmGA9oRGn7LqWI9ta0YugQ==", "dev": true }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/encode-utf8": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/encode-utf8/-/encode-utf8-1.0.3.tgz", + "integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==" + }, "node_modules/engine.io-client": { "version": "6.5.1", "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.1.tgz", @@ -2891,6 +2942,14 @@ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, "node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -3107,6 +3166,14 @@ "node": ">=0.10.0" } }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -3573,6 +3640,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -3589,7 +3664,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, "engines": { "node": ">=8" } @@ -3686,6 +3760,14 @@ "node": ">=16" } }, + "node_modules/pngjs": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz", + "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==", + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/poseidon-lite": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/poseidon-lite/-/poseidon-lite-0.2.0.tgz", @@ -3903,6 +3985,23 @@ "node": ">=6" } }, + "node_modules/qrcode": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.3.tgz", + "integrity": "sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==", + "dependencies": { + "dijkstrajs": "^1.0.1", + "encode-utf8": "^1.0.3", + "pngjs": "^5.0.0", + "yargs": "^15.3.1" + }, + "bin": { + "qrcode": "bin/qrcode" + }, + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -3987,6 +4086,19 @@ "node": ">=8" } }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + }, "node_modules/resolve": { "version": "1.22.2", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", @@ -4175,6 +4287,11 @@ "node": ">=10" } }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + }, "node_modules/set-cookie-parser": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.6.0.tgz", @@ -4327,11 +4444,23 @@ "node": ">=10.0.0" } }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -4943,6 +5072,11 @@ "node": ">= 8" } }, + "node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==" + }, "node_modules/worktop": { "version": "0.8.0-next.15", "resolved": "https://registry.npmjs.org/worktop/-/worktop-0.8.0-next.15.tgz", @@ -4956,6 +5090,19 @@ "node": ">=12" } }, + "node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -4990,6 +5137,11 @@ "node": ">=0.4.0" } }, + "node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -5005,6 +5157,87 @@ "node": ">= 14" } }, + "node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/yargs/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index 60599e7..45188a5 100644 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ "@sveltejs/adapter-cloudflare": "^2.3.0", "@sveltejs/kit": "^1.21.0", "@tailwindcss/forms": "^0.5.3", + "@types/qrcode": "^1.5.1", "@typescript-eslint/eslint-plugin": "^5.45.0", "@typescript-eslint/parser": "^5.45.0", "autoprefixer": "^10.4.14", @@ -44,6 +45,7 @@ "@semaphore-protocol/group": "^3.10.1", "discreetly-interfaces": "^0.1.5", "poseidon-lite": "^0.2.0", + "qrcode": "^1.5.3", "socket.io-client": "^4.7.1" } -} \ No newline at end of file +} diff --git a/src/app.html b/src/app.html index 101d17e..ef04e1f 100644 --- a/src/app.html +++ b/src/app.html @@ -2,15 +2,10 @@ - + + + - - - - %sveltekit.head% diff --git a/src/app.postcss b/src/app.postcss index d07ce85..ad4ccff 100644 --- a/src/app.postcss +++ b/src/app.postcss @@ -1,9 +1,22 @@ /* Write your global styles here, in PostCSS syntax */ +@font-face { +font-family: "Space Grotesk"; +src: url("/fonts/Space_Grotesk/SpaceGrotesk-VariableFont_wght.ttf") format("truetype"); +} +@font-face { + font-family: "Space Mono"; + src: url("/fonts/Space_Mono/SpaceMono-Regular.ttf") format("truetype"); +} + +@font-face { +font-family: "Nippo"; +src: url("/fonts/Nippo/Nippo-Variable.ttf") format("truetype"); +} @tailwind base; :root { - --blackish: rgba(0, 0, 0, 0.98); - --gray-dark: #212121; + --blackish: #202626; + --gray-dark: #292f2f; --gray-light: rgba(242, 242, 242, 0.6); --white: rgba(255, 255, 255, 1); --whitish: rgb(225, 225, 225); @@ -42,3 +55,11 @@ @tailwind components; @tailwind utilities; + +.dark body { + background: rgb(var(--color-surface-700)); +} + +.h1, .h2, .h3, .h4, .h5, .h6 { + font-weight: 350; +} \ No newline at end of file diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 2bae2f1..6e3a4f9 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -9,9 +9,7 @@ import AppFooter from './AppFooter.svelte'; import Loading from '$lib/loading.svelte'; import { serverListStore, serverDataStore, selectedServer } from '$lib/stores'; - import type { ServerI } from 'discreetly-interfaces'; - import { fetchServer, updateServers } from '$lib/utils'; - import type { ServerListI } from '$lib/types'; + import { updateServers } from '$lib/utils'; // Hack to get BigInt <-> JSON compatibility (BigInt.prototype as any).toJSON = function () { diff --git a/src/routes/AppHeader.svelte b/src/routes/AppHeader.svelte index 84ebfce..356d001 100644 --- a/src/routes/AppHeader.svelte +++ b/src/routes/AppHeader.svelte @@ -4,10 +4,10 @@ import { identityStore } from '$lib/stores'; - +

- Discreetly + discreetly

{#if $identityStore.identity != undefined && $identityStore.identity != null} diff --git a/src/routes/about/+page.svelte b/src/routes/about/+page.svelte index d2eb914..e902526 100644 --- a/src/routes/about/+page.svelte +++ b/src/routes/about/+page.svelte @@ -1,5 +1,5 @@
-

 Discreetly 

+ discreetly
A new take on anonymous communication.

This feels like a mostly familiar chat application, with random numbers as usernames, but I diff --git a/src/routes/chat/Chat.svelte b/src/routes/chat/Chat.svelte index 0aebca6..711f974 100644 --- a/src/routes/chat/Chat.svelte +++ b/src/routes/chat/Chat.svelte @@ -124,14 +124,19 @@ socket.on('messageBroadcast', (data: MessageI) => { console.debug('Received Message: ', data); - if (!$messageStore[data.room]) { - console.debug('Creating room in message store', data.room); - $messageStore[data.room] = { messages: [] }; + const roomID = data.room?.toString(); + if (roomID) { + if (!$messageStore[roomID]) { + console.debug('Creating room in message store', roomID); + $messageStore[roomID] = { messages: [] }; + } + $messageStore[roomID].messages = [data, ...$messageStore[roomID].messages.reverse()]; + $messageStore[roomID].messages = $messageStore[roomID].messages.slice(0, 500); + console.log($messageStore[roomID].messages.slice(0, 5)); + scrollChatBottom(); } - $messageStore[data.room].messages = [data, ...$messageStore[data.room].messages]; - $messageStore[data.room].messages = $messageStore[data.room].messages.slice(0, 500); - scrollChatBottom(); }); + setInterval(() => { currentEpoch = rateManager.getCurrentEpoch(); messagesLeft = rateManager.getRemainingMessages(); @@ -143,7 +148,7 @@ }); -

+