Skip to content

Commit faf1613

Browse files
fix: checkbox should not set data-invalid when invalid is false (#2322)
* fix: checkbox should not set `data-invalid` when invalid is false * docs: update --------- Co-authored-by: Segun Adebayo <[email protected]>
1 parent db63d0b commit faf1613

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

.changeset/odd-students-hug.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@zag-js/checkbox": patch
3+
---
4+
5+
Checkbox should not set `data-invalid` when invalid is false

packages/machines/checkbox/src/checkbox.connect.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ export function connect<T extends PropTypes>(
1313
const { send, context, prop, computed, scope } = service
1414
const disabled = prop("disabled")
1515
const readOnly = prop("readOnly")
16+
const invalid = prop("invalid")
1617

1718
const focused = !disabled && context.get("focused")
1819
const focusVisible = !disabled && context.get("focusVisible")
@@ -28,7 +29,7 @@ export function connect<T extends PropTypes>(
2829
"data-hover": dataAttr(context.get("hovered")),
2930
"data-disabled": dataAttr(disabled),
3031
"data-state": indeterminate ? "indeterminate" : checked ? "checked" : "unchecked",
31-
"data-invalid": prop("invalid"),
32+
"data-invalid": dataAttr(invalid),
3233
}
3334

3435
return {
@@ -106,7 +107,7 @@ export function connect<T extends PropTypes>(
106107
defaultChecked: checked,
107108
disabled: disabled,
108109
"aria-labelledby": dom.getLabelId(scope),
109-
"aria-invalid": prop("invalid"),
110+
"aria-invalid": invalid,
110111
name: prop("name"),
111112
form: prop("form"),
112113
value: prop("value"),

0 commit comments

Comments
 (0)