Files
+16 9e0d3976e1 chore: merge dev into v2 (#35591)
Co-authored-by: Frank <[email protected]>
Co-authored-by: Aarav Sareen <[email protected]>
Co-authored-by: Brendan Allan <[email protected]>
Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: Jack <[email protected]>
Co-authored-by: Brendan Allan <[email protected]>
Co-authored-by: Shoubhit Dash <[email protected]>
Co-authored-by: opencode-agent[bot] <219766164+opencode-agent[bot]@users.noreply.github.com>
Co-authored-by: James Long <[email protected]>
Co-authored-by: Dustin Deus <[email protected]>
Co-authored-by: starptech <[email protected]>
Co-authored-by: Luke Parker <[email protected]>
Co-authored-by: 𝓛𝓲𝓽𝓽𝓵𝓮 𝓕𝓻𝓪𝓷𝓴 <[email protected]>
Co-authored-by: Dax <[email protected]>
Co-authored-by: usrnk1 <[email protected]>
Co-authored-by: Jay <[email protected]>
Co-authored-by: runvip <[email protected]>
Co-authored-by: opencode <[email protected]>
Co-authored-by: Julian Coy <[email protected]>
Co-authored-by: Vladimir Glafirov <[email protected]>
Co-authored-by: Adam <[email protected]>
Co-authored-by: Kit Langton <[email protected]>
Co-authored-by: Simon Klee <[email protected]>
Co-authored-by: Jay <[email protected]>
Co-authored-by: David Hill <[email protected]>
2026-07-06 16:05:29 -05:00

48 lines
1.1 KiB
TypeScript

export type VisualRegionSample = {
present: boolean
visible: boolean
inViewport: boolean
cssHidden?: boolean
top: number
bottom: number
layoutTop?: number
layoutBottom?: number
width: number
height: number
opacity: number
count: number
node: number
label: string
text: string
}
export type VisualViewportSample = {
top: number
bottom: number
scrollTop: number
scrollHeight: number
clientHeight: number
distanceFromBottom: number
}
export type VisualObservation<RegionName extends string = string> = {
at: number
regions: string extends RegionName
? Record<string, VisualRegionSample>
: Partial<Record<RegionName, VisualRegionSample>>
viewport?: VisualViewportSample
}
export type VisualMarker = { at: number; label: string }
export type VisualStabilityTrace<RegionName extends string = string> = {
markers: VisualMarker[]
samples: VisualObservation<RegionName>[]
}
export type CapturedFrame = { at: number; data: string }
export type VisualProbeResult<RegionName extends string = string> = VisualStabilityTrace<RegionName> & {
frames: CapturedFrame[]
}