misc changes

This commit is contained in:
smolgrrr 2024-08-19 18:55:22 +10:00
parent 33da9990f8
commit 4e48aadc84
5 changed files with 23 additions and 20 deletions

View File

@ -3,16 +3,12 @@
"version": "0.1.0", "version": "0.1.0",
"private": false, "private": false,
"dependencies": { "dependencies": {
"@emoji-mart/data": "^1.1.2",
"@emoji-mart/react": "^1.1.1",
"@headlessui/react": "1.7", "@headlessui/react": "1.7",
"@heroicons/react": "^2.0.18", "@heroicons/react": "^2.0.18",
"@types/jest": "^27.5.2", "@types/jest": "^27.5.2",
"@types/node": "^17.0.45", "@types/node": "^17.0.45",
"@types/react": "^18.2.21", "@types/react": "^18.2.21",
"@types/react-dom": "^18.2.7", "@types/react-dom": "^18.2.7",
"emoji-mart": "^5.5.2",
"emoji-picker-react": "^4.5.15",
"link-preview-js": "^3.0.5", "link-preview-js": "^3.0.5",
"nostr-tools": "2.5.1", "nostr-tools": "2.5.1",
"react": "^18.2.0", "react": "^18.2.0",

View File

@ -15,9 +15,9 @@ export default function Header() {
<header className="mx-auto px-4 sm:px-6 lg:px-8 py-2"> <header className="mx-auto px-4 sm:px-6 lg:px-8 py-2">
<div className="flex justify-between items-center"> <div className="flex justify-between items-center">
<a href="/"> <a href="/">
<div className="flex items-center gap-2"> <div className="flex items-center gap-2 max-w-60 w-full sm:max-w-none sm:w-auto">
<img src="/icon.png" className="h-12" alt="logo" /> <img src="/icon.png" className="h-12" alt="logo" />
<span className="font-semibold text-white"> <span className="font-semibold text-white truncate">
{`~/WIRED${lastPathPart}>`} {`~/WIRED${lastPathPart}>`}
</span> </span>
</div> </div>

View File

@ -1,6 +1,6 @@
import React, { useState } from 'react'; import React, { useState } from 'react';
export const DefaultHashtags = ['asknostr', 'politics', 'technology', 'bitcoin', 'wired']; export const DefaultHashtags = ['asknostr', 'politics', 'technology', 'proofofwork','bitcoin', 'wired'];
const Hashtags = () => { const Hashtags = () => {
const [addedHashtags, setAddedHashtags] = useState<string[]>(JSON.parse(localStorage.getItem('hashtags') as string) || []); const [addedHashtags, setAddedHashtags] = useState<string[]>(JSON.parse(localStorage.getItem('hashtags') as string) || []);

View File

@ -184,11 +184,11 @@ const Settings = () => {
<div className="settings-page py-10"> <div className="settings-page py-10">
<h1 className="text-lg font-semibold mb-4">About</h1> <h1 className="text-lg font-semibold mb-4">About</h1>
<div className="flex flex-col"> <div className="flex flex-col">
<p>The Anon Operation (TAO) is an anonymous-first agora, built upon the <a className="underline" href="https://nostr.com/">NOSTR protocol</a>.</p> <p>The Wired is an anon agora, built upon the <a className="underline" href="https://nostr.com/">NOSTR protocol</a>.</p>
<br /> <br />
<p>TAO is built to facilitate unstoppable free speech on the internet.</p> <p>The Wired is built to facilitate unstoppable free speech on the internet.</p>
<p>-PWA to be widely accessible with distribution via URLS, and to side-step App Store gatekeeping</p> <p>-PWA to be widely accessible with distribution via URLS, and to side-step App Store gatekeeping</p>
<p>-Uses NOSTR as a censorship-resistant global "social" network</p> <p>-Uses NOSTR as a censorship-resistant "social" network</p>
<p>-Employs Proof-of-Work (PoW) as a spam prevention mechanism, as opposed to Captcha, moderation or other verification methods</p> <p>-Employs Proof-of-Work (PoW) as a spam prevention mechanism, as opposed to Captcha, moderation or other verification methods</p>
<br /> <br />
<a href="https://github.com/smolgrrr/TAO"> <a href="https://github.com/smolgrrr/TAO">

View File

@ -298,6 +298,23 @@ export const subHashtagFeed = (
onEvent(evt, relay); onEvent(evt, relay);
}, },
filter: { filter: {
"#t": [hashtag],
kinds: [1, 6],
since: Math.floor((Date.now() * 0.001) - (age * 60 * 60)),
limit: 25,
},
unsub: true
});
const prefix = Math.floor(16 / 4); // 4 bits in each '0' character
sub({ // get past events
cb: (evt, relay) => {
pubkeys.add(evt.pubkey);
notes.add(evt.id);
onEvent(evt, relay);
},
filter: {
...(prefix && { ids: ['0'.repeat(prefix)] }),
"#t": [hashtag], "#t": [hashtag],
kinds: [1, 6], kinds: [1, 6],
since: Math.floor((Date.now() * 0.001) - (age * 60 * 60)), since: Math.floor((Date.now() * 0.001) - (age * 60 * 60)),
@ -318,16 +335,6 @@ export const subHashtagFeed = (
unsub: true, unsub: true,
}); });
pubkeys.clear(); pubkeys.clear();
sub({
cb: onEvent,
filter: {
'#e': Array.from(notes),
kinds: [1],
},
unsub: true,
});
notes.clear(); notes.clear();
}, 2000); }, 2000);