Something went wrong. Try again.
experimental web port of the Union style engine + adapters
Something went wrong. Try again.
880 B · 37 lines
TypeScript
at main
1234567891011121314151617181920212223242526272829303132333435363738import { createContext } from 'solid-js';import type { StyleRule } from '@union-web/core';
export interface UnionIR { rules: StyleRule[];}
export const UnionIRContext = createContext<UnionIR>({ rules: [] });
export interface AncestorElementData { role: string; states?: string[]; hints?: string[]; attributes?: Record<string, string>; ids?: string[];}
export interface UnionAncestorData { elements: AncestorElementData[];}
export const UnionAncestorContext = createContext<UnionAncestorData>({ elements: [] });
/* Positioner */
export interface PositionerChildInfo { horizontal: () => string; vertical: () => string; container: () => string;}
export interface PositionerCtx { register(info: PositionerChildInfo): void; unregister(info: PositionerChildInfo): void;}
export const PositionerContext = createContext<PositionerCtx | null>(null);