Pricing

Checkbox changelog

v1.3.0 (2026-10-23)

  • Labels use the shared single-line preset while preserving their original snippet. Constrained labels can shrink; complex multiline content can explicitly opt out. Shared gap resolution retains at least 4 CSS px for zero or font/gap scaling and preserves larger preferred gaps, control geometry and transparent inset proportions.

  • Update a group array only when membership changes. Fixes repeated writes and an effect update loop on empty-array initialization; indeterminate clearing and one callback per change are preserved.

  • 2026-09-21: Unified the usage guide, source property table, and Site / AI reading entry points. Documentation only; component behavior is unchanged.

  • Checkbox-Docs.2026-05-25 Archived the historical changelog at the top of the source file. Subsequent changes go in this document’s changelog; the source header retains only responsibilities, current key architecture, and the documentation path.

v1.2.28 (2026-08-20)

  • CB-Corner.1 The Checkbox shell continues to share Button’s .snowui-rounded-rectangle / superellipse(1.1) iOS continuous corners. The inner hover overlay explicitly inherits border-radius and corner-shape, so the base border, selected background, and hover surface share one outline.

v1.2.27 (2026-08-20)

  • CB-Hover.4 By user decision, raised the unchecked-border hover overlay from 4% to 20% black. The base border remains 20% black, making the combined appearance roughly 36% black; fill is unchanged. This value and the separate overlay implementation are recorded as a scoped StyleSpec §2.4.3 exception.

v1.2.26 (2026-08-20)

  • CB-Hover.3 Hover now fades in a separate overlay rather than interpolating a translucent inset box-shadow directly. The unchecked state adds only a 4% primary-color border layer; the checked state covers the full surface with 20% Static White, eliminating border flicker from becoming transparent and then recovering.

v1.2.25 (2026-08-20)

  • CB-Hover.2 Unchecked hover keeps the fill unchanged and layers 4% primary color over the base 20% black border to darken it under hover rules. The checked state still uses the same color for fill and border.

v1.2.24 (2026-08-20)

  • CB-Hover.1 Hover color covers both visual fill and inset border: both use a 4% primary-color mix when unchecked, and primary color plus 20% Static White when checked or indeterminate, avoiding separate border and fill colors.

v1.2.23 (2026-08-20)

  • CB-Motion.4 The checkmark and indeterminate line keep Static White throughout their exit transition, preventing a black afterimage caused by inherited color reverting immediately after deselection.

  • CB-Test.1 Added the indeterminate line state to the basic test example.

v1.2.22 (2026-08-20)

  • CB-Visual.2 Changed checked / indeterminate shapes to the 28×28 baseline proportions from Workshop 14763:16992. The check path uses exact design coordinates; the line is 12/28 of the outer frame width. Both scale with the visual.

  • CB-Motion.3 Deselecting no longer reverses the checkmark draw animation. The mark fades out with the selected background using normal state timing, and the path resets without animation only after it is fully invisible.

v1.2.21 (2026-08-20)

  • CB-Size.1 Clarified that size is the outer visual dimension including the inset border, and fixed this boundary with border-box.

  • CB-Motion.2 Standardized ordinary state transitions at 150ms ease-out. The checked mark draws as a separate path, slower on entry (200ms ease-out) and faster on exit (120ms ease-in).

v1.2.20 (2026-08-20)

  • CB-Visual.1 Changed checked / indeterminate shapes to the 32×32, 2px round-cap stroke paths from Workshop 14756:16934, scaling with the component.

  • CB-Motion.1 Changed the checked mark to a drawn path; reduced-motion mode commits the final path immediately. Selected background, border, and color are unchanged.

  • CB-Scale.1 The unchecked border scales proportionally from 2px at size 32px using size × 0.0625; the public border-width override still takes precedence.

v1.2.19 (2026-06-23)

  • Added onCheckedChange and ariaLabel for layouts without a visible label, for reuse by Table’s built-in selection column.

v1.2.18 (2026-04-28)

Changes

  • CB-Layout.1 Registered the component as an inline-shell layout under LayoutProtocol.md, documented the visual + label layout boundary, and explicitly defined the default --snowui-checkbox-gap.

v1.2.17 (2026-04-02)

Changes

  • CB-Bridge.3 Added component-level variable bridges for label gap, font, and line height so composition hosts can control Checkbox icon-to-text spacing and label styling together.

v1.2.16 (2026-03-06)

Changes

  • CB-Bridge.2 Checkmark / indeterminate icon visibility transitions now consume Frame control timing bridge variables; the component no longer owns independent default duration or easing.

v1.2.15 (2026-02-18)

Fixes

  • CB-Fix.13 Fixed hover flicker using the earlier stable strategy: removed visual color/border transitions, so unchecked hover no longer changes the border.

v1.2.14 (2026-02-18)

Fixes

  • CB-Fix.12 Further fixed hover flicker by removing the visual background-image overlay chain and mixing colors directly through background-color.

v1.2.13 (2026-02-18)

Fixes

  • CB-Fix.11 Fixed hover flicker by changing state and hover selectors from :has(...) to the sibling chain (input + visual).

v1.2.12 (2026-02-18)

Changes

  • CB-Adj.5 Aligned animation duration and easing with Radio/Switch (0.2s and cubic-bezier(0.4, 0, 0.2, 1)) for visual and icon transitions.

v1.2.11 (2026-02-18)

Changes

  • CB-Adj.4 The active hover overlay now follows the icon’s white Token (--static-white-100), matching the rule that overlay color equals icon/text color.

v1.2.10 (2026-02-18)

Changes

  • CB-Adj.3 Changed the active checkmark’s white Token to --static-white-100 for both icon color and path fill.

v1.2.9 (2026-02-18)

Changes

  • CB-Adj.1 Changed the default color chain to primary: without a color class, the active background uses --primary, matching Filled Button behavior.

  • CB-Adj.2 Fixed the active checkmark to white with an explicit path fill.

v1.2.8 (2026-02-18)

Fixes

  • CB-Fix.10 Fixed missing hover feedback in the active state: checked/indeterminate hover directly uses a mixed white 20% + primary background so the change is visible.

v1.2.7 (2026-02-18)

Fixes

  • CB-Fix.8 Fixed active icon color by setting checked/indeterminate icons explicitly to --white-100.

  • CB-Fix.9 Fixed missing hover in the active state by switching checked/indeterminate hover overlay to the white color chain for greater visibility.

v1.2.6 (2026-02-18)

Fixes

  • CB-Fix.6 Further fixed hover flicker by removing visual-layer color transitions that jittered during interpolation.

  • CB-Fix.7 Decoupled icon color from the primary chain. The active icon now always uses --white-100, preventing currentColor from feeding back into the primary chain.

v1.2.5 (2026-02-18)

Fixes

  • CB-Fix.4 Fixed disappearing flicker on hover entry and exit: the overlay is now a fixed gradient whose opacity changes through a variable, avoiding a background-image swap on hover.

  • CB-Fix.5 Restored active-state contrast by returning checked/indeterminate icon color to --white-100.

v1.2.4 (2026-02-18)

Fixes

  • CB-Fix.3 Fixed hover flicker with a persistent 0% overlay baseline on the visual; hover changes only overlay strength. Transitioned properties were narrowed to avoid repaint jitter.

v1.2.3 (2026-02-18)

Changes

  • CB-Color.1 Unified component color under the currentColor chain so class="text-*" can override the entire component.

  • CB-Color.2 Replaced gray-scale layers with same-color alpha layers (20%/40%), giving active and inactive states one color system.

v1.2.2 (2026-02-18)

Fixes

  • CB-Fix.2 Removed the component’s cursor: pointer. Disabled cursor behavior now follows the shared Frame Surface + .snowui-disabled chain (default arrow when disabled).

v1.2.1 (2026-02-18)

Changes

  • CB-Map.1 Aligned the size scale with Icon: 16/20/24/28/32/40/48/80, mapped to --size-4/5/6/7/8/10/12/20.

  • CB-Bridge.1 Added override bridges for radius and border-width: --snowui-checkbox-radius-override / --snowui-checkbox-border-width-override.

  • CB-Token.1 Rewrote the size chain with Tokens (standard steps use --size-* directly; nonstandard values fall back to calc(var(--size-4) * n / 16)).

v1.2.0 (2026-02-03)

Fixes

  • CB-Fix.1 Completed explicit Frame capability-switch forwarding and aligned internal variable names with project conventions.



The following content is for AI readers and links code to documentation.