delete browse page for now

This commit is contained in:
Felix Roos 2024-01-14 00:02:27 +01:00
parent 204c964050
commit 5314c83534
3 changed files with 10 additions and 71 deletions

View File

@ -1,56 +0,0 @@
import { useCallback, useEffect, useMemo, useState } from 'react';
import type { Tables } from '../../database.types';
import { getMetadata } from '../metadata_parser';
import { loadFeaturedPatterns, loadPublicPatterns } from '../repl/util.mjs';
export function PatternLabel({ pattern }: { pattern: Tables<'code'> }) {
const meta = useMemo(() => getMetadata(pattern.code), [pattern]);
return (
<>
{pattern.id}. {meta.title || pattern.hash} by {meta.by.join(',') || 'Anonymous'}
</>
);
}
export const usePublicPatterns = () => {
const [publicPatterns, setPublicPatterns] = useState<Tables<'code'>[] | null>([]);
const [featuredPatterns, setFeaturedPatterns] = useState<Tables<'code'>[] | null>([]);
const init = useCallback(async () => {
const { data: _publicPatterns } = await loadPublicPatterns();
const { data: _featuredPatterns } = await loadFeaturedPatterns();
setPublicPatterns(_publicPatterns);
setFeaturedPatterns(_featuredPatterns);
}, []);
useEffect(() => {
init();
}, [useCallback]);
return { publicPatterns, featuredPatterns };
};
export function SharedPatterns() {
const { publicPatterns, featuredPatterns } = usePublicPatterns();
return (
<div>
<h2 className="">Featured</h2>
<section>
{featuredPatterns?.map((pattern, i) => (
<div key={i}>
<a href={`/?${pattern.hash}`} target="_blank">
<PatternLabel pattern={pattern} />
</a>
</div>
))}
</section>
<h2>Last Creations</h2>
<section>
{publicPatterns?.map((pattern, i) => (
<div key={i}>
<a href={`/?${pattern.hash}`} target="_blank">
<PatternLabel pattern={pattern} />
</a>
</div>
))}
</section>
</div>
);
}

View File

@ -1,14 +0,0 @@
---
import HeadCommon from '../components/HeadCommon.astro';
import { SharedPatterns } from '../components/SharedPatterns';
---
<head>
<HeadCommon />
</head>
<body class="bg-slate-800">
<div class="prose dark:prose-invert max-w-full pb-8 p-4">
<h1>Browse</h1>
<SharedPatterns client:only />
</div>
</body>

View File

@ -16,8 +16,8 @@ import {
useSettings,
} from '../../settings.mjs';
import * as tunes from '../tunes.mjs';
import { PatternLabel } from '../../components/SharedPatterns';
import { useStore } from '@nanostores/react';
import { getMetadata } from '../../metadata_parser';
function classNames(...classes) {
return classes.filter(Boolean).join(' ');
@ -167,3 +167,12 @@ export function PatternsTab({ context }) {
</div>
);
}
export function PatternLabel({ pattern } /* : { pattern: Tables<'code'> } */) {
const meta = useMemo(() => getMetadata(pattern.code), [pattern]);
return (
<>
{pattern.id}. {meta.title || pattern.hash} by {meta.by.join(',') || 'Anonymous'}
</>
);
}