@e1011/es-kit 1.1.50 → 1.1.52

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.
Files changed (36) hide show
  1. package/dist/hooks/esm/index.css +277 -277
  2. package/dist/hooks/index.css +277 -277
  3. package/dist/lib/cjs/src/core/ui/components/atoms/tag/tag.types.js.map +1 -1
  4. package/dist/lib/cjs/src/core/ui/components/field/Field.js.map +1 -1
  5. package/dist/lib/esm/src/core/ui/components/atoms/tag/tag.types.js.map +1 -1
  6. package/dist/lib/esm/src/core/ui/components/field/Field.js.map +1 -1
  7. package/dist/lib/tsconfig.tsbuildinfo +1 -1
  8. package/dist/types/src/core/index.d.ts +0 -1
  9. package/dist/types/src/core/index.d.ts.map +1 -1
  10. package/dist/types/src/core/ui/components/atoms/tag/tag.types.d.ts +1 -1
  11. package/dist/types/src/core/ui/components/atoms/tag/tag.types.d.ts.map +1 -1
  12. package/dist/types/src/core/ui/components/atoms/text/text.types.d.ts +1 -1
  13. package/dist/types/src/core/ui/components/atoms/text/text.types.d.ts.map +1 -1
  14. package/dist/types/src/core/ui/components/atoms/toggle/Toggle.d.ts +12 -0
  15. package/dist/types/src/core/ui/components/atoms/toggle/Toggle.d.ts.map +1 -0
  16. package/dist/types/src/core/ui/components/atoms/toggle/toggle.stories.d.ts +13 -0
  17. package/dist/types/src/core/ui/components/atoms/toggle/toggle.stories.d.ts.map +1 -0
  18. package/dist/types/src/core/ui/components/atoms/toggle/toggle.test.d.ts +5 -0
  19. package/dist/types/src/core/ui/components/atoms/toggle/toggle.test.d.ts.map +1 -0
  20. package/dist/types/src/core/ui/components/field/Field.d.ts +1 -0
  21. package/dist/types/src/core/ui/components/field/Field.d.ts.map +1 -1
  22. package/dist/types/src/core/ui/index.d.ts +1 -0
  23. package/dist/types/src/core/ui/index.d.ts.map +1 -1
  24. package/dist/types/src/core/ui/types/CommonProps.d.ts +4 -0
  25. package/dist/types/src/core/ui/types/CommonProps.d.ts.map +1 -1
  26. package/dist/types/src/core/ui/types/index.d.ts +2 -0
  27. package/dist/types/src/core/ui/types/index.d.ts.map +1 -0
  28. package/dist/ui/esm/src/core/ui/components/atoms/tag/tag.types.js.map +1 -1
  29. package/dist/ui/esm/src/core/ui/components/field/Field.js.map +1 -1
  30. package/dist/ui/src/core/ui/components/atoms/tag/tag.types.js.map +1 -1
  31. package/dist/ui/src/core/ui/components/field/Field.js.map +1 -1
  32. package/dist/utils/esm/index.css +277 -277
  33. package/dist/utils/index.css +277 -277
  34. package/package.json +1 -1
  35. package/dist/types/src/core/types/CommonProps.d.ts +0 -11
  36. package/dist/types/src/core/types/CommonProps.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Field.js","sources":["../../../../../../../../src/core/ui/components/field/Field.tsx"],"sourcesContent":["/* eslint-disable react/jsx-props-no-spreading */\n/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/click-events-have-key-events */\nimport { FC, ReactNode, memo, useMemo, useCallback, PropsWithChildren, CSSProperties, createElement } from 'react'\n\nimport { classNames } from '../../../utils/helpers/ui'\n\nimport classes from './field.module.scss'\nimport type { FieldError, IconComponentType } from './types'\n\nlet iconColor: string | (() => string) = () => '#000000'\n\nexport const setIconColor = (color: string | (() => string)): void => {\n iconColor = color\n}\n\nlet IconComponent: IconComponentType = memo(function IconComponent() { return <span /> })\n\nexport const setIconComponent = (component: IconComponentType): void => {\n IconComponent = component\n}\n\nexport type FileWrapperProps = PropsWithChildren<unknown> & {\n className?: string\n error?: boolean\n disabled?: boolean\n userDisabled?: boolean\n css?: string\n}\n\ntype EventType = { target: any; type?: any } & Partial<Event>\nexport interface FieldProps {\n label?: string\n name?: string\n type?: string\n min?: number | string | Date | any\n max?: number | string | Date | any\n value?: string | number | readonly string[] | undefined\n defaultValue?: string | number | readonly string[] | undefined\n placeholder?: string\n inputRef?: ReactHookFormRef\n error?: boolean\n errors?: FieldError\n disabled?: boolean\n userDisabled?: boolean\n helpTextInfo?: string\n helpText?: string\n iconLeft?: string\n iconRight?: string\n withoutComponent?: boolean\n addon?: ReactNode\n children?: ReactNode\n className?: string\n onChange?: (event?: EventType) => unknown\n // TODO, rename... something like changeHandler or valueDecorator\n onChangeInner?: (value: string | number) => string | number\n onBlur?: (event?: EventType) => void\n onFocus?: (event?: EventType | undefined) => void\n rightIconClick?: (event?: EventType) => void\n leftIconClick?: (event?: EventType) => void\n options?: any[] | null\n creatable?: boolean\n async?: boolean\n style?: CSSProperties\n [key: string]: any\n}\n\ninterface SelectProps extends FieldProps {\n id?: string\n}\n\ntype OptionObj = { label: string | number | undefined; value: string | number | undefined }\ntype Option = OptionObj | string | number\n\nexport const Select: FC<SelectProps>\n= memo<SelectProps>(\n function Select({ options, value, inputRef, ...props }: SelectProps) {\n return (\n <div className='select'>\n <select {...props} ref={inputRef} defaultValue={value}>\n {options?.map((option: Option) => (\n <option\n key={`${JSON.stringify(option)}`}\n value={typeof option === 'object' ? (option as OptionObj)?.value : option}\n >\n {typeof option === 'object' ? (option as OptionObj)?.label : option}\n </option>\n ))}\n </select>\n </div>\n )\n },\n)\nconst TextAreaComponent = memo((props) => createElement('textarea', props))\n\nTextAreaComponent.displayName = 'TextAreaComponent'\n\nconst InputComponent = memo((props) => createElement('input', props))\n\nInputComponent.displayName = 'InputComponent'\n\nexport const Field: FC<FieldProps> = memo<FieldProps>(({\n label,\n name,\n type = 'text',\n value,\n defaultValue,\n placeholder,\n inputRef,\n error,\n disabled,\n userDisabled,\n withoutComponent,\n helpTextInfo,\n helpText,\n children,\n iconLeft,\n iconRight,\n addon,\n className,\n onChange,\n onChangeInner,\n onBlur,\n onFocus,\n rightIconClick,\n leftIconClick,\n options,\n style,\n ...props\n}: FieldProps) => {\n let Component: FC<any> = InputComponent\n\n if (!children && type === 'textarea') {\n Component = TextAreaComponent\n }\n const handleFocus = useCallback((event: Event | EventType | undefined) => {\n if (userDisabled) {\n event?.preventDefault?.()\n } else {\n onFocus && onFocus(event)\n }\n }, [userDisabled, onFocus])\n\n const handleChange = useCallback((event: { target: { value: string } }) => {\n if (userDisabled) {\n return\n }\n if (onChangeInner && event?.target) {\n // eslint-disable-next-line no-param-reassign\n event.target.value = onChangeInner((event.target.value as string)) as string\n onChange && onChange(event as EventType)\n } else {\n onChange && onChange(event as EventType)\n }\n }, [onChangeInner, onChange, userDisabled])\n\n const valueProps = useMemo(() => {\n if (value === undefined) {\n return { defaultValue }\n }\n return { value }\n }, [value, defaultValue])\n\n return (\n <div\n className={classNames(\n classes.field,\n (disabled || userDisabled) && classes.disable,\n className,\n )}\n // TODO fix\n // error={error}\n style={style}\n >\n <label htmlFor={name} className='label'>{label}</label>\n <div className={`field ${addon ? 'has-addons' : ''}`}>\n <div\n className={`control mainControl ${iconLeft && !withoutComponent\n ? 'has-icons-left' : ''} ${iconRight ? 'has-icons-right' : ''}`}\n >\n {!withoutComponent && ((!children && (type === 'select' || options))\n ? (\n <Select\n name={name}\n id={name}\n inputRef={inputRef}\n className={`input ${error ? 'is-danger' : ''}`}\n type='select'\n placeholder={placeholder}\n value={value}\n options={options}\n // TODO also handle change but value versus event.target.value issue\n onChange={onChange}\n onBlur={onBlur}\n onFocus={handleFocus}\n onKeyDown={handleFocus}\n autoComplete='off'\n disabled={disabled}\n {...props}\n />\n )\n : (\n !children && (\n <Component\n name={name}\n id={name}\n ref={inputRef}\n className={`input ${error ? 'is-danger' : ''}`}\n type={type}\n placeholder={placeholder}\n {...valueProps}\n onChange={handleChange}\n onBlur={onBlur}\n onFocus={handleFocus}\n onKeyDown={handleFocus}\n autoComplete='off'\n disabled={disabled}\n {...props}\n />\n )))}\n\n {iconLeft && !withoutComponent && (\n <span\n className={`iconLeft icon is-small is-left ${leftIconClick ? 'is-action' : ''}`}\n onClick={leftIconClick}\n >\n <IconComponent\n iconName={iconLeft}\n color={iconColor}\n />\n </span>\n )}\n {iconRight && (\n <span\n className={`iconRight icon is-small is-right ${rightIconClick ? 'is-action' : ''}`}\n onClick={rightIconClick}\n >\n <IconComponent\n iconName={iconRight}\n color={iconColor}\n />\n </span>\n )}\n {children && children}\n </div>\n {addon && addon}\n </div>\n {helpTextInfo && <p className='help'>{helpTextInfo}</p>}\n {helpText && <p className={`help ${error ? 'is-danger' : ''}`}>{helpText}</p>}\n </div>\n )\n})\n\nField.displayName = 'Field'\n"],"names":["iconColor","setIconColor","color","IconComponent","memo","React","createElement","setIconComponent","component","Select","_ref","options","value","inputRef","props","className","_extends","ref","defaultValue","map","option","key","JSON","stringify","label","TextAreaComponent","displayName","InputComponent","Field","_ref2","name","type","placeholder","error","disabled","userDisabled","withoutComponent","helpTextInfo","helpText","children","iconLeft","iconRight","addon","onChange","onChangeInner","onBlur","onFocus","rightIconClick","leftIconClick","style","Component","handleFocus","useCallback","event","preventDefault","handleChange","target","valueProps","useMemo","undefined","classNames","classes","field","disable","htmlFor","id","onKeyDown","autoComplete","onClick","iconName"],"mappings":"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"}
1
+ {"version":3,"file":"Field.js","sources":["../../../../../../../../src/core/ui/components/field/Field.tsx"],"sourcesContent":["/* eslint-disable react/jsx-props-no-spreading */\n/* eslint-disable jsx-a11y/no-static-element-interactions */\n/* eslint-disable jsx-a11y/click-events-have-key-events */\nimport { FC, ReactNode, memo, useMemo, useCallback, PropsWithChildren, CSSProperties, createElement } from 'react'\n\nimport { classNames } from '../../../utils/helpers/ui'\n\nimport classes from './field.module.scss'\nimport type { FieldError, IconComponentType } from './types'\n\nlet iconColor: string | (() => string) = () => '#000000'\n\nexport const setIconColor = (color: string | (() => string)): void => {\n iconColor = color\n}\n\nlet IconComponent: IconComponentType = memo(function IconComponent() { return <span /> })\n\nexport const setIconComponent = (component: IconComponentType): void => {\n IconComponent = component\n}\n\nexport type FileWrapperProps = PropsWithChildren<unknown> & {\n className?: string\n error?: boolean\n disabled?: boolean\n userDisabled?: boolean\n css?: string\n}\n\ntype EventType = { target: any; type?: any } & Partial<Event>\nexport interface FieldProps {\n label?: string\n name?: string\n type?: string\n min?: number | string | Date | any\n max?: number | string | Date | any\n value?: string | number | readonly string[] | undefined\n defaultValue?: string | number | readonly string[] | undefined\n placeholder?: string\n inputRef?: ReactHookFormRef\n error?: boolean\n errors?: FieldError\n disabled?: boolean\n userDisabled?: boolean\n checked?: boolean\n helpTextInfo?: string\n helpText?: string\n iconLeft?: string\n iconRight?: string\n withoutComponent?: boolean\n addon?: ReactNode\n children?: ReactNode\n className?: string\n onChange?: (event?: EventType) => unknown\n // TODO, rename... something like changeHandler or valueDecorator\n onChangeInner?: (value: string | number) => string | number\n onBlur?: (event?: EventType) => void\n onFocus?: (event?: EventType | undefined) => void\n rightIconClick?: (event?: EventType) => void\n leftIconClick?: (event?: EventType) => void\n options?: any[] | null\n creatable?: boolean\n async?: boolean\n style?: CSSProperties\n [key: string]: any\n}\n\ninterface SelectProps extends FieldProps {\n id?: string\n}\n\ntype OptionObj = { label: string | number | undefined; value: string | number | undefined }\ntype Option = OptionObj | string | number\n\nexport const Select: FC<SelectProps>\n= memo<SelectProps>(\n function Select({ options, value, inputRef, ...props }: SelectProps) {\n return (\n <div className='select'>\n <select {...props} ref={inputRef} defaultValue={value}>\n {options?.map((option: Option) => (\n <option\n key={`${JSON.stringify(option)}`}\n value={typeof option === 'object' ? (option as OptionObj)?.value : option}\n >\n {typeof option === 'object' ? (option as OptionObj)?.label : option}\n </option>\n ))}\n </select>\n </div>\n )\n },\n)\nconst TextAreaComponent = memo((props) => createElement('textarea', props))\n\nTextAreaComponent.displayName = 'TextAreaComponent'\n\nconst InputComponent = memo((props) => createElement('input', props))\n\nInputComponent.displayName = 'InputComponent'\n\nexport const Field: FC<FieldProps> = memo<FieldProps>(({\n label,\n name,\n type = 'text',\n value,\n defaultValue,\n placeholder,\n inputRef,\n error,\n disabled,\n userDisabled,\n withoutComponent,\n helpTextInfo,\n helpText,\n children,\n iconLeft,\n iconRight,\n addon,\n className,\n onChange,\n onChangeInner,\n onBlur,\n onFocus,\n rightIconClick,\n leftIconClick,\n options,\n style,\n ...props\n}: FieldProps) => {\n let Component: FC<any> = InputComponent\n\n if (!children && type === 'textarea') {\n Component = TextAreaComponent\n }\n const handleFocus = useCallback((event: Event | EventType | undefined) => {\n if (userDisabled) {\n event?.preventDefault?.()\n } else {\n onFocus && onFocus(event)\n }\n }, [userDisabled, onFocus])\n\n const handleChange = useCallback((event: { target: { value: string } }) => {\n if (userDisabled) {\n return\n }\n if (onChangeInner && event?.target) {\n // eslint-disable-next-line no-param-reassign\n event.target.value = onChangeInner((event.target.value as string)) as string\n onChange && onChange(event as EventType)\n } else {\n onChange && onChange(event as EventType)\n }\n }, [onChangeInner, onChange, userDisabled])\n\n const valueProps = useMemo(() => {\n if (value === undefined) {\n return { defaultValue }\n }\n return { value }\n }, [value, defaultValue])\n\n return (\n <div\n className={classNames(\n classes.field,\n (disabled || userDisabled) && classes.disable,\n className,\n )}\n // TODO fix\n // error={error}\n style={style}\n >\n <label htmlFor={name} className='label'>{label}</label>\n <div className={`field ${addon ? 'has-addons' : ''}`}>\n <div\n className={`control mainControl ${iconLeft && !withoutComponent\n ? 'has-icons-left' : ''} ${iconRight ? 'has-icons-right' : ''}`}\n >\n {!withoutComponent && ((!children && (type === 'select' || options))\n ? (\n <Select\n name={name}\n id={name}\n inputRef={inputRef}\n className={`input ${error ? 'is-danger' : ''}`}\n type='select'\n placeholder={placeholder}\n value={value}\n options={options}\n // TODO also handle change but value versus event.target.value issue\n onChange={onChange}\n onBlur={onBlur}\n onFocus={handleFocus}\n onKeyDown={handleFocus}\n autoComplete='off'\n disabled={disabled}\n {...props}\n />\n )\n : (\n !children && (\n <Component\n name={name}\n id={name}\n ref={inputRef}\n className={`input ${error ? 'is-danger' : ''}`}\n type={type}\n placeholder={placeholder}\n {...valueProps}\n onChange={handleChange}\n onBlur={onBlur}\n onFocus={handleFocus}\n onKeyDown={handleFocus}\n autoComplete='off'\n disabled={disabled}\n {...props}\n />\n )))}\n\n {iconLeft && !withoutComponent && (\n <span\n className={`iconLeft icon is-small is-left ${leftIconClick ? 'is-action' : ''}`}\n onClick={leftIconClick}\n >\n <IconComponent\n iconName={iconLeft}\n color={iconColor}\n />\n </span>\n )}\n {iconRight && (\n <span\n className={`iconRight icon is-small is-right ${rightIconClick ? 'is-action' : ''}`}\n onClick={rightIconClick}\n >\n <IconComponent\n iconName={iconRight}\n color={iconColor}\n />\n </span>\n )}\n {children && children}\n </div>\n {addon && addon}\n </div>\n {helpTextInfo && <p className='help'>{helpTextInfo}</p>}\n {helpText && <p className={`help ${error ? 'is-danger' : ''}`}>{helpText}</p>}\n </div>\n )\n})\n\nField.displayName = 'Field'\n"],"names":["iconColor","setIconColor","color","IconComponent","memo","React","createElement","setIconComponent","component","Select","_ref","options","value","inputRef","props","className","_extends","ref","defaultValue","map","option","key","JSON","stringify","label","TextAreaComponent","displayName","InputComponent","Field","_ref2","name","type","placeholder","error","disabled","userDisabled","withoutComponent","helpTextInfo","helpText","children","iconLeft","iconRight","addon","onChange","onChangeInner","onBlur","onFocus","rightIconClick","leftIconClick","style","Component","handleFocus","useCallback","event","preventDefault","handleChange","target","valueProps","useMemo","undefined","classNames","classes","field","disable","htmlFor","id","onKeyDown","autoComplete","onClick","iconName"],"mappings":"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"}