@iziui/react 0.0.98-rc → 0.0.99-rc

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,10 +1,8 @@
1
1
  import { InputHTMLAttributes, CSSProperties } from 'react';
2
- export type InputType = 'text' | 'password' | 'number' | 'date' | 'month' | 'tel';
3
- export interface InputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type'> {
2
+ export interface InputProps extends InputHTMLAttributes<HTMLInputElement> {
4
3
  error?: boolean;
5
4
  label?: string;
6
5
  helperText?: string;
7
- type?: InputType;
8
6
  width?: CSSProperties['width'];
9
7
  endIcon?: React.JSX.Element | boolean;
10
8
  startIcon?: React.JSX.Element | boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../../src/fields/Input/Input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAoD,aAAa,EAAE,MAAM,OAAO,CAAC;AASlH,OAAO,qCAAqC,CAAC;AAE7C,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;AAElF,MAAM,WAAW,UAAW,SAAQ,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACrF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;IACtC,SAAS,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;CACzC;;AAsED,wBAAsC"}
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../../src/fields/Input/Input.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAoD,aAAa,EAAE,MAAM,OAAO,CAAC;AASlH,OAAO,qCAAqC,CAAC;AAE7C,MAAM,WAAW,UAAW,SAAQ,mBAAmB,CAAC,gBAAgB,CAAC;IACvE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;IACtC,SAAS,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;CACzC;;AAsED,wBAAsC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Input.stories.d.ts","sourceRoot":"","sources":["../../../../src/fields/Input/Input.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAOlD,OAAO,KAAyB,MAAM,SAAS,CAAC;AAEhD,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,OAAO,KAAK,CAW7C,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,OAAO,KAAK,CA6B3C,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,KAAK,CAMxC,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,OAAO,KAAK,CAM7C,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,OAAO,KAAK,CAM7C,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,KAAK,CAaxC,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,OAAO,KAAK,CAE7C,CAAC;AAEF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,CA8G5B,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Input.stories.d.ts","sourceRoot":"","sources":["../../../../src/fields/Input/Input.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAOlD,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,OAAO,KAAK,CAc7C,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,OAAO,KAAK,CA6B3C,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,KAAK,CAMxC,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,OAAO,KAAK,CAM7C,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,OAAO,KAAK,CAM7C,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,OAAO,KAAK,CAaxC,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,OAAO,KAAK,CAE7C,CAAC;AAEF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,CA8G5B,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/fields/Input/Input.tsx"],"sourcesContent":["import { type InputHTMLAttributes, type ReactElement, type MouseEvent, cloneElement, CSSProperties } from 'react';\n\nimport { prefix } from '@iziui/tokens/web/js';\n\nimport { joinClass } from '@iziui/core/utils/joinClass';\n\nimport type { ButtonIconProps } from '@/actions/ButtonIcon';\nimport createComponent from '@/core';\n\nimport '@iziui/styles/components/Input.scss';\n\nexport type InputType = 'text' | 'password' | 'number' | 'date' | 'month' | 'tel';\n\nexport interface InputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type'> {\n error?: boolean;\n label?: string;\n helperText?: string;\n type?: InputType;\n width?: CSSProperties['width'];\n endIcon?: React.JSX.Element | boolean;\n startIcon?: React.JSX.Element | boolean;\n}\n\nfunction Input({\n error,\n label,\n helperText,\n endIcon,\n startIcon,\n type = 'text',\n disabled,\n width = '100%',\n ...props\n}: InputProps) {\n const containerClss = joinClass(\n `${prefix}-input-container`,\n );\n\n const labelClss = joinClass(\n `${prefix}-input-label`,\n error && `${prefix}-input-label--error`,\n );\n\n const classes = joinClass(\n `${prefix}-input-container`,\n `${prefix}-input`,\n disabled && `${prefix}-input--disabled`,\n error && `${prefix}-input--error`,\n props.className\n );\n\n const helperTextClss = joinClass(\n `${prefix}-input__helper-text`,\n helperText && `${prefix}-input__helper-text--visible`,\n error && `${prefix}-input__helper-text--error`\n );\n\n const renderIcon = (icon: ReactElement<ButtonIconProps>, direction: 'left' | 'right') => {\n return cloneElement(icon, {\n disabled,\n size: icon.props.size || 30,\n type: 'button',\n color: 'grey',\n style: {\n ...icon.props.style,\n },\n className: joinClass(\n icon.props.className,\n `${prefix}-input__icon`,\n `${prefix}-input__icon--margin-${direction}`\n ),\n onClick: (e: MouseEvent<any, globalThis.MouseEvent>) => {\n e.stopPropagation();\n if (icon.props.onClick) { icon.props.onClick(e); };\n }\n });\n };\n\n return (\n <div className={containerClss} style={{ width }}>\n {label && <label className={labelClss}>{label} {props.required && '*'}</label>}\n <div className={classes}>\n {startIcon && renderIcon(startIcon as React.JSX.Element, 'right')}\n <input {...props} type={type} disabled={disabled} />\n {endIcon && renderIcon(endIcon as React.JSX.Element, 'left')}\n </div>\n <p className={helperTextClss}>{helperText}</p>\n </div>\n );\n}\n\nexport default createComponent(Input);"],"names":["Input","error","label","helperText","endIcon","startIcon","type","disabled","width","props","containerClss","joinClass","prefix","labelClss","classes","helperTextClss","renderIcon","icon","direction","cloneElement","e","jsxs","jsx","Input_default","createComponent"],"mappings":"kaAuBA,SAASA,EAAM,CACb,MAAAC,EACA,MAAAC,EACA,WAAAC,EACA,QAAAC,EACA,UAAAC,EACA,KAAAC,EAAO,OACP,SAAAC,EACA,MAAAC,EAAQ,OACR,GAAGC,CACL,EAAe,CACb,MAAMC,EAAgBC,EAAAA,UACpB,GAAGC,EAAAA,MAAM,kBAAA,EAGLC,EAAYF,EAAAA,UAChB,GAAGC,EAAAA,MAAM,eACTX,GAAS,GAAGW,EAAAA,MAAM,qBAAA,EAGdE,EAAUH,EAAAA,UACd,GAAGC,EAAAA,MAAM,mBACT,GAAGA,EAAAA,MAAM,SACTL,GAAY,GAAGK,EAAAA,MAAM,mBACrBX,GAAS,GAAGW,EAAAA,MAAM,gBAClBH,EAAM,SAAA,EAGFM,EAAiBJ,EAAAA,UACrB,GAAGC,EAAAA,MAAM,sBACTT,GAAc,GAAGS,EAAAA,MAAM,+BACvBX,GAAS,GAAGW,EAAAA,MAAM,4BAAA,EAGdI,EAAa,CAACC,EAAqCC,IAChDC,EAAAA,aAAaF,EAAM,CACxB,SAAAV,EACA,KAAMU,EAAK,MAAM,MAAQ,GACzB,KAAM,SACN,MAAO,OACP,MAAO,CACL,GAAGA,EAAK,MAAM,KAAA,EAEhB,UAAWN,EAAAA,UACTM,EAAK,MAAM,UACX,GAAGL,EAAAA,MAAM,eACT,GAAGA,EAAAA,MAAM,wBAAwBM,CAAS,EAAA,EAE5C,QAAUE,GAA8C,CACtDA,EAAE,gBAAA,EACEH,EAAK,MAAM,SAAWA,EAAK,MAAM,QAAQG,CAAC,CAChD,CAAA,CACD,EAGH,cACG,MAAA,CAAI,UAAWV,EAAe,MAAO,CAAE,MAAAF,GACrC,SAAA,CAAAN,GAASmB,EAAAA,KAAC,QAAA,CAAM,UAAWR,EAAY,SAAA,CAAAX,EAAM,IAAEO,EAAM,UAAY,GAAA,EAAI,EACtEY,EAAAA,KAAC,MAAA,CAAI,UAAWP,EACb,SAAA,CAAAT,GAAaW,EAAWX,EAAgC,OAAO,EAChEiB,EAAAA,IAAC,QAAA,CAAO,GAAGb,EAAO,KAAAH,EAAY,SAAAC,CAAA,CAAoB,EACjDH,GAAWY,EAAWZ,EAA8B,MAAM,CAAA,EAC7D,EACAkB,EAAAA,IAAC,IAAA,CAAE,UAAWP,EAAiB,SAAAZ,CAAA,CAAW,CAAA,EAC5C,CAEJ,CAEA,MAAAoB,EAAeC,EAAAA,gBAAgBxB,CAAK"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/fields/Input/Input.tsx"],"sourcesContent":["import { type InputHTMLAttributes, type ReactElement, type MouseEvent, cloneElement, CSSProperties } from 'react';\n\nimport { prefix } from '@iziui/tokens/web/js';\n\nimport { joinClass } from '@iziui/core/utils/joinClass';\n\nimport type { ButtonIconProps } from '@/actions/ButtonIcon';\nimport createComponent from '@/core';\n\nimport '@iziui/styles/components/Input.scss';\n\nexport interface InputProps extends InputHTMLAttributes<HTMLInputElement> {\n error?: boolean;\n label?: string;\n helperText?: string;\n width?: CSSProperties['width'];\n endIcon?: React.JSX.Element | boolean;\n startIcon?: React.JSX.Element | boolean;\n}\n\nfunction Input({\n error,\n label,\n helperText,\n endIcon,\n startIcon,\n type = 'text',\n disabled,\n width = '100%',\n ...props\n}: InputProps) {\n const containerClss = joinClass(\n `${prefix}-input-container`,\n );\n\n const labelClss = joinClass(\n `${prefix}-input-label`,\n error && `${prefix}-input-label--error`,\n );\n\n const classes = joinClass(\n `${prefix}-input-container`,\n `${prefix}-input`,\n disabled && `${prefix}-input--disabled`,\n error && `${prefix}-input--error`,\n props.className\n );\n\n const helperTextClss = joinClass(\n `${prefix}-input__helper-text`,\n helperText && `${prefix}-input__helper-text--visible`,\n error && `${prefix}-input__helper-text--error`\n );\n\n const renderIcon = (icon: ReactElement<ButtonIconProps>, direction: 'left' | 'right') => {\n return cloneElement(icon, {\n disabled,\n size: icon.props.size || 30,\n type: 'button',\n color: 'grey',\n style: {\n ...icon.props.style,\n },\n className: joinClass(\n icon.props.className,\n `${prefix}-input__icon`,\n `${prefix}-input__icon--margin-${direction}`\n ),\n onClick: (e: MouseEvent<any, globalThis.MouseEvent>) => {\n e.stopPropagation();\n if (icon.props.onClick) { icon.props.onClick(e); };\n }\n });\n };\n\n return (\n <div className={containerClss} style={{ width }}>\n {label && <label className={labelClss}>{label} {props.required && '*'}</label>}\n <div className={classes}>\n {startIcon && renderIcon(startIcon as React.JSX.Element, 'right')}\n <input {...props} type={type} disabled={disabled} />\n {endIcon && renderIcon(endIcon as React.JSX.Element, 'left')}\n </div>\n <p className={helperTextClss}>{helperText}</p>\n </div>\n );\n}\n\nexport default createComponent(Input);"],"names":["Input","error","label","helperText","endIcon","startIcon","type","disabled","width","props","containerClss","joinClass","prefix","labelClss","classes","helperTextClss","renderIcon","icon","direction","cloneElement","e","jsxs","jsx","Input_default","createComponent"],"mappings":"kaAoBA,SAASA,EAAM,CACb,MAAAC,EACA,MAAAC,EACA,WAAAC,EACA,QAAAC,EACA,UAAAC,EACA,KAAAC,EAAO,OACP,SAAAC,EACA,MAAAC,EAAQ,OACR,GAAGC,CACL,EAAe,CACb,MAAMC,EAAgBC,EAAAA,UACpB,GAAGC,EAAAA,MAAM,kBAAA,EAGLC,EAAYF,EAAAA,UAChB,GAAGC,EAAAA,MAAM,eACTX,GAAS,GAAGW,EAAAA,MAAM,qBAAA,EAGdE,EAAUH,EAAAA,UACd,GAAGC,EAAAA,MAAM,mBACT,GAAGA,EAAAA,MAAM,SACTL,GAAY,GAAGK,EAAAA,MAAM,mBACrBX,GAAS,GAAGW,EAAAA,MAAM,gBAClBH,EAAM,SAAA,EAGFM,EAAiBJ,EAAAA,UACrB,GAAGC,EAAAA,MAAM,sBACTT,GAAc,GAAGS,EAAAA,MAAM,+BACvBX,GAAS,GAAGW,EAAAA,MAAM,4BAAA,EAGdI,EAAa,CAACC,EAAqCC,IAChDC,EAAAA,aAAaF,EAAM,CACxB,SAAAV,EACA,KAAMU,EAAK,MAAM,MAAQ,GACzB,KAAM,SACN,MAAO,OACP,MAAO,CACL,GAAGA,EAAK,MAAM,KAAA,EAEhB,UAAWN,EAAAA,UACTM,EAAK,MAAM,UACX,GAAGL,EAAAA,MAAM,eACT,GAAGA,EAAAA,MAAM,wBAAwBM,CAAS,EAAA,EAE5C,QAAUE,GAA8C,CACtDA,EAAE,gBAAA,EACEH,EAAK,MAAM,SAAWA,EAAK,MAAM,QAAQG,CAAC,CAChD,CAAA,CACD,EAGH,cACG,MAAA,CAAI,UAAWV,EAAe,MAAO,CAAE,MAAAF,GACrC,SAAA,CAAAN,GAASmB,EAAAA,KAAC,QAAA,CAAM,UAAWR,EAAY,SAAA,CAAAX,EAAM,IAAEO,EAAM,UAAY,GAAA,EAAI,EACtEY,EAAAA,KAAC,MAAA,CAAI,UAAWP,EACb,SAAA,CAAAT,GAAaW,EAAWX,EAAgC,OAAO,EAChEiB,EAAAA,IAAC,QAAA,CAAO,GAAGb,EAAO,KAAAH,EAAY,SAAAC,CAAA,CAAoB,EACjDH,GAAWY,EAAWZ,EAA8B,MAAM,CAAA,EAC7D,EACAkB,EAAAA,IAAC,IAAA,CAAE,UAAWP,EAAiB,SAAAZ,CAAA,CAAW,CAAA,EAC5C,CAEJ,CAEA,MAAAoB,EAAeC,EAAAA,gBAAgBxB,CAAK"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/fields/Input/Input.tsx"],"sourcesContent":["import { type InputHTMLAttributes, type ReactElement, type MouseEvent, cloneElement, CSSProperties } from 'react';\n\nimport { prefix } from '@iziui/tokens/web/js';\n\nimport { joinClass } from '@iziui/core/utils/joinClass';\n\nimport type { ButtonIconProps } from '@/actions/ButtonIcon';\nimport createComponent from '@/core';\n\nimport '@iziui/styles/components/Input.scss';\n\nexport type InputType = 'text' | 'password' | 'number' | 'date' | 'month' | 'tel';\n\nexport interface InputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type'> {\n error?: boolean;\n label?: string;\n helperText?: string;\n type?: InputType;\n width?: CSSProperties['width'];\n endIcon?: React.JSX.Element | boolean;\n startIcon?: React.JSX.Element | boolean;\n}\n\nfunction Input({\n error,\n label,\n helperText,\n endIcon,\n startIcon,\n type = 'text',\n disabled,\n width = '100%',\n ...props\n}: InputProps) {\n const containerClss = joinClass(\n `${prefix}-input-container`,\n );\n\n const labelClss = joinClass(\n `${prefix}-input-label`,\n error && `${prefix}-input-label--error`,\n );\n\n const classes = joinClass(\n `${prefix}-input-container`,\n `${prefix}-input`,\n disabled && `${prefix}-input--disabled`,\n error && `${prefix}-input--error`,\n props.className\n );\n\n const helperTextClss = joinClass(\n `${prefix}-input__helper-text`,\n helperText && `${prefix}-input__helper-text--visible`,\n error && `${prefix}-input__helper-text--error`\n );\n\n const renderIcon = (icon: ReactElement<ButtonIconProps>, direction: 'left' | 'right') => {\n return cloneElement(icon, {\n disabled,\n size: icon.props.size || 30,\n type: 'button',\n color: 'grey',\n style: {\n ...icon.props.style,\n },\n className: joinClass(\n icon.props.className,\n `${prefix}-input__icon`,\n `${prefix}-input__icon--margin-${direction}`\n ),\n onClick: (e: MouseEvent<any, globalThis.MouseEvent>) => {\n e.stopPropagation();\n if (icon.props.onClick) { icon.props.onClick(e); };\n }\n });\n };\n\n return (\n <div className={containerClss} style={{ width }}>\n {label && <label className={labelClss}>{label} {props.required && '*'}</label>}\n <div className={classes}>\n {startIcon && renderIcon(startIcon as React.JSX.Element, 'right')}\n <input {...props} type={type} disabled={disabled} />\n {endIcon && renderIcon(endIcon as React.JSX.Element, 'left')}\n </div>\n <p className={helperTextClss}>{helperText}</p>\n </div>\n );\n}\n\nexport default createComponent(Input);"],"names":["Input","error","label","helperText","endIcon","startIcon","type","disabled","width","props","containerClss","joinClass","prefix","labelClss","classes","helperTextClss","renderIcon","icon","direction","cloneElement","e","jsxs","jsx","Input_default","createComponent"],"mappings":"+VAuBA,SAASA,EAAM,CACb,MAAAC,EACA,MAAAC,EACA,WAAAC,EACA,QAAAC,EACA,UAAAC,EACA,KAAAC,EAAO,OACP,SAAAC,EACA,MAAAC,EAAQ,OACR,GAAGC,CACL,EAAe,CACb,MAAMC,EAAgBC,EACpB,GAAGC,CAAM,kBAAA,EAGLC,EAAYF,EAChB,GAAGC,CAAM,eACTX,GAAS,GAAGW,CAAM,qBAAA,EAGdE,EAAUH,EACd,GAAGC,CAAM,mBACT,GAAGA,CAAM,SACTL,GAAY,GAAGK,CAAM,mBACrBX,GAAS,GAAGW,CAAM,gBAClBH,EAAM,SAAA,EAGFM,EAAiBJ,EACrB,GAAGC,CAAM,sBACTT,GAAc,GAAGS,CAAM,+BACvBX,GAAS,GAAGW,CAAM,4BAAA,EAGdI,EAAa,CAACC,EAAqCC,IAChDC,EAAaF,EAAM,CACxB,SAAAV,EACA,KAAMU,EAAK,MAAM,MAAQ,GACzB,KAAM,SACN,MAAO,OACP,MAAO,CACL,GAAGA,EAAK,MAAM,KAAA,EAEhB,UAAWN,EACTM,EAAK,MAAM,UACX,GAAGL,CAAM,eACT,GAAGA,CAAM,wBAAwBM,CAAS,EAAA,EAE5C,QAAUE,GAA8C,CACtDA,EAAE,gBAAA,EACEH,EAAK,MAAM,SAAWA,EAAK,MAAM,QAAQG,CAAC,CAChD,CAAA,CACD,EAGH,SACG,MAAA,CAAI,UAAWV,EAAe,MAAO,CAAE,MAAAF,GACrC,SAAA,CAAAN,GAASmB,EAAC,QAAA,CAAM,UAAWR,EAAY,SAAA,CAAAX,EAAM,IAAEO,EAAM,UAAY,GAAA,EAAI,EACtEY,EAAC,MAAA,CAAI,UAAWP,EACb,SAAA,CAAAT,GAAaW,EAAWX,EAAgC,OAAO,EAChEiB,EAAC,QAAA,CAAO,GAAGb,EAAO,KAAAH,EAAY,SAAAC,CAAA,CAAoB,EACjDH,GAAWY,EAAWZ,EAA8B,MAAM,CAAA,EAC7D,EACAkB,EAAC,IAAA,CAAE,UAAWP,EAAiB,SAAAZ,CAAA,CAAW,CAAA,EAC5C,CAEJ,CAEA,MAAAoB,EAAeC,EAAgBxB,CAAK"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/fields/Input/Input.tsx"],"sourcesContent":["import { type InputHTMLAttributes, type ReactElement, type MouseEvent, cloneElement, CSSProperties } from 'react';\n\nimport { prefix } from '@iziui/tokens/web/js';\n\nimport { joinClass } from '@iziui/core/utils/joinClass';\n\nimport type { ButtonIconProps } from '@/actions/ButtonIcon';\nimport createComponent from '@/core';\n\nimport '@iziui/styles/components/Input.scss';\n\nexport interface InputProps extends InputHTMLAttributes<HTMLInputElement> {\n error?: boolean;\n label?: string;\n helperText?: string;\n width?: CSSProperties['width'];\n endIcon?: React.JSX.Element | boolean;\n startIcon?: React.JSX.Element | boolean;\n}\n\nfunction Input({\n error,\n label,\n helperText,\n endIcon,\n startIcon,\n type = 'text',\n disabled,\n width = '100%',\n ...props\n}: InputProps) {\n const containerClss = joinClass(\n `${prefix}-input-container`,\n );\n\n const labelClss = joinClass(\n `${prefix}-input-label`,\n error && `${prefix}-input-label--error`,\n );\n\n const classes = joinClass(\n `${prefix}-input-container`,\n `${prefix}-input`,\n disabled && `${prefix}-input--disabled`,\n error && `${prefix}-input--error`,\n props.className\n );\n\n const helperTextClss = joinClass(\n `${prefix}-input__helper-text`,\n helperText && `${prefix}-input__helper-text--visible`,\n error && `${prefix}-input__helper-text--error`\n );\n\n const renderIcon = (icon: ReactElement<ButtonIconProps>, direction: 'left' | 'right') => {\n return cloneElement(icon, {\n disabled,\n size: icon.props.size || 30,\n type: 'button',\n color: 'grey',\n style: {\n ...icon.props.style,\n },\n className: joinClass(\n icon.props.className,\n `${prefix}-input__icon`,\n `${prefix}-input__icon--margin-${direction}`\n ),\n onClick: (e: MouseEvent<any, globalThis.MouseEvent>) => {\n e.stopPropagation();\n if (icon.props.onClick) { icon.props.onClick(e); };\n }\n });\n };\n\n return (\n <div className={containerClss} style={{ width }}>\n {label && <label className={labelClss}>{label} {props.required && '*'}</label>}\n <div className={classes}>\n {startIcon && renderIcon(startIcon as React.JSX.Element, 'right')}\n <input {...props} type={type} disabled={disabled} />\n {endIcon && renderIcon(endIcon as React.JSX.Element, 'left')}\n </div>\n <p className={helperTextClss}>{helperText}</p>\n </div>\n );\n}\n\nexport default createComponent(Input);"],"names":["Input","error","label","helperText","endIcon","startIcon","type","disabled","width","props","containerClss","joinClass","prefix","labelClss","classes","helperTextClss","renderIcon","icon","direction","cloneElement","e","jsxs","jsx","Input_default","createComponent"],"mappings":"+VAoBA,SAASA,EAAM,CACb,MAAAC,EACA,MAAAC,EACA,WAAAC,EACA,QAAAC,EACA,UAAAC,EACA,KAAAC,EAAO,OACP,SAAAC,EACA,MAAAC,EAAQ,OACR,GAAGC,CACL,EAAe,CACb,MAAMC,EAAgBC,EACpB,GAAGC,CAAM,kBAAA,EAGLC,EAAYF,EAChB,GAAGC,CAAM,eACTX,GAAS,GAAGW,CAAM,qBAAA,EAGdE,EAAUH,EACd,GAAGC,CAAM,mBACT,GAAGA,CAAM,SACTL,GAAY,GAAGK,CAAM,mBACrBX,GAAS,GAAGW,CAAM,gBAClBH,EAAM,SAAA,EAGFM,EAAiBJ,EACrB,GAAGC,CAAM,sBACTT,GAAc,GAAGS,CAAM,+BACvBX,GAAS,GAAGW,CAAM,4BAAA,EAGdI,EAAa,CAACC,EAAqCC,IAChDC,EAAaF,EAAM,CACxB,SAAAV,EACA,KAAMU,EAAK,MAAM,MAAQ,GACzB,KAAM,SACN,MAAO,OACP,MAAO,CACL,GAAGA,EAAK,MAAM,KAAA,EAEhB,UAAWN,EACTM,EAAK,MAAM,UACX,GAAGL,CAAM,eACT,GAAGA,CAAM,wBAAwBM,CAAS,EAAA,EAE5C,QAAUE,GAA8C,CACtDA,EAAE,gBAAA,EACEH,EAAK,MAAM,SAAWA,EAAK,MAAM,QAAQG,CAAC,CAChD,CAAA,CACD,EAGH,SACG,MAAA,CAAI,UAAWV,EAAe,MAAO,CAAE,MAAAF,GACrC,SAAA,CAAAN,GAASmB,EAAC,QAAA,CAAM,UAAWR,EAAY,SAAA,CAAAX,EAAM,IAAEO,EAAM,UAAY,GAAA,EAAI,EACtEY,EAAC,MAAA,CAAI,UAAWP,EACb,SAAA,CAAAT,GAAaW,EAAWX,EAAgC,OAAO,EAChEiB,EAAC,QAAA,CAAO,GAAGb,EAAO,KAAAH,EAAY,SAAAC,CAAA,CAAoB,EACjDH,GAAWY,EAAWZ,EAA8B,MAAM,CAAA,EAC7D,EACAkB,EAAC,IAAA,CAAE,UAAWP,EAAiB,SAAAZ,CAAA,CAAW,CAAA,EAC5C,CAEJ,CAEA,MAAAoB,EAAeC,EAAgBxB,CAAK"}
package/dist/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./chunks/useTheme-DsrjDJKC.cjs"),i=require("./chunks/Bounce-ByNbJjX0.cjs"),e=require("./chunks/useForm-CD-_L271.cjs"),d=require("./chunks/Fade-DfxUFkY4.cjs"),n=require("./chunks/Option-COyiqmg0.cjs"),l=require("./chunks/Slide-D4aLHjYS.cjs"),u=require("./chunks/useTabs-DXjPVKGl.cjs"),o=require("./chunks/TableHeader-D0wXM5mO.cjs"),q=require("./chunks/Zoom-BOnqwiDY.cjs"),r=require("./chunks/DrawerContent-BkSL16Os.cjs"),c=require("./chunks/useListenerResized-AwpsZLcP.cjs"),a=require("./chunks/useMenu-BfWmrq4L.cjs"),T=require("./chunks/useResize-Dnf6Ktrn.cjs"),m=require("./chunks/Card-Bqgukgip.cjs"),C=require("./chunks/CardContent-DPL-tBOS.cjs"),s=require("./chunks/GridItem-wwo-SHGR.cjs"),b=require("./chunks/MenuButton-Dpbow8YC.cjs"),F=require("./chunks/Typography-Ch-BLqCH.cjs");require("react");require("react/jsx-runtime");require("./chunks/generateSupportColors-CTMoGhDf.cjs");require("./chunks/wait-CgS79FV1.cjs");require("./chunks/index-DYxwT4uW.cjs");require("./chunks/joinClass-Jk3EszKD.cjs");require("./chunks/Icon-BN4Kp4Aq.cjs");require("./chunks/createComponent-Bls5N6x8.cjs");require("./chunks/uuid-omnJ9TjZ.cjs");require("./chunks/Stack-CF3Wyma9.cjs");require("./chunks/ButtonIcon-Ccq88QaY.cjs");require("./chunks/Ripple-Dy4i91j1.cjs");require("./chunks/convertPathToColor-D8eBpd_D.cjs");exports.ThemeProvider=t.ThemeProvider;exports.createTheme=t.createTheme;exports.useTheme=t.useTheme;exports.Bounce=i.Bounce;exports.Control=e.Control;exports.Form=e.Form;exports.FormControl=e.FormControl;exports.FormGroup=e.FormGroup;exports.useControl=e.useControl;exports.useForm=e.useForm;exports.useFormGroup=e.useFormGroup;exports.Fade=d.Fade;exports.Option=n.Option;exports.Select=n.Select_default;exports.Slide=l.Slide;exports.TabButton=u.TabButton;exports.TabContent=u.TabContent;exports.Tabs=u.Tabs_default;exports.useTabs=u.useTabs;exports.Table=o.Table_default;exports.TableBody=o.TableBody;exports.TableCell=o.TableCell_default;exports.TableHeader=o.TableHeader;exports.Zoom=q.Zoom;exports.Drawer=r.Drawer_default;exports.DrawerContent=r.DrawerContent_default;exports.DrawerFooter=r.DrawerFooter_default;exports.DrawerHeader=r.DrawerHeader_default;exports.useDrawer=r.useDrawer;exports.useListenerResized=c.useListenerResized;exports.Menu=a.Menu;exports.useMenu=a.useMenu;exports.useResize=T.useResize;exports.Card=m.Card;exports.CardContent=C.CardContent;exports.Grid=s.Grid;exports.GridItem=s.GridItem;exports.MenuButton=b.MenuButton_default;exports.variants=F.variants;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("react/jsx-runtime");const t=require("./chunks/useTheme-DsrjDJKC.cjs"),i=require("./chunks/Bounce-ByNbJjX0.cjs"),e=require("./chunks/useForm-CD-_L271.cjs"),d=require("./chunks/Fade-DfxUFkY4.cjs"),n=require("./chunks/Option-COyiqmg0.cjs"),l=require("./chunks/Slide-D4aLHjYS.cjs"),u=require("./chunks/useTabs-DXjPVKGl.cjs"),o=require("./chunks/TableHeader-D0wXM5mO.cjs"),q=require("./chunks/Zoom-BOnqwiDY.cjs"),r=require("./chunks/DrawerContent-BkSL16Os.cjs"),c=require("./chunks/useListenerResized-AwpsZLcP.cjs"),a=require("./chunks/useMenu-BfWmrq4L.cjs"),T=require("./chunks/useResize-Dnf6Ktrn.cjs"),m=require("./chunks/Card-Bqgukgip.cjs"),C=require("./chunks/CardContent-DPL-tBOS.cjs"),s=require("./chunks/GridItem-wwo-SHGR.cjs"),b=require("./chunks/MenuButton-Dpbow8YC.cjs"),F=require("./chunks/Typography-Ch-BLqCH.cjs");require("react");require("./chunks/generateSupportColors-CTMoGhDf.cjs");require("./chunks/wait-CgS79FV1.cjs");require("./chunks/index-DYxwT4uW.cjs");require("./chunks/joinClass-Jk3EszKD.cjs");require("./chunks/Icon-BN4Kp4Aq.cjs");require("./chunks/createComponent-Bls5N6x8.cjs");require("./chunks/uuid-omnJ9TjZ.cjs");require("./chunks/Stack-CF3Wyma9.cjs");require("./chunks/ButtonIcon-Ccq88QaY.cjs");require("./chunks/Ripple-Dy4i91j1.cjs");require("./chunks/convertPathToColor-D8eBpd_D.cjs");exports.ThemeProvider=t.ThemeProvider;exports.createTheme=t.createTheme;exports.useTheme=t.useTheme;exports.Bounce=i.Bounce;exports.Control=e.Control;exports.Form=e.Form;exports.FormControl=e.FormControl;exports.FormGroup=e.FormGroup;exports.useControl=e.useControl;exports.useForm=e.useForm;exports.useFormGroup=e.useFormGroup;exports.Fade=d.Fade;exports.Option=n.Option;exports.Select=n.Select_default;exports.Slide=l.Slide;exports.TabButton=u.TabButton;exports.TabContent=u.TabContent;exports.Tabs=u.Tabs_default;exports.useTabs=u.useTabs;exports.Table=o.Table_default;exports.TableBody=o.TableBody;exports.TableCell=o.TableCell_default;exports.TableHeader=o.TableHeader;exports.Zoom=q.Zoom;exports.Drawer=r.Drawer_default;exports.DrawerContent=r.DrawerContent_default;exports.DrawerFooter=r.DrawerFooter_default;exports.DrawerHeader=r.DrawerHeader_default;exports.useDrawer=r.useDrawer;exports.useListenerResized=c.useListenerResized;exports.Menu=a.Menu;exports.useMenu=a.useMenu;exports.useResize=T.useResize;exports.Card=m.Card;exports.CardContent=C.CardContent;exports.Grid=s.Grid;exports.GridItem=s.GridItem;exports.MenuButton=b.MenuButton_default;exports.variants=F.variants;
2
2
  //# sourceMappingURL=index.cjs.map
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import{T as d,c as C,u as l}from"./chunks/useTheme-BYuNiCiH.js";import{B as c}from"./chunks/Bounce-DP0PU3kr.js";import{C as w,F as B,a as G,b as M,u as S,c as h,d as v}from"./chunks/useForm-CRRXYOep.js";import{F as H}from"./chunks/Fade-CWDTkVB8.js";import{O as R,S as Z}from"./chunks/Option-CzDngSSk.js";import{S as I}from"./chunks/Slide-BxEwoZ70.js";import{T as P,a as g,b as j,u as k}from"./chunks/useTabs-C10MlXVP.js";import{T as A,a as E,b as J,c as K}from"./chunks/TableHeader-CrbbJXyv.js";import{Z as Q}from"./chunks/Zoom-DqgU4Wfv.js";import{D as V,a as W,b as X,c as Y,u as _}from"./chunks/DrawerContent-D8NDBDBf.js";import{u as rr}from"./chunks/useListenerResized-Bnqxrt7k.js";import{M as er,u as ar}from"./chunks/useMenu-B49hOh6R.js";import{u as tr}from"./chunks/useResize-BUftB918.js";import{C as pr}from"./chunks/Card-C2mSdoXV.js";import{C as ir}from"./chunks/CardContent-CViecz1a.js";import{G as nr,a as xr}from"./chunks/GridItem-CaoPZmBu.js";import{M as br}from"./chunks/MenuButton-31ZFG3JW.js";import{v as Cr}from"./chunks/Typography-B_WR62ip.js";import"react";import"react/jsx-runtime";import"./chunks/generateSupportColors-BN5t8dA-.js";import"./chunks/wait-BSgGzoPk.js";import"./chunks/index-CZ41y9Hn.js";import"./chunks/joinClass-anSpaauN.js";import"./chunks/Icon-DTU52KQE.js";import"./chunks/createComponent-BmdhWozT.js";import"./chunks/uuid-dGvr9vBZ.js";import"./chunks/Stack-CHR_pZC4.js";import"./chunks/ButtonIcon-DMetcfYt.js";import"./chunks/Ripple-Bq9bxg4k.js";import"./chunks/convertPathToColor-DtOjH4ZP.js";export{c as Bounce,pr as Card,ir as CardContent,w as Control,V as Drawer,W as DrawerContent,X as DrawerFooter,Y as DrawerHeader,H as Fade,B as Form,G as FormControl,M as FormGroup,nr as Grid,xr as GridItem,er as Menu,br as MenuButton,R as Option,Z as Select,I as Slide,P as TabButton,g as TabContent,A as Table,E as TableBody,J as TableCell,K as TableHeader,j as Tabs,d as ThemeProvider,Q as Zoom,C as createTheme,S as useControl,_ as useDrawer,h as useForm,v as useFormGroup,rr as useListenerResized,ar as useMenu,tr as useResize,k as useTabs,l as useTheme,Cr as variants};
1
+ import"react/jsx-runtime";import{T as d,c as C,u as l}from"./chunks/useTheme-BYuNiCiH.js";import{B as c}from"./chunks/Bounce-DP0PU3kr.js";import{C as w,F as B,a as G,b as M,u as S,c as h,d as v}from"./chunks/useForm-CRRXYOep.js";import{F as H}from"./chunks/Fade-CWDTkVB8.js";import{O as R,S as Z}from"./chunks/Option-CzDngSSk.js";import{S as I}from"./chunks/Slide-BxEwoZ70.js";import{T as P,a as g,b as j,u as k}from"./chunks/useTabs-C10MlXVP.js";import{T as A,a as E,b as J,c as K}from"./chunks/TableHeader-CrbbJXyv.js";import{Z as Q}from"./chunks/Zoom-DqgU4Wfv.js";import{D as V,a as W,b as X,c as Y,u as _}from"./chunks/DrawerContent-D8NDBDBf.js";import{u as rr}from"./chunks/useListenerResized-Bnqxrt7k.js";import{M as er,u as ar}from"./chunks/useMenu-B49hOh6R.js";import{u as tr}from"./chunks/useResize-BUftB918.js";import{C as pr}from"./chunks/Card-C2mSdoXV.js";import{C as ir}from"./chunks/CardContent-CViecz1a.js";import{G as nr,a as xr}from"./chunks/GridItem-CaoPZmBu.js";import{M as br}from"./chunks/MenuButton-31ZFG3JW.js";import{v as Cr}from"./chunks/Typography-B_WR62ip.js";import"react";import"./chunks/generateSupportColors-BN5t8dA-.js";import"./chunks/wait-BSgGzoPk.js";import"./chunks/index-CZ41y9Hn.js";import"./chunks/joinClass-anSpaauN.js";import"./chunks/Icon-DTU52KQE.js";import"./chunks/createComponent-BmdhWozT.js";import"./chunks/uuid-dGvr9vBZ.js";import"./chunks/Stack-CHR_pZC4.js";import"./chunks/ButtonIcon-DMetcfYt.js";import"./chunks/Ripple-Bq9bxg4k.js";import"./chunks/convertPathToColor-DtOjH4ZP.js";export{c as Bounce,pr as Card,ir as CardContent,w as Control,V as Drawer,W as DrawerContent,X as DrawerFooter,Y as DrawerHeader,H as Fade,B as Form,G as FormControl,M as FormGroup,nr as Grid,xr as GridItem,er as Menu,br as MenuButton,R as Option,Z as Select,I as Slide,P as TabButton,g as TabContent,A as Table,E as TableBody,J as TableCell,K as TableHeader,j as Tabs,d as ThemeProvider,Q as Zoom,C as createTheme,S as useControl,_ as useDrawer,h as useForm,v as useFormGroup,rr as useListenerResized,ar as useMenu,tr as useResize,k as useTabs,l as useTheme,Cr as variants};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../chunks/useTheme-DsrjDJKC.cjs");require("react");require("react/jsx-runtime");require("../chunks/generateSupportColors-CTMoGhDf.cjs");exports.ThemeProvider=e.ThemeProvider;exports.createTheme=e.createTheme;exports.useTheme=e.useTheme;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("react/jsx-runtime");const e=require("../chunks/useTheme-DsrjDJKC.cjs");require("react");require("../chunks/generateSupportColors-CTMoGhDf.cjs");exports.ThemeProvider=e.ThemeProvider;exports.createTheme=e.createTheme;exports.useTheme=e.useTheme;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1,2 +1,2 @@
1
- import{T as a,c as i,u as p}from"../chunks/useTheme-BYuNiCiH.js";import"react";import"react/jsx-runtime";import"../chunks/generateSupportColors-BN5t8dA-.js";export{a as ThemeProvider,i as createTheme,p as useTheme};
1
+ import"react/jsx-runtime";import{T as a,c as i,u as p}from"../chunks/useTheme-BYuNiCiH.js";import"react";import"../chunks/generateSupportColors-BN5t8dA-.js";export{a as ThemeProvider,i as createTheme,p as useTheme};
2
2
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iziui/react",
3
- "version": "0.0.98-rc",
3
+ "version": "0.0.99-rc",
4
4
  "main": "./dist/index.cjs",
5
5
  "module": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",