@seed-design/react-checkbox 0.0.1-rc.0 → 0.0.2

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.
package/lib/index.mjs DELETED
@@ -1,227 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __export = (target, all) => {
3
- for (var name in all)
4
- __defProp(target, name, { get: all[name], enumerable: true });
5
- };
6
-
7
- // src/Checkbox.tsx
8
- import { mergeProps } from "@seed-design/dom-utils";
9
- import { Primitive } from "@seed-design/react-primitive";
10
- import { forwardRef } from "react";
11
-
12
- // src/useCheckbox.ts
13
- import { useControllableState } from "@radix-ui/react-use-controllable-state";
14
- import { useEffect, useRef, useState } from "react";
15
- import {
16
- dataAttr,
17
- elementProps,
18
- inputProps,
19
- labelProps,
20
- visuallyHidden
21
- } from "@seed-design/dom-utils";
22
- function useCheckboxState(props) {
23
- var _a;
24
- const [isChecked = false, setIsChecked] = useControllableState({
25
- prop: props.checked,
26
- defaultProp: props.defaultChecked,
27
- onChange: props.onCheckedChange
28
- });
29
- const [isHovered, setIsHovered] = useState(false);
30
- const [isActive, setIsActive] = useState(false);
31
- const [isFocused, setIsFocused] = useState(false);
32
- const [isFocusVisible, setIsFocusVisible] = useState(false);
33
- const inputRef = useRef(null);
34
- const initialCheckedRef = useRef(isChecked);
35
- useEffect(() => {
36
- var _a2;
37
- const form = (_a2 = inputRef.current) == null ? void 0 : _a2.form;
38
- if (form) {
39
- const reset = () => setIsChecked(initialCheckedRef.current);
40
- form.addEventListener("reset", reset);
41
- return () => form.removeEventListener("reset", reset);
42
- }
43
- }, [setIsChecked]);
44
- useEffect(() => {
45
- var _a2;
46
- if (!inputRef.current) return;
47
- inputRef.current.indeterminate = (_a2 = props.indeterminate) != null ? _a2 : false;
48
- }, [props.indeterminate]);
49
- return {
50
- refs: { input: inputRef },
51
- isIndeterminate: (_a = props.indeterminate) != null ? _a : false,
52
- isChecked,
53
- setIsChecked,
54
- isHovered,
55
- setIsHovered,
56
- isActive,
57
- setIsActive,
58
- isFocused,
59
- setIsFocused,
60
- isFocusVisible,
61
- setIsFocusVisible
62
- };
63
- }
64
- function useCheckbox(props) {
65
- const {
66
- refs,
67
- isIndeterminate,
68
- setIsChecked,
69
- isChecked,
70
- setIsHovered,
71
- isHovered,
72
- setIsActive,
73
- isActive,
74
- setIsFocused,
75
- isFocused,
76
- setIsFocusVisible,
77
- isFocusVisible
78
- } = useCheckboxState(props);
79
- const stateProps = elementProps({
80
- "data-checked": dataAttr(isChecked),
81
- "data-indeterminate": dataAttr(isIndeterminate),
82
- "data-hover": dataAttr(isHovered),
83
- "data-active": dataAttr(isActive),
84
- "data-focus": dataAttr(isFocused),
85
- "data-focus-visible": dataAttr(isFocusVisible),
86
- "data-disabled": dataAttr(props.disabled),
87
- "data-invalid": dataAttr(props.invalid),
88
- "data-required": dataAttr(props.required)
89
- });
90
- const isControlled = props.checked != null;
91
- return {
92
- indeterminate: isIndeterminate,
93
- checked: isChecked,
94
- setChecked: setIsChecked,
95
- focused: isFocused,
96
- setFocused: setIsFocused,
97
- focusVisible: isFocusVisible,
98
- setFocusVisible: setIsFocusVisible,
99
- refs,
100
- stateProps,
101
- rootProps: labelProps({
102
- ...stateProps,
103
- onPointerMove() {
104
- setIsHovered(true);
105
- },
106
- onPointerDown() {
107
- setIsActive(true);
108
- },
109
- onPointerUp() {
110
- setIsActive(false);
111
- },
112
- onPointerLeave() {
113
- setIsHovered(false);
114
- setIsActive(false);
115
- }
116
- }),
117
- controlProps: elementProps({
118
- ...stateProps,
119
- "aria-hidden": true
120
- }),
121
- hiddenInputProps: inputProps({
122
- type: "checkbox",
123
- role: "checkbox",
124
- checked: isControlled ? isChecked : void 0,
125
- defaultChecked: !isControlled ? isChecked : void 0,
126
- disabled: props.disabled,
127
- required: props.required,
128
- "aria-invalid": props.invalid,
129
- style: visuallyHidden,
130
- ...stateProps,
131
- onChange(event) {
132
- setIsChecked(event.currentTarget.checked);
133
- setIsFocusVisible(event.target.matches(":focus-visible"));
134
- },
135
- onFocus(event) {
136
- setIsFocused(true);
137
- setIsFocusVisible(event.target.matches(":focus-visible"));
138
- },
139
- onBlur() {
140
- setIsFocused(false);
141
- setIsFocusVisible(false);
142
- },
143
- onKeyDown(event) {
144
- if (event.key === " ") {
145
- setIsActive(true);
146
- }
147
- },
148
- onKeyUp(event) {
149
- if (event.key === " ") {
150
- setIsActive(false);
151
- }
152
- }
153
- })
154
- };
155
- }
156
-
157
- // src/useCheckboxContext.tsx
158
- import { createContext, useContext } from "react";
159
- var CheckboxContext = createContext(null);
160
- var CheckboxProvider = CheckboxContext.Provider;
161
- function useCheckboxContext({
162
- strict = true
163
- } = {}) {
164
- const context = useContext(CheckboxContext);
165
- if (!context && strict) {
166
- throw new Error("useCheckboxContext must be used within a Checkbox");
167
- }
168
- return context;
169
- }
170
-
171
- // src/Checkbox.tsx
172
- import { composeRefs } from "@radix-ui/react-compose-refs";
173
- import { jsx } from "react/jsx-runtime";
174
- var CheckboxRoot = forwardRef((props, ref) => {
175
- const {
176
- checked,
177
- defaultChecked,
178
- onCheckedChange,
179
- indeterminate,
180
- disabled,
181
- invalid,
182
- required,
183
- ...otherProps
184
- } = props;
185
- const api = useCheckbox({
186
- checked,
187
- defaultChecked,
188
- onCheckedChange,
189
- indeterminate,
190
- disabled,
191
- invalid,
192
- required
193
- });
194
- const mergedProps = mergeProps(api.rootProps, otherProps);
195
- return /* @__PURE__ */ jsx(CheckboxProvider, { value: api, children: /* @__PURE__ */ jsx(Primitive.label, { ref, ...mergedProps }) });
196
- });
197
- CheckboxRoot.displayName = "CheckboxRoot";
198
- var CheckboxControl = forwardRef((props, ref) => {
199
- const { controlProps } = useCheckboxContext();
200
- const mergedProps = mergeProps(controlProps, props);
201
- return /* @__PURE__ */ jsx(Primitive.div, { ref, ...mergedProps });
202
- });
203
- CheckboxControl.displayName = "CheckboxControl";
204
- var CheckboxHiddenInput = forwardRef(
205
- (props, ref) => {
206
- const { refs, hiddenInputProps } = useCheckboxContext();
207
- const mergedProps = mergeProps(hiddenInputProps, props);
208
- return /* @__PURE__ */ jsx(Primitive.input, { ref: composeRefs(refs.input, ref), ...mergedProps });
209
- }
210
- );
211
- CheckboxHiddenInput.displayName = "CheckboxHiddenInput";
212
-
213
- // src/Checkbox.namespace.ts
214
- var Checkbox_namespace_exports = {};
215
- __export(Checkbox_namespace_exports, {
216
- Control: () => CheckboxControl,
217
- HiddenInput: () => CheckboxHiddenInput,
218
- Root: () => CheckboxRoot
219
- });
220
- export {
221
- Checkbox_namespace_exports as Checkbox,
222
- CheckboxControl,
223
- CheckboxHiddenInput,
224
- CheckboxRoot,
225
- useCheckboxContext
226
- };
227
- //# sourceMappingURL=index.mjs.map
package/lib/index.mjs.map DELETED
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/Checkbox.tsx", "../src/useCheckbox.ts", "../src/useCheckboxContext.tsx", "../src/Checkbox.namespace.ts"],
4
- "sourcesContent": ["import { mergeProps } from \"@seed-design/dom-utils\";\nimport { Primitive, type PrimitiveProps } from \"@seed-design/react-primitive\";\nimport type * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { useCheckbox, type UseCheckboxProps } from \"./useCheckbox\";\nimport { CheckboxProvider, useCheckboxContext } from \"./useCheckboxContext\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\n\nexport interface CheckboxRootProps\n extends UseCheckboxProps,\n PrimitiveProps,\n React.HTMLAttributes<HTMLLabelElement> {}\n\nexport const CheckboxRoot = forwardRef<HTMLLabelElement, CheckboxRootProps>((props, ref) => {\n const {\n checked,\n defaultChecked,\n onCheckedChange,\n indeterminate,\n disabled,\n invalid,\n required,\n ...otherProps\n } = props;\n\n const api = useCheckbox({\n checked,\n defaultChecked,\n onCheckedChange,\n indeterminate,\n disabled,\n invalid,\n required,\n });\n const mergedProps = mergeProps(api.rootProps, otherProps);\n\n return (\n <CheckboxProvider value={api}>\n <Primitive.label ref={ref} {...mergedProps} />\n </CheckboxProvider>\n );\n});\nCheckboxRoot.displayName = \"CheckboxRoot\";\n\nexport interface CheckboxControlProps\n extends PrimitiveProps,\n React.HTMLAttributes<HTMLDivElement> {}\n\nexport const CheckboxControl = forwardRef<HTMLDivElement, CheckboxControlProps>((props, ref) => {\n const { controlProps } = useCheckboxContext();\n const mergedProps = mergeProps(controlProps, props);\n return <Primitive.div ref={ref} {...mergedProps} />;\n});\nCheckboxControl.displayName = \"CheckboxControl\";\n\nexport interface CheckboxHiddenInputProps\n extends PrimitiveProps,\n React.InputHTMLAttributes<HTMLInputElement> {}\n\nexport const CheckboxHiddenInput = forwardRef<HTMLInputElement, CheckboxHiddenInputProps>(\n (props, ref) => {\n const { refs, hiddenInputProps } = useCheckboxContext();\n const mergedProps = mergeProps(hiddenInputProps, props);\n return <Primitive.input ref={composeRefs(refs.input, ref)} {...mergedProps} />;\n },\n);\nCheckboxHiddenInput.displayName = \"CheckboxHiddenInput\";\n", "import { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useEffect, useRef, useState } from \"react\";\n\nimport {\n dataAttr,\n elementProps,\n inputProps,\n labelProps,\n visuallyHidden,\n} from \"@seed-design/dom-utils\";\n\ninterface UseCheckboxStateProps {\n checked?: boolean;\n\n defaultChecked?: boolean;\n\n onCheckedChange?: (checked: boolean) => void;\n\n indeterminate?: boolean;\n}\n\nfunction useCheckboxState(props: UseCheckboxStateProps) {\n const [isChecked = false, setIsChecked] = useControllableState({\n prop: props.checked,\n defaultProp: props.defaultChecked,\n onChange: props.onCheckedChange,\n });\n const [isHovered, setIsHovered] = useState(false);\n const [isActive, setIsActive] = useState(false);\n const [isFocused, setIsFocused] = useState(false);\n const [isFocusVisible, setIsFocusVisible] = useState(false);\n\n const inputRef = useRef<HTMLInputElement>(null);\n const initialCheckedRef = useRef(isChecked);\n\n useEffect(() => {\n const form = inputRef.current?.form;\n if (form) {\n const reset = () => setIsChecked(initialCheckedRef.current);\n form.addEventListener(\"reset\", reset);\n return () => form.removeEventListener(\"reset\", reset);\n }\n }, [setIsChecked]);\n\n useEffect(() => {\n if (!inputRef.current) return;\n inputRef.current.indeterminate = props.indeterminate ?? false;\n }, [props.indeterminate]);\n\n return {\n refs: { input: inputRef },\n isIndeterminate: props.indeterminate ?? false,\n isChecked,\n setIsChecked,\n isHovered,\n setIsHovered,\n isActive,\n setIsActive,\n isFocused,\n setIsFocused,\n isFocusVisible,\n setIsFocusVisible,\n };\n}\n\nexport interface UseCheckboxProps extends UseCheckboxStateProps {\n disabled?: boolean;\n\n invalid?: boolean;\n\n required?: boolean;\n}\n\nexport type UseCheckboxReturn = ReturnType<typeof useCheckbox>;\n\nexport function useCheckbox(props: UseCheckboxProps) {\n const {\n refs,\n isIndeterminate,\n setIsChecked,\n isChecked,\n setIsHovered,\n isHovered,\n setIsActive,\n isActive,\n setIsFocused,\n isFocused,\n setIsFocusVisible,\n isFocusVisible,\n } = useCheckboxState(props);\n\n const stateProps = elementProps({\n \"data-checked\": dataAttr(isChecked),\n \"data-indeterminate\": dataAttr(isIndeterminate),\n \"data-hover\": dataAttr(isHovered),\n \"data-active\": dataAttr(isActive),\n \"data-focus\": dataAttr(isFocused),\n \"data-focus-visible\": dataAttr(isFocusVisible),\n \"data-disabled\": dataAttr(props.disabled),\n \"data-invalid\": dataAttr(props.invalid),\n \"data-required\": dataAttr(props.required),\n });\n\n const isControlled = props.checked != null;\n\n return {\n indeterminate: isIndeterminate,\n checked: isChecked,\n setChecked: setIsChecked,\n focused: isFocused,\n setFocused: setIsFocused,\n focusVisible: isFocusVisible,\n setFocusVisible: setIsFocusVisible,\n\n refs,\n stateProps,\n rootProps: labelProps({\n ...stateProps,\n onPointerMove() {\n setIsHovered(true);\n },\n onPointerDown() {\n setIsActive(true);\n },\n onPointerUp() {\n setIsActive(false);\n },\n onPointerLeave() {\n setIsHovered(false);\n setIsActive(false);\n },\n }),\n\n controlProps: elementProps({\n ...stateProps,\n \"aria-hidden\": true,\n }),\n\n hiddenInputProps: inputProps({\n type: \"checkbox\",\n role: \"checkbox\",\n checked: isControlled ? isChecked : undefined,\n defaultChecked: !isControlled ? isChecked : undefined,\n disabled: props.disabled,\n required: props.required,\n \"aria-invalid\": props.invalid,\n style: visuallyHidden,\n ...stateProps,\n onChange(event) {\n setIsChecked(event.currentTarget.checked);\n setIsFocusVisible(event.target.matches(\":focus-visible\"));\n },\n onFocus(event) {\n setIsFocused(true);\n setIsFocusVisible(event.target.matches(\":focus-visible\"));\n },\n onBlur() {\n setIsFocused(false);\n setIsFocusVisible(false);\n },\n onKeyDown(event) {\n if (event.key === \" \") {\n setIsActive(true);\n }\n },\n onKeyUp(event) {\n if (event.key === \" \") {\n setIsActive(false);\n }\n },\n }),\n };\n}\n", "import { createContext, useContext } from \"react\";\nimport type { UseCheckboxReturn } from \"./useCheckbox\";\n\nexport interface UseCheckboxContext extends UseCheckboxReturn {}\n\nconst CheckboxContext = createContext<UseCheckboxContext | null>(null);\n\nexport const CheckboxProvider = CheckboxContext.Provider;\n\nexport function useCheckboxContext<T extends boolean | undefined = true>({\n strict = true,\n}: { strict?: T } = {}): T extends false ? UseCheckboxContext | null : UseCheckboxContext {\n const context = useContext(CheckboxContext);\n if (!context && strict) {\n throw new Error(\"useCheckboxContext must be used within a Checkbox\");\n }\n\n return context as UseCheckboxContext;\n}\n", "export {\n CheckboxRoot as Root,\n CheckboxControl as Control,\n CheckboxHiddenInput as HiddenInput,\n type CheckboxRootProps as RootProps,\n type CheckboxControlProps as ControlProps,\n type CheckboxHiddenInputProps as HiddenInputProps,\n} from \"./Checkbox\";\n"],
5
- "mappings": "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",
6
- "names": ["_a"]
7
- }