0.1.13 #18

Merged
Thilawyn merged 359 commits from next into master 2025-06-18 00:12:19 +02:00
2 changed files with 10 additions and 8 deletions
Showing only changes of commit 7013bed037 - Show all commits

View File

@@ -4,15 +4,16 @@ import { createFileRoute } from "@tanstack/react-router"
import { GetRandomValues, makeUuid4 } from "@typed/id"
import { Console, Effect, Option } from "effect"
import { useEffect, useState } from "react"
import { PropertyPath } from "reffuse/types"
interface Node {
readonly value: string
readonly left?: Node
readonly right?: Node
value: string
left?: Leaf
right?: Leaf
}
interface Leaf {
node: Node
}
type NodePaths = PropertyPath.Paths<Node>
const makeUuid = Effect.provide(makeUuid4, GetRandomValues.CryptoRandom)

View File

@@ -17,9 +17,10 @@ export type ArrayPaths<T extends readonly any[], Seen> = {
: never
export type ObjectPaths<T extends object, Seen> = {
[K in keyof T as K extends string | number | symbol ? K : never]:
| [K]
| [K, ...Paths<T[K], Seen>]
[K in keyof T as K extends string | number | symbol ? K : never]-?:
NonNullable<T[K]> extends infer V
? [K] | [K, ...Paths<T[K], Seen>]
: never
} extends infer O
? O[keyof O]
: never