tdesign-react 0.31.2-alpha.1 → 0.31.2-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -1
- package/dist/tdesign.css +498 -0
- package/dist/tdesign.css.map +1 -1
- package/dist/tdesign.js +26543 -20076
- package/dist/tdesign.js.map +1 -1
- package/dist/tdesign.min.css +1 -1
- package/dist/tdesign.min.css.map +1 -1
- package/dist/tdesign.min.js +9 -3
- package/dist/tdesign.min.js.map +1 -1
- package/es/_chunks/{dep-5d29cc59.js → dep-7e7b26b4.js} +1 -1
- package/es/_chunks/{dep-5d29cc59.js.map → dep-7e7b26b4.js.map} +1 -1
- package/es/_common/js/color-picker/cmyk.d.ts +27 -0
- package/es/_common/js/color-picker/color.d.ts +154 -0
- package/es/_common/js/color-picker/gradient.d.ts +22 -0
- package/es/_util/useClickOutside.d.ts +1 -1
- package/es/_util/useClickOutside.js +51 -3
- package/es/_util/useClickOutside.js.map +1 -1
- package/es/_util/useDrag.d.ts +16 -0
- package/es/_util/useDrag.js +74 -0
- package/es/_util/useDrag.js.map +1 -0
- package/es/avatar/AvararGroup.js +1 -1
- package/es/avatar/Avatar.js +1 -1
- package/es/avatar/index.js +1 -1
- package/es/color-picker/ColorPicker.d.ts +4 -0
- package/es/color-picker/ColorPicker.js +241 -0
- package/es/color-picker/ColorPicker.js.map +1 -0
- package/es/color-picker/ColorPickerPanel.d.ts +7 -0
- package/es/color-picker/ColorPickerPanel.js +179 -0
- package/es/color-picker/ColorPickerPanel.js.map +1 -0
- package/es/color-picker/components/panel/alpha.d.ts +4 -0
- package/es/color-picker/components/panel/alpha.js +48 -0
- package/es/color-picker/components/panel/alpha.js.map +1 -0
- package/es/color-picker/components/panel/format/config.d.ts +19 -0
- package/es/color-picker/components/panel/format/config.js +90 -0
- package/es/color-picker/components/panel/format/config.js.map +1 -0
- package/es/color-picker/components/panel/format/index.d.ts +11 -0
- package/es/color-picker/components/panel/format/index.js +197 -0
- package/es/color-picker/components/panel/format/index.js.map +1 -0
- package/es/color-picker/components/panel/format/inputs.d.ts +3 -0
- package/es/color-picker/components/panel/format/inputs.js +223 -0
- package/es/color-picker/components/panel/format/inputs.js.map +1 -0
- package/es/color-picker/components/panel/header.d.ts +14 -0
- package/es/color-picker/components/panel/header.js +100 -0
- package/es/color-picker/components/panel/header.js.map +1 -0
- package/es/color-picker/components/panel/hue.d.ts +4 -0
- package/es/color-picker/components/panel/hue.js +32 -0
- package/es/color-picker/components/panel/hue.js.map +1 -0
- package/es/color-picker/components/panel/index.d.ts +4 -0
- package/es/color-picker/components/panel/index.js +456 -0
- package/es/color-picker/components/panel/index.js.map +1 -0
- package/es/color-picker/components/panel/linear-gradient.d.ts +3 -0
- package/es/color-picker/components/panel/linear-gradient.js +360 -0
- package/es/color-picker/components/panel/linear-gradient.js.map +1 -0
- package/es/color-picker/components/panel/saturation.d.ts +4 -0
- package/es/color-picker/components/panel/saturation.js +124 -0
- package/es/color-picker/components/panel/saturation.js.map +1 -0
- package/es/color-picker/components/panel/slider.d.ts +10 -0
- package/es/color-picker/components/panel/slider.js +106 -0
- package/es/color-picker/components/panel/slider.js.map +1 -0
- package/es/color-picker/components/panel/style/css.d.ts +1 -0
- package/es/color-picker/components/panel/style/css.js +1 -0
- package/es/color-picker/components/panel/style/index.d.ts +1 -0
- package/es/color-picker/components/panel/style/index.js +7 -0
- package/es/color-picker/components/panel/style/index.js.map +1 -0
- package/es/color-picker/components/panel/swatches.d.ts +11 -0
- package/es/color-picker/components/panel/swatches.js +134 -0
- package/es/color-picker/components/panel/swatches.js.map +1 -0
- package/es/color-picker/components/style/css.d.ts +1 -0
- package/es/color-picker/components/style/css.js +1 -0
- package/es/color-picker/components/style/index.d.ts +1 -0
- package/es/color-picker/components/style/index.js +7 -0
- package/es/color-picker/components/style/index.js.map +1 -0
- package/es/color-picker/components/trigger.d.ts +9 -0
- package/es/color-picker/components/trigger.js +125 -0
- package/es/color-picker/components/trigger.js.map +1 -0
- package/es/color-picker/const.d.ts +15 -0
- package/es/color-picker/const.js +22 -0
- package/es/color-picker/const.js.map +1 -0
- package/es/color-picker/hooks/useClassname.d.ts +2 -0
- package/es/color-picker/hooks/useClassname.js +46 -0
- package/es/color-picker/hooks/useClassname.js.map +1 -0
- package/es/color-picker/index.d.ts +10 -0
- package/es/color-picker/index.js +172 -0
- package/es/color-picker/index.js.map +1 -0
- package/es/color-picker/interface.d.ts +23 -0
- package/es/color-picker/interface.js +7 -0
- package/es/color-picker/interface.js.map +1 -0
- package/es/color-picker/style/css.d.ts +1 -0
- package/es/color-picker/style/css.js +1 -0
- package/es/color-picker/style/index.css +497 -0
- package/es/color-picker/style/index.d.ts +1 -0
- package/es/color-picker/style/index.js +7 -0
- package/es/color-picker/style/index.js.map +1 -0
- package/es/color-picker/type.d.ts +109 -0
- package/es/color-picker/type.js +7 -0
- package/es/color-picker/type.js.map +1 -0
- package/es/index.d.ts +1 -0
- package/es/index.js +24 -1
- package/es/index.js.map +1 -1
- package/es/input/Input.js +1 -1
- package/es/input/Input.js.map +1 -1
- package/es/popup/hooks/useTriggerProps.js +28 -0
- package/es/popup/hooks/useTriggerProps.js.map +1 -1
- package/esm/_chunks/{dep-5d29cc59.js → dep-7e7b26b4.js} +1 -1
- package/esm/_chunks/{dep-5d29cc59.js.map → dep-7e7b26b4.js.map} +1 -1
- package/esm/_common/js/color-picker/cmyk.d.ts +27 -0
- package/esm/_common/js/color-picker/color.d.ts +154 -0
- package/esm/_common/js/color-picker/gradient.d.ts +22 -0
- package/esm/_util/useClickOutside.d.ts +1 -1
- package/esm/_util/useClickOutside.js +51 -3
- package/esm/_util/useClickOutside.js.map +1 -1
- package/esm/_util/useDrag.d.ts +16 -0
- package/esm/_util/useDrag.js +74 -0
- package/esm/_util/useDrag.js.map +1 -0
- package/esm/avatar/AvararGroup.js +1 -1
- package/esm/avatar/Avatar.js +1 -1
- package/esm/avatar/index.js +1 -1
- package/esm/color-picker/ColorPicker.d.ts +4 -0
- package/esm/color-picker/ColorPicker.js +250 -0
- package/esm/color-picker/ColorPicker.js.map +1 -0
- package/esm/color-picker/ColorPickerPanel.d.ts +7 -0
- package/esm/color-picker/ColorPickerPanel.js +188 -0
- package/esm/color-picker/ColorPickerPanel.js.map +1 -0
- package/esm/color-picker/components/panel/alpha.d.ts +4 -0
- package/esm/color-picker/components/panel/alpha.js +48 -0
- package/esm/color-picker/components/panel/alpha.js.map +1 -0
- package/esm/color-picker/components/panel/format/config.d.ts +19 -0
- package/esm/color-picker/components/panel/format/config.js +90 -0
- package/esm/color-picker/components/panel/format/config.js.map +1 -0
- package/esm/color-picker/components/panel/format/index.d.ts +11 -0
- package/esm/color-picker/components/panel/format/index.js +205 -0
- package/esm/color-picker/components/panel/format/index.js.map +1 -0
- package/esm/color-picker/components/panel/format/inputs.d.ts +3 -0
- package/esm/color-picker/components/panel/format/inputs.js +226 -0
- package/esm/color-picker/components/panel/format/inputs.js.map +1 -0
- package/esm/color-picker/components/panel/header.d.ts +14 -0
- package/esm/color-picker/components/panel/header.js +100 -0
- package/esm/color-picker/components/panel/header.js.map +1 -0
- package/esm/color-picker/components/panel/hue.d.ts +4 -0
- package/esm/color-picker/components/panel/hue.js +32 -0
- package/esm/color-picker/components/panel/hue.js.map +1 -0
- package/esm/color-picker/components/panel/index.d.ts +4 -0
- package/esm/color-picker/components/panel/index.js +465 -0
- package/esm/color-picker/components/panel/index.js.map +1 -0
- package/esm/color-picker/components/panel/linear-gradient.d.ts +3 -0
- package/esm/color-picker/components/panel/linear-gradient.js +363 -0
- package/esm/color-picker/components/panel/linear-gradient.js.map +1 -0
- package/esm/color-picker/components/panel/saturation.d.ts +4 -0
- package/esm/color-picker/components/panel/saturation.js +124 -0
- package/esm/color-picker/components/panel/saturation.js.map +1 -0
- package/esm/color-picker/components/panel/slider.d.ts +10 -0
- package/esm/color-picker/components/panel/slider.js +106 -0
- package/esm/color-picker/components/panel/slider.js.map +1 -0
- package/esm/color-picker/components/panel/style/css.d.ts +1 -0
- package/esm/color-picker/components/panel/style/index.d.ts +1 -0
- package/esm/color-picker/components/panel/style/index.js +1 -0
- package/esm/color-picker/components/panel/swatches.d.ts +11 -0
- package/esm/color-picker/components/panel/swatches.js +134 -0
- package/esm/color-picker/components/panel/swatches.js.map +1 -0
- package/esm/color-picker/components/style/css.d.ts +1 -0
- package/esm/color-picker/components/style/index.d.ts +1 -0
- package/esm/color-picker/components/style/index.js +1 -0
- package/esm/color-picker/components/trigger.d.ts +9 -0
- package/esm/color-picker/components/trigger.js +125 -0
- package/esm/color-picker/components/trigger.js.map +1 -0
- package/esm/color-picker/const.d.ts +15 -0
- package/esm/color-picker/const.js +22 -0
- package/esm/color-picker/const.js.map +1 -0
- package/esm/color-picker/hooks/useClassname.d.ts +2 -0
- package/esm/color-picker/hooks/useClassname.js +46 -0
- package/esm/color-picker/hooks/useClassname.js.map +1 -0
- package/esm/color-picker/index.d.ts +10 -0
- package/esm/color-picker/index.js +182 -0
- package/esm/color-picker/index.js.map +1 -0
- package/esm/color-picker/interface.d.ts +23 -0
- package/esm/color-picker/interface.js +7 -0
- package/esm/color-picker/interface.js.map +1 -0
- package/esm/color-picker/style/css.d.ts +1 -0
- package/esm/color-picker/style/index.d.ts +1 -0
- package/esm/color-picker/style/index.js +1 -0
- package/esm/color-picker/type.d.ts +109 -0
- package/esm/color-picker/type.js +7 -0
- package/esm/color-picker/type.js.map +1 -0
- package/esm/index.d.ts +1 -0
- package/esm/index.js +25 -1
- package/esm/index.js.map +1 -1
- package/esm/input/Input.js +1 -1
- package/esm/input/Input.js.map +1 -1
- package/esm/popup/hooks/useTriggerProps.js +28 -0
- package/esm/popup/hooks/useTriggerProps.js.map +1 -1
- package/lib/_chunks/{dep-1c7ceac8.js → dep-9d6a55ed.js} +1 -1
- package/lib/_chunks/{dep-1c7ceac8.js.map → dep-9d6a55ed.js.map} +1 -1
- package/lib/_common/js/color-picker/cmyk.d.ts +27 -0
- package/lib/_common/js/color-picker/color.d.ts +154 -0
- package/lib/_common/js/color-picker/gradient.d.ts +22 -0
- package/lib/_util/useClickOutside.d.ts +1 -1
- package/lib/_util/useClickOutside.js +47 -3
- package/lib/_util/useClickOutside.js.map +1 -1
- package/lib/_util/useDrag.d.ts +16 -0
- package/lib/_util/useDrag.js +78 -0
- package/lib/_util/useDrag.js.map +1 -0
- package/lib/avatar/AvararGroup.js +1 -1
- package/lib/avatar/Avatar.js +1 -1
- package/lib/avatar/index.js +1 -1
- package/lib/color-picker/ColorPicker.d.ts +4 -0
- package/lib/color-picker/ColorPicker.js +232 -0
- package/lib/color-picker/ColorPicker.js.map +1 -0
- package/lib/color-picker/ColorPickerPanel.d.ts +7 -0
- package/lib/color-picker/ColorPickerPanel.js +170 -0
- package/lib/color-picker/ColorPickerPanel.js.map +1 -0
- package/lib/color-picker/components/panel/alpha.d.ts +4 -0
- package/lib/color-picker/components/panel/alpha.js +57 -0
- package/lib/color-picker/components/panel/alpha.js.map +1 -0
- package/lib/color-picker/components/panel/format/config.d.ts +19 -0
- package/lib/color-picker/components/panel/format/config.js +95 -0
- package/lib/color-picker/components/panel/format/config.js.map +1 -0
- package/lib/color-picker/components/panel/format/index.d.ts +11 -0
- package/lib/color-picker/components/panel/format/index.js +189 -0
- package/lib/color-picker/components/panel/format/index.js.map +1 -0
- package/lib/color-picker/components/panel/format/inputs.d.ts +3 -0
- package/lib/color-picker/components/panel/format/inputs.js +220 -0
- package/lib/color-picker/components/panel/format/inputs.js.map +1 -0
- package/lib/color-picker/components/panel/header.d.ts +14 -0
- package/lib/color-picker/components/panel/header.js +103 -0
- package/lib/color-picker/components/panel/header.js.map +1 -0
- package/lib/color-picker/components/panel/hue.d.ts +4 -0
- package/lib/color-picker/components/panel/hue.js +40 -0
- package/lib/color-picker/components/panel/hue.js.map +1 -0
- package/lib/color-picker/components/panel/index.d.ts +4 -0
- package/lib/color-picker/components/panel/index.js +448 -0
- package/lib/color-picker/components/panel/index.js.map +1 -0
- package/lib/color-picker/components/panel/linear-gradient.d.ts +3 -0
- package/lib/color-picker/components/panel/linear-gradient.js +358 -0
- package/lib/color-picker/components/panel/linear-gradient.js.map +1 -0
- package/lib/color-picker/components/panel/saturation.d.ts +4 -0
- package/lib/color-picker/components/panel/saturation.js +132 -0
- package/lib/color-picker/components/panel/saturation.js.map +1 -0
- package/lib/color-picker/components/panel/slider.d.ts +10 -0
- package/lib/color-picker/components/panel/slider.js +115 -0
- package/lib/color-picker/components/panel/slider.js.map +1 -0
- package/lib/color-picker/components/panel/style/css.d.ts +1 -0
- package/lib/color-picker/components/panel/style/index.d.ts +1 -0
- package/lib/color-picker/components/panel/swatches.d.ts +11 -0
- package/lib/color-picker/components/panel/swatches.js +139 -0
- package/lib/color-picker/components/panel/swatches.js.map +1 -0
- package/lib/color-picker/components/style/css.d.ts +1 -0
- package/lib/color-picker/components/style/index.d.ts +1 -0
- package/lib/color-picker/components/trigger.d.ts +9 -0
- package/lib/color-picker/components/trigger.js +126 -0
- package/lib/color-picker/components/trigger.js.map +1 -0
- package/lib/color-picker/const.d.ts +15 -0
- package/lib/color-picker/const.js +35 -0
- package/lib/color-picker/const.js.map +1 -0
- package/lib/color-picker/hooks/useClassname.d.ts +2 -0
- package/lib/color-picker/hooks/useClassname.js +46 -0
- package/lib/color-picker/hooks/useClassname.js.map +1 -0
- package/lib/color-picker/index.d.ts +10 -0
- package/lib/color-picker/index.js +160 -0
- package/lib/color-picker/index.js.map +1 -0
- package/lib/color-picker/interface.d.ts +23 -0
- package/lib/color-picker/interface.js +9 -0
- package/lib/color-picker/interface.js.map +1 -0
- package/lib/color-picker/style/css.d.ts +1 -0
- package/lib/color-picker/style/index.d.ts +1 -0
- package/lib/color-picker/type.d.ts +109 -0
- package/lib/color-picker/type.js +9 -0
- package/lib/color-picker/type.js.map +1 -0
- package/lib/index-lib.js +25 -1
- package/lib/index-lib.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +25 -1
- package/lib/index.js.map +1 -1
- package/lib/input/Input.js +1 -1
- package/lib/input/Input.js.map +1 -1
- package/lib/popup/hooks/useTriggerProps.js +24 -0
- package/lib/popup/hooks/useTriggerProps.js.map +1 -1
- package/package.json +4 -2
package/es/input/Input.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.js","sources":["../../src/input/Input.tsx"],"sourcesContent":["import React, { useState, useRef, useImperativeHandle, useEffect } from 'react';\nimport classNames from 'classnames';\nimport { CloseCircleFilledIcon, BrowseOffIcon, BrowseIcon } from 'tdesign-icons-react';\nimport isFunction from 'lodash/isFunction';\nimport forwardRefWithStatics from '../_util/forwardRefWithStatics';\nimport useConfig from '../_util/useConfig';\nimport { getCharacterLength } from '../_util/helper';\nimport { TdInputProps, InputValue } from './type';\nimport { StyledProps, TNode } from '../common';\nimport InputGroup from './InputGroup';\nimport useDefaultValue from '../_util/useDefaultValue';\nimport { useLocaleReceiver } from '../locale/LocalReceiver';\n\nexport interface InputProps extends TdInputProps, StyledProps {}\n\nexport interface InputRefInterface extends React.RefObject<unknown> {\n currentElement: HTMLDivElement;\n inputElement: HTMLInputElement;\n focus: () => void;\n blur: () => void;\n select: () => void;\n}\n\nconst renderIcon = (classPrefix: string, type: 'prefix' | 'suffix', icon: TNode) => {\n let result: React.ReactNode = null;\n\n if (icon) result = icon;\n\n if (typeof icon === 'function') result = icon();\n\n const iconClassName = icon ? `${classPrefix}-input__${type}-icon` : '';\n\n if (result) {\n result = <span className={`${classPrefix}-input__${type} ${iconClassName}`}>{result}</span>;\n }\n\n return result;\n};\n\nconst Input = forwardRefWithStatics(\n (props: InputProps, ref) => {\n // 国际化文本初始化\n const [local, t] = useLocaleReceiver('input');\n const {\n type,\n autoWidth,\n placeholder = t(local.placeholder),\n disabled,\n status,\n size,\n className,\n inputClass,\n style,\n prefixIcon,\n suffixIcon,\n clearable,\n value,\n tips,\n align,\n maxlength,\n maxcharacter,\n format,\n onClick,\n onChange,\n onClear,\n onEnter,\n onKeydown,\n onKeyup,\n onKeypress,\n onFocus,\n onBlur,\n onPaste,\n onMouseenter,\n onMouseleave,\n onWheel,\n onCompositionstart,\n onCompositionend,\n showClearIconOnEmpty,\n autofocus,\n autocomplete,\n readonly,\n label,\n suffix,\n ...restProps\n } = useDefaultValue<InputValue, InputProps>(props, '');\n\n const { classPrefix } = useConfig();\n const composingRef = useRef(false);\n const inputRef: React.RefObject<HTMLInputElement> = useRef();\n // inputPreRef 用于预存输入框宽度,应用在 auto width 模式中\n const inputPreRef: React.RefObject<HTMLInputElement> = useRef();\n const wrapperRef: React.RefObject<HTMLDivElement> = useRef();\n const [isHover, toggleIsHover] = useState(false);\n const [isFocused, toggleIsFocused] = useState(false);\n const [renderType, setRenderType] = useState(type);\n\n const [composingRefValue, setComposingValue] = useState<string>('');\n const isShowClearIcon = ((clearable && value && !disabled) || showClearIconOnEmpty) && isHover;\n\n const prefixIconContent = renderIcon(classPrefix, 'prefix', prefixIcon);\n let suffixIconNew = suffixIcon;\n\n if (isShowClearIcon)\n suffixIconNew = <CloseCircleFilledIcon className={`${classPrefix}-input__suffix-clear`} onClick={handleClear} />;\n if (type === 'password' && typeof suffixIcon === 'undefined') {\n if (renderType === 'password') {\n suffixIconNew = (\n <BrowseOffIcon className={`${classPrefix}-input__suffix-clear`} onClick={togglePasswordVisible} />\n );\n } else if (renderType === 'text') {\n suffixIconNew = <BrowseIcon className={`${classPrefix}-input__suffix-clear`} onClick={togglePasswordVisible} />;\n }\n }\n\n const suffixIconContent = renderIcon(classPrefix, 'suffix', suffixIconNew);\n const labelContent = isFunction(label) ? label() : label;\n const suffixContent = isFunction(suffix) ? suffix() : suffix;\n\n useEffect(() => {\n if (!autoWidth) return;\n inputRef.current.style.width = `${inputPreRef.current.offsetWidth}px`;\n }, [autoWidth, value, placeholder]);\n\n useEffect(() => {\n setRenderType(type);\n }, [type]);\n\n const renderInput = (\n <input\n ref={inputRef}\n placeholder={placeholder}\n type={renderType}\n className={`${classPrefix}-input__inner`}\n value={composingRef.current ? composingRefValue : value}\n readOnly={readonly}\n disabled={disabled}\n autoComplete={autocomplete}\n autoFocus={autofocus}\n maxLength={maxlength}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n onKeyPress={handleKeyPress}\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onPaste={handlePaste}\n />\n );\n\n const renderInputNode = (\n <div\n className={classNames(inputClass, `${classPrefix}-input`, {\n [`${classPrefix}-is-readonly`]: readonly,\n [`${classPrefix}-is-disabled`]: disabled,\n [`${classPrefix}-is-focused`]: isFocused,\n [`${classPrefix}-size-s`]: size === 'small',\n [`${classPrefix}-size-l`]: size === 'large',\n [`${classPrefix}-align-${align}`]: align,\n [`${classPrefix}-is-${status}`]: status,\n [`${classPrefix}-input--prefix`]: prefixIcon || labelContent,\n [`${classPrefix}-input--suffix`]: suffixIconContent || suffixContent,\n [`${classPrefix}-input--focused`]: isFocused,\n })}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onWheel={handleWheel}\n onClick={(e) => onClick?.({ e })}\n >\n {prefixIconContent}\n {labelContent ? <div className={`${classPrefix}-input__prefix`}>{labelContent}</div> : null}\n {renderInput}\n {autoWidth && (\n <span ref={inputPreRef} className={`${classPrefix}-input__input-pre`}>\n {value || props.placeholder}\n </span>\n )}\n {suffixContent ? <div className={`${classPrefix}-input__suffix`}>{suffixContent}</div> : null}\n {suffixIconContent}\n </div>\n );\n\n function togglePasswordVisible() {\n const toggleType = renderType === 'password' ? 'text' : 'password';\n setRenderType(toggleType);\n }\n\n function handleChange(e: React.ChangeEvent<HTMLInputElement> | React.CompositionEvent<HTMLInputElement>) {\n let { value } = e.currentTarget;\n if (composingRef.current) {\n setComposingValue(value);\n } else {\n if (typeof maxcharacter === 'number' && maxcharacter >= 0) {\n const stringInfo = getCharacterLength(value, maxcharacter);\n value = typeof stringInfo === 'object' && stringInfo.characters;\n }\n onChange(value, { e });\n }\n }\n function handleClear(e: React.MouseEvent<SVGSVGElement>) {\n onChange?.('', { e });\n onClear?.({ e });\n }\n function handleKeyDown(e: React.KeyboardEvent<HTMLInputElement>) {\n const {\n key,\n currentTarget: { value },\n } = e;\n key === 'Enter' && onEnter?.(value, { e });\n onKeydown?.(value, { e });\n }\n function handleKeyUp(e: React.KeyboardEvent<HTMLInputElement>) {\n const {\n currentTarget: { value },\n } = e;\n onKeyup?.(value, { e });\n }\n function handleKeyPress(e: React.KeyboardEvent<HTMLInputElement>) {\n const {\n currentTarget: { value },\n } = e;\n onKeypress?.(value, { e });\n }\n function handleCompositionStart(e: React.CompositionEvent<HTMLInputElement>) {\n composingRef.current = true;\n const {\n currentTarget: { value },\n } = e;\n onCompositionstart?.(value, { e });\n }\n function handleCompositionEnd(e: React.CompositionEvent<HTMLInputElement>) {\n const {\n currentTarget: { value },\n } = e;\n if (composingRef.current) {\n composingRef.current = false;\n handleChange(e);\n }\n setComposingValue('');\n onCompositionend?.(value, { e });\n }\n\n function handleFocus(e: React.FocusEvent<HTMLInputElement>) {\n if (readonly) return;\n const {\n currentTarget: { value },\n } = e;\n onFocus?.(value, { e });\n toggleIsFocused(true);\n }\n\n function handleBlur(e: React.FocusEvent<HTMLInputElement>) {\n if (readonly) return;\n const {\n currentTarget: { value },\n } = e;\n format && onChange(format(value), { e });\n onBlur?.(value, { e });\n toggleIsFocused(false);\n }\n\n function handlePaste(e: React.ClipboardEvent<HTMLInputElement>) {\n const clipData = e.clipboardData;\n const pasteValue = clipData?.getData('text/plain');\n onPaste?.({ e, pasteValue });\n }\n\n function handleMouseEnter(e: React.MouseEvent<HTMLDivElement>) {\n toggleIsHover(true);\n onMouseenter?.({ e });\n }\n\n function handleMouseLeave(e: React.MouseEvent<HTMLDivElement>) {\n toggleIsHover(false);\n onMouseleave?.({ e });\n }\n\n function handleWheel(e: React.WheelEvent<HTMLDivElement>) {\n onWheel?.({ e });\n }\n\n useImperativeHandle(ref as InputRefInterface, () => ({\n currentElement: wrapperRef.current,\n inputElement: inputRef.current,\n focus: () => inputRef.current?.focus(),\n blur: () => inputRef.current?.blur(),\n select: () => inputRef.current?.select(),\n }));\n\n return (\n <div\n ref={wrapperRef}\n style={style}\n className={classNames(className, `${classPrefix}-input__wrap`, {\n [`${classPrefix}-input--auto-width`]: autoWidth,\n })}\n {...restProps}\n >\n {renderInputNode}\n {tips && (\n <div\n className={classNames(`${classPrefix}-input__tips`, `${classPrefix}-input__tips--${status || 'normal'}`)}\n >\n {tips}\n </div>\n )}\n </div>\n );\n },\n { Group: InputGroup },\n);\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"names":["renderIcon","classPrefix","type","icon","result","iconClassName","React","createElement","className","Input","forwardRefWithStatics","props","ref","useLocaleReceiver","local","t","useDefaultValue","autoWidth","placeholder","disabled","status","size","inputClass","style","prefixIcon","suffixIcon","clearable","value","tips","align","maxlength","maxcharacter","format","onClick","onChange","onClear","onEnter","onKeydown","onKeyup","onKeypress","onFocus","onBlur","onPaste","onMouseenter","onMouseleave","onWheel","onCompositionstart","onCompositionend","showClearIconOnEmpty","autofocus","autocomplete","readonly","label","suffix","restProps","useConfig","composingRef","useRef","inputRef","inputPreRef","wrapperRef","useState","isHover","toggleIsHover","isFocused","toggleIsFocused","renderType","setRenderType","composingRefValue","setComposingValue","isShowClearIcon","prefixIconContent","suffixIconNew","CloseCircleFilledIcon","handleClear","BrowseOffIcon","togglePasswordVisible","BrowseIcon","suffixIconContent","labelContent","isFunction","suffixContent","useEffect","current","width","offsetWidth","renderInput","readOnly","autoComplete","autoFocus","maxLength","handleChange","onKeyDown","handleKeyDown","onKeyUp","handleKeyUp","onKeyPress","handleKeyPress","onCompositionStart","handleCompositionStart","onCompositionEnd","handleCompositionEnd","handleFocus","handleBlur","handlePaste","renderInputNode","classNames","onMouseEnter","handleMouseEnter","onMouseLeave","handleMouseLeave","handleWheel","e","toggleType","value2","currentTarget","stringInfo","getCharacterLength","characters","key","clipData","clipboardData","pasteValue","getData","useImperativeHandle","currentElement","inputElement","focus","blur","select","Group","InputGroup","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Input.js","sources":["../../src/input/Input.tsx"],"sourcesContent":["import React, { useState, useRef, useImperativeHandle, useEffect } from 'react';\nimport classNames from 'classnames';\nimport { CloseCircleFilledIcon, BrowseOffIcon, BrowseIcon } from 'tdesign-icons-react';\nimport isFunction from 'lodash/isFunction';\nimport forwardRefWithStatics from '../_util/forwardRefWithStatics';\nimport useConfig from '../_util/useConfig';\nimport { getCharacterLength } from '../_util/helper';\nimport { TdInputProps, InputValue } from './type';\nimport { StyledProps, TNode } from '../common';\nimport InputGroup from './InputGroup';\nimport useDefaultValue from '../_util/useDefaultValue';\nimport { useLocaleReceiver } from '../locale/LocalReceiver';\n\nexport interface InputProps extends TdInputProps, StyledProps {}\n\nexport interface InputRefInterface extends React.RefObject<unknown> {\n currentElement: HTMLDivElement;\n inputElement: HTMLInputElement;\n focus: () => void;\n blur: () => void;\n select: () => void;\n}\n\nconst renderIcon = (classPrefix: string, type: 'prefix' | 'suffix', icon: TNode) => {\n let result: React.ReactNode = null;\n\n if (icon) result = icon;\n\n if (typeof icon === 'function') result = icon();\n\n const iconClassName = icon ? `${classPrefix}-input__${type}-icon` : '';\n\n if (result) {\n result = <span className={`${classPrefix}-input__${type} ${iconClassName}`}>{result}</span>;\n }\n\n return result;\n};\n\nconst Input = forwardRefWithStatics(\n (props: InputProps, ref) => {\n // 国际化文本初始化\n const [local, t] = useLocaleReceiver('input');\n const {\n type,\n autoWidth,\n placeholder = t(local.placeholder),\n disabled,\n status,\n size,\n className,\n inputClass,\n style,\n prefixIcon,\n suffixIcon,\n clearable,\n value,\n tips,\n align,\n maxlength,\n maxcharacter,\n format,\n onClick,\n onChange,\n onClear,\n onEnter,\n onKeydown,\n onKeyup,\n onKeypress,\n onFocus,\n onBlur,\n onPaste,\n onMouseenter,\n onMouseleave,\n onWheel,\n onCompositionstart,\n onCompositionend,\n showClearIconOnEmpty,\n autofocus,\n autocomplete,\n readonly,\n label,\n suffix,\n ...restProps\n } = useDefaultValue<InputValue, InputProps>(props, '');\n\n const { classPrefix } = useConfig();\n const composingRef = useRef(false);\n const inputRef: React.RefObject<HTMLInputElement> = useRef();\n // inputPreRef 用于预存输入框宽度,应用在 auto width 模式中\n const inputPreRef: React.RefObject<HTMLInputElement> = useRef();\n const wrapperRef: React.RefObject<HTMLDivElement> = useRef();\n const [isHover, toggleIsHover] = useState(false);\n const [isFocused, toggleIsFocused] = useState(false);\n const [renderType, setRenderType] = useState(type);\n\n const [composingRefValue, setComposingValue] = useState<string>('');\n const isShowClearIcon = ((clearable && value && !disabled) || showClearIconOnEmpty) && isHover;\n\n const prefixIconContent = renderIcon(classPrefix, 'prefix', prefixIcon);\n let suffixIconNew = suffixIcon;\n\n if (isShowClearIcon)\n suffixIconNew = <CloseCircleFilledIcon className={`${classPrefix}-input__suffix-clear`} onClick={handleClear} />;\n if (type === 'password' && typeof suffixIcon === 'undefined') {\n if (renderType === 'password') {\n suffixIconNew = (\n <BrowseOffIcon className={`${classPrefix}-input__suffix-clear`} onClick={togglePasswordVisible} />\n );\n } else if (renderType === 'text') {\n suffixIconNew = <BrowseIcon className={`${classPrefix}-input__suffix-clear`} onClick={togglePasswordVisible} />;\n }\n }\n\n const suffixIconContent = renderIcon(classPrefix, 'suffix', suffixIconNew);\n const labelContent = isFunction(label) ? label() : label;\n const suffixContent = isFunction(suffix) ? suffix() : suffix;\n\n useEffect(() => {\n if (!autoWidth) return;\n inputRef.current.style.width = `${inputPreRef.current.offsetWidth}px`;\n }, [autoWidth, value, placeholder]);\n\n useEffect(() => {\n setRenderType(type);\n }, [type]);\n\n const renderInput = (\n <input\n ref={inputRef}\n placeholder={placeholder}\n type={renderType}\n className={`${classPrefix}-input__inner`}\n value={composingRef.current ? composingRefValue : value}\n readOnly={readonly}\n disabled={disabled}\n autoComplete={autocomplete}\n autoFocus={autofocus}\n maxLength={maxlength}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n onKeyPress={handleKeyPress}\n onCompositionStart={handleCompositionStart}\n onCompositionEnd={handleCompositionEnd}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onPaste={handlePaste}\n />\n );\n\n const renderInputNode = (\n <div\n className={classNames(inputClass, `${classPrefix}-input`, {\n [`${classPrefix}-is-readonly`]: readonly,\n [`${classPrefix}-is-disabled`]: disabled,\n [`${classPrefix}-is-focused`]: isFocused,\n [`${classPrefix}-size-s`]: size === 'small',\n [`${classPrefix}-size-l`]: size === 'large',\n [`${classPrefix}-size-m`]: size === 'medium',\n [`${classPrefix}-align-${align}`]: align,\n [`${classPrefix}-is-${status}`]: status,\n [`${classPrefix}-input--prefix`]: prefixIcon || labelContent,\n [`${classPrefix}-input--suffix`]: suffixIconContent || suffixContent,\n [`${classPrefix}-input--focused`]: isFocused,\n })}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onWheel={handleWheel}\n onClick={(e) => onClick?.({ e })}\n >\n {prefixIconContent}\n {labelContent ? <div className={`${classPrefix}-input__prefix`}>{labelContent}</div> : null}\n {renderInput}\n {autoWidth && (\n <span ref={inputPreRef} className={`${classPrefix}-input__input-pre`}>\n {value || props.placeholder}\n </span>\n )}\n {suffixContent ? <div className={`${classPrefix}-input__suffix`}>{suffixContent}</div> : null}\n {suffixIconContent}\n </div>\n );\n\n function togglePasswordVisible() {\n const toggleType = renderType === 'password' ? 'text' : 'password';\n setRenderType(toggleType);\n }\n\n function handleChange(e: React.ChangeEvent<HTMLInputElement> | React.CompositionEvent<HTMLInputElement>) {\n let { value } = e.currentTarget;\n if (composingRef.current) {\n setComposingValue(value);\n } else {\n if (typeof maxcharacter === 'number' && maxcharacter >= 0) {\n const stringInfo = getCharacterLength(value, maxcharacter);\n value = typeof stringInfo === 'object' && stringInfo.characters;\n }\n onChange(value, { e });\n }\n }\n function handleClear(e: React.MouseEvent<SVGSVGElement>) {\n onChange?.('', { e });\n onClear?.({ e });\n }\n function handleKeyDown(e: React.KeyboardEvent<HTMLInputElement>) {\n const {\n key,\n currentTarget: { value },\n } = e;\n key === 'Enter' && onEnter?.(value, { e });\n onKeydown?.(value, { e });\n }\n function handleKeyUp(e: React.KeyboardEvent<HTMLInputElement>) {\n const {\n currentTarget: { value },\n } = e;\n onKeyup?.(value, { e });\n }\n function handleKeyPress(e: React.KeyboardEvent<HTMLInputElement>) {\n const {\n currentTarget: { value },\n } = e;\n onKeypress?.(value, { e });\n }\n function handleCompositionStart(e: React.CompositionEvent<HTMLInputElement>) {\n composingRef.current = true;\n const {\n currentTarget: { value },\n } = e;\n onCompositionstart?.(value, { e });\n }\n function handleCompositionEnd(e: React.CompositionEvent<HTMLInputElement>) {\n const {\n currentTarget: { value },\n } = e;\n if (composingRef.current) {\n composingRef.current = false;\n handleChange(e);\n }\n setComposingValue('');\n onCompositionend?.(value, { e });\n }\n\n function handleFocus(e: React.FocusEvent<HTMLInputElement>) {\n if (readonly) return;\n const {\n currentTarget: { value },\n } = e;\n onFocus?.(value, { e });\n toggleIsFocused(true);\n }\n\n function handleBlur(e: React.FocusEvent<HTMLInputElement>) {\n if (readonly) return;\n const {\n currentTarget: { value },\n } = e;\n format && onChange(format(value), { e });\n onBlur?.(value, { e });\n toggleIsFocused(false);\n }\n\n function handlePaste(e: React.ClipboardEvent<HTMLInputElement>) {\n const clipData = e.clipboardData;\n const pasteValue = clipData?.getData('text/plain');\n onPaste?.({ e, pasteValue });\n }\n\n function handleMouseEnter(e: React.MouseEvent<HTMLDivElement>) {\n toggleIsHover(true);\n onMouseenter?.({ e });\n }\n\n function handleMouseLeave(e: React.MouseEvent<HTMLDivElement>) {\n toggleIsHover(false);\n onMouseleave?.({ e });\n }\n\n function handleWheel(e: React.WheelEvent<HTMLDivElement>) {\n onWheel?.({ e });\n }\n\n useImperativeHandle(ref as InputRefInterface, () => ({\n currentElement: wrapperRef.current,\n inputElement: inputRef.current,\n focus: () => inputRef.current?.focus(),\n blur: () => inputRef.current?.blur(),\n select: () => inputRef.current?.select(),\n }));\n\n return (\n <div\n ref={wrapperRef}\n style={style}\n className={classNames(className, `${classPrefix}-input__wrap`, {\n [`${classPrefix}-input--auto-width`]: autoWidth,\n })}\n {...restProps}\n >\n {renderInputNode}\n {tips && (\n <div\n className={classNames(`${classPrefix}-input__tips`, `${classPrefix}-input__tips--${status || 'normal'}`)}\n >\n {tips}\n </div>\n )}\n </div>\n );\n },\n { Group: InputGroup },\n);\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"names":["renderIcon","classPrefix","type","icon","result","iconClassName","React","createElement","className","Input","forwardRefWithStatics","props","ref","useLocaleReceiver","local","t","useDefaultValue","autoWidth","placeholder","disabled","status","size","inputClass","style","prefixIcon","suffixIcon","clearable","value","tips","align","maxlength","maxcharacter","format","onClick","onChange","onClear","onEnter","onKeydown","onKeyup","onKeypress","onFocus","onBlur","onPaste","onMouseenter","onMouseleave","onWheel","onCompositionstart","onCompositionend","showClearIconOnEmpty","autofocus","autocomplete","readonly","label","suffix","restProps","useConfig","composingRef","useRef","inputRef","inputPreRef","wrapperRef","useState","isHover","toggleIsHover","isFocused","toggleIsFocused","renderType","setRenderType","composingRefValue","setComposingValue","isShowClearIcon","prefixIconContent","suffixIconNew","CloseCircleFilledIcon","handleClear","BrowseOffIcon","togglePasswordVisible","BrowseIcon","suffixIconContent","labelContent","isFunction","suffixContent","useEffect","current","width","offsetWidth","renderInput","readOnly","autoComplete","autoFocus","maxLength","handleChange","onKeyDown","handleKeyDown","onKeyUp","handleKeyUp","onKeyPress","handleKeyPress","onCompositionStart","handleCompositionStart","onCompositionEnd","handleCompositionEnd","handleFocus","handleBlur","handlePaste","renderInputNode","classNames","onMouseEnter","handleMouseEnter","onMouseLeave","handleMouseLeave","handleWheel","e","toggleType","value2","currentTarget","stringInfo","getCharacterLength","characters","key","clipData","clipboardData","pasteValue","getData","useImperativeHandle","currentElement","inputElement","focus","blur","select","Group","InputGroup","displayName"],"mappings":"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"}
|
|
@@ -6,6 +6,34 @@
|
|
|
6
6
|
|
|
7
7
|
import { useRef } from 'react';
|
|
8
8
|
import useClickOutside from '../../_util/useClickOutside.js';
|
|
9
|
+
import '../../_util/useConfig.js';
|
|
10
|
+
import '../../_chunks/dep-bbad8591.js';
|
|
11
|
+
import '../../_chunks/dep-1628aaec.js';
|
|
12
|
+
import '../../_chunks/dep-8702aba9.js';
|
|
13
|
+
import '../../_chunks/dep-e9e7c24f.js';
|
|
14
|
+
import '../../_chunks/dep-c47502ef.js';
|
|
15
|
+
import '../../_chunks/dep-3a2f4bdf.js';
|
|
16
|
+
import '../../_chunks/dep-d51fd958.js';
|
|
17
|
+
import '../../_chunks/dep-db8880c0.js';
|
|
18
|
+
import '../../_chunks/dep-8efaaac0.js';
|
|
19
|
+
import '../../_chunks/dep-d539b435.js';
|
|
20
|
+
import '../../_chunks/dep-2b0021c1.js';
|
|
21
|
+
import '../../_chunks/dep-09299e3f.js';
|
|
22
|
+
import '../../_chunks/dep-23b2574f.js';
|
|
23
|
+
import '../../_chunks/dep-a1403158.js';
|
|
24
|
+
import '../../_chunks/dep-c03c5f48.js';
|
|
25
|
+
import '../../_chunks/dep-9b67144e.js';
|
|
26
|
+
import '../../_chunks/dep-d038aaf3.js';
|
|
27
|
+
import '../../_chunks/dep-00728537.js';
|
|
28
|
+
import '../../_chunks/dep-32abd81f.js';
|
|
29
|
+
import '../../_chunks/dep-f3e5eb4b.js';
|
|
30
|
+
import '../../_chunks/dep-ae52f85e.js';
|
|
31
|
+
import '../../_chunks/dep-63ed508e.js';
|
|
32
|
+
import '../../_chunks/dep-155571ca.js';
|
|
33
|
+
import '../../_chunks/dep-81670ae9.js';
|
|
34
|
+
import '../../locale/zh_CN.js';
|
|
35
|
+
import '../../_common/js/global-config/locale/zh_CN.js';
|
|
36
|
+
import '../../config-provider/zh_CN_config.js';
|
|
9
37
|
|
|
10
38
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
11
39
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTriggerProps.js","sources":["../../../src/popup/hooks/useTriggerProps.ts"],"sourcesContent":["import React, { HTMLAttributes, MutableRefObject, useRef } from 'react';\nimport useClickOutside from '../../_util/useClickOutside';\nimport { TdPopupProps, PopupVisibleChangeContext, PopupTriggerEvent } from '../type';\nimport { ChangeHandler } from '../../_util/useDefault';\n\nexport type TriggerProps = HTMLAttributes<HTMLDivElement>;\nexport type PopupProps = HTMLAttributes<HTMLDivElement>;\ntype HandleTrigger = (e: PopupTriggerEvent, trigger: PopupVisibleChangeContext['trigger']) => void;\nconst ESC_KEY = 'Escape';\n\nexport default function useTriggerProps(\n ref: MutableRefObject<HTMLElement>,\n triggerNode: MutableRefObject<HTMLElement>,\n triggers: Array<TdPopupProps['trigger']>,\n visible: boolean,\n setVisible: ChangeHandler<boolean, [PopupVisibleChangeContext]>,\n disabled = false,\n originTrigger: React.ReactElement<HTMLAttributes<HTMLElement>>,\n): [TriggerProps, PopupProps] {\n const triggerProps: TriggerProps = {};\n const popupProps: PopupProps = {};\n const hasPopupMouseDown = useRef(false);\n const mouseDownTimer = useRef<number>();\n const toggle: HandleTrigger = (e, trigger) => setVisible(!visible, { e, trigger });\n const show: HandleTrigger = (e, trigger) => setVisible(true, { e, trigger });\n const hide: HandleTrigger = (e, trigger) => setVisible(false, { e, trigger });\n\n // click outside 用于处理点击其他地方隐藏\n useClickOutside([ref, triggerNode], (e: any) => {\n if (visible && (triggers.includes('click') || triggers.includes('context-menu')) && !hasPopupMouseDown.current) {\n hide(e, 'trigger-element-blur');\n }\n });\n\n if (disabled) return [triggerProps, popupProps];\n\n // eslint-disable-next-line no-restricted-syntax\n for (const trigger of triggers) {\n const { onClick, onMouseEnter, onMouseLeave, onMouseDown, onFocus, onBlur, onContextMenu, onKeyDown } =\n originTrigger.props;\n // 点击触发\n if (trigger === 'click') {\n triggerProps.onClick = (e) => {\n toggle(e, 'trigger-element-click');\n onClick && onClick(e);\n };\n }\n\n // hover 触发\n if (trigger === 'hover') {\n triggerProps.onMouseEnter = (e) => {\n show(e, 'trigger-element-hover');\n onMouseEnter && onMouseEnter(e);\n };\n popupProps.onMouseEnter = (e) => {\n // 如果当前弹出框本身没有展示 hover时不应该展示\n visible && show(e, 'trigger-element-hover');\n }; // 兼容鼠标移入弹出框\n triggerProps.onMouseLeave = (e) => {\n hide(e, 'trigger-element-hover');\n onMouseLeave && onMouseLeave(e);\n };\n popupProps.onMouseLeave = (e) => hide(e, 'trigger-element-hover');\n }\n\n // focus 触发\n if (trigger === 'focus') {\n triggerProps.onFocus = (e) => {\n show(e, 'trigger-element-focus');\n onFocus && onFocus(e);\n };\n triggerProps.onBlur = (e) => {\n hide(e, 'trigger-element-blur');\n onBlur && onBlur(e);\n };\n }\n\n // contextMenu 触发\n if (trigger === 'context-menu') {\n triggerProps.onContextMenu = (e) => {\n show(e, 'context-menu');\n onContextMenu && onContextMenu(e);\n };\n }\n\n popupProps.onMouseDown = (e) => {\n clearTimeout(mouseDownTimer.current);\n hasPopupMouseDown.current = true;\n mouseDownTimer.current = window.setTimeout(() => {\n hasPopupMouseDown.current = false;\n });\n onMouseDown?.(e);\n };\n\n triggerProps.onKeyDown = (e) => {\n if (e.key === ESC_KEY) hide(e, 'keydown-esc');\n onKeyDown && onKeyDown(e);\n };\n }\n\n return [triggerProps, popupProps];\n}\n"],"names":["ESC_KEY","useTriggerProps","ref","triggerNode","triggers","visible","setVisible","disabled","originTrigger","triggerProps","popupProps","hasPopupMouseDown","useRef","mouseDownTimer","toggle","e","trigger","show","hide","useClickOutside","includes","current","props","onClick","onMouseEnter","onMouseLeave","onMouseDown","onFocus","onBlur","onContextMenu","onKeyDown","clearTimeout","window","setTimeout","key"],"mappings":"
|
|
1
|
+
{"version":3,"file":"useTriggerProps.js","sources":["../../../src/popup/hooks/useTriggerProps.ts"],"sourcesContent":["import React, { HTMLAttributes, MutableRefObject, useRef } from 'react';\nimport useClickOutside from '../../_util/useClickOutside';\nimport { TdPopupProps, PopupVisibleChangeContext, PopupTriggerEvent } from '../type';\nimport { ChangeHandler } from '../../_util/useDefault';\n\nexport type TriggerProps = HTMLAttributes<HTMLDivElement>;\nexport type PopupProps = HTMLAttributes<HTMLDivElement>;\ntype HandleTrigger = (e: PopupTriggerEvent, trigger: PopupVisibleChangeContext['trigger']) => void;\nconst ESC_KEY = 'Escape';\n\nexport default function useTriggerProps(\n ref: MutableRefObject<HTMLElement>,\n triggerNode: MutableRefObject<HTMLElement>,\n triggers: Array<TdPopupProps['trigger']>,\n visible: boolean,\n setVisible: ChangeHandler<boolean, [PopupVisibleChangeContext]>,\n disabled = false,\n originTrigger: React.ReactElement<HTMLAttributes<HTMLElement>>,\n): [TriggerProps, PopupProps] {\n const triggerProps: TriggerProps = {};\n const popupProps: PopupProps = {};\n const hasPopupMouseDown = useRef(false);\n const mouseDownTimer = useRef<number>();\n const toggle: HandleTrigger = (e, trigger) => setVisible(!visible, { e, trigger });\n const show: HandleTrigger = (e, trigger) => setVisible(true, { e, trigger });\n const hide: HandleTrigger = (e, trigger) => setVisible(false, { e, trigger });\n\n // click outside 用于处理点击其他地方隐藏\n useClickOutside([ref, triggerNode], (e: any) => {\n if (visible && (triggers.includes('click') || triggers.includes('context-menu')) && !hasPopupMouseDown.current) {\n hide(e, 'trigger-element-blur');\n }\n });\n\n if (disabled) return [triggerProps, popupProps];\n\n // eslint-disable-next-line no-restricted-syntax\n for (const trigger of triggers) {\n const { onClick, onMouseEnter, onMouseLeave, onMouseDown, onFocus, onBlur, onContextMenu, onKeyDown } =\n originTrigger.props;\n // 点击触发\n if (trigger === 'click') {\n triggerProps.onClick = (e) => {\n toggle(e, 'trigger-element-click');\n onClick && onClick(e);\n };\n }\n\n // hover 触发\n if (trigger === 'hover') {\n triggerProps.onMouseEnter = (e) => {\n show(e, 'trigger-element-hover');\n onMouseEnter && onMouseEnter(e);\n };\n popupProps.onMouseEnter = (e) => {\n // 如果当前弹出框本身没有展示 hover时不应该展示\n visible && show(e, 'trigger-element-hover');\n }; // 兼容鼠标移入弹出框\n triggerProps.onMouseLeave = (e) => {\n hide(e, 'trigger-element-hover');\n onMouseLeave && onMouseLeave(e);\n };\n popupProps.onMouseLeave = (e) => hide(e, 'trigger-element-hover');\n }\n\n // focus 触发\n if (trigger === 'focus') {\n triggerProps.onFocus = (e) => {\n show(e, 'trigger-element-focus');\n onFocus && onFocus(e);\n };\n triggerProps.onBlur = (e) => {\n hide(e, 'trigger-element-blur');\n onBlur && onBlur(e);\n };\n }\n\n // contextMenu 触发\n if (trigger === 'context-menu') {\n triggerProps.onContextMenu = (e) => {\n show(e, 'context-menu');\n onContextMenu && onContextMenu(e);\n };\n }\n\n popupProps.onMouseDown = (e) => {\n clearTimeout(mouseDownTimer.current);\n hasPopupMouseDown.current = true;\n mouseDownTimer.current = window.setTimeout(() => {\n hasPopupMouseDown.current = false;\n });\n onMouseDown?.(e);\n };\n\n triggerProps.onKeyDown = (e) => {\n if (e.key === ESC_KEY) hide(e, 'keydown-esc');\n onKeyDown && onKeyDown(e);\n };\n }\n\n return [triggerProps, popupProps];\n}\n"],"names":["ESC_KEY","useTriggerProps","ref","triggerNode","triggers","visible","setVisible","disabled","originTrigger","triggerProps","popupProps","hasPopupMouseDown","useRef","mouseDownTimer","toggle","e","trigger","show","hide","useClickOutside","includes","current","props","onClick","onMouseEnter","onMouseLeave","onMouseDown","onFocus","onBlur","onContextMenu","onKeyDown","clearTimeout","window","setTimeout","key"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dep-5d29cc59.js","sources":["../../src/avatar/AvararGroup.tsx","../../src/avatar/Avatar.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport Avatar from './Avatar';\nimport Popup from '../popup/Popup';\nimport useConfig from '../_util/useConfig';\nimport { AvatarContextProvider } from './AvatarContext';\nimport { TdAvatarGroupProps } from './type';\nimport { StyledProps } from '../common';\n\nexport interface AvatarGroupProps extends TdAvatarGroupProps, StyledProps {\n children?: React.ReactNode;\n}\nconst Group: React.FC<AvatarGroupProps> = (props) => {\n const { classPrefix } = useConfig();\n const preClass = `${classPrefix}-avatar`;\n const {\n className,\n cascading = 'right-up',\n collapseAvatar,\n max,\n placement,\n popupProps,\n size = 'medium',\n children,\n ...avatarGroupProps\n } = props;\n\n const childrenList = React.Children.toArray(children);\n let allChildrenList;\n if (childrenList.length > 0) {\n allChildrenList = childrenList.map((child: JSX.Element, index: number) =>\n React.cloneElement(child, { key: `avatar-group-item-${index}`, ...child.props }),\n );\n }\n const groupClass = classNames(`${preClass}-group`, className, {\n [`${preClass}--offset-right`]: cascading === 'right-up',\n [`${preClass}--offset-left`]: cascading === 'left-up',\n });\n const childrenCount = childrenList.length;\n if (max && childrenCount > max) {\n const showList = allChildrenList.slice(0, max);\n const hiddenList = allChildrenList.slice(max, childrenCount);\n const popupNum = `+${childrenCount - max}`;\n const popupMergeProps = { ...popupProps, placement };\n const popupNodes = popupProps ? (\n <Popup {...popupMergeProps}>\n {collapseAvatar ? <Avatar size={size}>{collapseAvatar}</Avatar> : <Avatar size={size}>{popupNum}</Avatar>}\n </Popup>\n ) : (\n <Popup key=\"avatar-popup-key\" placement={placement} content={hiddenList} trigger=\"hover\" showArrow>\n {collapseAvatar ? <Avatar size={size}>{collapseAvatar}</Avatar> : <Avatar size={size}>{popupNum}</Avatar>}\n </Popup>\n );\n showList.push(popupNodes);\n return (\n <AvatarContextProvider size={size}>\n <div className={groupClass}>{showList}</div>\n </AvatarContextProvider>\n );\n }\n return (\n <AvatarContextProvider size={size}>\n <div className={groupClass} {...avatarGroupProps}>\n {allChildrenList}\n </div>\n </AvatarContextProvider>\n );\n};\nexport default Group;\n","import React, { useRef, useState, useEffect, useContext, Ref } from 'react';\nimport useResizeObserver from 'use-resize-observer';\nimport classNames from 'classnames';\nimport useConfig from '../_util/useConfig';\nimport forwardRefWithStatics from '../_util/forwardRefWithStatics';\nimport useCommonClassName from '../_util/useCommonClassName';\nimport composeRefs from '../_util/composeRefs';\nimport { TdAvatarProps } from './type';\nimport { StyledProps } from '../common';\nimport AvatarContext from './AvatarContext';\nimport AvatarGroup from './AvararGroup';\n\nexport interface AvatarProps extends TdAvatarProps, StyledProps {\n children?: React.ReactNode;\n}\n\nconst Avatar = forwardRefWithStatics(\n (props: AvatarProps, ref: Ref<HTMLElement>) => {\n const {\n alt,\n hideOnLoadFailed = false,\n icon,\n image,\n shape = 'circle',\n size: avatarSize = 'default',\n onError,\n children,\n style,\n className,\n ...avatarProps\n } = props;\n const groupSize = useContext(AvatarContext);\n const { classPrefix } = useConfig();\n const [scale, setScale] = useState(1);\n const [isImgExist, setIsImgExist] = useState(true);\n const avatarRef = useRef<HTMLElement>(null);\n const avatarChildrenRef = useRef<HTMLElement>(null);\n const size = avatarSize === 'default' ? groupSize : avatarSize;\n const gap = 4;\n const handleScale = () => {\n if (!avatarChildrenRef.current || !avatarRef.current) {\n return;\n }\n const childrenWidth = avatarChildrenRef.current.offsetWidth;\n const avatarWidth = avatarRef.current.offsetWidth;\n\n if (childrenWidth !== 0 && avatarWidth !== 0) {\n if (gap * 2 < avatarWidth) {\n setScale(avatarWidth - gap * 2 < childrenWidth ? (avatarWidth - gap * 2) / childrenWidth : 1);\n }\n }\n };\n const { ref: observerRef } = useResizeObserver<HTMLDivElement>({\n onResize: handleScale,\n });\n\n const handleImgLoadError = () => {\n onError && onError();\n !hideOnLoadFailed && setIsImgExist(false);\n };\n\n useEffect(() => {\n setIsImgExist(true);\n setScale(1);\n }, [props.image]);\n\n useEffect(() => {\n handleScale();\n }, []);\n\n const { SIZE } = useCommonClassName();\n const numSizeStyle: React.CSSProperties =\n size && !SIZE[size]\n ? {\n width: size,\n height: size,\n fontSize: `${Number.parseInt(size, 10) / 2}px`,\n }\n : {};\n const imageStyle: React.CSSProperties =\n size && !SIZE[size]\n ? {\n width: size,\n height: size,\n }\n : {};\n\n const preClass = `${classPrefix}-avatar`;\n\n const avatarClass = classNames(preClass, className, {\n [SIZE[size]]: !!SIZE[size],\n [`${preClass}--${shape}`]: !!shape,\n [`${preClass}-icon`]: !!icon,\n });\n\n let content;\n if (image && isImgExist) {\n content = <img src={image} alt={alt} style={imageStyle} onError={handleImgLoadError} />;\n } else if (icon) {\n content = icon;\n } else {\n const childrenStyle: React.CSSProperties = {\n transform: `scale(${scale})`,\n };\n content = (\n <span ref={composeRefs(ref, avatarChildrenRef, observerRef) as any} style={childrenStyle}>\n {children}\n </span>\n );\n }\n return (\n <div\n ref={composeRefs(ref, avatarRef) as any}\n className={avatarClass}\n style={{ ...numSizeStyle, ...style }}\n {...avatarProps}\n >\n {content}\n </div>\n );\n },\n { Group: AvatarGroup },\n);\n\nAvatar.displayName = 'Avatar';\n\nexport default Avatar;\n"],"names":["Group","props","useConfig","classPrefix","preClass","className","cascading","collapseAvatar","max","placement","popupProps","size","children","avatarGroupProps","_excluded","childrenList","React","Children","toArray","allChildrenList","length","map","child","index","cloneElement","_objectSpread","key","groupClass","classNames","childrenCount","showList","slice","hiddenList","popupNum","popupMergeProps","popupNodes","createElement","Popup","Avatar","content","trigger","showArrow","push","AvatarContextProvider","forwardRefWithStatics","ref","alt","hideOnLoadFailed","icon","image","shape","avatarSize","onError","style","avatarProps","groupSize","useContext","AvatarContext","useState","scale","setScale","isImgExist","setIsImgExist","avatarRef","useRef","avatarChildrenRef","gap","handleScale","current","childrenWidth","offsetWidth","avatarWidth","useResizeObserver","onResize","observerRef","handleImgLoadError","useEffect","useCommonClassName","SIZE","numSizeStyle","width","height","fontSize","Number","parseInt","imageStyle","avatarClass","src","childrenStyle","transform","composeRefs","AvatarGroup","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dep-7e7b26b4.js","sources":["../../src/avatar/AvararGroup.tsx","../../src/avatar/Avatar.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport Avatar from './Avatar';\nimport Popup from '../popup/Popup';\nimport useConfig from '../_util/useConfig';\nimport { AvatarContextProvider } from './AvatarContext';\nimport { TdAvatarGroupProps } from './type';\nimport { StyledProps } from '../common';\n\nexport interface AvatarGroupProps extends TdAvatarGroupProps, StyledProps {\n children?: React.ReactNode;\n}\nconst Group: React.FC<AvatarGroupProps> = (props) => {\n const { classPrefix } = useConfig();\n const preClass = `${classPrefix}-avatar`;\n const {\n className,\n cascading = 'right-up',\n collapseAvatar,\n max,\n placement,\n popupProps,\n size = 'medium',\n children,\n ...avatarGroupProps\n } = props;\n\n const childrenList = React.Children.toArray(children);\n let allChildrenList;\n if (childrenList.length > 0) {\n allChildrenList = childrenList.map((child: JSX.Element, index: number) =>\n React.cloneElement(child, { key: `avatar-group-item-${index}`, ...child.props }),\n );\n }\n const groupClass = classNames(`${preClass}-group`, className, {\n [`${preClass}--offset-right`]: cascading === 'right-up',\n [`${preClass}--offset-left`]: cascading === 'left-up',\n });\n const childrenCount = childrenList.length;\n if (max && childrenCount > max) {\n const showList = allChildrenList.slice(0, max);\n const hiddenList = allChildrenList.slice(max, childrenCount);\n const popupNum = `+${childrenCount - max}`;\n const popupMergeProps = { ...popupProps, placement };\n const popupNodes = popupProps ? (\n <Popup {...popupMergeProps}>\n {collapseAvatar ? <Avatar size={size}>{collapseAvatar}</Avatar> : <Avatar size={size}>{popupNum}</Avatar>}\n </Popup>\n ) : (\n <Popup key=\"avatar-popup-key\" placement={placement} content={hiddenList} trigger=\"hover\" showArrow>\n {collapseAvatar ? <Avatar size={size}>{collapseAvatar}</Avatar> : <Avatar size={size}>{popupNum}</Avatar>}\n </Popup>\n );\n showList.push(popupNodes);\n return (\n <AvatarContextProvider size={size}>\n <div className={groupClass}>{showList}</div>\n </AvatarContextProvider>\n );\n }\n return (\n <AvatarContextProvider size={size}>\n <div className={groupClass} {...avatarGroupProps}>\n {allChildrenList}\n </div>\n </AvatarContextProvider>\n );\n};\nexport default Group;\n","import React, { useRef, useState, useEffect, useContext, Ref } from 'react';\nimport useResizeObserver from 'use-resize-observer';\nimport classNames from 'classnames';\nimport useConfig from '../_util/useConfig';\nimport forwardRefWithStatics from '../_util/forwardRefWithStatics';\nimport useCommonClassName from '../_util/useCommonClassName';\nimport composeRefs from '../_util/composeRefs';\nimport { TdAvatarProps } from './type';\nimport { StyledProps } from '../common';\nimport AvatarContext from './AvatarContext';\nimport AvatarGroup from './AvararGroup';\n\nexport interface AvatarProps extends TdAvatarProps, StyledProps {\n children?: React.ReactNode;\n}\n\nconst Avatar = forwardRefWithStatics(\n (props: AvatarProps, ref: Ref<HTMLElement>) => {\n const {\n alt,\n hideOnLoadFailed = false,\n icon,\n image,\n shape = 'circle',\n size: avatarSize = 'default',\n onError,\n children,\n style,\n className,\n ...avatarProps\n } = props;\n const groupSize = useContext(AvatarContext);\n const { classPrefix } = useConfig();\n const [scale, setScale] = useState(1);\n const [isImgExist, setIsImgExist] = useState(true);\n const avatarRef = useRef<HTMLElement>(null);\n const avatarChildrenRef = useRef<HTMLElement>(null);\n const size = avatarSize === 'default' ? groupSize : avatarSize;\n const gap = 4;\n const handleScale = () => {\n if (!avatarChildrenRef.current || !avatarRef.current) {\n return;\n }\n const childrenWidth = avatarChildrenRef.current.offsetWidth;\n const avatarWidth = avatarRef.current.offsetWidth;\n\n if (childrenWidth !== 0 && avatarWidth !== 0) {\n if (gap * 2 < avatarWidth) {\n setScale(avatarWidth - gap * 2 < childrenWidth ? (avatarWidth - gap * 2) / childrenWidth : 1);\n }\n }\n };\n const { ref: observerRef } = useResizeObserver<HTMLDivElement>({\n onResize: handleScale,\n });\n\n const handleImgLoadError = () => {\n onError && onError();\n !hideOnLoadFailed && setIsImgExist(false);\n };\n\n useEffect(() => {\n setIsImgExist(true);\n setScale(1);\n }, [props.image]);\n\n useEffect(() => {\n handleScale();\n }, []);\n\n const { SIZE } = useCommonClassName();\n const numSizeStyle: React.CSSProperties =\n size && !SIZE[size]\n ? {\n width: size,\n height: size,\n fontSize: `${Number.parseInt(size, 10) / 2}px`,\n }\n : {};\n const imageStyle: React.CSSProperties =\n size && !SIZE[size]\n ? {\n width: size,\n height: size,\n }\n : {};\n\n const preClass = `${classPrefix}-avatar`;\n\n const avatarClass = classNames(preClass, className, {\n [SIZE[size]]: !!SIZE[size],\n [`${preClass}--${shape}`]: !!shape,\n [`${preClass}-icon`]: !!icon,\n });\n\n let content;\n if (image && isImgExist) {\n content = <img src={image} alt={alt} style={imageStyle} onError={handleImgLoadError} />;\n } else if (icon) {\n content = icon;\n } else {\n const childrenStyle: React.CSSProperties = {\n transform: `scale(${scale})`,\n };\n content = (\n <span ref={composeRefs(ref, avatarChildrenRef, observerRef) as any} style={childrenStyle}>\n {children}\n </span>\n );\n }\n return (\n <div\n ref={composeRefs(ref, avatarRef) as any}\n className={avatarClass}\n style={{ ...numSizeStyle, ...style }}\n {...avatarProps}\n >\n {content}\n </div>\n );\n },\n { Group: AvatarGroup },\n);\n\nAvatar.displayName = 'Avatar';\n\nexport default Avatar;\n"],"names":["Group","props","useConfig","classPrefix","preClass","className","cascading","collapseAvatar","max","placement","popupProps","size","children","avatarGroupProps","_excluded","childrenList","React","Children","toArray","allChildrenList","length","map","child","index","cloneElement","_objectSpread","key","groupClass","classNames","childrenCount","showList","slice","hiddenList","popupNum","popupMergeProps","popupNodes","createElement","Popup","Avatar","content","trigger","showArrow","push","AvatarContextProvider","forwardRefWithStatics","ref","alt","hideOnLoadFailed","icon","image","shape","avatarSize","onError","style","avatarProps","groupSize","useContext","AvatarContext","useState","scale","setScale","isImgExist","setIsImgExist","avatarRef","useRef","avatarChildrenRef","gap","handleScale","current","childrenWidth","offsetWidth","avatarWidth","useResizeObserver","onResize","observerRef","handleImgLoadError","useEffect","useCommonClassName","SIZE","numSizeStyle","width","height","fontSize","Number","parseInt","imageStyle","avatarClass","src","childrenStyle","transform","composeRefs","AvatarGroup","displayName"],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* rgb 转 cmyk
|
|
3
|
+
* @param red
|
|
4
|
+
* @param green
|
|
5
|
+
* @param blue
|
|
6
|
+
* @returns
|
|
7
|
+
*/
|
|
8
|
+
export declare const rgb2cmyk: (red: number, green: number, blue: number) => number[];
|
|
9
|
+
/**
|
|
10
|
+
* cmyk 转 rgb
|
|
11
|
+
* @param cyan
|
|
12
|
+
* @param magenta
|
|
13
|
+
* @param yellow
|
|
14
|
+
* @param black
|
|
15
|
+
* @returns
|
|
16
|
+
*/
|
|
17
|
+
export declare const cmyk2rgb: (cyan: number, magenta: number, yellow: number, black: number) => {
|
|
18
|
+
r: number;
|
|
19
|
+
g: number;
|
|
20
|
+
b: number;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* 输入色转rgb
|
|
24
|
+
* @param input
|
|
25
|
+
* @returns
|
|
26
|
+
*/
|
|
27
|
+
export declare const cmykInputToColor: (input: string) => string;
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import tinyColor from 'tinycolor2';
|
|
2
|
+
import { GradientColors, GradientColorPoint } from './gradient';
|
|
3
|
+
export interface ColorObject {
|
|
4
|
+
alpha: number;
|
|
5
|
+
css: string;
|
|
6
|
+
hex: string;
|
|
7
|
+
hex8: string;
|
|
8
|
+
hsl: string;
|
|
9
|
+
hsla: string;
|
|
10
|
+
hsv: string;
|
|
11
|
+
hsva: string;
|
|
12
|
+
rgb: string;
|
|
13
|
+
rgba: string;
|
|
14
|
+
saturation: number;
|
|
15
|
+
value: number;
|
|
16
|
+
isGradient: boolean;
|
|
17
|
+
linearGradient?: string;
|
|
18
|
+
}
|
|
19
|
+
interface ColorStates {
|
|
20
|
+
s: number;
|
|
21
|
+
v: number;
|
|
22
|
+
h: number;
|
|
23
|
+
a: number;
|
|
24
|
+
}
|
|
25
|
+
interface GradientStates {
|
|
26
|
+
colors: GradientColorPoint[];
|
|
27
|
+
degree: number;
|
|
28
|
+
selectedId: string;
|
|
29
|
+
css?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* 将渐变对象转换成字符串
|
|
33
|
+
* @param object
|
|
34
|
+
* @returns
|
|
35
|
+
*/
|
|
36
|
+
export declare const gradientColors2string: (object: GradientColors) => string;
|
|
37
|
+
/**
|
|
38
|
+
* 去除颜色的透明度
|
|
39
|
+
* @param color
|
|
40
|
+
* @returns
|
|
41
|
+
*/
|
|
42
|
+
export declare const getColorWithoutAlpha: (color: string) => string;
|
|
43
|
+
export declare const genId: () => string;
|
|
44
|
+
/**
|
|
45
|
+
* 生成一个渐变颜色
|
|
46
|
+
* @param left
|
|
47
|
+
* @param color
|
|
48
|
+
* @returns
|
|
49
|
+
*/
|
|
50
|
+
export declare const genGradientPoint: (left: number, color: string) => GradientColorPoint;
|
|
51
|
+
export declare class Color {
|
|
52
|
+
states: ColorStates;
|
|
53
|
+
originColor: string;
|
|
54
|
+
isGradient: boolean;
|
|
55
|
+
gradientStates: GradientStates;
|
|
56
|
+
constructor(input: string);
|
|
57
|
+
update(input: string): void;
|
|
58
|
+
get saturation(): number;
|
|
59
|
+
set saturation(value: number);
|
|
60
|
+
get value(): number;
|
|
61
|
+
set value(value: number);
|
|
62
|
+
get hue(): number;
|
|
63
|
+
set hue(value: number);
|
|
64
|
+
get alpha(): number;
|
|
65
|
+
set alpha(value: number);
|
|
66
|
+
get rgb(): string;
|
|
67
|
+
get rgba(): string;
|
|
68
|
+
get hsv(): string;
|
|
69
|
+
get hsva(): string;
|
|
70
|
+
get hsl(): string;
|
|
71
|
+
get hsla(): string;
|
|
72
|
+
get hex(): string;
|
|
73
|
+
get hex8(): string;
|
|
74
|
+
get cmyk(): string;
|
|
75
|
+
get css(): string;
|
|
76
|
+
get linearGradient(): string;
|
|
77
|
+
get gradientColors(): GradientColorPoint[];
|
|
78
|
+
set gradientColors(colors: GradientColorPoint[]);
|
|
79
|
+
get gradientSelectedId(): string;
|
|
80
|
+
set gradientSelectedId(id: string);
|
|
81
|
+
get gradientDegree(): number;
|
|
82
|
+
set gradientDegree(degree: number);
|
|
83
|
+
get gradientSelectedPoint(): GradientColorPoint;
|
|
84
|
+
getFormatsColorMap(): {
|
|
85
|
+
HEX: string;
|
|
86
|
+
CMYK: string;
|
|
87
|
+
RGB: string;
|
|
88
|
+
RGBA: string;
|
|
89
|
+
HSL: string;
|
|
90
|
+
HSLA: string;
|
|
91
|
+
HSV: string;
|
|
92
|
+
HSVA: string;
|
|
93
|
+
CSS: string;
|
|
94
|
+
};
|
|
95
|
+
updateCurrentGradientColor(): false | this;
|
|
96
|
+
updateStates(input: string): void;
|
|
97
|
+
getRgba(): {
|
|
98
|
+
r: number;
|
|
99
|
+
g: number;
|
|
100
|
+
b: number;
|
|
101
|
+
a: number;
|
|
102
|
+
};
|
|
103
|
+
getCmyk(): {
|
|
104
|
+
c: number;
|
|
105
|
+
m: number;
|
|
106
|
+
y: number;
|
|
107
|
+
k: number;
|
|
108
|
+
};
|
|
109
|
+
getHsva(): tinyColor.ColorFormats.HSVA;
|
|
110
|
+
getHsla(): tinyColor.ColorFormats.HSLA;
|
|
111
|
+
/**
|
|
112
|
+
* 判断输入色是否与当前色相同
|
|
113
|
+
* @param color
|
|
114
|
+
* @returns
|
|
115
|
+
*/
|
|
116
|
+
equals(color: string): boolean;
|
|
117
|
+
/**
|
|
118
|
+
* 校验输入色是否是一个有效颜色
|
|
119
|
+
* @param color
|
|
120
|
+
* @returns
|
|
121
|
+
*/
|
|
122
|
+
static isValid(color: string): boolean;
|
|
123
|
+
static hsva2color(h: number, s: number, v: number, a: number): string;
|
|
124
|
+
static hsla2color(h: number, s: number, l: number, a: number): string;
|
|
125
|
+
static rgba2color(r: number, g: number, b: number, a: number): string;
|
|
126
|
+
static hex2color(hex: string, a: number): string;
|
|
127
|
+
/**
|
|
128
|
+
* 对象转颜色字符串
|
|
129
|
+
* @param object
|
|
130
|
+
* @param format
|
|
131
|
+
* @returns
|
|
132
|
+
*/
|
|
133
|
+
static object2color(object: any, format: string): string;
|
|
134
|
+
/**
|
|
135
|
+
* 是否是渐变色
|
|
136
|
+
* @param input
|
|
137
|
+
* @returns
|
|
138
|
+
*/
|
|
139
|
+
static isGradientColor: (input: string) => boolean;
|
|
140
|
+
/**
|
|
141
|
+
* 比较两个颜色是否相同
|
|
142
|
+
* @param color1
|
|
143
|
+
* @param color2
|
|
144
|
+
* @returns
|
|
145
|
+
*/
|
|
146
|
+
static compare: (color1: string, color2: string) => boolean;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* 获取对外输出的color对象
|
|
150
|
+
* @param color
|
|
151
|
+
* @returns
|
|
152
|
+
*/
|
|
153
|
+
export declare const getColorObject: (color: Color) => ColorObject;
|
|
154
|
+
export default Color;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface GradientColorPoint {
|
|
2
|
+
id?: string;
|
|
3
|
+
color?: string;
|
|
4
|
+
left?: number;
|
|
5
|
+
}
|
|
6
|
+
export interface GradientColors {
|
|
7
|
+
points: GradientColorPoint[];
|
|
8
|
+
degree: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 验证是否是渐变字符串
|
|
12
|
+
* @param input
|
|
13
|
+
* @returns
|
|
14
|
+
*/
|
|
15
|
+
export declare const isGradientColor: (input: string) => null | RegExpExecArray;
|
|
16
|
+
/**
|
|
17
|
+
* 解析渐变字符串为 GradientColors 对象
|
|
18
|
+
* @param input
|
|
19
|
+
* @returns
|
|
20
|
+
*/
|
|
21
|
+
export declare const parseGradientString: (input: string) => GradientColors | boolean;
|
|
22
|
+
export default parseGradientString;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { MutableRefObject } from 'react';
|
|
2
|
-
export default function useClickOutside<T extends HTMLElement>(refs: MutableRefObject<T>[], handler: (event: MouseEvent | TouchEvent) => void): void;
|
|
2
|
+
export default function useClickOutside<T extends HTMLElement>(refs: MutableRefObject<T>[], handler: (event: MouseEvent | TouchEvent) => void, includePopup?: boolean): void;
|
|
@@ -5,14 +5,62 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
import { useEffect } from 'react';
|
|
8
|
+
import useConfig from './useConfig.js';
|
|
9
|
+
import '../_chunks/dep-bbad8591.js';
|
|
10
|
+
import '../_chunks/dep-1628aaec.js';
|
|
11
|
+
import '../_chunks/dep-8702aba9.js';
|
|
12
|
+
import '../_chunks/dep-e9e7c24f.js';
|
|
13
|
+
import '../_chunks/dep-c47502ef.js';
|
|
14
|
+
import '../_chunks/dep-3a2f4bdf.js';
|
|
15
|
+
import '../_chunks/dep-d51fd958.js';
|
|
16
|
+
import '../_chunks/dep-db8880c0.js';
|
|
17
|
+
import '../_chunks/dep-8efaaac0.js';
|
|
18
|
+
import '../_chunks/dep-d539b435.js';
|
|
19
|
+
import '../_chunks/dep-2b0021c1.js';
|
|
20
|
+
import '../_chunks/dep-09299e3f.js';
|
|
21
|
+
import '../_chunks/dep-23b2574f.js';
|
|
22
|
+
import '../_chunks/dep-a1403158.js';
|
|
23
|
+
import '../_chunks/dep-c03c5f48.js';
|
|
24
|
+
import '../_chunks/dep-9b67144e.js';
|
|
25
|
+
import '../_chunks/dep-d038aaf3.js';
|
|
26
|
+
import '../_chunks/dep-00728537.js';
|
|
27
|
+
import '../_chunks/dep-32abd81f.js';
|
|
28
|
+
import '../_chunks/dep-f3e5eb4b.js';
|
|
29
|
+
import '../_chunks/dep-ae52f85e.js';
|
|
30
|
+
import '../_chunks/dep-63ed508e.js';
|
|
31
|
+
import '../_chunks/dep-155571ca.js';
|
|
32
|
+
import '../_chunks/dep-81670ae9.js';
|
|
33
|
+
import '../locale/zh_CN.js';
|
|
34
|
+
import '../_common/js/global-config/locale/zh_CN.js';
|
|
35
|
+
import '../config-provider/zh_CN_config.js';
|
|
8
36
|
|
|
9
|
-
function useClickOutside(refs, handler) {
|
|
37
|
+
function useClickOutside(refs, handler, includePopup) {
|
|
38
|
+
var _useConfig = useConfig(),
|
|
39
|
+
classPrefix = _useConfig.classPrefix;
|
|
40
|
+
|
|
41
|
+
var POPUP_SELECTOR = ".".concat(classPrefix, "-popup");
|
|
10
42
|
useEffect(function () {
|
|
11
43
|
var listener = function listener(event) {
|
|
12
|
-
if (!Array.isArray(refs)
|
|
44
|
+
if (!Array.isArray(refs)) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
var elements = [];
|
|
49
|
+
|
|
50
|
+
if (includePopup) {
|
|
51
|
+
document.querySelectorAll(POPUP_SELECTOR).forEach(function (ele) {
|
|
52
|
+
elements.push(ele);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
elements = Array.from(new Set(elements));
|
|
57
|
+
|
|
58
|
+
if (refs.find(function (ref) {
|
|
13
59
|
var _ref$current;
|
|
14
60
|
|
|
15
61
|
return (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.contains(event.target);
|
|
62
|
+
}) || elements.find(function (el) {
|
|
63
|
+
return el === null || el === void 0 ? void 0 : el.contains(event.target);
|
|
16
64
|
})) {
|
|
17
65
|
return;
|
|
18
66
|
}
|
|
@@ -26,7 +74,7 @@ function useClickOutside(refs, handler) {
|
|
|
26
74
|
document.removeEventListener("mousedown", listener);
|
|
27
75
|
document.removeEventListener("touchstart", listener);
|
|
28
76
|
};
|
|
29
|
-
}, [refs, handler]);
|
|
77
|
+
}, [refs, handler, includePopup]);
|
|
30
78
|
}
|
|
31
79
|
|
|
32
80
|
export { useClickOutside as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useClickOutside.js","sources":["../../src/_util/useClickOutside.ts"],"sourcesContent":["import { MutableRefObject, useEffect } from 'react';\n\nexport default function useClickOutside<T extends HTMLElement>(\n refs: MutableRefObject<T>[],\n handler: (event: MouseEvent | TouchEvent) => void,\n) {\n useEffect(() => {\n const listener = (event) => {\n // Do nothing if clicking ref's element or descendent elements\n if (
|
|
1
|
+
{"version":3,"file":"useClickOutside.js","sources":["../../src/_util/useClickOutside.ts"],"sourcesContent":["import { MutableRefObject, useEffect } from 'react';\nimport useConfig from './useConfig';\n\nexport default function useClickOutside<T extends HTMLElement>(\n refs: MutableRefObject<T>[],\n handler: (event: MouseEvent | TouchEvent) => void,\n includePopup?: boolean,\n) {\n const { classPrefix } = useConfig();\n const POPUP_SELECTOR = `.${classPrefix}-popup`;\n\n useEffect(() => {\n const listener = (event) => {\n if (!Array.isArray(refs)) {\n return;\n }\n\n let elements = [];\n if (includePopup) {\n document.querySelectorAll(POPUP_SELECTOR).forEach((ele: Element) => {\n elements.push(ele as HTMLElement);\n });\n }\n elements = Array.from(new Set(elements));\n\n // Do nothing if clicking ref's element or descendent elements\n if (\n refs.find((ref) => ref.current?.contains(event.target)) ||\n elements.find((el) => el?.contains(event.target))\n ) {\n return;\n }\n handler(event);\n };\n // todo: pointerdown, jsdom 暂未实现 pointer 事件,后续加上后可以改进.\n document.addEventListener('mousedown', listener);\n document.addEventListener('touchstart', listener);\n return () => {\n document.removeEventListener('mousedown', listener);\n document.removeEventListener('touchstart', listener);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [refs, handler, includePopup]);\n}\n"],"names":["useClickOutside","refs","handler","includePopup","useConfig","classPrefix","POPUP_SELECTOR","useEffect","listener","event","Array","isArray","elements","document","querySelectorAll","forEach","ele","push","from","Set","find","ref","current","contains","target","el","addEventListener","removeEventListener"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEe,SAASA,eAAT,CAAyBC,IAAzB,EAA+BC,OAA/B,EAAwCC,YAAxC,EAAsD;AACnE,EAAA,IAAA,UAAA,GAAwBC,SAAS,EAAjC;AAAA,MAAQC,WAAR,cAAQA,WAAR,CAAA;;AACA,EAAMC,IAAAA,cAAc,GAAOD,GAAAA,CAAAA,MAAAA,CAAAA,WAAP,EAApB,QAAA,CAAA,CAAA;AACAE,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAW,CAACC,KAAD,EAAW;AAC1B,MAAA,IAAI,CAACC,KAAK,CAACC,OAAN,CAAcV,IAAd,CAAL,EAA0B;AACxB,QAAA,OAAA;AACD,OAAA;;AACD,MAAIW,IAAAA,QAAQ,GAAG,EAAf,CAAA;;AACA,MAAA,IAAIT,YAAJ,EAAkB;AAChBU,QAAAA,QAAQ,CAACC,gBAAT,CAA0BR,cAA1B,EAA0CS,OAA1C,CAAkD,UAACC,GAAD,EAAS;AACzDJ,UAAAA,QAAQ,CAACK,IAAT,CAAcD,GAAd,CAAA,CAAA;AACD,SAFD,CAAA,CAAA;AAGD,OAAA;;AACDJ,MAAAA,QAAQ,GAAGF,KAAK,CAACQ,IAAN,CAAW,IAAIC,GAAJ,CAAQP,QAAR,CAAX,CAAX,CAAA;;AACA,MAAA,IAAIX,IAAI,CAACmB,IAAL,CAAU,UAACC,GAAD,EAAA;AAAA,QAAA,IAAA,YAAA,CAAA;;AAAA,QAASA,OAAAA,CAAAA,YAAAA,GAAAA,GAAG,CAACC,OAAb,MAAS,IAAA,IAAA,YAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,YAAA,CAAaC,QAAb,CAAsBd,KAAK,CAACe,MAA5B,CAAT,CAAA;AAAA,OAAV,KAA2DZ,QAAQ,CAACQ,IAAT,CAAc,UAACK,EAAD,EAAA;AAAA,QAAQA,OAAAA,EAAR,KAAQA,IAAAA,IAAAA,EAAR,KAAQA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAE,CAAEF,QAAJ,CAAad,KAAK,CAACe,MAAnB,CAAR,CAAA;AAAA,OAAd,CAA/D,EAAkH;AAChH,QAAA,OAAA;AACD,OAAA;;AACDtB,MAAAA,OAAO,CAACO,KAAD,CAAP,CAAA;AACD,KAfD,CAAA;;AAgBAI,IAAAA,QAAQ,CAACa,gBAAT,CAA0B,WAA1B,EAAuClB,QAAvC,CAAA,CAAA;AACAK,IAAAA,QAAQ,CAACa,gBAAT,CAA0B,YAA1B,EAAwClB,QAAxC,CAAA,CAAA;AACA,IAAA,OAAO,YAAM;AACXK,MAAAA,QAAQ,CAACc,mBAAT,CAA6B,WAA7B,EAA0CnB,QAA1C,CAAA,CAAA;AACAK,MAAAA,QAAQ,CAACc,mBAAT,CAA6B,YAA7B,EAA2CnB,QAA3C,CAAA,CAAA;AACD,KAHD,CAAA;AAID,GAvBQ,EAuBN,CAACP,IAAD,EAAOC,OAAP,EAAgBC,YAAhB,CAvBM,CAAT,CAAA;AAwBD;;;;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface Coordinate {
|
|
2
|
+
x: number;
|
|
3
|
+
y: number;
|
|
4
|
+
}
|
|
5
|
+
interface DraggableCallback {
|
|
6
|
+
(coordinate: Coordinate, event?: MouseEvent): void;
|
|
7
|
+
}
|
|
8
|
+
interface DraggableProps {
|
|
9
|
+
start?: DraggableCallback;
|
|
10
|
+
drag?: DraggableCallback;
|
|
11
|
+
end?: DraggableCallback;
|
|
12
|
+
}
|
|
13
|
+
declare const useDrag: (ref: any, options: DraggableProps) => {
|
|
14
|
+
isDragging: boolean;
|
|
15
|
+
};
|
|
16
|
+
export default useDrag;
|