@fairfox/polly 0.38.2 → 0.40.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/cli/polly.js.map +1 -1
  2. package/dist/src/background/index.js +1 -2
  3. package/dist/src/background/index.js.map +6 -6
  4. package/dist/src/background/message-router.js +1 -2
  5. package/dist/src/background/message-router.js.map +6 -6
  6. package/dist/src/client/index.js +46 -27
  7. package/dist/src/client/index.js.map +5 -5
  8. package/dist/src/client/wrapper.d.ts +8 -0
  9. package/dist/src/elysia/index.js +10 -31
  10. package/dist/src/elysia/index.js.map +5 -5
  11. package/dist/src/elysia/route-match.d.ts +9 -0
  12. package/dist/src/elysia/types.d.ts +4 -5
  13. package/dist/src/index.js +1 -2
  14. package/dist/src/index.js.map +7 -7
  15. package/dist/src/mesh-node.js.map +1 -1
  16. package/dist/src/mesh.js.map +7 -7
  17. package/dist/src/peer.js.map +3 -3
  18. package/dist/src/polly-ui/index.js.map +3 -3
  19. package/dist/src/polly-ui/markdown.js +583 -517
  20. package/dist/src/polly-ui/markdown.js.map +6 -6
  21. package/dist/src/shared/adapters/index.js.map +3 -3
  22. package/dist/src/shared/lib/context-helpers.js +1 -2
  23. package/dist/src/shared/lib/context-helpers.js.map +6 -6
  24. package/dist/src/shared/lib/mesh-signaling-client.d.ts +1 -1
  25. package/dist/src/shared/lib/message-bus.js +1 -2
  26. package/dist/src/shared/lib/message-bus.js.map +6 -6
  27. package/dist/src/shared/lib/peer-relay-adapter.d.ts +3 -2
  28. package/dist/src/shared/lib/resource.js.map +3 -3
  29. package/dist/src/shared/lib/state.js.map +3 -3
  30. package/dist/src/shared/state/app-state.js.map +4 -4
  31. package/dist/src/shared/types/messages.d.ts +0 -9
  32. package/dist/src/shared/types/messages.js.map +1 -1
  33. package/dist/tools/test/src/adapters/index.js.map +1 -1
  34. package/dist/tools/test/src/index.js.map +1 -1
  35. package/dist/tools/test/src/visual/index.js +64 -38
  36. package/dist/tools/test/src/visual/index.js.map +4 -4
  37. package/dist/tools/verify/Dockerfile +1 -1
  38. package/dist/tools/verify/specs/Dockerfile +1 -1
  39. package/dist/tools/verify/src/cli.js.map +3 -3
  40. package/dist/tools/visualize/src/cli.js.map +3 -3
  41. package/package.json +33 -28
  42. package/dist/src/utils/function-serialization.d.ts +0 -14
@@ -7,7 +7,7 @@
7
7
  "/**\n * Badge — small inline status chip.\n *\n * Renders as a passive <span> with tinted background and on-tint text\n * from the `--polly-status-*` token family. The default variant uses\n * surface-sunken + muted text for a neutral pill. Consumers style\n * placement via className; the primitive owns size, shape, and colour.\n */\n\nimport type { ComponentChildren, JSX } from \"preact\";\nimport classes from \"./Badge.module.css\";\n\nexport type BadgeVariant = \"default\" | \"info\" | \"success\" | \"warning\" | \"danger\";\n\nexport type BadgeProps = {\n children: ComponentChildren;\n variant?: BadgeVariant;\n className?: string;\n id?: string;\n};\n\nfunction variantClass(variant: BadgeVariant): string | undefined {\n if (variant === \"info\") return classes[\"info\"];\n if (variant === \"success\") return classes[\"success\"];\n if (variant === \"warning\") return classes[\"warning\"];\n if (variant === \"danger\") return classes[\"danger\"];\n return undefined;\n}\n\nexport function Badge(props: BadgeProps): JSX.Element {\n const { children, variant = \"default\", className, id } = props;\n const parts = [classes[\"badge\"]];\n const v = variantClass(variant);\n if (v) parts.push(v);\n if (className) parts.push(className);\n return (\n <span id={id} class={parts.join(\" \")} data-polly-ui data-polly-badge={variant}>\n {children}\n </span>\n );\n}\n",
8
8
  "/**\n * Layout — the one primitive that owns layouting concerns.\n *\n * Every other component in @fairfox/polly/ui (and every consumer app\n * that runs `polly quality css-layout`) routes flex/grid decisions\n * through this component. Props map to CSS custom properties so the\n * stylesheet can read them uniformly and so consumers can override\n * any of them in media queries without touching specificity.\n */\n\nimport { type ComponentChildren, createElement, type JSX } from \"preact\";\nimport classes from \"./Layout.module.css\";\n\nexport type LayoutProps = {\n children: ComponentChildren;\n\n /** Polymorphic element (div, section, header, nav, …). Defaults to 'div'. */\n as?: keyof JSX.IntrinsicElements;\n\n /** CSS grid structure. */\n rows?: string;\n columns?: string;\n autoFlow?: string;\n autoRows?: string;\n autoColumns?: string;\n\n /** display: contents — lets children participate in an ancestor grid. */\n contents?: boolean;\n /** Inherit parent grid tracks via CSS subgrid. */\n subgrid?: boolean;\n\n /** Spacing. */\n gap?: string;\n padding?: string;\n\n /** Sizing. */\n height?: string;\n minHeight?: string;\n /**\n * Cap the inline size and centre within the parent. Typical values use the\n * `--polly-measure-*` tokens (e.g. \"var(--polly-measure-page)\" for an app\n * shell, \"var(--polly-measure-prose)\" for body copy). Any CSS length works.\n */\n maxInlineSize?: string;\n\n /** Container alignment. */\n justifyItems?: string;\n alignItems?: string;\n justifyContent?: string;\n alignContent?: string;\n\n /** Self alignment (when this Layout is an item in a parent grid). */\n justifySelf?: string;\n alignSelf?: string;\n\n /** Collapse to a single column at ≤640px. */\n stackOnMobile?: boolean;\n\n /** Render as display: inline-grid so the Layout flows inline with surrounding text/controls. */\n inline?: boolean;\n\n className?: string;\n onClick?: JSX.MouseEventHandler<HTMLElement>;\n onKeyDown?: JSX.KeyboardEventHandler<HTMLElement>;\n\n role?: JSX.AriaRole;\n tabIndex?: number;\n id?: string;\n \"aria-label\"?: string;\n \"aria-labelledby\"?: string;\n \"aria-describedby\"?: string;\n};\n\n// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: sixteen optional prop-to-custom-property mappings; flat and linear.\nexport function Layout(props: LayoutProps): JSX.Element {\n const {\n children,\n as = \"div\",\n rows,\n columns,\n contents,\n subgrid,\n gap,\n padding,\n height,\n minHeight,\n maxInlineSize,\n justifyItems,\n alignItems,\n justifyContent,\n alignContent,\n justifySelf,\n alignSelf,\n autoFlow,\n autoRows,\n autoColumns,\n stackOnMobile,\n inline,\n className,\n onClick,\n onKeyDown,\n role,\n tabIndex,\n id,\n } = props;\n\n const style: Record<string, string> = {};\n\n if (contents) {\n style[\"display\"] = \"contents\";\n } else if (subgrid) {\n style[\"--l-col\"] = \"1 / -1\";\n style[\"--l-cols\"] = \"subgrid\";\n if (padding) style[\"--l-p\"] = padding;\n if (alignItems) style[\"--l-ai\"] = alignItems;\n if (gap) style[\"--l-gap\"] = gap;\n } else {\n if (padding) style[\"--l-p\"] = padding;\n if (height) style[\"--l-h\"] = height;\n if (minHeight) style[\"--l-mh\"] = minHeight;\n if (maxInlineSize) style[\"--l-mis\"] = maxInlineSize;\n if (rows) style[\"--l-rows\"] = rows;\n if (columns) style[\"--l-cols\"] = columns;\n if (gap) style[\"--l-gap\"] = gap;\n if (justifyItems) style[\"--l-ji\"] = justifyItems;\n if (alignItems) style[\"--l-ai\"] = alignItems;\n if (justifyContent) style[\"--l-jc\"] = justifyContent;\n if (alignContent) style[\"--l-ac\"] = alignContent;\n if (autoFlow) style[\"--l-flow\"] = autoFlow;\n if (autoRows) style[\"--l-arows\"] = autoRows;\n if (autoColumns) style[\"--l-acols\"] = autoColumns;\n }\n if (justifySelf) style[\"--l-js\"] = justifySelf;\n if (alignSelf) style[\"--l-as\"] = alignSelf;\n\n const baseParts = [classes[\"layout\"]];\n if (inline) baseParts.push(classes[\"inline\"]);\n if (stackOnMobile) baseParts.push(classes[\"stackOnMobile\"]);\n const baseClass = baseParts.filter(Boolean).join(\" \");\n const combined = contents ? className : className ? `${baseClass} ${className}` : baseClass;\n\n return createElement(\n as,\n {\n id,\n className: combined,\n style,\n onClick,\n onKeyDown,\n role,\n tabIndex,\n \"aria-label\": props[\"aria-label\"],\n \"aria-labelledby\": props[\"aria-labelledby\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"data-polly-layout\": true,\n },\n children\n );\n}\n",
9
9
  "/**\n * Button — interactive control with tier, semantic colour, and size.\n *\n * Renders as a <button> by default; switches to an <a> when given an\n * `href`. Tier sets visual importance (primary/secondary/tertiary),\n * color overlays semantic meaning (info/success/warning/danger),\n * size picks the padding + font scale (small/normal/large). Icon +\n * label are arranged with a nested inline <Layout>.\n *\n * Action wiring is declared via data-* attributes consumed by the\n * global event delegator in @fairfox/polly/actions — Button does not\n * accept an onClick prop.\n */\n\nimport type { ComponentChildren, JSX, VNode } from \"preact\";\nimport classes from \"./Button.module.css\";\nimport { Layout } from \"./Layout.tsx\";\n\nexport type ButtonTier = \"primary\" | \"secondary\" | \"tertiary\";\nexport type ButtonColor = \"default\" | \"info\" | \"success\" | \"warning\" | \"danger\";\nexport type ButtonSize = \"small\" | \"normal\" | \"large\";\n\ntype BaseButtonProps = {\n id?: string;\n tier?: ButtonTier;\n color?: ButtonColor;\n size?: ButtonSize;\n disabled?: boolean;\n fullWidth?: boolean;\n circle?: boolean;\n className?: string;\n title?: string;\n icon?: VNode;\n label: ComponentChildren;\n \"data-action\"?: string;\n \"aria-label\"?: string;\n /** Additional action-payload attributes the event delegator parses\n * into `ctx.data`. `data-action-tid=\"t-17\"` becomes `{ tid: \"t-17\" }`,\n * `data-action-item-id=\"…\"` becomes `{ itemId: \"…\" }`, and so on.\n * Typed as an index signature so every `data-action-*` key the\n * consumer cares about type-checks without a Button-side enumeration. */\n [actionDataAttr: `data-action-${string}`]: string | undefined;\n};\n\ntype ButtonAsButton = BaseButtonProps & {\n href?: never;\n target?: never;\n rel?: never;\n type?: \"button\" | \"submit\" | \"reset\";\n};\n\ntype ButtonAsLink = BaseButtonProps & {\n href: string;\n target?: string;\n rel?: string;\n type?: never;\n};\n\nexport type ButtonProps = ButtonAsButton | ButtonAsLink;\n\nfunction tierClass(tier: ButtonTier): string | undefined {\n if (tier === \"primary\") return classes[\"tierPrimary\"];\n if (tier === \"tertiary\") return classes[\"tierTertiary\"];\n return classes[\"tierSecondary\"];\n}\n\nfunction colorClass(color: ButtonColor): string | undefined {\n if (color === \"info\") return classes[\"colorInfo\"];\n if (color === \"success\") return classes[\"colorSuccess\"];\n if (color === \"warning\") return classes[\"colorWarning\"];\n if (color === \"danger\") return classes[\"colorDanger\"];\n return undefined;\n}\n\nfunction sizeClass(size: ButtonSize): string | undefined {\n if (size === \"small\") return classes[\"btnSmall\"];\n if (size === \"large\") return classes[\"btnLarge\"];\n return undefined;\n}\n\n// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: flat prop-to-class composition plus one anchor/button branch; splitting would just hide the mapping.\nexport function Button(props: ButtonProps): JSX.Element {\n const {\n id,\n tier = \"secondary\",\n color = \"default\",\n size = \"normal\",\n disabled = false,\n fullWidth = false,\n circle = false,\n className,\n title,\n icon,\n label,\n } = props;\n\n const parts = [classes[\"btn\"] ?? \"\"];\n const tc = tierClass(tier);\n if (tc) parts.push(tc);\n const cc = colorClass(color);\n if (cc) parts.push(cc);\n const sc = sizeClass(size);\n if (sc) parts.push(sc);\n if (circle) parts.push(classes[\"btnCircle\"] ?? \"\");\n if (fullWidth) parts.push(classes[\"btnFullWidth\"] ?? \"\");\n if (className) parts.push(className);\n const buttonClass = parts.filter(Boolean).join(\" \");\n\n const content = icon ? (\n <Layout inline columns=\"auto auto\" gap=\"0.5em\" alignItems=\"center\">\n {icon}\n <span>{label}</span>\n </Layout>\n ) : (\n label\n );\n\n const dataAction = props[\"data-action\"];\n const ariaLabel = props[\"aria-label\"];\n // Collect every `data-action-*` extra the consumer passed so the\n // event delegator can read them off the rendered element. Without\n // this, anything beyond `data-action` is silently dropped and\n // handlers fire with an empty `ctx.data`.\n const actionDataAttrs: Record<string, string> = {};\n for (const key of Object.keys(props)) {\n if (key.startsWith(\"data-action-\")) {\n const value = (props as unknown as Record<string, unknown>)[key];\n if (typeof value === \"string\") {\n actionDataAttrs[key] = value;\n }\n }\n }\n\n if (\"href\" in props && props.href) {\n return (\n <a\n id={id}\n class={buttonClass}\n title={title}\n href={disabled ? undefined : props.href}\n target={\"target\" in props ? props.target : undefined}\n rel={\"rel\" in props ? props.rel : undefined}\n aria-disabled={disabled}\n aria-label={ariaLabel}\n data-polly-ui\n data-polly-button={tier}\n data-action={dataAction}\n {...actionDataAttrs}\n >\n {content}\n </a>\n );\n }\n\n const resolvedType: \"button\" | \"submit\" | \"reset\" =\n \"type\" in props && props.type ? props.type : \"button\";\n\n return (\n <button\n id={id}\n class={buttonClass}\n title={title}\n type={resolvedType}\n disabled={disabled}\n aria-label={ariaLabel}\n data-polly-ui\n data-polly-button={tier}\n data-action={dataAction}\n {...actionDataAttrs}\n >\n {content}\n </button>\n );\n}\n",
10
- "/**\n * Surface — the one primitive that owns visual-surface concerns.\n *\n * Where Layout governs spatial concerns (grid, flex, gap, alignment),\n * Surface governs the chrome that sits on top of layout: padding,\n * background, border, radius, shadow, and the narrow positioning idioms\n * (sticky strips, fixed floating panes) that consumers reach for inline\n * styles to express. Every prop maps to a `--polly-*` token through a\n * local `--s-*` custom property, so consumers can retheme an individual\n * Surface by overriding the polly token in `style` without touching the\n * primitive's CSS.\n */\n\nimport { type ComponentChildren, createElement, type JSX } from \"preact\";\nimport classes from \"./Surface.module.css\";\n\nexport type SurfaceVariant =\n | \"plain\"\n | \"raised\"\n | \"sunken\"\n | \"bubble\"\n | \"chip\"\n | \"callout\"\n | \"floating\"\n | \"sticky-bar\";\n\ntype Background = \"raised\" | \"sunken\" | \"transparent\" | (string & {});\ntype Radius = \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\ntype Border = \"none\" | \"default\" | \"strong\";\ntype BorderWidth = \"none\" | \"default\" | \"medium\" | \"thick\";\ntype BorderSides =\n | \"all\"\n | \"block-start\"\n | \"block-end\"\n | \"inline-start\"\n | \"inline-end\"\n | \"block\"\n | \"inline\";\ntype Shadow = \"none\" | \"sm\" | \"md\" | \"lg\";\ntype Position = \"static\" | \"relative\" | \"sticky\" | \"fixed\";\n\n/**\n * Arbitrary `data-*` and `aria-*` attributes forwarded to the rendered element\n * so consumers (Modal, Toast, Card, etc.) can compose Surface without losing\n * DOM hooks or ARIA semantics.\n */\nexport type SurfaceDataAttrs = {\n [dataAttr: `data-${string}`]: string | number | boolean | undefined;\n [ariaAttr: `aria-${string}`]: string | number | boolean | undefined;\n};\n\nexport type SurfaceProps = SurfaceDataAttrs & {\n children?: ComponentChildren;\n\n /** Polymorphic element (div, section, article, aside, header, …). Defaults to 'div'. */\n as?: keyof JSX.IntrinsicElements;\n\n /** Named preset that resolves to a default bundle of the props below. Explicit props override. */\n variant?: SurfaceVariant;\n\n /** Any CSS length, typically `var(--polly-space-*)`. */\n padding?: string;\n\n /** Named values map to `var(--polly-surface-*)`; raw strings pass through for one-off colours. */\n background?: Background;\n\n radius?: Radius;\n border?: Border;\n borderWidth?: BorderWidth;\n borderSides?: BorderSides;\n shadow?: Shadow;\n\n /** display: inline-block — Surface flows inline with surrounding text. */\n inline?: boolean;\n width?: string;\n height?: string;\n minHeight?: string;\n maxInlineSize?: string;\n\n position?: Position;\n /** Any CSS inset value (`'0'`, `'auto auto 1rem 1rem'`, `'1rem'`, …). */\n inset?: string;\n zIndex?: number;\n\n className?: string;\n /**\n * Per-instance overrides. The supported retint path is to set polly tokens\n * here, e.g. `style={{ \"--polly-surface-raised\": \"#fef3c7\" }}`. Surface\n * merges this into its own computed style.\n */\n style?: JSX.CSSProperties;\n\n id?: string;\n role?: JSX.AriaRole;\n tabIndex?: number;\n \"aria-label\"?: string;\n \"aria-labelledby\"?: string;\n \"aria-describedby\"?: string;\n onClick?: JSX.MouseEventHandler<HTMLElement>;\n onKeyDown?: JSX.KeyboardEventHandler<HTMLElement>;\n};\n\ntype VariantDefaults = Partial<\n Pick<\n SurfaceProps,\n | \"padding\"\n | \"background\"\n | \"radius\"\n | \"border\"\n | \"borderWidth\"\n | \"borderSides\"\n | \"shadow\"\n | \"inline\"\n | \"width\"\n | \"height\"\n | \"minHeight\"\n | \"maxInlineSize\"\n | \"position\"\n | \"inset\"\n | \"zIndex\"\n >\n>;\n\nconst variantDefaults: Record<SurfaceVariant, VariantDefaults> = {\n plain: {},\n raised: {\n background: \"raised\",\n radius: \"md\",\n shadow: \"md\",\n border: \"default\",\n },\n sunken: {\n background: \"sunken\",\n radius: \"md\",\n border: \"default\",\n },\n bubble: {\n radius: \"md\",\n border: \"default\",\n padding: \"var(--polly-space-sm) var(--polly-space-md)\",\n },\n chip: {\n inline: true,\n radius: \"full\",\n padding: \"var(--polly-space-xs) var(--polly-space-sm)\",\n border: \"default\",\n },\n callout: {\n border: \"default\",\n radius: \"sm\",\n padding: \"var(--polly-space-sm) var(--polly-space-md)\",\n },\n floating: {\n position: \"fixed\",\n radius: \"lg\",\n shadow: \"lg\",\n border: \"default\",\n background: \"raised\",\n zIndex: 9999,\n },\n \"sticky-bar\": {\n position: \"sticky\",\n inset: \"0 0 auto 0\",\n borderSides: \"block-end\",\n border: \"default\",\n },\n};\n\nfunction bgValue(b: Background): string {\n if (b === \"raised\") return \"var(--polly-surface-raised)\";\n if (b === \"sunken\") return \"var(--polly-surface-sunken)\";\n if (b === \"transparent\") return \"transparent\";\n return b;\n}\n\nfunction radiusValue(r: Radius): string {\n if (r === \"none\") return \"0\";\n return `var(--polly-radius-${r})`;\n}\n\nfunction borderColorValue(b: Border): string {\n if (b === \"none\") return \"transparent\";\n if (b === \"strong\") return \"var(--polly-border-strong)\";\n return \"var(--polly-border)\";\n}\n\nfunction borderWidthValue(w: BorderWidth): string {\n if (w === \"none\") return \"0\";\n return `var(--polly-border-width-${w})`;\n}\n\nfunction shadowValue(s: Shadow): string {\n if (s === \"none\") return \"none\";\n return `var(--polly-shadow-${s})`;\n}\n\nfunction borderSidesClass(sides: BorderSides): string | undefined {\n if (sides === \"all\") return undefined;\n if (sides === \"block-start\") return classes[\"sides-block-start\"];\n if (sides === \"block-end\") return classes[\"sides-block-end\"];\n if (sides === \"inline-start\") return classes[\"sides-inline-start\"];\n if (sides === \"inline-end\") return classes[\"sides-inline-end\"];\n if (sides === \"block\") return classes[\"sides-block\"];\n if (sides === \"inline\") return classes[\"sides-inline\"];\n return undefined;\n}\n\n// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: prop-to-custom-property mapping; flat and linear, mirrors Layout.tsx.\nexport function Surface(props: SurfaceProps): JSX.Element {\n const { variant = \"plain\" } = props;\n const v = variantDefaults[variant];\n\n const as = props.as ?? \"div\";\n const padding = props.padding ?? v.padding;\n const background = props.background ?? v.background;\n const radius = props.radius ?? v.radius;\n const border = props.border ?? v.border;\n const borderSides = props.borderSides ?? v.borderSides ?? \"all\";\n const shadow = props.shadow ?? v.shadow;\n const inline = props.inline ?? v.inline;\n const width = props.width ?? v.width;\n const height = props.height ?? v.height;\n const minHeight = props.minHeight ?? v.minHeight;\n const maxInlineSize = props.maxInlineSize ?? v.maxInlineSize;\n const position = props.position ?? v.position;\n const inset = props.inset ?? v.inset;\n const zIndex = props.zIndex ?? v.zIndex;\n\n // A bordered surface needs a width. If the consumer asked for a border but\n // didn't pick a width, infer 'default' so the border renders.\n const borderWidth =\n props.borderWidth ?? v.borderWidth ?? (border && border !== \"none\" ? \"default\" : undefined);\n\n const style: Record<string, string> = {};\n if (padding) style[\"--s-p\"] = padding;\n if (background) style[\"--s-bg\"] = bgValue(background);\n if (radius) style[\"--s-radius\"] = radiusValue(radius);\n if (border) style[\"--s-border-color\"] = borderColorValue(border);\n if (borderWidth) style[\"--s-border-width\"] = borderWidthValue(borderWidth);\n if (shadow) style[\"--s-shadow\"] = shadowValue(shadow);\n if (width) style[\"--s-w\"] = width;\n if (height) style[\"--s-h\"] = height;\n if (minHeight) style[\"--s-mh\"] = minHeight;\n if (maxInlineSize) style[\"--s-mis\"] = maxInlineSize;\n if (position) style[\"--s-position\"] = position;\n if (inset) style[\"--s-inset\"] = inset;\n if (zIndex !== undefined) style[\"--s-z\"] = String(zIndex);\n\n if (props.style) {\n Object.assign(style, props.style as Record<string, string>);\n }\n\n const parts: (string | undefined)[] = [classes[\"surface\"]];\n if (inline) parts.push(classes[\"inline\"]);\n parts.push(borderSidesClass(borderSides));\n if (props.className) parts.push(props.className);\n const className = parts.filter(Boolean).join(\" \");\n\n const passthrough: Record<string, string | number | boolean> = {};\n for (const key of Object.keys(props)) {\n const isData = key.startsWith(\"data-\");\n const isAria = key.startsWith(\"aria-\");\n if (!isData && !isAria) continue;\n if (key === \"data-polly-surface\") continue;\n if (key === \"aria-label\" || key === \"aria-labelledby\" || key === \"aria-describedby\") continue;\n const value = (props as Record<string, unknown>)[key];\n if (value === undefined) continue;\n if (typeof value === \"string\" || typeof value === \"number\" || typeof value === \"boolean\") {\n passthrough[key] = value;\n }\n }\n\n return createElement(\n as,\n {\n id: props.id,\n className,\n style,\n onClick: props.onClick,\n onKeyDown: props.onKeyDown,\n role: props.role,\n tabIndex: props.tabIndex,\n \"aria-label\": props[\"aria-label\"],\n \"aria-labelledby\": props[\"aria-labelledby\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"data-polly-surface\": variant,\n ...passthrough,\n },\n props.children\n );\n}\n",
10
+ "/**\n * Surface — the one primitive that owns visual-surface concerns.\n *\n * Where Layout governs spatial concerns (grid, flex, gap, alignment),\n * Surface governs the chrome that sits on top of layout: padding,\n * background, border, radius, shadow, and the narrow positioning idioms\n * (sticky strips, fixed floating panes) that consumers reach for inline\n * styles to express. Every prop maps to a `--polly-*` token through a\n * local `--s-*` custom property, so consumers can retheme an individual\n * Surface by overriding the polly token in `style` without touching the\n * primitive's CSS.\n */\n\nimport { type ComponentChildren, createElement, type JSX } from \"preact\";\nimport classes from \"./Surface.module.css\";\n\nexport type SurfaceVariant =\n | \"plain\"\n | \"raised\"\n | \"sunken\"\n | \"bubble\"\n | \"chip\"\n | \"callout\"\n | \"floating\"\n | \"sticky-bar\";\n\ntype Background = \"raised\" | \"sunken\" | \"transparent\" | (string & {});\ntype Radius = \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\ntype Border = \"none\" | \"default\" | \"strong\";\ntype BorderWidth = \"none\" | \"default\" | \"medium\" | \"thick\";\ntype BorderSides =\n | \"all\"\n | \"block-start\"\n | \"block-end\"\n | \"inline-start\"\n | \"inline-end\"\n | \"block\"\n | \"inline\";\ntype Shadow = \"none\" | \"sm\" | \"md\" | \"lg\";\ntype Position = \"static\" | \"relative\" | \"sticky\" | \"fixed\";\n\n/**\n * Arbitrary `data-*` and `aria-*` attributes forwarded to the rendered element\n * so consumers (Modal, Toast, Card, etc.) can compose Surface without losing\n * DOM hooks or ARIA semantics.\n */\nexport type SurfaceDataAttrs = {\n [dataAttr: `data-${string}`]: string | number | boolean | undefined;\n [ariaAttr: `aria-${string}`]: string | number | boolean | undefined;\n};\n\nexport type SurfaceProps = SurfaceDataAttrs & {\n children?: ComponentChildren;\n\n /** Polymorphic element (div, section, article, aside, header, …). Defaults to 'div'. */\n as?: keyof JSX.IntrinsicElements;\n\n /** Named preset that resolves to a default bundle of the props below. Explicit props override. */\n variant?: SurfaceVariant;\n\n /** Any CSS length, typically `var(--polly-space-*)`. */\n padding?: string;\n\n /** Named values map to `var(--polly-surface-*)`; raw strings pass through for one-off colours. */\n background?: Background;\n\n radius?: Radius;\n border?: Border;\n borderWidth?: BorderWidth;\n borderSides?: BorderSides;\n shadow?: Shadow;\n\n /** display: inline-block — Surface flows inline with surrounding text. */\n inline?: boolean;\n width?: string;\n height?: string;\n minHeight?: string;\n maxInlineSize?: string;\n\n position?: Position;\n /** Any CSS inset value (`'0'`, `'auto auto 1rem 1rem'`, `'1rem'`, …). */\n inset?: string;\n zIndex?: number;\n\n className?: string;\n /**\n * Per-instance overrides. The supported retint path is to set polly tokens\n * here, e.g. `style={{ \"--polly-surface-raised\": \"#fef3c7\" }}`. Surface\n * merges this into its own computed style.\n */\n style?: JSX.CSSProperties;\n\n id?: string;\n role?: JSX.AriaRole;\n tabIndex?: number;\n \"aria-label\"?: string;\n \"aria-labelledby\"?: string;\n \"aria-describedby\"?: string;\n onClick?: JSX.MouseEventHandler<HTMLElement>;\n onKeyDown?: JSX.KeyboardEventHandler<HTMLElement>;\n};\n\ntype VariantDefaults = Partial<\n Pick<\n SurfaceProps,\n | \"padding\"\n | \"background\"\n | \"radius\"\n | \"border\"\n | \"borderWidth\"\n | \"borderSides\"\n | \"shadow\"\n | \"inline\"\n | \"width\"\n | \"height\"\n | \"minHeight\"\n | \"maxInlineSize\"\n | \"position\"\n | \"inset\"\n | \"zIndex\"\n >\n>;\n\nconst variantDefaults: Record<SurfaceVariant, VariantDefaults> = {\n plain: {},\n raised: {\n background: \"raised\",\n radius: \"md\",\n shadow: \"md\",\n border: \"default\",\n },\n sunken: {\n background: \"sunken\",\n radius: \"md\",\n border: \"default\",\n },\n bubble: {\n radius: \"md\",\n border: \"default\",\n padding: \"var(--polly-space-sm) var(--polly-space-md)\",\n },\n chip: {\n inline: true,\n radius: \"full\",\n padding: \"var(--polly-space-xs) var(--polly-space-sm)\",\n border: \"default\",\n },\n callout: {\n border: \"default\",\n radius: \"sm\",\n padding: \"var(--polly-space-sm) var(--polly-space-md)\",\n },\n floating: {\n position: \"fixed\",\n radius: \"lg\",\n shadow: \"lg\",\n border: \"default\",\n background: \"raised\",\n zIndex: 9999,\n },\n \"sticky-bar\": {\n position: \"sticky\",\n inset: \"0 0 auto 0\",\n borderSides: \"block-end\",\n border: \"default\",\n },\n};\n\nfunction bgValue(b: Background): string {\n if (b === \"raised\") return \"var(--polly-surface-raised)\";\n if (b === \"sunken\") return \"var(--polly-surface-sunken)\";\n if (b === \"transparent\") return \"transparent\";\n return b;\n}\n\nfunction radiusValue(r: Radius): string {\n if (r === \"none\") return \"0\";\n return `var(--polly-radius-${r})`;\n}\n\nfunction borderColorValue(b: Border): string {\n if (b === \"none\") return \"transparent\";\n if (b === \"strong\") return \"var(--polly-border-strong)\";\n return \"var(--polly-border)\";\n}\n\nfunction borderWidthValue(w: BorderWidth): string {\n if (w === \"none\") return \"0\";\n return `var(--polly-border-width-${w})`;\n}\n\nfunction shadowValue(s: Shadow): string {\n if (s === \"none\") return \"none\";\n return `var(--polly-shadow-${s})`;\n}\n\nfunction borderSidesClass(sides: BorderSides): string | undefined {\n if (sides === \"all\") return undefined;\n if (sides === \"block-start\") return classes[\"sides-block-start\"];\n if (sides === \"block-end\") return classes[\"sides-block-end\"];\n if (sides === \"inline-start\") return classes[\"sides-inline-start\"];\n if (sides === \"inline-end\") return classes[\"sides-inline-end\"];\n if (sides === \"block\") return classes[\"sides-block\"];\n if (sides === \"inline\") return classes[\"sides-inline\"];\n return undefined;\n}\n\n// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: prop-to-custom-property mapping; flat and linear, mirrors Layout.tsx.\nexport function Surface(props: SurfaceProps): JSX.Element {\n const { variant = \"plain\" } = props;\n const v = variantDefaults[variant];\n\n const as = props.as ?? \"div\";\n const padding = props.padding ?? v.padding;\n const background = props.background ?? v.background;\n const radius = props.radius ?? v.radius;\n const border = props.border ?? v.border;\n const borderSides = props.borderSides ?? v.borderSides ?? \"all\";\n const shadow = props.shadow ?? v.shadow;\n const inline = props.inline ?? v.inline;\n const width = props.width ?? v.width;\n const height = props.height ?? v.height;\n const minHeight = props.minHeight ?? v.minHeight;\n const maxInlineSize = props.maxInlineSize ?? v.maxInlineSize;\n const position = props.position ?? v.position;\n const inset = props.inset ?? v.inset;\n const zIndex = props.zIndex ?? v.zIndex;\n\n // A bordered surface needs a width. If the consumer asked for a border but\n // didn't pick a width, infer 'default' so the border renders.\n const borderWidth =\n props.borderWidth ?? v.borderWidth ?? (border && border !== \"none\" ? \"default\" : undefined);\n\n const style: Record<string, string> = {};\n if (padding) style[\"--s-p\"] = padding;\n if (background) style[\"--s-bg\"] = bgValue(background);\n if (radius) style[\"--s-radius\"] = radiusValue(radius);\n if (border) style[\"--s-border-color\"] = borderColorValue(border);\n if (borderWidth) style[\"--s-border-width\"] = borderWidthValue(borderWidth);\n if (shadow) style[\"--s-shadow\"] = shadowValue(shadow);\n if (width) style[\"--s-w\"] = width;\n if (height) style[\"--s-h\"] = height;\n if (minHeight) style[\"--s-mh\"] = minHeight;\n if (maxInlineSize) style[\"--s-mis\"] = maxInlineSize;\n if (position) style[\"--s-position\"] = position;\n if (inset) style[\"--s-inset\"] = inset;\n if (zIndex !== undefined) style[\"--s-z\"] = String(zIndex);\n\n if (props.style) {\n Object.assign(style, props.style as unknown as Record<string, string>);\n }\n\n const parts: (string | undefined)[] = [classes[\"surface\"]];\n if (inline) parts.push(classes[\"inline\"]);\n parts.push(borderSidesClass(borderSides));\n if (props.className) parts.push(props.className);\n const className = parts.filter(Boolean).join(\" \");\n\n const passthrough: Record<string, string | number | boolean> = {};\n for (const key of Object.keys(props)) {\n const isData = key.startsWith(\"data-\");\n const isAria = key.startsWith(\"aria-\");\n if (!isData && !isAria) continue;\n if (key === \"data-polly-surface\") continue;\n if (key === \"aria-label\" || key === \"aria-labelledby\" || key === \"aria-describedby\") continue;\n const value = (props as unknown as Record<string, unknown>)[key];\n if (value === undefined) continue;\n if (typeof value === \"string\" || typeof value === \"number\" || typeof value === \"boolean\") {\n passthrough[key] = value;\n }\n }\n\n return createElement(\n as,\n {\n id: props.id,\n className,\n style,\n onClick: props.onClick,\n onKeyDown: props.onKeyDown,\n role: props.role,\n tabIndex: props.tabIndex,\n \"aria-label\": props[\"aria-label\"],\n \"aria-labelledby\": props[\"aria-labelledby\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"data-polly-surface\": variant,\n ...passthrough,\n },\n props.children\n );\n}\n",
11
11
  "/**\n * Card — compound primitive that composes Surface for each named slot.\n *\n * Card is the first compound that is purely a re-skin of Surface — no\n * behavioural layer. Header, Body, and Footer are each Surfaces with\n * sensible defaults; Root is a raised Surface that wraps them. Every\n * slot accepts the full SurfaceProps, so consumers retint, override, or\n * reach for raw padding without reaching past the primitive.\n */\n\nimport type { JSX } from \"preact\";\nimport { Surface, type SurfaceProps } from \"./Surface.tsx\";\n\nexport type CardProps = SurfaceProps;\nexport type CardSlotProps = SurfaceProps;\n\nfunction Root(props: CardProps): JSX.Element {\n const { variant = \"raised\", radius = \"md\", ...rest } = props;\n return (\n <Surface variant={variant} radius={radius} data-polly-card {...rest}>\n {props.children}\n </Surface>\n );\n}\n\nfunction Header(props: CardSlotProps): JSX.Element {\n const {\n padding = \"var(--polly-space-md) var(--polly-space-lg)\",\n border = \"default\",\n borderSides = \"block-end\",\n ...rest\n } = props;\n return (\n <Surface\n padding={padding}\n border={border}\n borderSides={borderSides}\n data-polly-card-header\n {...rest}\n >\n {props.children}\n </Surface>\n );\n}\n\nfunction Body(props: CardSlotProps): JSX.Element {\n const { padding = \"var(--polly-space-lg)\", ...rest } = props;\n return (\n <Surface padding={padding} data-polly-card-body {...rest}>\n {props.children}\n </Surface>\n );\n}\n\nfunction Footer(props: CardSlotProps): JSX.Element {\n const {\n padding = \"var(--polly-space-md) var(--polly-space-lg)\",\n border = \"default\",\n borderSides = \"block-start\",\n ...rest\n } = props;\n return (\n <Surface\n padding={padding}\n border={border}\n borderSides={borderSides}\n data-polly-card-footer\n {...rest}\n >\n {props.children}\n </Surface>\n );\n}\n\nexport const Card = { Root, Header, Body, Footer };\n",
12
12
  "/**\n * Checkbox — native checkbox wrapped in a label.\n *\n * Pass a plain boolean for controlled use (caller listens elsewhere),\n * or a Signal<boolean> to have the primitive bind its own change\n * listener and mutate the signal directly. The label wraps the input\n * so clicks anywhere in the target area toggle it.\n */\n\nimport type { Signal } from \"@preact/signals\";\nimport type { JSX } from \"preact\";\nimport classes from \"./Checkbox.module.css\";\n\nexport type CheckboxProps = {\n checked?: boolean | Signal<boolean>;\n defaultChecked?: boolean;\n name?: string;\n disabled?: boolean;\n label?: string;\n className?: string;\n id?: string;\n};\n\nfunction isSignal(value: unknown): value is Signal<boolean> {\n return typeof value === \"object\" && value !== null && \"value\" in value && \"peek\" in value;\n}\n\nexport function Checkbox(props: CheckboxProps): JSX.Element {\n const { checked, defaultChecked, name, disabled = false, label, className, id } = props;\n\n const handleChange = (e: JSX.TargetedEvent<HTMLInputElement>): void => {\n if (isSignal(checked)) {\n checked.value = e.currentTarget.checked;\n }\n };\n\n const checkedValue = isSignal(checked) ? checked.value : checked;\n\n const parts = [classes[\"checkbox\"]];\n if (disabled) parts.push(classes[\"disabled\"] ?? \"\");\n if (className) parts.push(className);\n\n return (\n <label class={parts.filter(Boolean).join(\" \")} data-polly-ui data-polly-checkbox>\n <input\n id={id}\n type=\"checkbox\"\n class={classes[\"input\"]}\n checked={checkedValue}\n defaultChecked={defaultChecked}\n name={name}\n disabled={disabled}\n onChange={handleChange}\n />\n {label !== undefined && <span class={classes[\"label\"]}>{label}</span>}\n </label>\n );\n}\n",
13
13
  "/**\n * Collapsible — native <details>/<summary> wrapper.\n *\n * Uses the browser's built-in disclosure semantics so keyboard and\n * screen-reader behaviour come free. A ::before arrow rotates on open.\n * Colors, spacing, and motion come from tokens; `prefers-reduced-motion`\n * zeroes the rotation via the motion token.\n */\n\nimport type { ComponentChildren, JSX } from \"preact\";\nimport classes from \"./Collapsible.module.css\";\n\nexport type CollapsibleProps = {\n summary: string;\n children: ComponentChildren;\n defaultOpen?: boolean;\n className?: string;\n id?: string;\n};\n\nexport function Collapsible(props: CollapsibleProps): JSX.Element {\n const { summary, children, defaultOpen = false, className, id } = props;\n const parts = [classes[\"collapsible\"]];\n if (className) parts.push(className);\n return (\n <details\n id={id}\n class={parts.join(\" \")}\n open={defaultOpen}\n data-polly-ui\n data-polly-collapsible\n >\n <summary class={classes[\"summary\"]}>{summary}</summary>\n <div class={classes[\"content\"]}>{children}</div>\n </details>\n );\n}\n",
@@ -22,12 +22,12 @@
22
22
  "/**\n * Skeleton — shimmering placeholder for loading states.\n *\n * Three variants: text (full-width, 1em tall), rect (full-width, 100px\n * tall), circle (40x40). A CSS gradient animates left-to-right over\n * 1.5s. `prefers-reduced-motion` zeroes the animation via the token\n * system. Consumers size via width/height props (px numbers or CSS\n * strings); default sizing comes from the variant.\n */\n\nimport type { JSX } from \"preact\";\nimport classes from \"./Skeleton.module.css\";\n\nexport type SkeletonVariant = \"text\" | \"rect\" | \"circle\";\n\nexport type SkeletonProps = {\n variant?: SkeletonVariant;\n width?: string | number;\n height?: string | number;\n className?: string;\n};\n\nfunction resolveSize(value: string | number | undefined): string | undefined {\n if (value === undefined) return undefined;\n if (typeof value === \"number\") return `${value}px`;\n return value;\n}\n\nfunction variantClass(variant: SkeletonVariant): string | undefined {\n if (variant === \"circle\") return classes[\"circle\"];\n if (variant === \"rect\") return classes[\"rect\"];\n return classes[\"text\"];\n}\n\nexport function Skeleton(props: SkeletonProps): JSX.Element {\n const { variant = \"text\", width, height, className } = props;\n\n const style: Record<string, string> = {};\n const w = resolveSize(width);\n const h = resolveSize(height);\n if (w !== undefined) style[\"width\"] = w;\n if (h !== undefined) style[\"height\"] = h;\n\n const parts: string[] = [];\n const base = classes[\"skeleton\"];\n if (base) parts.push(base);\n const vClass = variantClass(variant);\n if (vClass) parts.push(vClass);\n if (className) parts.push(className);\n\n return (\n <span\n class={parts.join(\" \")}\n style={style}\n data-polly-ui\n data-polly-skeleton={variant}\n aria-hidden=\"true\"\n />\n );\n}\n",
23
23
  "/**\n * Tabs — horizontal nav with active-tab accent.\n *\n * Each button carries `data-action` (the consumer-provided action name)\n * and `data-action-id={tab.id}` so the event delegator resolves the\n * activated tab. The active tab gets `aria-current=\"page\"` and a\n * bottom-border accent. The nav scrolls horizontally with a hidden\n * scrollbar for overflow. Internal arrangement uses <Layout>.\n */\n\nimport type { JSX } from \"preact\";\nimport { Layout } from \"./Layout.tsx\";\nimport classes from \"./Tabs.module.css\";\n\nexport type Tab = { id: string; label: string; disabled?: boolean };\n\nexport type TabsProps = {\n tabs: Tab[];\n activeTab: string;\n action?: string;\n className?: string;\n id?: string;\n \"aria-label\"?: string;\n};\n\nexport function Tabs(props: TabsProps): JSX.Element {\n const { tabs, activeTab, action, className, id } = props;\n const parts = [classes[\"tabs\"] ?? \"\"];\n if (className) parts.push(className);\n return (\n <nav\n id={id}\n class={parts.filter(Boolean).join(\" \")}\n aria-label={props[\"aria-label\"]}\n data-polly-ui\n data-polly-tabs\n >\n <Layout columns={`repeat(${tabs.length}, auto)`} gap=\"0\" alignItems=\"end\">\n {tabs.map((tab) => {\n const isActive = activeTab === tab.id;\n const tabClass = isActive ? `${classes[\"tab\"]} ${classes[\"active\"]}` : classes[\"tab\"];\n return (\n <button\n key={tab.id}\n type=\"button\"\n class={tabClass}\n disabled={tab.disabled}\n aria-current={isActive ? \"page\" : undefined}\n data-action={action}\n data-action-id={tab.id}\n >\n {tab.label}\n </button>\n );\n })}\n </Layout>\n </nav>\n );\n}\n",
24
24
  "/**\n * Shared input a11y wiring.\n *\n * Returns a common set of attributes that TextInput, ActionInput, and\n * any consumer-built input can splat onto its native element. Keeps\n * aria-* and data-polly-* names consistent across the family.\n */\n\nexport type InputA11yProps = {\n name?: string;\n id?: string;\n required?: boolean;\n invalid?: boolean;\n describedBy?: string;\n placeholder?: string;\n disabled?: boolean;\n readOnly?: boolean;\n};\n\nexport function buildInputA11y(props: InputA11yProps) {\n const attrs: Record<string, unknown> = {\n \"data-polly-ui\": true,\n \"data-polly-input\": true,\n \"aria-invalid\": props.invalid ? \"true\" : undefined,\n \"aria-required\": props.required ? \"true\" : undefined,\n \"aria-describedby\": props.describedBy,\n name: props.name,\n id: props.id,\n placeholder: props.placeholder,\n disabled: props.disabled,\n readOnly: props.readOnly,\n };\n if (props.invalid) attrs[\"data-state\"] = \"invalid\";\n return attrs;\n}\n",
25
- "/**\n * TextInput — passive, signal-friendly native input wrapper.\n *\n * Designed to live inside <ActionForm>. Pass a plain string for\n * uncontrolled mode (FormData-on-submit picks up the value) or a\n * Signal<string> for controlled mode. Either way, a11y attributes are\n * wired by the shared input-base, the stable `[data-polly-input]` hook\n * is applied for styling, and `invalid` flips `aria-invalid` and\n * `data-state=\"invalid\"` for consumer selectors.\n */\n\nimport type { Signal } from \"@preact/signals\";\nimport type { JSX } from \"preact\";\nimport { buildInputA11y } from \"./internal/input-base.ts\";\nimport classes from \"./TextInput.module.css\";\n\ntype Variant = \"single\" | \"multi\";\n\nexport type TextInputProps = {\n name: string;\n /** Signal<string> for controlled, string for uncontrolled default. */\n value?: Signal<string> | string;\n variant?: Variant;\n placeholder?: string;\n invalid?: boolean;\n required?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n id?: string;\n describedBy?: string;\n rows?: number;\n autoFocus?: boolean;\n className?: string;\n};\n\nfunction isSignal<T>(v: Signal<T> | T | undefined): v is Signal<T> {\n return typeof v === \"object\" && v !== null && \"value\" in v && \"peek\" in (v as object);\n}\n\nexport function TextInput(props: TextInputProps): JSX.Element {\n const variant = props.variant ?? \"single\";\n const a11y = buildInputA11y({\n name: props.name,\n id: props.id,\n required: props.required,\n invalid: props.invalid,\n describedBy: props.describedBy,\n placeholder: props.placeholder,\n disabled: props.disabled,\n readOnly: props.readOnly,\n });\n\n const controlled = isSignal(props.value);\n const stringValue = controlled ? (props.value as Signal<string>).value : undefined;\n const defaultValue = controlled ? undefined : ((props.value as string | undefined) ?? \"\");\n\n const className = props.className ? `${classes[\"input\"]} ${props.className}` : classes[\"input\"];\n\n if (variant === \"multi\") {\n return (\n <textarea\n {...(a11y as unknown as JSX.HTMLAttributes<HTMLTextAreaElement>)}\n class={className}\n data-polly-input-variant=\"multi\"\n rows={props.rows}\n // biome-ignore lint/a11y/noAutofocus: opt-in prop — caller requests autofocus explicitly (e.g. form opens to this field).\n autoFocus={props.autoFocus}\n value={stringValue}\n defaultValue={defaultValue}\n onInput={(e) => {\n if (controlled) {\n (props.value as Signal<string>).value = e.currentTarget.value;\n }\n }}\n />\n );\n }\n\n return (\n <input\n {...(a11y as unknown as JSX.HTMLAttributes<HTMLInputElement>)}\n type=\"text\"\n class={className}\n data-polly-input-variant=\"single\"\n // biome-ignore lint/a11y/noAutofocus: opt-in prop — caller requests autofocus explicitly (e.g. form opens to this field).\n autoFocus={props.autoFocus}\n value={stringValue}\n defaultValue={defaultValue}\n onInput={(e) => {\n if (controlled) {\n (props.value as Signal<string>).value = e.currentTarget.value;\n }\n }}\n />\n );\n}\n",
25
+ "/**\n * TextInput — passive, signal-friendly native input wrapper.\n *\n * Designed to live inside <ActionForm>. Pass a plain string for\n * uncontrolled mode (FormData-on-submit picks up the value) or a\n * Signal<string> for controlled mode. Either way, a11y attributes are\n * wired by the shared input-base, the stable `[data-polly-input]` hook\n * is applied for styling, and `invalid` flips `aria-invalid` and\n * `data-state=\"invalid\"` for consumer selectors.\n */\n\nimport type { Signal } from \"@preact/signals\";\nimport type { JSX } from \"preact\";\nimport { buildInputA11y } from \"./internal/input-base.ts\";\nimport classes from \"./TextInput.module.css\";\n\ntype Variant = \"single\" | \"multi\";\n\nexport type TextInputProps = {\n name: string;\n /** Signal<string> for controlled, string for uncontrolled default. */\n value?: Signal<string> | string;\n variant?: Variant;\n placeholder?: string;\n invalid?: boolean;\n required?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n id?: string;\n describedBy?: string;\n rows?: number;\n autoFocus?: boolean;\n className?: string;\n};\n\nfunction isSignal<T>(v: Signal<T> | T | undefined): v is Signal<T> {\n return typeof v === \"object\" && v !== null && \"value\" in v && \"peek\" in (v as unknown as object);\n}\n\nexport function TextInput(props: TextInputProps): JSX.Element {\n const variant = props.variant ?? \"single\";\n const a11y = buildInputA11y({\n name: props.name,\n id: props.id,\n required: props.required,\n invalid: props.invalid,\n describedBy: props.describedBy,\n placeholder: props.placeholder,\n disabled: props.disabled,\n readOnly: props.readOnly,\n });\n\n const controlled = isSignal(props.value);\n const stringValue = controlled ? (props.value as unknown as Signal<string>).value : undefined;\n const defaultValue = controlled\n ? undefined\n : ((props.value as unknown as string | undefined) ?? \"\");\n\n const className = props.className ? `${classes[\"input\"]} ${props.className}` : classes[\"input\"];\n\n if (variant === \"multi\") {\n return (\n <textarea\n {...(a11y as unknown as JSX.HTMLAttributes<HTMLTextAreaElement>)}\n class={className}\n data-polly-input-variant=\"multi\"\n rows={props.rows}\n // biome-ignore lint/a11y/noAutofocus: opt-in prop — caller requests autofocus explicitly (e.g. form opens to this field).\n autoFocus={props.autoFocus}\n value={stringValue}\n defaultValue={defaultValue}\n onInput={(e) => {\n if (controlled) {\n (props.value as unknown as Signal<string>).value = e.currentTarget.value;\n }\n }}\n />\n );\n }\n\n return (\n <input\n {...(a11y as unknown as JSX.HTMLAttributes<HTMLInputElement>)}\n type=\"text\"\n class={className}\n data-polly-input-variant=\"single\"\n // biome-ignore lint/a11y/noAutofocus: opt-in prop — caller requests autofocus explicitly (e.g. form opens to this field).\n autoFocus={props.autoFocus}\n value={stringValue}\n defaultValue={defaultValue}\n onInput={(e) => {\n if (controlled) {\n (props.value as unknown as Signal<string>).value = e.currentTarget.value;\n }\n }}\n />\n );\n}\n",
26
26
  "/**\n * Toast — consumer-facing surface for the global errorState.\n *\n * Renders every entry of the `errorState` signal into a viewport mounted\n * inside OverlayRoot. `aria-live` is polite for info/warning and\n * assertive for error severity. Each item auto-dismisses after\n * `autoDismissMs` unless the user hovers the viewport. Clicking a\n * toast or its close button removes that single entry.\n */\n\nimport type { JSX } from \"preact\";\nimport { createPortal } from \"preact/compat\";\nimport { useEffect, useState } from \"preact/hooks\";\nimport { clearError, type ErrorEntry, errorState } from \"../actions/error.ts\";\nimport { getOverlayRootNode } from \"./OverlayRoot.tsx\";\nimport { Surface } from \"./Surface.tsx\";\nimport classes from \"./Toast.module.css\";\n\nexport type ToastViewportProps = {\n autoDismissMs?: number;\n className?: string;\n};\n\nfunction Viewport(props: ToastViewportProps): JSX.Element | null {\n const autoDismissMs = props.autoDismissMs ?? 5000;\n const [portalNode, setPortalNode] = useState<HTMLElement | null>(null);\n const [paused, setPaused] = useState(false);\n const entries = errorState.value;\n\n useEffect(() => {\n setPortalNode(getOverlayRootNode());\n }, []);\n\n useEffect(() => {\n if (paused || entries.length === 0) return;\n const head = entries[0];\n if (!head) return;\n const timer = window.setTimeout(() => {\n clearError(head.id);\n }, autoDismissMs);\n return () => window.clearTimeout(timer);\n }, [paused, entries, autoDismissMs]);\n\n if (!portalNode) return null;\n\n const content = (\n // biome-ignore lint/a11y/noStaticElementInteractions: viewport pauses auto-dismiss on hover; it is a container, not an interactive control itself.\n <div\n class={`${classes[\"viewport\"]} ${props.className ?? \"\"}`.trim()}\n data-polly-ui\n data-polly-toast-viewport\n onMouseEnter={() => setPaused(true)}\n onMouseLeave={() => setPaused(false)}\n >\n {entries.map((entry) => (\n <ToastItem key={entry.id} entry={entry} />\n ))}\n </div>\n );\n return createPortal(content, portalNode);\n}\n\nfunction ToastItem({ entry }: { entry: ErrorEntry }): JSX.Element {\n const liveness = entry.severity === \"error\" ? \"assertive\" : \"polite\";\n return (\n <Surface\n variant=\"raised\"\n padding=\"var(--polly-space-md) var(--polly-space-lg)\"\n className={classes[\"item\"]}\n data-polly-ui\n data-polly-toast-item\n data-severity={entry.severity}\n role={entry.severity === \"error\" ? \"alert\" : \"status\"}\n aria-live={liveness}\n >\n <span class={classes[\"message\"]}>{entry.message}</span>\n <button\n type=\"button\"\n class={classes[\"close\"]}\n data-polly-ui\n data-polly-interactive\n data-polly-toast-close\n onClick={() => clearError(entry.id)}\n aria-label=\"Dismiss\"\n >\n ×\n </button>\n </Surface>\n );\n}\n\nexport const Toast = { Viewport };\n",
27
27
  "/**\n * Global error surface for action handlers.\n *\n * Actions that fail set the errorState signal via `submitError`; a `<Toast>`\n * component consumes that signal and renders a dismissable message. Handlers\n * that catch expected failures (validation, quota) may call `setError` directly.\n */\n\nimport { signal } from \"@preact/signals\";\n\nexport type ErrorSeverity = \"error\" | \"warning\" | \"info\";\n\nexport type ErrorEntry = {\n id: string;\n message: string;\n severity: ErrorSeverity;\n action?: string;\n createdAt: number;\n};\n\nexport const errorState = signal<ErrorEntry[]>([]);\n\nlet nextId = 0;\nfunction allocId(): string {\n nextId += 1;\n return `polly-err-${nextId}`;\n}\n\nexport function setError(\n message: string,\n opts: { severity?: ErrorSeverity; action?: string } = {}\n): string {\n const entry: ErrorEntry = {\n id: allocId(),\n message,\n severity: opts.severity ?? \"error\",\n action: opts.action,\n createdAt: Date.now(),\n };\n errorState.value = [...errorState.value, entry];\n return entry.id;\n}\n\nexport function clearError(id?: string): void {\n if (id === undefined) {\n errorState.value = [];\n return;\n }\n errorState.value = errorState.value.filter((e) => e.id !== id);\n}\n\n/**\n * Convenience wrapper for an action's catch block.\n * Logs the action name + error and surfaces a user-visible message.\n */\nexport function submitError(action: string, err: unknown): string {\n const message = err instanceof Error ? err.message : String(err);\n return setError(message, { action, severity: \"error\" });\n}\n",
28
28
  "/**\n * Toggle — switch-role checkbox.\n *\n * A visually-hidden <input role=\"switch\"> paired with a styled track\n * and thumb inside a <label>. Passive: the caller drives `checked` and\n * handles state changes via the action registry (wrap the Toggle in a\n * <label data-action=\"...\"> or bind a parent form's submit). a11y\n * attributes come from the native input; the label wraps so clicks\n * anywhere in the control toggle the input.\n */\n\nimport type { JSX } from \"preact\";\nimport classes from \"./Toggle.module.css\";\n\nexport type ToggleProps = {\n checked?: boolean;\n disabled?: boolean;\n label?: string;\n name?: string;\n className?: string;\n id?: string;\n};\n\nexport function Toggle(props: ToggleProps): JSX.Element {\n const { checked = false, disabled = false, label, name, className, id } = props;\n const parts = [classes[\"toggle\"]];\n if (disabled) parts.push(classes[\"disabled\"]);\n if (className) parts.push(className);\n return (\n <label class={parts.join(\" \")} data-polly-ui data-polly-toggle>\n <input\n id={id}\n type=\"checkbox\"\n role=\"switch\"\n name={name}\n aria-checked={checked}\n class={classes[\"input\"]}\n checked={checked}\n disabled={disabled}\n />\n <span class={checked ? `${classes[\"track\"]} ${classes[\"trackChecked\"]}` : classes[\"track\"]}>\n <span\n class={checked ? `${classes[\"thumb\"]} ${classes[\"thumbChecked\"]}` : classes[\"thumb\"]}\n />\n </span>\n {label !== undefined && <span class={classes[\"label\"]}>{label}</span>}\n </label>\n );\n}\n"
29
29
  ],
30
- "mappings": "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",
30
+ "mappings": "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",
31
31
  "debugId": "9CE0D265222997F864756E2164756E21",
32
32
  "names": []
33
33
  }