x-ui-design 0.2.52 → 0.2.53

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.
@@ -1,8 +1,8 @@
1
- import React, { Dispatch, SetStateAction } from 'react';
1
+ import React, { Dispatch, MouseEvent, SetStateAction } from 'react';
2
2
  import './style.css';
3
3
  declare const Checkbox: React.ForwardRefExoticComponent<import("../../types").DefaultProps & {
4
4
  disabled?: boolean;
5
- onChange?: (e: React.MouseEvent<HTMLInputElement> & import("../../types").TargetProps) => void;
5
+ onChange?: (e: MouseEvent<HTMLInputElement> & import("../../types").TargetProps) => void;
6
6
  onClick?: React.MouseEventHandler<HTMLElement>;
7
7
  onMouseEnter?: React.MouseEventHandler<HTMLElement>;
8
8
  onMouseLeave?: React.MouseEventHandler<HTMLElement>;
package/dist/index.esm.js CHANGED
@@ -128,6 +128,7 @@ const Checkbox = /*#__PURE__*/forwardRef(({
128
128
  style,
129
129
  disabled = false,
130
130
  onClick,
131
+ onChange,
131
132
  onMouseEnter,
132
133
  onMouseLeave,
133
134
  onKeyPress,
@@ -140,16 +141,25 @@ const Checkbox = /*#__PURE__*/forwardRef(({
140
141
  type = 'checkbox',
141
142
  internalChecked,
142
143
  required = false,
143
- noStyle
144
+ noStyle,
145
+ setInternalChecked
144
146
  }, ref) => {
147
+ const handleClick = e => {
148
+ e.stopPropagation();
149
+ if (disabled) {
150
+ return;
151
+ }
152
+ setInternalChecked?.(!internalChecked);
153
+ e.target.value = !internalChecked;
154
+ onClick?.(e);
155
+ onChange?.(e);
156
+ };
145
157
  return /*#__PURE__*/React.createElement("div", {
146
158
  className: `${prefixCls}-wrapper`
147
159
  }, /*#__PURE__*/React.createElement("div", {
148
160
  ref: ref,
149
161
  style: style,
150
- onClick: e => {
151
- onClick?.(e);
152
- },
162
+ onClick: e => handleClick(e),
153
163
  className: clsx([prefixCls, className, {
154
164
  noStyle: noStyle,
155
165
  [`${prefixCls}-disabled`]: disabled,
@@ -183,24 +193,11 @@ Checkbox.displayName = "Checkbox";
183
193
  const CheckboxClient = /*#__PURE__*/forwardRef(({
184
194
  defaultChecked = false,
185
195
  checked,
186
- disabled = false,
187
- onChange,
188
- onClick,
189
196
  value = false,
190
197
  ...props
191
198
  }, ref) => {
192
199
  const isChecked = checked !== undefined ? checked : defaultChecked || value;
193
200
  const [internalChecked, setInternalChecked] = useState(isChecked);
194
- const handleClick = e => {
195
- e.stopPropagation();
196
- if (disabled) {
197
- return;
198
- }
199
- setInternalChecked(!internalChecked);
200
- e.target.value = !internalChecked;
201
- onClick?.(e);
202
- onChange?.(e);
203
- };
204
201
  useEffect(() => {
205
202
  if (checked !== undefined) {
206
203
  setInternalChecked(checked);
@@ -209,9 +206,6 @@ const CheckboxClient = /*#__PURE__*/forwardRef(({
209
206
  return /*#__PURE__*/React.createElement(Checkbox, _extends({
210
207
  ref: ref
211
208
  }, props, {
212
- onClick: e => {
213
- handleClick(e);
214
- },
215
209
  internalChecked: internalChecked,
216
210
  setInternalChecked: setInternalChecked
217
211
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../lib/helpers/index.ts","../lib/utils/index.ts","../lib/components/Button/Button.tsx","../lib/components/Checkbox/Checkbox.tsx","../lib/components/Checkbox/Checkbox.client.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import { RuleType } from '../types';\n\nexport const parseValue = (value: RuleType): RuleType => {\n if (value === 'true') {\n return true;\n }\n\n if (value === 'false') {\n return false;\n }\n\n if (!isNaN(Number(value))) {\n return Number(value);\n }\n\n return value;\n};\n\nexport function createArray(length: number): number[] {\n return Array.from({ length }, (_, index) => index);\n}\n\nexport function clsx(...args: RuleType[]): string {\n return args\n .flatMap(arg => {\n if (!arg) {\n return [];\n }\n\n if (typeof arg === 'string') {\n return [arg];\n }\n\n if (typeof arg === 'number') {\n return [String(arg)];\n }\n\n if (Array.isArray(arg)) {\n return clsx(...arg).split(' ');\n }\n\n if (typeof arg === 'object') {\n return Object.entries(arg)\n .filter(([, value]) => Boolean(value))\n .map(([key]) => key);\n }\n\n return [];\n })\n .filter(Boolean)\n .join(' ');\n}\n","export const prefixClsForm = 'xUi-form';\nexport const prefixClsFormItem = 'xUi-form-item';\nexport const prefixClsEmpty = 'xUi-empty';\nexport const prefixClsInput = 'xUi-input';\nexport const prefixClsSelect = 'xUi-select';\nexport const prefixClsCheckbox = 'xUi-checkbox';\nexport const prefixClsRadio = 'xUi-radio';\nexport const prefixClsTextArea = 'xUi-textarea';\nexport const prefixClsUpload = 'xUi-upload';\nexport const prefixClsDatePicker = 'xUi-datepicker';\nexport const prefixClsRangePicker = 'xUi-rangepicker';\nexport const prefixClsTimePicker = 'xUi-timepicker';\nexport const prefixClsButton = 'xUi-button';\nexport const prefixClsSkeleton = 'xUi-skeleton';\n","import React, { ReactElement, ReactNode } from 'react';\nimport { clsx } from '../../helpers';\nimport { ButtonProps } from '../../types/button';\nimport { prefixClsButton } from '../../utils';\nimport './style.css';\n\nconst Button = ({\n type = 'default',\n variant = 'solid',\n color = 'default',\n shape = 'default',\n size = 'middle',\n htmlType = 'button',\n className,\n rootClassName,\n classNames: customClassNames = {},\n styles = {},\n prefixCls = prefixClsButton,\n iconPosition = 'start',\n disabled = false,\n ghost = false,\n danger = false,\n block = false,\n children,\n href,\n iconNode,\n isLoading = false,\n ...restProps\n}: ButtonProps & {\n iconNode?: ReactNode;\n isLoading?: boolean;\n}): ReactElement => {\n const classes = clsx(\n prefixCls,\n rootClassName,\n `${prefixCls}-${type}`,\n `${prefixCls}-${variant}`,\n `${prefixCls}-${color}`,\n `${prefixCls}-${shape}`,\n `${prefixCls}-size-${size}`,\n {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-ghost`]: ghost,\n [`${prefixCls}-danger`]: danger,\n [`${prefixCls}-loading`]: isLoading,\n [`${prefixCls}-disabled`]: disabled\n },\n className\n );\n\n const mergedDisabled = disabled || isLoading;\n\n const content = (\n <>\n {iconNode && iconPosition === 'start' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n <span className={`${prefixCls}-content`}>{children}</span>\n {iconNode && iconPosition === 'end' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n </>\n );\n\n if (href) {\n return (\n <a\n className={classes}\n href={mergedDisabled ? undefined : href}\n aria-disabled={mergedDisabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type={htmlType}\n className={classes}\n disabled={mergedDisabled}\n {...restProps}\n >\n {content}\n </button>\n );\n};\n\nexport default Button;\n","import { prefixClsCheckbox } from '@/utils';\nimport { CheckboxProps } from '../../types/checkbox';\nimport React, { Dispatch, ForwardedRef, forwardRef, ReactElement, SetStateAction } from 'react';\nimport { clsx } from '../../helpers';\nimport './style.css';\n\nconst Checkbox = forwardRef<HTMLDivElement, CheckboxProps & {\n internalChecked: boolean,\n setInternalChecked?: Dispatch<SetStateAction<boolean>>\n}>(\n (\n {\n prefixCls = prefixClsCheckbox,\n className = '',\n style,\n disabled = false,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n internalChecked,\n required = false,\n noStyle\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n return <div className={`${prefixCls}-wrapper`}>\n <div\n ref={ref}\n style={style}\n onClick={(e) => {\n onClick?.(e)\n }}\n className={clsx([\n prefixCls,\n className,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-checked`]: internalChecked\n }\n ])}\n >\n <input\n id={id}\n type={type}\n name={name}\n disabled={disabled}\n tabIndex={tabIndex}\n required={required}\n autoFocus={autoFocus}\n onKeyDown={onKeyDown}\n onKeyPress={onKeyPress}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n\n <span className={`${prefixCls}-box`}>\n <span\n className={`${prefixCls}-check`}\n style={{ opacity: Number(internalChecked) }}\n />\n </span>\n </div>\n\n {children && <span className={`${prefixCls}-label`}>{children}</span>}\n </div>\n})\n\nCheckbox.displayName = \"Checkbox\";\n\nexport default Checkbox;\n","\"use client\"\n\nimport React, {\n ForwardedRef,\n forwardRef,\n MouseEvent,\n ReactElement,\n useEffect,\n useState\n} from 'react';\nimport { SyntheticBaseEvent } from '../../types';\nimport { CheckboxProps } from '../../types/checkbox';\nimport Checkbox from './Checkbox';\n\nconst CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(\n (\n {\n defaultChecked = false,\n checked,\n disabled = false,\n onChange,\n onClick,\n value = false,\n ...props\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const isChecked = checked !== undefined ? checked : defaultChecked || value;\n const [internalChecked, setInternalChecked] = useState(isChecked);\n\n const handleClick = (\n e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent\n ) => {\n e.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n setInternalChecked(!internalChecked);\n e.target.value = !internalChecked;\n\n onClick?.(e);\n onChange?.(e);\n };\n\n useEffect(() => {\n if (checked !== undefined) {\n setInternalChecked(checked);\n }\n }, [checked]);\n\n return (\n <Checkbox\n ref={ref}\n {...props}\n onClick={(e) => {\n handleClick(e as MouseEvent<HTMLInputElement> & SyntheticBaseEvent)\n }}\n internalChecked={internalChecked}\n setInternalChecked={setInternalChecked}\n />\n )\n }\n);\n\nCheckboxClient.displayName = 'CheckboxClient';\n\nexport default Checkbox;\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","clsx","args","flatMap","arg","String","Array","isArray","split","Object","entries","filter","value","Boolean","map","key","join","prefixClsCheckbox","prefixClsButton","Button","variant","color","shape","size","htmlType","className","rootClassName","classNames","customClassNames","styles","prefixCls","iconPosition","disabled","ghost","danger","block","children","href","iconNode","isLoading","restProps","classes","mergedDisabled","content","React","Fragment","icon","undefined","_extends","Checkbox","forwardRef","onClick","onMouseEnter","onMouseLeave","onKeyPress","onKeyDown","tabIndex","name","id","autoFocus","internalChecked","required","noStyle","e","opacity","Number","displayName","CheckboxClient","defaultChecked","checked","onChange","props","isChecked","setInternalChecked","useState","handleClick","stopPropagation","target","useEffect"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.esm.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../lib/helpers/index.ts","../lib/utils/index.ts","../lib/components/Button/Button.tsx","../lib/components/Checkbox/Checkbox.tsx","../lib/components/Checkbox/Checkbox.client.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import { RuleType } from '../types';\n\nexport const parseValue = (value: RuleType): RuleType => {\n if (value === 'true') {\n return true;\n }\n\n if (value === 'false') {\n return false;\n }\n\n if (!isNaN(Number(value))) {\n return Number(value);\n }\n\n return value;\n};\n\nexport function createArray(length: number): number[] {\n return Array.from({ length }, (_, index) => index);\n}\n\nexport function clsx(...args: RuleType[]): string {\n return args\n .flatMap(arg => {\n if (!arg) {\n return [];\n }\n\n if (typeof arg === 'string') {\n return [arg];\n }\n\n if (typeof arg === 'number') {\n return [String(arg)];\n }\n\n if (Array.isArray(arg)) {\n return clsx(...arg).split(' ');\n }\n\n if (typeof arg === 'object') {\n return Object.entries(arg)\n .filter(([, value]) => Boolean(value))\n .map(([key]) => key);\n }\n\n return [];\n })\n .filter(Boolean)\n .join(' ');\n}\n","export const prefixClsForm = 'xUi-form';\nexport const prefixClsFormItem = 'xUi-form-item';\nexport const prefixClsEmpty = 'xUi-empty';\nexport const prefixClsInput = 'xUi-input';\nexport const prefixClsSelect = 'xUi-select';\nexport const prefixClsCheckbox = 'xUi-checkbox';\nexport const prefixClsRadio = 'xUi-radio';\nexport const prefixClsTextArea = 'xUi-textarea';\nexport const prefixClsUpload = 'xUi-upload';\nexport const prefixClsDatePicker = 'xUi-datepicker';\nexport const prefixClsRangePicker = 'xUi-rangepicker';\nexport const prefixClsTimePicker = 'xUi-timepicker';\nexport const prefixClsButton = 'xUi-button';\nexport const prefixClsSkeleton = 'xUi-skeleton';\n","import React, { ReactElement, ReactNode } from 'react';\nimport { clsx } from '../../helpers';\nimport { ButtonProps } from '../../types/button';\nimport { prefixClsButton } from '../../utils';\nimport './style.css';\n\nconst Button = ({\n type = 'default',\n variant = 'solid',\n color = 'default',\n shape = 'default',\n size = 'middle',\n htmlType = 'button',\n className,\n rootClassName,\n classNames: customClassNames = {},\n styles = {},\n prefixCls = prefixClsButton,\n iconPosition = 'start',\n disabled = false,\n ghost = false,\n danger = false,\n block = false,\n children,\n href,\n iconNode,\n isLoading = false,\n ...restProps\n}: ButtonProps & {\n iconNode?: ReactNode;\n isLoading?: boolean;\n}): ReactElement => {\n const classes = clsx(\n prefixCls,\n rootClassName,\n `${prefixCls}-${type}`,\n `${prefixCls}-${variant}`,\n `${prefixCls}-${color}`,\n `${prefixCls}-${shape}`,\n `${prefixCls}-size-${size}`,\n {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-ghost`]: ghost,\n [`${prefixCls}-danger`]: danger,\n [`${prefixCls}-loading`]: isLoading,\n [`${prefixCls}-disabled`]: disabled\n },\n className\n );\n\n const mergedDisabled = disabled || isLoading;\n\n const content = (\n <>\n {iconNode && iconPosition === 'start' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n <span className={`${prefixCls}-content`}>{children}</span>\n {iconNode && iconPosition === 'end' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n </>\n );\n\n if (href) {\n return (\n <a\n className={classes}\n href={mergedDisabled ? undefined : href}\n aria-disabled={mergedDisabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type={htmlType}\n className={classes}\n disabled={mergedDisabled}\n {...restProps}\n >\n {content}\n </button>\n );\n};\n\nexport default Button;\n","import { prefixClsCheckbox } from '@/utils';\nimport { CheckboxProps } from '../../types/checkbox';\nimport React, { Dispatch, ForwardedRef, forwardRef, MouseEvent, ReactElement, SetStateAction } from 'react';\nimport { clsx } from '../../helpers';\nimport { SyntheticBaseEvent } from '../../types';\n\nimport './style.css';\n\nconst Checkbox = forwardRef<HTMLDivElement, CheckboxProps & {\n internalChecked: boolean,\n setInternalChecked?: Dispatch<SetStateAction<boolean>>\n}>(\n (\n {\n prefixCls = prefixClsCheckbox,\n className = '',\n style,\n disabled = false,\n onClick,\n onChange,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n internalChecked,\n required = false,\n noStyle,\n setInternalChecked\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const handleClick = (\n e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent\n ) => {\n e.stopPropagation();\n \n if (disabled) {\n return;\n }\n \n setInternalChecked?.(!internalChecked);\n e.target.value = !internalChecked;\n \n onClick?.(e);\n onChange?.(e);\n };\n\n return (\n <div className={`${prefixCls}-wrapper`}>\n <div\n ref={ref}\n style={style}\n onClick={(e) => handleClick(e as MouseEvent<HTMLInputElement> & SyntheticBaseEvent)}\n className={clsx([\n prefixCls,\n className,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-checked`]: internalChecked\n }\n ])}\n >\n <input\n id={id}\n type={type}\n name={name}\n disabled={disabled}\n tabIndex={tabIndex}\n required={required}\n autoFocus={autoFocus}\n onKeyDown={onKeyDown}\n onKeyPress={onKeyPress}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n\n <span className={`${prefixCls}-box`}>\n <span\n className={`${prefixCls}-check`}\n style={{ opacity: Number(internalChecked) }}\n />\n </span>\n </div>\n\n {children && <span className={`${prefixCls}-label`}>{children}</span>}\n </div>\n )\n})\n\nCheckbox.displayName = \"Checkbox\";\n\nexport default Checkbox;\n","\"use client\"\n\nimport React, {\n ForwardedRef,\n forwardRef,\n ReactElement,\n useEffect,\n useState\n} from 'react';\nimport { CheckboxProps } from '../../types/checkbox';\nimport Checkbox from './Checkbox';\n\nconst CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(\n (\n {\n defaultChecked = false,\n checked,\n value = false,\n ...props\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const isChecked = checked !== undefined ? checked : defaultChecked || value;\n const [internalChecked, setInternalChecked] = useState(isChecked);\n\n useEffect(() => {\n if (checked !== undefined) {\n setInternalChecked(checked);\n }\n }, [checked]);\n\n return (\n <Checkbox\n ref={ref}\n {...props}\n internalChecked={internalChecked}\n setInternalChecked={setInternalChecked}\n />\n )\n }\n);\n\nCheckboxClient.displayName = 'CheckboxClient';\n\nexport default Checkbox;\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","clsx","args","flatMap","arg","String","Array","isArray","split","Object","entries","filter","value","Boolean","map","key","join","prefixClsCheckbox","prefixClsButton","Button","variant","color","shape","size","htmlType","className","rootClassName","classNames","customClassNames","styles","prefixCls","iconPosition","disabled","ghost","danger","block","children","href","iconNode","isLoading","restProps","classes","mergedDisabled","content","React","Fragment","icon","undefined","_extends","Checkbox","forwardRef","onClick","onChange","onMouseEnter","onMouseLeave","onKeyPress","onKeyDown","tabIndex","name","id","autoFocus","internalChecked","required","noStyle","setInternalChecked","handleClick","e","stopPropagation","target","opacity","Number","displayName","CheckboxClient","defaultChecked","checked","props","isChecked","useState","useEffect"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index.js CHANGED
@@ -130,6 +130,7 @@ const Checkbox = /*#__PURE__*/React.forwardRef(({
130
130
  style,
131
131
  disabled = false,
132
132
  onClick,
133
+ onChange,
133
134
  onMouseEnter,
134
135
  onMouseLeave,
135
136
  onKeyPress,
@@ -142,16 +143,25 @@ const Checkbox = /*#__PURE__*/React.forwardRef(({
142
143
  type = 'checkbox',
143
144
  internalChecked,
144
145
  required = false,
145
- noStyle
146
+ noStyle,
147
+ setInternalChecked
146
148
  }, ref) => {
149
+ const handleClick = e => {
150
+ e.stopPropagation();
151
+ if (disabled) {
152
+ return;
153
+ }
154
+ setInternalChecked?.(!internalChecked);
155
+ e.target.value = !internalChecked;
156
+ onClick?.(e);
157
+ onChange?.(e);
158
+ };
147
159
  return /*#__PURE__*/React.createElement("div", {
148
160
  className: `${prefixCls}-wrapper`
149
161
  }, /*#__PURE__*/React.createElement("div", {
150
162
  ref: ref,
151
163
  style: style,
152
- onClick: e => {
153
- onClick?.(e);
154
- },
164
+ onClick: e => handleClick(e),
155
165
  className: clsx([prefixCls, className, {
156
166
  noStyle: noStyle,
157
167
  [`${prefixCls}-disabled`]: disabled,
@@ -185,24 +195,11 @@ Checkbox.displayName = "Checkbox";
185
195
  const CheckboxClient = /*#__PURE__*/React.forwardRef(({
186
196
  defaultChecked = false,
187
197
  checked,
188
- disabled = false,
189
- onChange,
190
- onClick,
191
198
  value = false,
192
199
  ...props
193
200
  }, ref) => {
194
201
  const isChecked = checked !== undefined ? checked : defaultChecked || value;
195
202
  const [internalChecked, setInternalChecked] = React.useState(isChecked);
196
- const handleClick = e => {
197
- e.stopPropagation();
198
- if (disabled) {
199
- return;
200
- }
201
- setInternalChecked(!internalChecked);
202
- e.target.value = !internalChecked;
203
- onClick?.(e);
204
- onChange?.(e);
205
- };
206
203
  React.useEffect(() => {
207
204
  if (checked !== undefined) {
208
205
  setInternalChecked(checked);
@@ -211,9 +208,6 @@ const CheckboxClient = /*#__PURE__*/React.forwardRef(({
211
208
  return /*#__PURE__*/React.createElement(Checkbox, _extends({
212
209
  ref: ref
213
210
  }, props, {
214
- onClick: e => {
215
- handleClick(e);
216
- },
217
211
  internalChecked: internalChecked,
218
212
  setInternalChecked: setInternalChecked
219
213
  }));
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../lib/helpers/index.ts","../lib/utils/index.ts","../lib/components/Button/Button.tsx","../lib/components/Checkbox/Checkbox.tsx","../lib/components/Checkbox/Checkbox.client.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import { RuleType } from '../types';\n\nexport const parseValue = (value: RuleType): RuleType => {\n if (value === 'true') {\n return true;\n }\n\n if (value === 'false') {\n return false;\n }\n\n if (!isNaN(Number(value))) {\n return Number(value);\n }\n\n return value;\n};\n\nexport function createArray(length: number): number[] {\n return Array.from({ length }, (_, index) => index);\n}\n\nexport function clsx(...args: RuleType[]): string {\n return args\n .flatMap(arg => {\n if (!arg) {\n return [];\n }\n\n if (typeof arg === 'string') {\n return [arg];\n }\n\n if (typeof arg === 'number') {\n return [String(arg)];\n }\n\n if (Array.isArray(arg)) {\n return clsx(...arg).split(' ');\n }\n\n if (typeof arg === 'object') {\n return Object.entries(arg)\n .filter(([, value]) => Boolean(value))\n .map(([key]) => key);\n }\n\n return [];\n })\n .filter(Boolean)\n .join(' ');\n}\n","export const prefixClsForm = 'xUi-form';\nexport const prefixClsFormItem = 'xUi-form-item';\nexport const prefixClsEmpty = 'xUi-empty';\nexport const prefixClsInput = 'xUi-input';\nexport const prefixClsSelect = 'xUi-select';\nexport const prefixClsCheckbox = 'xUi-checkbox';\nexport const prefixClsRadio = 'xUi-radio';\nexport const prefixClsTextArea = 'xUi-textarea';\nexport const prefixClsUpload = 'xUi-upload';\nexport const prefixClsDatePicker = 'xUi-datepicker';\nexport const prefixClsRangePicker = 'xUi-rangepicker';\nexport const prefixClsTimePicker = 'xUi-timepicker';\nexport const prefixClsButton = 'xUi-button';\nexport const prefixClsSkeleton = 'xUi-skeleton';\n","import React, { ReactElement, ReactNode } from 'react';\nimport { clsx } from '../../helpers';\nimport { ButtonProps } from '../../types/button';\nimport { prefixClsButton } from '../../utils';\nimport './style.css';\n\nconst Button = ({\n type = 'default',\n variant = 'solid',\n color = 'default',\n shape = 'default',\n size = 'middle',\n htmlType = 'button',\n className,\n rootClassName,\n classNames: customClassNames = {},\n styles = {},\n prefixCls = prefixClsButton,\n iconPosition = 'start',\n disabled = false,\n ghost = false,\n danger = false,\n block = false,\n children,\n href,\n iconNode,\n isLoading = false,\n ...restProps\n}: ButtonProps & {\n iconNode?: ReactNode;\n isLoading?: boolean;\n}): ReactElement => {\n const classes = clsx(\n prefixCls,\n rootClassName,\n `${prefixCls}-${type}`,\n `${prefixCls}-${variant}`,\n `${prefixCls}-${color}`,\n `${prefixCls}-${shape}`,\n `${prefixCls}-size-${size}`,\n {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-ghost`]: ghost,\n [`${prefixCls}-danger`]: danger,\n [`${prefixCls}-loading`]: isLoading,\n [`${prefixCls}-disabled`]: disabled\n },\n className\n );\n\n const mergedDisabled = disabled || isLoading;\n\n const content = (\n <>\n {iconNode && iconPosition === 'start' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n <span className={`${prefixCls}-content`}>{children}</span>\n {iconNode && iconPosition === 'end' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n </>\n );\n\n if (href) {\n return (\n <a\n className={classes}\n href={mergedDisabled ? undefined : href}\n aria-disabled={mergedDisabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type={htmlType}\n className={classes}\n disabled={mergedDisabled}\n {...restProps}\n >\n {content}\n </button>\n );\n};\n\nexport default Button;\n","import { prefixClsCheckbox } from '@/utils';\nimport { CheckboxProps } from '../../types/checkbox';\nimport React, { Dispatch, ForwardedRef, forwardRef, ReactElement, SetStateAction } from 'react';\nimport { clsx } from '../../helpers';\nimport './style.css';\n\nconst Checkbox = forwardRef<HTMLDivElement, CheckboxProps & {\n internalChecked: boolean,\n setInternalChecked?: Dispatch<SetStateAction<boolean>>\n}>(\n (\n {\n prefixCls = prefixClsCheckbox,\n className = '',\n style,\n disabled = false,\n onClick,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n internalChecked,\n required = false,\n noStyle\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n return <div className={`${prefixCls}-wrapper`}>\n <div\n ref={ref}\n style={style}\n onClick={(e) => {\n onClick?.(e)\n }}\n className={clsx([\n prefixCls,\n className,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-checked`]: internalChecked\n }\n ])}\n >\n <input\n id={id}\n type={type}\n name={name}\n disabled={disabled}\n tabIndex={tabIndex}\n required={required}\n autoFocus={autoFocus}\n onKeyDown={onKeyDown}\n onKeyPress={onKeyPress}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n\n <span className={`${prefixCls}-box`}>\n <span\n className={`${prefixCls}-check`}\n style={{ opacity: Number(internalChecked) }}\n />\n </span>\n </div>\n\n {children && <span className={`${prefixCls}-label`}>{children}</span>}\n </div>\n})\n\nCheckbox.displayName = \"Checkbox\";\n\nexport default Checkbox;\n","\"use client\"\n\nimport React, {\n ForwardedRef,\n forwardRef,\n MouseEvent,\n ReactElement,\n useEffect,\n useState\n} from 'react';\nimport { SyntheticBaseEvent } from '../../types';\nimport { CheckboxProps } from '../../types/checkbox';\nimport Checkbox from './Checkbox';\n\nconst CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(\n (\n {\n defaultChecked = false,\n checked,\n disabled = false,\n onChange,\n onClick,\n value = false,\n ...props\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const isChecked = checked !== undefined ? checked : defaultChecked || value;\n const [internalChecked, setInternalChecked] = useState(isChecked);\n\n const handleClick = (\n e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent\n ) => {\n e.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n setInternalChecked(!internalChecked);\n e.target.value = !internalChecked;\n\n onClick?.(e);\n onChange?.(e);\n };\n\n useEffect(() => {\n if (checked !== undefined) {\n setInternalChecked(checked);\n }\n }, [checked]);\n\n return (\n <Checkbox\n ref={ref}\n {...props}\n onClick={(e) => {\n handleClick(e as MouseEvent<HTMLInputElement> & SyntheticBaseEvent)\n }}\n internalChecked={internalChecked}\n setInternalChecked={setInternalChecked}\n />\n )\n }\n);\n\nCheckboxClient.displayName = 'CheckboxClient';\n\nexport default Checkbox;\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","clsx","args","flatMap","arg","String","Array","isArray","split","Object","entries","filter","value","Boolean","map","key","join","prefixClsCheckbox","prefixClsButton","Button","variant","color","shape","size","htmlType","className","rootClassName","classNames","customClassNames","styles","prefixCls","iconPosition","disabled","ghost","danger","block","children","href","iconNode","isLoading","restProps","classes","mergedDisabled","content","React","Fragment","icon","undefined","_extends","Checkbox","forwardRef","onClick","onMouseEnter","onMouseLeave","onKeyPress","onKeyDown","tabIndex","name","id","autoFocus","internalChecked","required","noStyle","e","opacity","Number","displayName","CheckboxClient","defaultChecked","checked","onChange","props","isChecked","setInternalChecked","useState","handleClick","stopPropagation","target","useEffect"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.js","sources":["../node_modules/style-inject/dist/style-inject.es.js","../lib/helpers/index.ts","../lib/utils/index.ts","../lib/components/Button/Button.tsx","../lib/components/Checkbox/Checkbox.tsx","../lib/components/Checkbox/Checkbox.client.tsx"],"sourcesContent":["function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import { RuleType } from '../types';\n\nexport const parseValue = (value: RuleType): RuleType => {\n if (value === 'true') {\n return true;\n }\n\n if (value === 'false') {\n return false;\n }\n\n if (!isNaN(Number(value))) {\n return Number(value);\n }\n\n return value;\n};\n\nexport function createArray(length: number): number[] {\n return Array.from({ length }, (_, index) => index);\n}\n\nexport function clsx(...args: RuleType[]): string {\n return args\n .flatMap(arg => {\n if (!arg) {\n return [];\n }\n\n if (typeof arg === 'string') {\n return [arg];\n }\n\n if (typeof arg === 'number') {\n return [String(arg)];\n }\n\n if (Array.isArray(arg)) {\n return clsx(...arg).split(' ');\n }\n\n if (typeof arg === 'object') {\n return Object.entries(arg)\n .filter(([, value]) => Boolean(value))\n .map(([key]) => key);\n }\n\n return [];\n })\n .filter(Boolean)\n .join(' ');\n}\n","export const prefixClsForm = 'xUi-form';\nexport const prefixClsFormItem = 'xUi-form-item';\nexport const prefixClsEmpty = 'xUi-empty';\nexport const prefixClsInput = 'xUi-input';\nexport const prefixClsSelect = 'xUi-select';\nexport const prefixClsCheckbox = 'xUi-checkbox';\nexport const prefixClsRadio = 'xUi-radio';\nexport const prefixClsTextArea = 'xUi-textarea';\nexport const prefixClsUpload = 'xUi-upload';\nexport const prefixClsDatePicker = 'xUi-datepicker';\nexport const prefixClsRangePicker = 'xUi-rangepicker';\nexport const prefixClsTimePicker = 'xUi-timepicker';\nexport const prefixClsButton = 'xUi-button';\nexport const prefixClsSkeleton = 'xUi-skeleton';\n","import React, { ReactElement, ReactNode } from 'react';\nimport { clsx } from '../../helpers';\nimport { ButtonProps } from '../../types/button';\nimport { prefixClsButton } from '../../utils';\nimport './style.css';\n\nconst Button = ({\n type = 'default',\n variant = 'solid',\n color = 'default',\n shape = 'default',\n size = 'middle',\n htmlType = 'button',\n className,\n rootClassName,\n classNames: customClassNames = {},\n styles = {},\n prefixCls = prefixClsButton,\n iconPosition = 'start',\n disabled = false,\n ghost = false,\n danger = false,\n block = false,\n children,\n href,\n iconNode,\n isLoading = false,\n ...restProps\n}: ButtonProps & {\n iconNode?: ReactNode;\n isLoading?: boolean;\n}): ReactElement => {\n const classes = clsx(\n prefixCls,\n rootClassName,\n `${prefixCls}-${type}`,\n `${prefixCls}-${variant}`,\n `${prefixCls}-${color}`,\n `${prefixCls}-${shape}`,\n `${prefixCls}-size-${size}`,\n {\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-ghost`]: ghost,\n [`${prefixCls}-danger`]: danger,\n [`${prefixCls}-loading`]: isLoading,\n [`${prefixCls}-disabled`]: disabled\n },\n className\n );\n\n const mergedDisabled = disabled || isLoading;\n\n const content = (\n <>\n {iconNode && iconPosition === 'start' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n <span className={`${prefixCls}-content`}>{children}</span>\n {iconNode && iconPosition === 'end' && (\n <span\n className={clsx(`${prefixCls}-icon`, customClassNames.icon)}\n style={styles.icon}\n >\n {iconNode}\n </span>\n )}\n </>\n );\n\n if (href) {\n return (\n <a\n className={classes}\n href={mergedDisabled ? undefined : href}\n aria-disabled={mergedDisabled}\n >\n {content}\n </a>\n );\n }\n\n return (\n <button\n type={htmlType}\n className={classes}\n disabled={mergedDisabled}\n {...restProps}\n >\n {content}\n </button>\n );\n};\n\nexport default Button;\n","import { prefixClsCheckbox } from '@/utils';\nimport { CheckboxProps } from '../../types/checkbox';\nimport React, { Dispatch, ForwardedRef, forwardRef, MouseEvent, ReactElement, SetStateAction } from 'react';\nimport { clsx } from '../../helpers';\nimport { SyntheticBaseEvent } from '../../types';\n\nimport './style.css';\n\nconst Checkbox = forwardRef<HTMLDivElement, CheckboxProps & {\n internalChecked: boolean,\n setInternalChecked?: Dispatch<SetStateAction<boolean>>\n}>(\n (\n {\n prefixCls = prefixClsCheckbox,\n className = '',\n style,\n disabled = false,\n onClick,\n onChange,\n onMouseEnter,\n onMouseLeave,\n onKeyPress,\n onKeyDown,\n tabIndex,\n name,\n children,\n id,\n autoFocus,\n type = 'checkbox',\n internalChecked,\n required = false,\n noStyle,\n setInternalChecked\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const handleClick = (\n e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent\n ) => {\n e.stopPropagation();\n \n if (disabled) {\n return;\n }\n \n setInternalChecked?.(!internalChecked);\n e.target.value = !internalChecked;\n \n onClick?.(e);\n onChange?.(e);\n };\n\n return (\n <div className={`${prefixCls}-wrapper`}>\n <div\n ref={ref}\n style={style}\n onClick={(e) => handleClick(e as MouseEvent<HTMLInputElement> & SyntheticBaseEvent)}\n className={clsx([\n prefixCls,\n className,\n {\n noStyle: noStyle,\n [`${prefixCls}-disabled`]: disabled,\n [`${prefixCls}-checked`]: internalChecked\n }\n ])}\n >\n <input\n id={id}\n type={type}\n name={name}\n disabled={disabled}\n tabIndex={tabIndex}\n required={required}\n autoFocus={autoFocus}\n onKeyDown={onKeyDown}\n onKeyPress={onKeyPress}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n />\n\n <span className={`${prefixCls}-box`}>\n <span\n className={`${prefixCls}-check`}\n style={{ opacity: Number(internalChecked) }}\n />\n </span>\n </div>\n\n {children && <span className={`${prefixCls}-label`}>{children}</span>}\n </div>\n )\n})\n\nCheckbox.displayName = \"Checkbox\";\n\nexport default Checkbox;\n","\"use client\"\n\nimport React, {\n ForwardedRef,\n forwardRef,\n ReactElement,\n useEffect,\n useState\n} from 'react';\nimport { CheckboxProps } from '../../types/checkbox';\nimport Checkbox from './Checkbox';\n\nconst CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(\n (\n {\n defaultChecked = false,\n checked,\n value = false,\n ...props\n },\n ref: ForwardedRef<HTMLDivElement>\n ): ReactElement => {\n const isChecked = checked !== undefined ? checked : defaultChecked || value;\n const [internalChecked, setInternalChecked] = useState(isChecked);\n\n useEffect(() => {\n if (checked !== undefined) {\n setInternalChecked(checked);\n }\n }, [checked]);\n\n return (\n <Checkbox\n ref={ref}\n {...props}\n internalChecked={internalChecked}\n setInternalChecked={setInternalChecked}\n />\n )\n }\n);\n\nCheckboxClient.displayName = 'CheckboxClient';\n\nexport default Checkbox;\n"],"names":["styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","clsx","args","flatMap","arg","String","Array","isArray","split","Object","entries","filter","value","Boolean","map","key","join","prefixClsCheckbox","prefixClsButton","Button","variant","color","shape","size","htmlType","className","rootClassName","classNames","customClassNames","styles","prefixCls","iconPosition","disabled","ghost","danger","block","children","href","iconNode","isLoading","restProps","classes","mergedDisabled","content","React","Fragment","icon","undefined","_extends","Checkbox","forwardRef","onClick","onChange","onMouseEnter","onMouseLeave","onKeyPress","onKeyDown","tabIndex","name","id","autoFocus","internalChecked","required","noStyle","setInternalChecked","handleClick","e","stopPropagation","target","opacity","Number","displayName","CheckboxClient","defaultChecked","checked","props","isChecked","useState","useEffect"],"mappings":"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","x_google_ignoreList":[0]}
@@ -3,12 +3,10 @@
3
3
  import React, {
4
4
  ForwardedRef,
5
5
  forwardRef,
6
- MouseEvent,
7
6
  ReactElement,
8
7
  useEffect,
9
8
  useState
10
9
  } from 'react';
11
- import { SyntheticBaseEvent } from '../../types';
12
10
  import { CheckboxProps } from '../../types/checkbox';
13
11
  import Checkbox from './Checkbox';
14
12
 
@@ -17,9 +15,6 @@ const CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(
17
15
  {
18
16
  defaultChecked = false,
19
17
  checked,
20
- disabled = false,
21
- onChange,
22
- onClick,
23
18
  value = false,
24
19
  ...props
25
20
  },
@@ -28,22 +23,6 @@ const CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(
28
23
  const isChecked = checked !== undefined ? checked : defaultChecked || value;
29
24
  const [internalChecked, setInternalChecked] = useState(isChecked);
30
25
 
31
- const handleClick = (
32
- e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent
33
- ) => {
34
- e.stopPropagation();
35
-
36
- if (disabled) {
37
- return;
38
- }
39
-
40
- setInternalChecked(!internalChecked);
41
- e.target.value = !internalChecked;
42
-
43
- onClick?.(e);
44
- onChange?.(e);
45
- };
46
-
47
26
  useEffect(() => {
48
27
  if (checked !== undefined) {
49
28
  setInternalChecked(checked);
@@ -54,9 +33,6 @@ const CheckboxClient = forwardRef<HTMLDivElement, CheckboxProps>(
54
33
  <Checkbox
55
34
  ref={ref}
56
35
  {...props}
57
- onClick={(e) => {
58
- handleClick(e as MouseEvent<HTMLInputElement> & SyntheticBaseEvent)
59
- }}
60
36
  internalChecked={internalChecked}
61
37
  setInternalChecked={setInternalChecked}
62
38
  />
@@ -1,7 +1,9 @@
1
1
  import { prefixClsCheckbox } from '@/utils';
2
2
  import { CheckboxProps } from '../../types/checkbox';
3
- import React, { Dispatch, ForwardedRef, forwardRef, ReactElement, SetStateAction } from 'react';
3
+ import React, { Dispatch, ForwardedRef, forwardRef, MouseEvent, ReactElement, SetStateAction } from 'react';
4
4
  import { clsx } from '../../helpers';
5
+ import { SyntheticBaseEvent } from '../../types';
6
+
5
7
  import './style.css';
6
8
 
7
9
  const Checkbox = forwardRef<HTMLDivElement, CheckboxProps & {
@@ -15,6 +17,7 @@ const Checkbox = forwardRef<HTMLDivElement, CheckboxProps & {
15
17
  style,
16
18
  disabled = false,
17
19
  onClick,
20
+ onChange,
18
21
  onMouseEnter,
19
22
  onMouseLeave,
20
23
  onKeyPress,
@@ -27,17 +30,33 @@ const Checkbox = forwardRef<HTMLDivElement, CheckboxProps & {
27
30
  type = 'checkbox',
28
31
  internalChecked,
29
32
  required = false,
30
- noStyle
33
+ noStyle,
34
+ setInternalChecked
31
35
  },
32
36
  ref: ForwardedRef<HTMLDivElement>
33
37
  ): ReactElement => {
34
- return <div className={`${prefixCls}-wrapper`}>
38
+ const handleClick = (
39
+ e: MouseEvent<HTMLInputElement> & SyntheticBaseEvent
40
+ ) => {
41
+ e.stopPropagation();
42
+
43
+ if (disabled) {
44
+ return;
45
+ }
46
+
47
+ setInternalChecked?.(!internalChecked);
48
+ e.target.value = !internalChecked;
49
+
50
+ onClick?.(e);
51
+ onChange?.(e);
52
+ };
53
+
54
+ return (
55
+ <div className={`${prefixCls}-wrapper`}>
35
56
  <div
36
57
  ref={ref}
37
58
  style={style}
38
- onClick={(e) => {
39
- onClick?.(e)
40
- }}
59
+ onClick={(e) => handleClick(e as MouseEvent<HTMLInputElement> & SyntheticBaseEvent)}
41
60
  className={clsx([
42
61
  prefixCls,
43
62
  className,
@@ -72,6 +91,7 @@ const Checkbox = forwardRef<HTMLDivElement, CheckboxProps & {
72
91
 
73
92
  {children && <span className={`${prefixCls}-label`}>{children}</span>}
74
93
  </div>
94
+ )
75
95
  })
76
96
 
77
97
  Checkbox.displayName = "Checkbox";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "x-ui-design",
3
- "version": "0.2.52",
3
+ "version": "0.2.53",
4
4
  "license": "ISC",
5
5
  "author": "Gabriel Boyajyan",
6
6
  "main": "dist/index.js",