0.1.3 #5

Merged
Thilawyn merged 104 commits from next into master 2025-03-11 01:44:38 +01:00
2 changed files with 8 additions and 8 deletions
Showing only changes of commit 86539f33f0 - Show all commits

View File

@@ -7,15 +7,15 @@ import { Uuid4Query } from "../services"
export function Uuid4QueryService() { export function Uuid4QueryService() {
const runSync = R.useRunSync() const runSync = R.useRunSync()
const { state, refresh } = R.useMemo(() => Uuid4Query.Uuid4Query, []) const query = R.useMemo(() => Uuid4Query.Uuid4Query, [])
const [queryState] = R.useRefState(state) const [state] = R.useRefState(query.state)
return ( return (
<Container> <Container>
<Flex direction="column" align="center" gap="2"> <Flex direction="column" align="center" gap="2">
<Text> <Text>
{AsyncData.match(queryState, { {AsyncData.match(state, {
NoData: () => "No data yet", NoData: () => "No data yet",
Loading: () => "Loading...", Loading: () => "Loading...",
Success: (value, { isRefreshing, isOptimistic }) => Success: (value, { isRefreshing, isOptimistic }) =>
@@ -25,7 +25,7 @@ export function Uuid4QueryService() {
})} })}
</Text> </Text>
<Button onClick={() => runSync(refresh)}>Refresh</Button> <Button onClick={() => runSync(query.refresh)}>Refresh</Button>
</Flex> </Flex>
</Container> </Container>
) )

View File

@@ -16,7 +16,7 @@ const Result = Schema.Tuple(Schema.String)
function RouteComponent() { function RouteComponent() {
const runSync = R.useRunSync() const runSync = R.useRunSync()
const { state, refresh } = R.useQuery({ const query = R.useQuery({
query: () => Console.log("Querying...").pipe( query: () => Console.log("Querying...").pipe(
Effect.andThen(Effect.sleep("500 millis")), Effect.andThen(Effect.sleep("500 millis")),
Effect.andThen(HttpClient.get("https://www.uuidtools.com/api/generate/v4")), Effect.andThen(HttpClient.get("https://www.uuidtools.com/api/generate/v4")),
@@ -28,14 +28,14 @@ function RouteComponent() {
key: [], key: [],
}) })
const [queryState] = R.useRefState(state) const [state] = R.useRefState(query.state)
return ( return (
<Container> <Container>
<Flex direction="column" align="center" gap="2"> <Flex direction="column" align="center" gap="2">
<Text> <Text>
{AsyncData.match(queryState, { {AsyncData.match(state, {
NoData: () => "No data yet", NoData: () => "No data yet",
Loading: () => "Loading...", Loading: () => "Loading...",
Success: (value, { isRefreshing, isOptimistic }) => Success: (value, { isRefreshing, isOptimistic }) =>
@@ -45,7 +45,7 @@ function RouteComponent() {
})} })}
</Text> </Text>
<Button onClick={() => runSync(refresh)}>Refresh</Button> <Button onClick={() => runSync(query.refresh)}>Refresh</Button>
</Flex> </Flex>
</Container> </Container>
) )