amis 1.9.1-beta.21 → 1.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. package/lib/components/ResultBox.js +3 -1
  2. package/lib/components/ResultBox.js.map +2 -2
  3. package/lib/components/Select.js +1 -1
  4. package/lib/components/Select.js.map +2 -2
  5. package/lib/components/formula/Editor.js +3 -2
  6. package/lib/components/formula/Editor.js.map +2 -2
  7. package/lib/components/formula/Picker.js +2 -2
  8. package/lib/components/formula/Picker.js.map +2 -2
  9. package/lib/components/formula/VariableList.js +2 -2
  10. package/lib/components/formula/VariableList.js.map +1 -1
  11. package/lib/index.js +1 -1
  12. package/lib/renderers/Form/ConditionBuilder.js +8 -1
  13. package/lib/renderers/Form/ConditionBuilder.js.map +2 -2
  14. package/lib/renderers/Form/InputTag.d.ts +1 -1
  15. package/lib/renderers/Form/InputTag.js.map +1 -1
  16. package/lib/renderers/Form/Select.d.ts +6 -1
  17. package/lib/renderers/Form/Select.js +3 -1
  18. package/lib/renderers/Form/Select.js.map +2 -2
  19. package/lib/renderers/Table/index.d.ts +1 -0
  20. package/lib/renderers/Table/index.js +18 -0
  21. package/lib/renderers/Table/index.js.map +2 -2
  22. package/lib/renderers/Tpl.d.ts +4 -0
  23. package/lib/renderers/Tpl.js +6 -3
  24. package/lib/renderers/Tpl.js.map +2 -2
  25. package/lib/themes/ang-ie11.css +13 -1
  26. package/lib/themes/ang.css +13 -1
  27. package/lib/themes/ang.css.map +1 -1
  28. package/lib/themes/antd-ie11.css +13 -1
  29. package/lib/themes/antd.css +13 -1
  30. package/lib/themes/antd.css.map +1 -1
  31. package/lib/themes/cxd-ie11.css +13 -1
  32. package/lib/themes/cxd.css +13 -1
  33. package/lib/themes/cxd.css.map +1 -1
  34. package/lib/themes/dark-ie11.css +13 -1
  35. package/lib/themes/dark.css +13 -1
  36. package/lib/themes/dark.css.map +1 -1
  37. package/lib/themes/default-ie11.css +13 -1
  38. package/lib/themes/default.css +13 -1
  39. package/lib/themes/default.css.map +1 -1
  40. package/package.json +1 -1
  41. package/schema.json +22 -16
  42. package/scss/components/_formula.scss +4 -1
  43. package/scss/components/form/_select.scss +10 -0
  44. package/sdk/ang-ie11.css +14 -1
  45. package/sdk/ang.css +14 -1
  46. package/sdk/antd-ie11.css +14 -1
  47. package/sdk/antd.css +14 -1
  48. package/sdk/barcode.js +51 -51
  49. package/sdk/charts.js +14 -14
  50. package/sdk/codemirror.js +7 -7
  51. package/sdk/color-picker.js +65 -65
  52. package/sdk/cropperjs.js +2 -2
  53. package/sdk/cxd-ie11.css +14 -1
  54. package/sdk/cxd.css +14 -1
  55. package/sdk/dark-ie11.css +14 -1
  56. package/sdk/dark.css +14 -1
  57. package/sdk/exceljs.js +1 -1
  58. package/sdk/markdown.js +69 -69
  59. package/sdk/papaparse.js +1 -1
  60. package/sdk/renderers/Form/CityDB.js +1 -1
  61. package/sdk/rest.js +16 -16
  62. package/sdk/rich-text.js +62 -62
  63. package/sdk/sdk-ie11.css +14 -1
  64. package/sdk/sdk.css +14 -1
  65. package/sdk/sdk.js +1333 -1333
  66. package/sdk/thirds/hls.js/hls.js +1 -1
  67. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  68. package/sdk/tinymce.js +57 -57
  69. package/src/components/ResultBox.tsx +3 -1
  70. package/src/components/Select.tsx +6 -1
  71. package/src/components/formula/Editor.tsx +3 -2
  72. package/src/components/formula/Picker.tsx +2 -2
  73. package/src/components/formula/VariableList.tsx +2 -2
  74. package/src/renderers/Form/ConditionBuilder.tsx +16 -0
  75. package/src/renderers/Form/InputTag.tsx +1 -1
  76. package/src/renderers/Form/Select.tsx +10 -2
  77. package/src/renderers/Table/index.tsx +21 -1
  78. package/src/renderers/Tpl.tsx +11 -1
@@ -101,6 +101,8 @@ var ResultBox = /** @class */ (function (_super) {
101
101
  var _b = this.props, className = _b.className, cx = _b.classnames, classPrefix = _b.classPrefix, clearable = _b.clearable, disabled = _b.disabled, hasError = _b.hasError, result = _b.result, value = _b.value, placeholder = _b.placeholder, children = _b.children, itemRender = _b.itemRender, allowInput = _b.allowInput, inputPlaceholder = _b.inputPlaceholder, onResultChange = _b.onResultChange, onChange = _b.onChange, onResultClick = _b.onResultClick, __ = _b.translate, locale = _b.locale, onKeyPress = _b.onKeyPress, onFocus = _b.onFocus, onBlur = _b.onBlur, borderMode = _b.borderMode, useMobileUI = _b.useMobileUI, hasDropDownArrow = _b.hasDropDownArrow, onClear = _b.onClear, rest = (0, tslib_1.__rest)(_b, ["className", "classnames", "classPrefix", "clearable", "disabled", "hasError", "result", "value", "placeholder", "children", "itemRender", "allowInput", "inputPlaceholder", "onResultChange", "onChange", "onResultClick", "translate", "locale", "onKeyPress", "onFocus", "onBlur", "borderMode", "useMobileUI", "hasDropDownArrow", "onClear"]);
102
102
  var isFocused = this.state.isFocused;
103
103
  var mobileUI = useMobileUI && (0, helper_1.isMobile)();
104
+ /** 不需要透传给Input的属性 */
105
+ var omitPropsList = ['maxTagCount', 'overflowTagPopover'];
104
106
  return (react_1.default.createElement("div", { className: cx('ResultBox', className, (_a = {
105
107
  'is-focused': isFocused,
106
108
  'is-disabled': disabled,
@@ -113,7 +115,7 @@ var ResultBox = /** @class */ (function (_super) {
113
115
  _a["ResultBox--border".concat((0, helper_1.ucFirst)(borderMode))] = borderMode,
114
116
  _a)), onClick: onResultClick, tabIndex: !allowInput && !disabled && onFocus ? 0 : -1, onKeyPress: allowInput ? undefined : onKeyPress, onFocus: allowInput ? undefined : onFocus, onBlur: allowInput ? undefined : onBlur },
115
117
  Array.isArray(result) && result.length ? (this.renderMultipeTags(result)) : result && !Array.isArray(result) ? (react_1.default.createElement("span", { className: cx('ResultBox-singleValue') }, isPlainObject(result) ? itemRender(result) : result)) : allowInput && !disabled ? null : (react_1.default.createElement("span", { className: cx('ResultBox-placeholder') }, __(placeholder || 'placeholder.noData'))),
116
- allowInput && !disabled ? (react_1.default.createElement(Input_1.default, (0, tslib_1.__assign)({}, rest, { onKeyPress: onKeyPress, ref: this.inputRef, value: value || '', onChange: this.handleChange, placeholder: __(Array.isArray(result) && result.length
118
+ allowInput && !disabled ? (react_1.default.createElement(Input_1.default, (0, tslib_1.__assign)({}, (0, omit_1.default)(rest, omitPropsList), { onKeyPress: onKeyPress, ref: this.inputRef, value: value || '', onChange: this.handleChange, placeholder: __(Array.isArray(result) && result.length
117
119
  ? inputPlaceholder
118
120
  : result
119
121
  ? ''
@@ -6,8 +6,8 @@
6
6
  "/src/components/ResultBox.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import {ThemeProps, themeable} from '../theme';\nimport React from 'react';\nimport omit from 'lodash/omit';\nimport isInteger from 'lodash/isInteger';\nimport {InputBoxProps} from './InputBox';\nimport {uncontrollable} from 'uncontrollable';\nimport {Icon} from './icons';\nimport Input from './Input';\nimport {autobind, isMobile, ucFirst} from '../utils/helper';\nimport {LocaleProps, localeable} from '../locale';\nimport TooltipWrapper, {TooltipObject} from './TooltipWrapper';\nimport isPlainObject = require('lodash/isPlainObject');\n\nexport interface ResultBoxProps\n extends ThemeProps,\n LocaleProps,\n Omit<InputBoxProps, 'result' | 'prefix' | 'onChange' | 'translate'> {\n onChange?: (value: string) => void;\n onResultClick?: (e: React.MouseEvent<HTMLElement>) => void;\n result?: Array<any> | any;\n itemRender: (value: any) => JSX.Element | string;\n onResultChange?: (value: Array<any>) => void;\n onClear?: (e: React.MouseEvent<HTMLElement>) => void;\n allowInput?: boolean;\n inputPlaceholder: string;\n useMobileUI?: boolean;\n hasDropDownArrow?: boolean;\n maxTagCount?: number;\n overflowTagPopover?: TooltipObject;\n}\n\nexport class ResultBox extends React.Component<ResultBoxProps> {\n static defaultProps: Pick<\n ResultBoxProps,\n 'clearable' | 'placeholder' | 'itemRender' | 'inputPlaceholder'\n > = {\n clearable: false,\n placeholder: 'placeholder.noData',\n inputPlaceholder: 'placeholder.enter',\n itemRender: (option: any) => (\n <span>{`${option.scopeLabel || ''}${option.label}`}</span>\n )\n };\n\n state = {\n isFocused: false\n };\n\n inputRef: React.RefObject<any> = React.createRef();\n\n focus() {\n this.inputRef.current?.focus();\n }\n\n blur() {\n this.inputRef.current?.blur();\n }\n\n @autobind\n clearValue(e: React.MouseEvent<any>) {\n e.preventDefault();\n this.props.onClear && this.props.onClear(e);\n this.props.onResultChange && this.props.onResultChange([]);\n }\n\n @autobind\n handleFocus(e: any) {\n const onFocus = this.props.onFocus;\n onFocus && onFocus(e);\n this.setState({\n isFocused: true\n });\n }\n\n @autobind\n handleBlur(e: any) {\n const onBlur = this.props.onBlur;\n onBlur && onBlur(e);\n this.setState({\n isFocused: false\n });\n }\n\n @autobind\n removeItem(e: React.MouseEvent<HTMLElement>) {\n e.stopPropagation();\n e.preventDefault();\n\n const {result, onResultChange} = this.props;\n const index = parseInt(e.currentTarget.getAttribute('data-index')!, 10);\n const newResult = Array.isArray(result) ? result.concat() : [];\n newResult.splice(index, 1);\n onResultChange && onResultChange(newResult);\n }\n\n @autobind\n handleChange(e: React.ChangeEvent<HTMLInputElement>) {\n const {onChange} = this.props;\n onChange?.(e.currentTarget.value);\n }\n\n renderMultipeTags(tags: any[]) {\n const {\n maxTagCount,\n overflowTagPopover,\n itemRender,\n classnames: cx\n } = this.props;\n\n if (\n maxTagCount != null &&\n isInteger(Math.floor(maxTagCount)) &&\n Math.floor(maxTagCount) >= 0 &&\n Math.floor(maxTagCount) < tags.length\n ) {\n const maxVisibleCount = Math.floor(maxTagCount);\n const tooltipProps: TooltipObject = {\n placement: 'top',\n trigger: 'hover',\n showArrow: false,\n offset: [0, -10],\n tooltipClassName: cx(\n 'ResultBox-overflow',\n overflowTagPopover?.tooltipClassName\n ),\n ...omit(overflowTagPopover, ['children', 'content', 'tooltipClassName'])\n };\n\n return [\n ...tags.slice(0, maxVisibleCount),\n {label: `+ ${tags.length - maxVisibleCount} ...`}\n ].map((item, index) => {\n return index === maxVisibleCount ? (\n <TooltipWrapper\n key={tags.length}\n tooltip={{\n ...tooltipProps,\n children: () => (\n <div className={cx('ResultBox-overflow-wrapper')}>\n {tags\n .slice(maxVisibleCount, tags.length)\n .map((item, index) => {\n const itemIndex = index + maxVisibleCount;\n\n return (\n <div className={cx('ResultBox-value')} key={itemIndex}>\n <span className={cx('ResultBox-valueLabel')}>\n {itemRender(item)}\n </span>\n <a data-index={itemIndex} onClick={this.removeItem}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n </div>\n );\n })}\n </div>\n )\n }}\n >\n <div className={cx('ResultBox-value')} key={index}>\n <span className={cx('ResultBox-valueLabel')}>{item.label}</span>\n </div>\n </TooltipWrapper>\n ) : (\n <div className={cx('ResultBox-value')} key={index}>\n <span className={cx('ResultBox-valueLabel')}>\n {itemRender(item)}\n </span>\n <a data-index={index} onClick={this.removeItem}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n </div>\n );\n });\n }\n\n return tags.map((item, index) => (\n <div className={cx('ResultBox-value')} key={index}>\n <span className={cx('ResultBox-valueLabel')}>{itemRender(item)}</span>\n <a data-index={index} onClick={this.removeItem}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n </div>\n ));\n }\n\n render() {\n const {\n className,\n classnames: cx,\n classPrefix,\n clearable,\n disabled,\n hasError,\n result,\n value,\n placeholder,\n children,\n itemRender,\n allowInput,\n inputPlaceholder,\n onResultChange,\n onChange,\n onResultClick,\n translate: __,\n locale,\n onKeyPress,\n onFocus,\n onBlur,\n borderMode,\n useMobileUI,\n hasDropDownArrow,\n onClear,\n ...rest\n } = this.props;\n const isFocused = this.state.isFocused;\n const mobileUI = useMobileUI && isMobile();\n\n return (\n <div\n className={cx('ResultBox', className, {\n 'is-focused': isFocused,\n 'is-disabled': disabled,\n 'is-error': hasError,\n 'is-clickable': onResultClick,\n 'is-clearable': clearable,\n 'is-mobile': mobileUI,\n 'is-group': Array.isArray(result),\n [`ResultBox--border${ucFirst(borderMode)}`]: borderMode\n })}\n onClick={onResultClick}\n tabIndex={!allowInput && !disabled && onFocus ? 0 : -1}\n onKeyPress={allowInput ? undefined : onKeyPress}\n onFocus={allowInput ? undefined : onFocus}\n onBlur={allowInput ? undefined : onBlur}\n >\n {Array.isArray(result) && result.length ? (\n this.renderMultipeTags(result)\n ) : result && !Array.isArray(result) ? (\n <span className={cx('ResultBox-singleValue')}>\n {isPlainObject(result) ? itemRender(result) : result}\n </span>\n ) : allowInput && !disabled ? null : (\n <span className={cx('ResultBox-placeholder')}>\n {__(placeholder || 'placeholder.noData')}\n </span>\n )}\n\n {allowInput && !disabled ? (\n <Input\n {...rest}\n onKeyPress={onKeyPress}\n ref={this.inputRef}\n value={value || ''}\n onChange={this.handleChange}\n placeholder={__(\n Array.isArray(result) && result.length\n ? inputPlaceholder\n : result\n ? ''\n : placeholder\n )}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n ) : null}\n\n {children}\n\n {clearable &&\n !disabled &&\n (Array.isArray(result) ? result.length : result) ? (\n <a\n onClick={this.clearValue}\n className={cx('ResultBox-clear', {\n 'ResultBox-clear-with-arrow': hasDropDownArrow\n })}\n >\n <div className={cx('ResultBox-clear-wrap')}>\n <Icon icon=\"input-clear\" className=\"icon\" />\n </div>\n </a>\n ) : null}\n {hasDropDownArrow && !mobileUI && (\n <span className={cx('ResultBox-pc-arrow')}>\n <Icon icon=\"right-arrow-bold\" className=\"icon\" />\n </span>\n )}\n {!allowInput && mobileUI ? (\n <span className={cx('ResultBox-arrow')}>\n <Icon icon=\"caret\" className=\"icon\" />\n </span>\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(\n localeable(\n uncontrollable(ResultBox, {\n value: 'onChange',\n result: 'onResultChange'\n })\n )\n);\n"
11
+ "import {ThemeProps, themeable} from '../theme';\nimport React from 'react';\nimport omit from 'lodash/omit';\nimport isInteger from 'lodash/isInteger';\nimport {InputBoxProps} from './InputBox';\nimport {uncontrollable} from 'uncontrollable';\nimport {Icon} from './icons';\nimport Input from './Input';\nimport {autobind, isMobile, ucFirst} from '../utils/helper';\nimport {LocaleProps, localeable} from '../locale';\nimport TooltipWrapper, {TooltipObject} from './TooltipWrapper';\nimport isPlainObject = require('lodash/isPlainObject');\n\nexport interface ResultBoxProps\n extends ThemeProps,\n LocaleProps,\n Omit<InputBoxProps, 'result' | 'prefix' | 'onChange' | 'translate'> {\n onChange?: (value: string) => void;\n onResultClick?: (e: React.MouseEvent<HTMLElement>) => void;\n result?: Array<any> | any;\n itemRender: (value: any) => JSX.Element | string;\n onResultChange?: (value: Array<any>) => void;\n onClear?: (e: React.MouseEvent<HTMLElement>) => void;\n allowInput?: boolean;\n inputPlaceholder: string;\n useMobileUI?: boolean;\n hasDropDownArrow?: boolean;\n maxTagCount?: number;\n overflowTagPopover?: TooltipObject;\n}\n\nexport class ResultBox extends React.Component<ResultBoxProps> {\n static defaultProps: Pick<\n ResultBoxProps,\n 'clearable' | 'placeholder' | 'itemRender' | 'inputPlaceholder'\n > = {\n clearable: false,\n placeholder: 'placeholder.noData',\n inputPlaceholder: 'placeholder.enter',\n itemRender: (option: any) => (\n <span>{`${option.scopeLabel || ''}${option.label}`}</span>\n )\n };\n\n state = {\n isFocused: false\n };\n\n inputRef: React.RefObject<any> = React.createRef();\n\n focus() {\n this.inputRef.current?.focus();\n }\n\n blur() {\n this.inputRef.current?.blur();\n }\n\n @autobind\n clearValue(e: React.MouseEvent<any>) {\n e.preventDefault();\n this.props.onClear && this.props.onClear(e);\n this.props.onResultChange && this.props.onResultChange([]);\n }\n\n @autobind\n handleFocus(e: any) {\n const onFocus = this.props.onFocus;\n onFocus && onFocus(e);\n this.setState({\n isFocused: true\n });\n }\n\n @autobind\n handleBlur(e: any) {\n const onBlur = this.props.onBlur;\n onBlur && onBlur(e);\n this.setState({\n isFocused: false\n });\n }\n\n @autobind\n removeItem(e: React.MouseEvent<HTMLElement>) {\n e.stopPropagation();\n e.preventDefault();\n\n const {result, onResultChange} = this.props;\n const index = parseInt(e.currentTarget.getAttribute('data-index')!, 10);\n const newResult = Array.isArray(result) ? result.concat() : [];\n newResult.splice(index, 1);\n onResultChange && onResultChange(newResult);\n }\n\n @autobind\n handleChange(e: React.ChangeEvent<HTMLInputElement>) {\n const {onChange} = this.props;\n onChange?.(e.currentTarget.value);\n }\n\n renderMultipeTags(tags: any[]) {\n const {\n maxTagCount,\n overflowTagPopover,\n itemRender,\n classnames: cx\n } = this.props;\n\n if (\n maxTagCount != null &&\n isInteger(Math.floor(maxTagCount)) &&\n Math.floor(maxTagCount) >= 0 &&\n Math.floor(maxTagCount) < tags.length\n ) {\n const maxVisibleCount = Math.floor(maxTagCount);\n const tooltipProps: TooltipObject = {\n placement: 'top',\n trigger: 'hover',\n showArrow: false,\n offset: [0, -10],\n tooltipClassName: cx(\n 'ResultBox-overflow',\n overflowTagPopover?.tooltipClassName\n ),\n ...omit(overflowTagPopover, ['children', 'content', 'tooltipClassName'])\n };\n\n return [\n ...tags.slice(0, maxVisibleCount),\n {label: `+ ${tags.length - maxVisibleCount} ...`}\n ].map((item, index) => {\n return index === maxVisibleCount ? (\n <TooltipWrapper\n key={tags.length}\n tooltip={{\n ...tooltipProps,\n children: () => (\n <div className={cx('ResultBox-overflow-wrapper')}>\n {tags\n .slice(maxVisibleCount, tags.length)\n .map((item, index) => {\n const itemIndex = index + maxVisibleCount;\n\n return (\n <div className={cx('ResultBox-value')} key={itemIndex}>\n <span className={cx('ResultBox-valueLabel')}>\n {itemRender(item)}\n </span>\n <a data-index={itemIndex} onClick={this.removeItem}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n </div>\n );\n })}\n </div>\n )\n }}\n >\n <div className={cx('ResultBox-value')} key={index}>\n <span className={cx('ResultBox-valueLabel')}>{item.label}</span>\n </div>\n </TooltipWrapper>\n ) : (\n <div className={cx('ResultBox-value')} key={index}>\n <span className={cx('ResultBox-valueLabel')}>\n {itemRender(item)}\n </span>\n <a data-index={index} onClick={this.removeItem}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n </div>\n );\n });\n }\n\n return tags.map((item, index) => (\n <div className={cx('ResultBox-value')} key={index}>\n <span className={cx('ResultBox-valueLabel')}>{itemRender(item)}</span>\n <a data-index={index} onClick={this.removeItem}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n </div>\n ));\n }\n\n render() {\n const {\n className,\n classnames: cx,\n classPrefix,\n clearable,\n disabled,\n hasError,\n result,\n value,\n placeholder,\n children,\n itemRender,\n allowInput,\n inputPlaceholder,\n onResultChange,\n onChange,\n onResultClick,\n translate: __,\n locale,\n onKeyPress,\n onFocus,\n onBlur,\n borderMode,\n useMobileUI,\n hasDropDownArrow,\n onClear,\n ...rest\n } = this.props;\n const isFocused = this.state.isFocused;\n const mobileUI = useMobileUI && isMobile();\n /** 不需要透传给Input的属性 */\n const omitPropsList = ['maxTagCount', 'overflowTagPopover'];\n\n return (\n <div\n className={cx('ResultBox', className, {\n 'is-focused': isFocused,\n 'is-disabled': disabled,\n 'is-error': hasError,\n 'is-clickable': onResultClick,\n 'is-clearable': clearable,\n 'is-mobile': mobileUI,\n 'is-group': Array.isArray(result),\n [`ResultBox--border${ucFirst(borderMode)}`]: borderMode\n })}\n onClick={onResultClick}\n tabIndex={!allowInput && !disabled && onFocus ? 0 : -1}\n onKeyPress={allowInput ? undefined : onKeyPress}\n onFocus={allowInput ? undefined : onFocus}\n onBlur={allowInput ? undefined : onBlur}\n >\n {Array.isArray(result) && result.length ? (\n this.renderMultipeTags(result)\n ) : result && !Array.isArray(result) ? (\n <span className={cx('ResultBox-singleValue')}>\n {isPlainObject(result) ? itemRender(result) : result}\n </span>\n ) : allowInput && !disabled ? null : (\n <span className={cx('ResultBox-placeholder')}>\n {__(placeholder || 'placeholder.noData')}\n </span>\n )}\n\n {allowInput && !disabled ? (\n <Input\n {...omit(rest, omitPropsList)}\n onKeyPress={onKeyPress}\n ref={this.inputRef}\n value={value || ''}\n onChange={this.handleChange}\n placeholder={__(\n Array.isArray(result) && result.length\n ? inputPlaceholder\n : result\n ? ''\n : placeholder\n )}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n ) : null}\n\n {children}\n\n {clearable &&\n !disabled &&\n (Array.isArray(result) ? result.length : result) ? (\n <a\n onClick={this.clearValue}\n className={cx('ResultBox-clear', {\n 'ResultBox-clear-with-arrow': hasDropDownArrow\n })}\n >\n <div className={cx('ResultBox-clear-wrap')}>\n <Icon icon=\"input-clear\" className=\"icon\" />\n </div>\n </a>\n ) : null}\n {hasDropDownArrow && !mobileUI && (\n <span className={cx('ResultBox-pc-arrow')}>\n <Icon icon=\"right-arrow-bold\" className=\"icon\" />\n </span>\n )}\n {!allowInput && mobileUI ? (\n <span className={cx('ResultBox-arrow')}>\n <Icon icon=\"caret\" className=\"icon\" />\n </span>\n ) : null}\n </div>\n );\n }\n}\n\nexport default themeable(\n localeable(\n uncontrollable(ResultBox, {\n value: 'onChange',\n result: 'onResultChange'\n })\n )\n);\n"
12
12
  ]
13
13
  }
@@ -551,7 +551,7 @@ var Select = /** @class */ (function (_super) {
551
551
  item.disabled
552
552
  ? item[labelField]
553
553
  : (0, Options_1.highlight)(item[labelField], inputValue, cx('Select-option-hl')),
554
- item.tip)) : (react_1.default.createElement("span", null,
554
+ item.tip)) : (react_1.default.createElement("span", { className: cx('Select-option-content'), title: typeof item[labelField] === 'string' ? item[labelField] : '' },
555
555
  item.disabled
556
556
  ? item[labelField]
557
557
  : (0, Options_1.highlight)(item[labelField], inputValue, cx('Select-option-hl')),
@@ -6,8 +6,8 @@
6
6
  "/src/components/Select.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": ";AAAA;;;;;GAKG;;;;AAEH,iDAA8C;AAC9C,6DAA0B;AAC1B,4EAAyC;AACzC,kEAA+B;AAC/B,6EAAyC;AACzC,mEAAgC;AAChC,mEAAgC;AAChC,iFAA8C;AAC9C,qEAA+D;AAC/D,iCAAwC;AACxC,aAAa;AACb,6CAAyC;AACzC,0CAQyB;AACzB,oFAAiD;AACjD,qDAAoD;AACpD,uCAAsC;AACtC,kCAA6D;AAC7D,qEAAkC;AAClC,+DAA4B;AAC5B,oCAAkD;AAClD,mEAAgC;AAChC,oCAA0C;AAOlC,uFAPA,eAAM,OAOA;AAAE,wFAPA,gBAAO,OAOA;AANvB,uDAAwE;AAExE,+DAA4B;AAyC5B,SAAgB,WAAW,CACzB,KAAuC,EACvC,KASC,EACD,cAA+B;IAA/B,+BAAA,EAAA,sBAA+B;IAE/B,IAAI,cAAc,EAAE;QAClB,KAAK,GAAG,IAAA,0BAAiB,EACvB,KAAK,EACL,cAAc,EACd,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,SAAS,CAChB,CAAC,cAAc,CAAC;KAClB;IAED,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE;QACjC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC;SAC7C;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;gBACzC,OAAO,EAAE,CAAC;aACX;YAED,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;SACjB;QAED,OAAO,KAAK;aACT,GAAG,CACF,UAAC,KAAU;YACT,OAAA,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC;gBACnD,CAAC,IAAA,iBAAQ,EAAC,KAAK,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,IAAI,OAAO,CAAC;oBACnE,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,SAAS,CAAC;QAHd,CAGc,CACjB;aACA,MAAM,CAAC,UAAC,IAAS,IAAK,OAAA,IAAI,EAAJ,CAAI,CAAkB,CAAC;KACjD;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QAC/B,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;KAClB;IAED,IAAI,aAAa,GAAG,WAAW,CAC7B,KAAoB,EACpB,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,UAAU,CACjB,CAAC;IACF,OAAO,aAAa;QAClB,CAAC,CAAC,CAAC,aAAa,CAAC;QACjB,CAAC,CAAC,IAAA,iBAAQ,EAAC,KAAK,CAAC;YACd,KAAgB,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,IAAI,OAAO,CAAC;YAC/D,CAAC,CAAC,CAAC,KAAe,CAAC;YACnB,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AA9DD,kCA8DC;AAED,SAAgB,WAAW,CACzB,KAAkB,EAClB,OAAgB,EAChB,UAAoB;;IAApB,2BAAA,EAAA,oBAAoB;IAEpB,IAAM,SAAS,GAAG,OAAO,KAAK,CAAC;IAE/B,IACE,SAAS,KAAK,QAAQ;QACtB,SAAS,KAAK,QAAQ;QACtB,SAAS,KAAK,SAAS;QACvB,SAAS,KAAK,QAAQ,EACtB;QACA,OAAO,KAAe,CAAC;KACxB;IAED,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,IAAI,CAAC;KACb;IAED,IACE,SAAS,KAAK,QAAQ;QACtB,KAAK;QACL,KAAK,CAAC,cAAc,CAAC,UAAU,IAAI,OAAO,CAAC,EAC3C;QACA,KAAK,GAAG,MAAC,KAAgB,CAAC,UAAU,IAAI,OAAO,CAAC,mCAAI,EAAE,CAAC;KACxD;IAED,OAAO,IAAA,iBAAQ,EACb,OAAO,EACP,kBAAkB,CAAC,KAAK,EAAE,UAAU,IAAI,OAAO,CAAC,CACvC,CAAC;AACd,CAAC;AAhCD,kCAgCC;AAED,SAAgB,gBAAgB,CAC9B,CAAc,EACd,CAAS,EACT,UAA4B;IAA5B,2BAAA,EAAA,oBAA4B;IAE5B,OAAO,IAAA,iBAAQ,EAAC,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,IAAI,OAAO,CAAC;QAChC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,OAAO,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;AACrD,CAAC;AARD,4CAQC;AAED,SAAgB,kBAAkB,CAChC,CAAc,EACd,UAA4B;IAA5B,2BAAA,EAAA,oBAA4B;IAE5B,OAAO,UAAC,CAAS,IAAK,OAAA,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,EAAlC,CAAkC,CAAC;AAC3D,CAAC;AALD,gDAKC;AAED,SAAgB,gBAAgB,CAC9B,OAAwE,EACxE,KAMC,EACD,UAAoB;IAPpB,sBAAA,EAAA;QAIE,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,EAAE;KACZ;IACD,2BAAA,EAAA,oBAAoB;IAEpB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,UAAA,IAAI;YAChC,IAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,GAAG,EAAE;gBACR,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;aAC3B;YAED,IAAM,MAAM,GAAG;gBACb,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,IAAI;aACZ,CAAC;YAEF,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAChC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAE3B,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;KACJ;SAAM,IACL,KAAK,CAAC,OAAO,CAAC,OAAwB,CAAC;QACvC,OAAQ,OAAyB,CAAC,CAAC,CAAC,KAAK,QAAQ,EACjD;QACA,OAAQ,OAAyB,CAAC,GAAG,CAAC,UAAA,IAAI;YACxC,IAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,GAAG,EAAE;gBACR,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;aAC3B;YAED,IAAM,MAAM,GAAG;gBACb,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,IAAI;aACZ,CAAC;YAEF,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAChC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAE3B,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;KACJ;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAkB,CAAC,EAAE;QAC5C,OAAQ,OAAmB,CAAC,GAAG,CAAC,UAAA,IAAI;YAClC,IAAM,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;YAEvC,IAAM,GAAG,GACP,KAAK,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ;gBACnC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC7B,CAAC,CAAC,CAAC,CAAC,CAAC;YAET,IAAI,CAAC,GAAG,EAAE;gBACR,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;aAC3B;YAED,IAAM,MAAM,mDACP,IAAI,KACP,KAAK,OAAA,GACN,CAAC;YAEF,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,WAAW,EAAE;gBAC1C,MAAM,CAAC,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;aACxE;iBAAM,IAAI,KAAK,KAAK,SAAS,EAAE;gBAC9B,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACzB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC5B;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;KACJ;SAAM,IAAI,IAAA,uBAAa,EAAC,OAAO,CAAC,EAAE;QACjC,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,UAAA,GAAG;YACjC,IAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,CAAC,GAAG,EAAE;gBACR,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;aAC3B;YAED,IAAM,MAAM,GAAG;gBACb,KAAK,EAAG,OAAwC,CAAC,GAAG,CAAW;gBAC/D,KAAK,EAAE,GAAG;aACX,CAAC;YAEF,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAChC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAE3B,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AA/FD,4CA+FC;AAED,IAAM,oBAAoB,GAAG,mBAAS,CAAC,gBAAgB,CAAC;AAqFxD;IAA4B,uCAAyC;IA2BnE,gBAAY,KAAkB;QAA9B,YACE,kBAAM,KAAK,CAAC,SAWb;QAbD,UAAI,GAAoC,eAAK,CAAC,SAAS,EAAE,CAAC;QAIxD,KAAI,CAAC,KAAK,GAAG;YACX,MAAM,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK;YAClC,SAAS,EAAE,KAAK;YAChB,UAAU,EAAE,EAAE;YACd,gBAAgB,EAAE,CAAC,CAAC;YACpB,SAAS,EAAE,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC;YAC1C,UAAU,EAAE,EAAE;YACd,gBAAgB,EAAE,EAAE;SACrB,CAAC;;IACJ,CAAC;IAED,kCAAiB,GAAjB;QACS,IAAA,WAAW,GAAI,IAAI,CAAC,KAAK,YAAd,CAAe;QACjC,WAAW,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,mCAAkB,GAAlB,UAAmB,SAAsB;QACvC,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,EAAE,GAAe,aAAI,CAAC;QAE1B,IACE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC;YAC/D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,EACnE;YACA,IAAM,SAAS,GAAkB,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACjE,IAAI,CAAC,QAAQ,CACX;gBACE,SAAS,EAAE,SAAS;aACrB,EACD,EAAE,CACH,CAAC;SACH;IACH,CAAC;IAGD,qBAAI,GAAJ;QADA,iBAUC;QARC,IAAI,CAAC,KAAK,CAAC,QAAQ;YACjB,IAAI,CAAC,QAAQ,CACX;gBACE,MAAM,EAAE,IAAI;gBACZ,gBAAgB,EAAE,CAAC,CAAC;aACrB,EACD,cAAM,OAAA,UAAU,CAAC,KAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAA3B,CAA2B,CAClC,CAAC;IACN,CAAC;IAGD,sBAAK,GAAL;QACE,IAAI,CAAC,QAAQ,CAAC;YACZ,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC;IAGD,wBAAO,GAAP;QACE,aAAa;QACb,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC/C,IAAI,CAAC,QAAQ,CAAC;YACZ,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;IACL,CAAC;IAGD,uBAAM,GAAN,UAAO,CAAoC;QAD3C,iBAkBC;QAhBC,IACE,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,OAAO;YACjB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAqB,CAAC,EACnD;YACA,OAAO;SACR;QAED,IAAI,CAAC,KAAK,CAAC,QAAQ;YACjB,IAAI,CAAC,QAAQ,CACX;gBACE,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;gBAC1B,gBAAgB,EAAE,CAAC,CAAC;aACrB,EACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAM,OAAA,UAAU,CAAC,KAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAA3B,CAA2B,CAClE,CAAC;IACN,CAAC;IAGD,wBAAO,GAAP,UAAQ,CAAM;QACL,IAAA,WAAW,GAAI,IAAI,CAAC,KAAK,YAAd,CAAe;QAC1B,IAAA,SAAS,GAAI,IAAI,CAAC,KAAK,UAAd,CAAe;QAC/B,IAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,KAAK,EAAV,CAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1E,IAAI,CAAC,KAAK,CAAC,QAAQ;YACjB,IAAI,CAAC,KAAK,CAAC,MAAM;YACjB,IAAI,CAAC,QAAQ,CACX;gBACE,SAAS,EAAE,IAAI;aAChB,EACD,IAAI,CAAC,KAAK,CACX,CAAC;QAEJ,IAAI,CAAC,KAAK,CAAC,OAAO;YAChB,IAAI,CAAC,KAAK,CAAC,OAAO,iDACb,CAAC,KACJ,KAAK,OAAA,IACL,CAAC;IACP,CAAC;IAGD,uBAAM,GAAN,UAAO,CAAM;QACJ,IAAA,WAAW,GAAI,IAAI,CAAC,KAAK,YAAd,CAAe;QAC1B,IAAA,SAAS,GAAI,IAAI,CAAC,KAAK,UAAd,CAAe;QAC/B,IAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,KAAK,EAAV,CAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1E,IAAI,CAAC,QAAQ,CAAC;YACZ,SAAS,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,MAAM;YACf,IAAI,CAAC,KAAK,CAAC,MAAM,iDACZ,CAAC,KACJ,KAAK,OAAA,IACL,CAAC;IACP,CAAC;IAGD,sBAAK,GAAL;QACE,IAAI,CAAC,KAAK;YACR,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACpB,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC;IACnD,CAAC;IAED,qBAAI,GAAJ;QACE,IAAI,CAAC,KAAK;YACR,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YACnB,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC;IAClD,CAAC;IAGD,0BAAS,GAAT;QACE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,MAAM,GAAG,IAAA,uBAAW,EAAC,IAAI,CAAgB,CAAC;SAChD;QACD,OAAO,IAAI,CAAC,MAAqB,CAAC;IACpC,CAAC;IAGD,yBAAQ,GAAR,UAAS,GAAqB;QAC5B,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;IACnB,CAAC;IAGD,+BAAc,GAAd;QACQ,IAAA,KAOF,IAAI,CAAC,KAAK,EANZ,OAAO,aAAA,EACP,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,gBAAgB,sBAAA,EAChB,UAAU,gBAAA,EACV,UAAU,gBACE,CAAC;QACf,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QACpC,IAAA,SAAS,GAAI,IAAI,CAAC,KAAK,UAAd,CAAe;QAC7B,IAAI,aAAa,GACf,UAAU,IAAI,gBAAgB;YAC5B,CAAC,CAAC,IAAA,0BAAW,EAAC,OAAO,EAAE,UAAU,EAAE;gBAC/B,IAAI,EAAE,CAAC,UAAU,IAAI,OAAO,EAAE,UAAU,IAAI,OAAO,CAAC;aACrD,CAAC;YACJ,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACvB,IAAM,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,UAAA,MAAM,IAAI,OAAA,MAAM,CAAC,KAAK,EAAZ,CAAY,CAAC,CAAC;QAChE,IAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,UAAA,MAAM,IAAI,OAAA,MAAM,CAAC,KAAK,EAAZ,CAAY,CAAC,CAAC;QAC9D,IAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CACpC,UAAA,MAAM,IAAI,OAAA,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAApC,CAAoC,CAC/C,CAAC;QAEF,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QAC5C,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,KAAK,EAAV,CAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACxE,CAAC;IAED,2BAAU,GAAV,UAAW,KAAa,EAAE,CAAiC;QACnD,IAAA,KAAoC,IAAI,CAAC,KAAK,EAA7C,QAAQ,cAAA,EAAE,WAAW,iBAAA,EAAE,QAAQ,cAAc,CAAC;QACrD,IAAI,QAAQ,EAAE;YACZ,OAAO;SACR;QACI,IAAW,KAAK,GAAI,IAAI,CAAC,KAAK,UAAd,CAAe;QAEpC,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;QACzB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACxD,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAEvB,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,KAAK,EAAV,CAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAChE,CAAC;IAGD,kCAAiB,GAAjB,UAAkB,GAAwC;QAD1D,iBASC;QAPQ,IAAA,WAAW,GAAI,IAAI,CAAC,KAAK,YAAd,CAAe;QACjC,IAAI,CAAC,QAAQ,CACX;YACE,UAAU,EAAE,GAAG,CAAC,aAAa,CAAC,KAAK;SACpC,EACD,cAAM,OAAA,WAAW,IAAI,WAAW,CAAC,KAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAjD,CAAiD,CACxD,CAAC;IACJ,CAAC;IAGD,mCAAkB,GAAlB,UAAmB,UAAe,EAAE,KAAa,EAAE,OAAiB;QAClE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YACxB,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;SAC5B;QACD,IAAI,CAAC,QAAQ,CAAC;YACZ,gBAAgB,EAAE,UAAU;SAC7B,CAAC,CAAC;QACH,SAAS;QACT,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;SAC/B;IACH,CAAC;IAGD,6BAAY,GAAZ,UAAa,UAAe;QACpB,IAAA,KAAgD,IAAI,CAAC,KAAK,EAAzD,QAAQ,cAAA,EAAE,QAAQ,cAAA,EAAE,WAAW,iBAAA,EAAE,UAAU,gBAAc,CAAC;QAC5D,IAAA,SAAS,GAAI,IAAI,CAAC,KAAK,UAAd,CAAe;QAE7B,IAAI,QAAQ,EAAE;YACZ,IAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,UAAU,CAAC,EAAhB,CAAgB,CAAC,CAAC;YAChE,SAAS,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;YAC/B,IAAM,GAAG,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,GAAG,EAAE;gBACR,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;aAC1B;iBAAM;gBACL,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC5B;YACD,QAAQ,CACN,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,UAAU,CAAC,EAAhB,CAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAClE,CAAC;SACH;aAAM;YACL,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;SAC7D;IACH,CAAC;IAGD,kCAAiB,GAAjB,UAAkB,OAAY;QACtB,IAAA,KAAuB,IAAI,CAAC,KAAK,EAAhC,QAAQ,cAAA,EAAE,QAAQ,cAAc,CAAC;QACxC,IAAI,MAAM,GAAQ,EAAE,CAAC;QAErB,QAAQ,OAAO,CAAC,IAAI,EAAE;YACpB,KAAK,oBAAoB,CAAC,YAAY,CAAC;YACvC,KAAK,oBAAoB,CAAC,SAAS;gBACjC,MAAM,mDACD,MAAM,KACT,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAC/B,SAAS,EAAE,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAC/C,CAAC;gBACF,MAAM;YACR,KAAK,oBAAoB,CAAC,iCAAiC;gBACzD,MAAM;YACR,KAAK,oBAAoB,CAAC,WAAW;gBACnC,MAAM,CAAC,gBAAgB,GAAG,CAAC,CAAC;gBAC5B,MAAM;YACR,KAAK,oBAAoB,CAAC,gBAAgB,CAAC;YAC3C,KAAK,oBAAoB,CAAC,cAAc,CAAC;YACzC,KAAK,oBAAoB,CAAC,cAAc;gBACtC,MAAM,mDACD,MAAM,GACN,OAAO,CACX,CAAC;gBACF,MAAM;SACT;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE;YAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACvB;IACH,CAAC;IAGD,+BAAc,GAAd,UAAe,CAAsB;QACnC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE;YACxC,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,CAAC,CAAC,cAAc,EAAE,CAAC;SACpB;IACH,CAAC;IAGD,2BAAU,GAAV,UAAW,CAAwB;QACjC,IAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QACrC,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC;IAGD,iCAAgB,GAAhB;QACS,IAAA,WAAW,GAAI,IAAI,CAAC,KAAK,YAAd,CAAe;QACjC,IAAI,CAAC,QAAQ,CACX;YACE,UAAU,EAAE,EAAE;SACf,EACD,cAAM,OAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAG,EAAE,CAAC,EAAjB,CAAiB,CACxB,CAAC;IACJ,CAAC;IAGD,+BAAc,GAAd;QACS,IAAA,KAAK,GAAI,IAAI,CAAC,KAAK,MAAd,CAAe;QAC3B,KAAK,IAAI,KAAK,EAAE,CAAC;IACnB,CAAC;IAGD,gCAAe,GAAf,UAAgB,CAAQ,EAAE,IAAS;QAC1B,IAAA,MAAM,GAAI,IAAI,CAAC,KAAK,OAAd,CAAe;QAC5B,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAGD,kCAAiB,GAAjB,UAAkB,CAAQ,EAAE,IAAS;QAC5B,IAAA,QAAQ,GAAI,IAAI,CAAC,KAAK,SAAd,CAAe;QAC9B,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAGD,4BAAW,GAAX,UAAY,GAAQ;QAClB,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAC,UAAU,EAAE,GAAG,CAAC,YAAY,EAAC,CAAC,CAAC;IACvD,CAAC;IAED,4BAAW,GAAX,UAAY,EAAoD;QAAhE,iBAiLC;YAjLY,UAAU,gBAAA,EAAE,MAAM,YAAA;QACvB,IAAA,KAUF,IAAI,CAAC,KAAK,EATA,EAAE,gBAAA,EACd,QAAQ,cAAA,EACR,YAAY,kBAAA,EACZ,WAAW,iBAAA,EACX,UAAU,gBAAA,EACV,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,kBAAkB,wBAAA,EACP,EAAE,eACD,CAAC;QACf,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAEvC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;YACrB,OAAO,CACL,uCAAK,GAAG,EAAC,aAAa,EAAC,SAAS,EAAE,EAAE,CAAC,oBAAoB,CAAC,IACvD,EAAE,CAAC,WAAW,CAAC,CACZ,CACP,CAAC;SACH;QAED,IACE,QAAQ;YACR,WAAW,IAAI,IAAI;YACnB,IAAA,mBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAClC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC,MAAM,EAC1C;YACA,IAAM,iBAAe,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAChD,IAAM,cAAY,2BAChB,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,KAAK,EAChB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAChB,gBAAgB,EAAE,EAAE,CAClB,iBAAiB,EACjB,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,gBAAgB,CACrC,IACE,IAAA,cAAI,EAAC,kBAAkB,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC,CACzE,CAAC;YACF,OAAO,0DACF,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAe,CAAC;gBACtC,EAAC,KAAK,EAAE,YAAK,SAAS,CAAC,MAAM,GAAG,iBAAe,SAAM,EAAC;sBACtD,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK;gBAChB,IAAI,KAAK,KAAK,iBAAe,EAAE;oBAC7B,OAAO,CACL,8BAAC,wBAAc,IACb,GAAG,EAAE,SAAS,CAAC,MAAM,EACrB,OAAO,kDACF,cAAY,KACf,QAAQ,EAAE,cAAM,OAAA,CACd,uCAAK,SAAS,EAAE,EAAE,CAAC,yBAAyB,CAAC,IAC1C,SAAS;iCACP,KAAK,CAAC,iBAAe,EAAE,SAAS,CAAC,MAAM,CAAC;iCACxC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK;gCACf,IAAM,SAAS,GAAG,KAAK,GAAG,iBAAe,CAAC;gCAC1C,OAAO,CACL,uCACE,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE;wCAC5B,aAAa,EAAE,QAAQ;wCACvB,YAAY,EAAE,IAAI,CAAC,WAAW;qCAC/B,CAAC;oCAEF,wCAAM,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,IACrC,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,CACvB;oCACP,wCACE,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE;4CAChC,aAAa,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ;yCACzC,CAAC,EACF,OAAO,EAAE,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAI,EAAE,SAAS,CAAC;wCAE9C,8BAAC,YAAI,IAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,GAAG,CACjC,CACH,CACP,CAAC;4BACJ,CAAC,CAAC,CACA,CACP,EA7Be,CA6Bf;wBAGH,uCACE,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE;gCAC5B,aAAa,EAAE,QAAQ;gCACvB,YAAY,EAAE,IAAI,CAAC,WAAW;6BAC/B,CAAC,EACF,OAAO,EAAE,UAAC,CAAmB;gCAC3B,OAAA,CAAC,CAAC,eAAe,EAAE;4BAAnB,CAAmB;4BAGrB,wCAAM,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,IACrC,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,CACvB,CACH,CACS,CAClB,CAAC;iBACH;gBAED,OAAO,CACL,8BAAC,wBAAc,IACb,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,EACpC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,KAAK;oBAEV,uCACE,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE;4BAC5B,aAAa,EAAE,QAAQ;4BACvB,YAAY,EAAE,IAAI,CAAC,WAAW;yBAC/B,CAAC;wBAEF,wCAAM,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,IACrC,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,CACvB;wBACP,wCACE,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE;gCAChC,aAAa,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ;6BACzC,CAAC,EACF,OAAO,EAAE,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAI,EAAE,KAAK,CAAC;4BAE1C,8BAAC,YAAI,IAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,GAAG,CACjC,CACH,CACS,CAClB,CAAC;YACJ,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,SAAS,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK;YAC/B,IAAI,CAAC,QAAQ,EAAE;gBACb,OAAO,CACL,uCACE,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE;wBAC5B,aAAa,EAAE,QAAQ;wBACvB,YAAY,EAAE,IAAI,CAAC,WAAW;qBAC/B,CAAC,EACF,GAAG,EAAE,KAAK,IAET,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,CACxB,CACP,CAAC;aACH;YAED,OAAO,YAAY,CAAC,CAAC,CAAC,CACpB,UAAG,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,SAC5B,KAAK,KAAK,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAC3C,CACH,CAAC,CAAC,CAAC,CACF,8BAAC,wBAAc,IACb,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,EACpC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,KAAK;gBAEV,uCACE,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE;wBAC5B,aAAa,EAAE,QAAQ;wBACvB,YAAY,EAAE,IAAI,CAAC,WAAW;qBAC/B,CAAC;oBAEF,wCAAM,SAAS,EAAE,EAAE,CAAC,mBAAmB,CAAC,IACrC,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,CACvB;oBACP,wCACE,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE;4BAChC,aAAa,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ;yBACzC,CAAC,EACF,OAAO,EAAE,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAI,EAAE,KAAK,CAAC;wBAE1C,8BAAC,YAAI,IAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,GAAG,CACjC,CACH,CACS,CAClB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,4BAAW,GAAX,UAAY,EAQqB;QARjC,iBAqTC;YApTC,YAAY,kBAAA,EACZ,YAAY,kBAAA,EACZ,gBAAgB,sBAAA,EAChB,UAAU,gBAAA,EACV,MAAM,YAAA,EACN,oBAAoB,0BAAA,EACpB,aAAa,mBAAA;QAEP,IAAA,KA6BF,IAAI,CAAC,KAAK,EA5BZ,gBAAgB,sBAAA,EAChB,OAAO,aAAA,EACP,KAAK,WAAA,EACL,UAAU,gBAAA,EACV,UAAU,gBAAA,EACV,aAAa,mBAAA,EACb,WAAW,iBAAA,EACX,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,YAAY,kBAAA,EACA,EAAE,gBAAA,EACd,gBAAgB,sBAAA,EAChB,QAAQ,cAAA,EACR,aAAa,mBAAA,EACb,gBAAgB,sBAAA,EAChB,UAAU,gBAAA,EACV,cAAc,oBAAA,EACd,QAAQ,cAAA,EACR,gBAAgB,sBAAA,EAChB,QAAQ,cAAA,EACR,SAAS,eAAA,EACT,gBAAgB,sBAAA,EACL,EAAE,eAAA,EACb,YAAY,kBAAA,EACZ,UAAU,gBAAA,EACV,eAAe,qBAAA,EACf,wBAAsB,EAAtB,gBAAgB,mBAAG,GAAG,KAAA,EACtB,mBAAmB,EAAnB,WAAW,mBAAG,KAAK,KACP,CAAC;QACR,IAAA,SAAS,GAAI,IAAI,CAAC,KAAK,UAAd,CAAe;QAE/B,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,IAAI,aAAa,GAAkB,CACjC,UAAU,IAAI,MAAM,IAAI,CAAC,WAAW;YAClC,CAAC,CAAC,IAAA,0BAAW,EAAC,OAAO,EAAE,UAAU,EAAE;gBAC/B,IAAI,EAAE,CAAC,UAAU,IAAI,OAAO,EAAE,UAAU,IAAI,OAAO,CAAC;aACrD,CAAC;YACJ,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CACrB,CAAC,MAAM,CAAC,UAAC,MAAc,IAAK,OAAA,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAA1C,CAA0C,CAAC,CAAC;QAEzE,IAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,UAAA,MAAM,IAAI,OAAA,MAAM,CAAC,UAAU,CAAC,EAAlB,CAAkB,CAAC,CAAC;QACpE,IAAI,QAAQ,IAAI,QAAQ,EAAE;YACxB,IAAM,aAAa,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CACpE,UAAA,MAAM,IAAI,OAAA,MAAM,CAAC,UAAU,CAAC,EAAlB,CAAkB,CAC7B,CAAC;YAEF,UAAU,GAAG,aAAa,CAAC,KAAK,CAC9B,UAAA,MAAM,IAAI,OAAA,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAApC,CAAoC,CAC/C,CAAC;YACF,cAAc,GAAG,aAAa,CAAC,IAAI,CACjC,UAAA,MAAM,IAAI,OAAA,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAApC,CAAoC,CAC/C,CAAC;SACH;QAED,cAAc;QACd,IAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAEzE,SAAS;QACT,IAAM,UAAU,GAAG,UAAC,EAA+C;gBAA9C,KAAK,WAAA,EAAE,KAAK,WAAA;YAC/B,IAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,EAAE;gBACT,OAAO,IAAI,CAAC;aACb;YACD,IAAM,OAAO,GACX,YAAY,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACxE,IAAI,YAAY,IAAI,OAAO,EAAE;gBAC3B,OAAO,IAAI,CAAC;aACb;YACD,OAAO,CACL,+DACM,YAAY,CAAC;gBACf,GAAG,EACD,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;oBAC5B,CAAC,CAAC,UAAG,IAAI,CAAC,KAAK,cAAI,IAAI,CAAC,KAAK,CAAE;oBAC/B,CAAC,CAAC,KAAK;gBACX,KAAK,OAAA;gBACL,IAAI,MAAA;gBACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,IACF,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,EAAE,CAAC,eAAe,EAAE;oBAC7B,aAAa,EAAE,IAAI,CAAC,QAAQ;oBAC5B,cAAc,EAAE,gBAAgB,KAAK,KAAK;oBAC1C,WAAW,EAAE,OAAO;iBACrB,CAAC;gBAED,SAAS,CAAC,CAAC,CAAC,CACX,qDAAiB,EAAE,CAAC,cAAc,CAAC,mBAAgB,MAAM;oBACvD,8BAAC,YAAI,IACH,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,MAAM,EAChB,OAAO,EAAE,UAAC,CAAM,IAAK,OAAA,KAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,EAA/B,CAA+B,GACpD,CACA,CACL,CAAC,CAAC,CAAC,IAAI;gBACP,QAAQ,CAAC,CAAC,CAAC,CACV,qDAAgB,cAAI,mBAAe,MAAM;oBACvC,8BAAC,YAAI,IACH,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,MAAM,EAChB,OAAO,EAAE,UAAC,CAAM,IAAK,OAAA,KAAI,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,EAA7B,CAA6B,GAClD,CACA,CACL,CAAC,CAAC,CAAC,IAAI;gBAEP,UAAU,CAAC,CAAC,CAAC,CACZ,QAAQ,CAAC,CAAC,CAAC,CACT,8BAAC,kBAAQ,IACP,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAI,CAAC,KAAK,EACrB,QAAQ,EAAE;wBACR,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;oBAC1B,CAAC,EACD,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAEtB,UAAU,CAAC,IAAI,EAAE;oBAChB,QAAQ,UAAA;oBACR,QAAQ,UAAA;oBACR,OAAO,SAAA;oBACP,QAAQ,EAAE,cAAM,OAAA,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAvB,CAAuB;oBACvC,UAAU,EAAE,UAAU,IAAI,EAAE;oBAC5B,UAAU,YAAA;oBACV,KAAK,OAAA;iBACN,CAAC,CACO,CACZ,CAAC,CAAC,CAAC,CACF,UAAU,CAAC,IAAI,EAAE;oBACf,QAAQ,UAAA;oBACR,QAAQ,UAAA;oBACR,OAAO,SAAA;oBACP,QAAQ,EAAE,cAAM,OAAA,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAvB,CAAuB;oBACvC,UAAU,EAAE,UAAU,IAAI,EAAE;oBAC5B,UAAU,YAAA;oBACV,KAAK,OAAA;iBACN,CAAC,CACH,CACF,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CACb,8BAAC,kBAAQ,IACP,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAI,CAAC,KAAK,EACrB,QAAQ,EAAE;wBACR,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;oBAC1B,CAAC,EACD,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,IAAI,EAAC,IAAI;oBAER,IAAI,CAAC,QAAQ;wBACZ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;wBAClB,CAAC,CAAC,IAAA,mBAAS,EACP,IAAI,CAAC,UAAU,CAAC,EAChB,UAAoB,EACpB,EAAE,CAAC,kBAAkB,CAAC,CACvB;oBAEJ,IAAI,CAAC,GAAG,CACA,CACZ,CAAC,CAAC,CAAC,CACF,wCACE,SAAS,EAAE,EAAE,CAAC,uBAAuB,CAAC,EACtC,KAAK,EACH,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;oBAG7D,IAAI,CAAC,QAAQ;wBACZ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;wBAClB,CAAC,CAAC,IAAA,mBAAS,EACP,IAAI,CAAC,UAAU,CAAC,EAChB,UAAoB,EACpB,EAAE,CAAC,kBAAkB,CAAC,CACvB;oBACJ,IAAI,CAAC,GAAG,CACJ,CACR,CACG,CACP,CAAC;QACJ,CAAC,CAAC;QAEF,IAAM,QAAQ,GAAG,IAAA,iBAAQ,GAAE,IAAI,WAAW,CAAC;QAC3C,IAAM,MAAM,GAAG;YACb,UAAU,EAAE,OAAO;YACnB,OAAO,EAAE,aAAa;SACvB,CAAC;QACF,IAAM,IAAI,GAAG,CACX,uCACE,GAAG,EAAE,IAAI,CAAC,IAAI,EACd,SAAS,EAAE,EAAE,CAAC,aAAa,EAAE;gBAC3B,kBAAkB,EAChB,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,GAAG,gBAAgB;gBACjE,WAAW,EAAE,QAAQ;aACtB,CAAC;YAED,UAAU,CAAC,CAAC,CAAC,CACZ,uCACE,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE;oBAC5B,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;iBACnC,CAAC;gBAEF,8BAAC,YAAI,IAAC,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,MAAM,GAAG;gBACvC,8BAAC,eAAK,4BACA,aAAa,CAAC;oBAChB,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,QAAQ,EAAE,QAAQ;oBAClB,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAAC;oBACjC,QAAQ,EAAE,IAAI,CAAC,iBAAiB;oBAChC,GAAG,EAAE,IAAI,CAAC,QAAQ;iBACnB,CAAC,EACF;gBACD,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,EAAC,CAAC,CAAC,CACpB,qCAAG,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC;oBAC9D,8BAAC,YAAI,IAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,MAAM,GAAG,CACpC,CACL,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAC,CAAC,CAAC,IAAI;YACP,QAAQ,IAAI,YAAY,CAAC,CAAC,CAAC,CAC1B,uCAAK,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC;;gBAC5B,eAAe,CAAC,MAAM;oBACvB,CACP,CAAC,CAAC,CAAC,IAAI;YACP,QAAQ,IAAI,QAAQ,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAC9C,uCAAK,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC;gBACjC,8BAAC,kBAAQ,IACP,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,cAAc,IAAI,CAAC,UAAU,EACtC,QAAQ,EAAE,IAAI,CAAC,cAAc,EAC7B,IAAI,EAAC,IAAI,IAER,EAAE,CAAC,aAAa,CAAC,CACT,CACP,CACP,CAAC,CAAC,CAAC,IAAI;YAER,uCAAK,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAC9D,QAAQ,CAAC,CAAC,CAAC,CACV,8BAAC,kBAAQ,IAAC,IAAI,EAAC,IAAI,kBAAuB,CAC3C,CAAC,CAAC,CAAC,CACF,0DAAwB,CACzB,CACG;YAEL,SAAS,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CACxB,qCAAG,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,cAAc;gBAC7D,8BAAC,YAAI,IAAC,IAAI,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,GAAG;gBACpC,EAAE,CAAC,cAAc,CAAC,CACjB,CACL,CAAC,CAAC,CAAC,IAAI;YAEP,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CACtB,aAAa,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAAE,+BAA+B;YACzE,8BAAC,sBAAW,IACV,MAAM,EACJ,aAAa,CAAC,MAAM,GAAG,CAAC;oBACtB,CAAC,CAAC,GAAG;oBACL,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,iBAAiB,EAE9C,SAAS,EAAE,aAAa,CAAC,MAAM,EAC/B,QAAQ,EAAE,iBAAiB,EAC3B,UAAU,EAAE,UAAU,GACtB,CACH,CAAC,CAAC,CAAC,CACF,aAAa,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,KAAK;gBAC5B,OAAO,UAAU,CAAC,EAAC,KAAK,OAAA,EAAC,CAAC,CAAC;YAC7B,CAAC,CAAC,CACH,CACF,CAAC,CAAC,CAAC,CACF,uCAAK,SAAS,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAG,EAAE,CAAC,aAAa,CAAC,CAAO,CACjE,CACG,CACP,CAAC;QACF,OAAO,QAAQ,CAAC,CAAC,CAAC,CAChB,8BAAC,eAAK,IACJ,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,EAC7B,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EACzB,MAAM,EAAE,IAAI,CAAC,KAAK,IAEjB,IAAI,CACC,CACT,CAAC,CAAC,CAAC,CACF,8BAAC,iBAAO,IACN,SAAS,EAAE,gBAAgB,IAAI,IAAI,CAAC,SAAS,EAC7C,MAAM,EAAE,IAAI,CAAC,SAAS,EACtB,SAAS,EAAE,gBAAgB,EAC3B,IAAI;YAEJ,8BAAC,iBAAO,IACN,OAAO,QACP,SAAS,EAAE,EAAE,CAAC,gBAAgB,CAAC,EAC/B,KAAK,EAAE;oBACL,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM;iBACtD,EACD,MAAM,EAAE,IAAI,CAAC,KAAK,IAEjB,IAAI,CACG,CACF,CACX,CAAC;IACJ,CAAC;IAED,uBAAM,GAAN;QAAA,iBAiGC;QAhGO,IAAA,KAiBF,IAAI,CAAC,KAAK,EAhBA,EAAE,gBAAA,EACd,QAAQ,cAAA,EACR,YAAY,kBAAA,EACZ,UAAU,gBAAA,EACV,MAAM,YAAA,EACN,KAAK,WAAA,EACL,SAAS,eAAA,EACT,KAAK,WAAA,EACL,OAAO,aAAA,EACP,SAAS,eAAA,EACT,UAAU,gBAAA,EACV,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,UAAU,gBAAA,EACV,WAAW,iBAAA,EACX,QAAQ,cACI,CAAC;QAEf,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QACvC,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QACzC,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QACzC,IAAM,QAAQ,GAAG,WAAW,IAAI,IAAA,iBAAQ,GAAE,CAAC;QAC3C,OAAO,CACL,8BAAC,mBAAS,IACR,YAAY,EAAE,SAAS,EACvB,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAC7C,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EACzB,UAAU,EAAE,UAAU,EACtB,QAAQ;YACN,uCAAuC;YACvC,QAAQ,CAAC,CAAC,CAAC,aAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAErC,aAAa,EAAE,IAAI,CAAC,iBAAiB,EACrC,YAAY,EAAE,UAAA,IAAI,IAAI,OAAA,CAAC,IAAI,CAAC,CAAC,CAAC,UAAG,IAAI,CAAC,UAAU,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAnC,CAAmC,IAExD,UAAC,OAAuC;;YAChC,IAAA,MAAM,GAAI,OAAO,OAAX,CAAY;YACzB,OAAO,CACL,uCACE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC3B,UAAU,EAAE,KAAI,CAAC,cAAc,EAC/B,OAAO,EAAE,KAAI,CAAC,MAAM,EACpB,OAAO,EAAE,KAAI,CAAC,OAAO,EACrB,MAAM,EAAE,KAAI,CAAC,MAAM,EACnB,SAAS,EAAE,EAAE,CACX,QAAQ;oBAEN,GAAC,eAAe,IAAG,QAAQ;oBAC3B,GAAC,gBAAgB,IAAG,MAAM;oBAC1B,GAAC,eAAe,IAAG,KAAK;oBACxB,GAAC,oBAAoB,IAAG,UAAU;oBAClC,eAAW,GAAE,MAAM;oBACnB,gBAAY,GAAE,KAAI,CAAC,KAAK,CAAC,SAAS;oBAClC,iBAAa,GAAE,QAAQ;oBACvB,eAAW,GAAE,QAAQ;oBACrB,cAAU,GAAE,QAAQ;oBACpB,GAAC,wBAAiB,IAAA,gBAAO,EAAC,UAAU,CAAC,CAAE,IAAG,UAAU;yBAEtD,SAAS,CACV;gBAED,uCACE,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE;wBAChC,qBAAqB,EAAE,YAAY;qBACpC,CAAC,IAED,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CACtB;gBACL,SAAS;oBACV,CAAC,QAAQ;oBACT,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;wBACnB,CAAC,CAAC,KAAK,CAAC,MAAM;wBACd,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAC3C,qCAAG,OAAO,EAAE,KAAI,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC;oBACxD,8BAAC,YAAI,IAAC,IAAI,EAAC,aAAa,EAAC,SAAS,EAAC,MAAM,GAAG,CAC1C,CACL,CAAC,CAAC,CAAC,IAAI;gBACP,OAAO,CAAC,CAAC,CAAC,CACT,8BAAC,iBAAO,IACN,IAAI,QACJ,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,CAAC,GACtC,CACH,CAAC,CAAC,CAAC,IAAI;gBAER,wCAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC;oBACjC,8BAAC,YAAI,IAAC,IAAI,EAAC,kBAAkB,EAAC,SAAS,EAAC,MAAM,GAAG,CAC5C;gBACN,MAAM,CAAC,CAAC,CAAC,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CACtC,CACP,CAAC;QACJ,CAAC,CACS,CACb,CAAC;IACJ,CAAC;;IA56BM,mBAAY,GAAG;QACpB,QAAQ,EAAE,KAAK;QACf,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,KAAK;QAChB,cAAc,EAAE,oBAAoB;QACpC,gBAAgB,EAAE,yBAAyB;QAC3C,kBAAkB,EAAE,SAAS;QAC7B,aAAa,EAAE,UAAU;QACzB,YAAY,EAAE,iBAAiB;QAC/B,cAAc,EAAE,cAAc;QAC9B,WAAW,EAAE,oBAAoB;QACjC,UAAU,EAAE,OAAO;QACnB,UAAU,EAAE,OAAO;QACnB,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,KAAK;QACf,aAAa,EAAE,iBAAiB;QAChC,eAAe,EAAE,KAAK;QACtB,gBAAgB,EAAE,MAAM;QACxB,gBAAgB,EAAE,GAAG;KACtB,CAAC;IA2CF;QADC,iBAAQ;;;;sCAUR;IAGD;QADC,iBAAQ;;;;uCAKR;IAGD;QADC,iBAAQ;;;;yCAOR;IAGD;QADC,iBAAQ;;0EACE,eAAK,oBAAL,eAAK,CAAC,UAAU;;wCAiB1B;IAGD;QADC,iBAAQ;;;;yCAoBR;IAGD;QADC,iBAAQ;;;;wCAeR;IAGD;QADC,iBAAQ;;;;uCAKR;IASD;QADC,iBAAQ;;;;2CAMR;IAGD;QADC,iBAAQ;;0EACK,gBAAgB,oBAAhB,gBAAgB;;0CAE7B;IAGD;QADC,iBAAQ;;;;gDA0BR;IAiBD;QADC,iBAAQ;;0EACc,eAAK,oBAAL,eAAK,CAAC,WAAW;;mDAQvC;IAGD;QADC,iBAAQ;;;;oDAYR;IAGD;QADC,iBAAQ;;;;8CAoBR;IAGD;QADC,iBAAQ;;;;mDAgCR;IAGD;QADC,iBAAQ;;0EACS,eAAK,oBAAL,eAAK,CAAC,aAAa;;gDAKpC;IAGD;QADC,iBAAQ;;0EACK,eAAK,oBAAL,eAAK,CAAC,UAAU;;4CAK7B;IAGD;QADC,iBAAQ;;;;kDASR;IAGD;QADC,iBAAQ;;;;gDAIR;IAGD;QADC,iBAAQ;;0EACU,KAAK,oBAAL,KAAK;;iDAKvB;IAGD;QADC,iBAAQ;;0EACY,KAAK,oBAAL,KAAK;;mDAKzB;IAGD;QADC,iBAAQ;;;;6CAGR;IA8kBH,aAAC;CAAA,AA96BD,CAA4B,eAAK,CAAC,SAAS,GA86B1C;AA96BY,wBAAM;AAg7BnB,IAAM,cAAc,GAAG,IAAA,iBAAS,EAC9B,IAAA,mBAAU,EACR,IAAA,+BAAc,EAAC,MAAM,EAAE;IACrB,KAAK,EAAE,UAAU;CAClB,CAAC,CACH,CACF,CAAC;AAEF,kBAAe,cAAc,CAAC;AACjB,QAAA,uBAAuB,GAAG,IAAA,mCAAgB,EAAiB;IACtE,OAAO,EAAE,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAA/C,CAA+C;IAChE,eAAe,EAAE,UAAC,OAAY,EAAE,MAAM;QACpC,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAEpC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC1B,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;SACzB;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAC;IACc,wCAGb;IAHD;;IAeA,CAAC;IAXC,wBAAM,GAAN;QACE,IAAM,KAAsD,IAAI,CAAC,KAAK,EAA/D,OAAO,aAAA,EAAE,MAAM,YAAA,EAAE,SAAS,eAAA,EAAE,YAAY,kBAAA,EAAK,IAAI,2BAAlD,kDAAmD,CAAa,CAAC;QAEvE,OAAO,CACL,8BAAC,cAAc,4BACT,IAAI,IACR,OAAO,EAAE,MAAM,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,EACrC,OAAO,EAAE,OAAO,IAChB,CACH,CAAC;IACJ,CAAC;IACH,cAAC;AAAD,CAAC,AAfD,CAAc,eAAK,CAAC,SAAS,GAgB9B,CAAC",
10
10
  "sourcesContent": [
11
- "/**\n * @file Select\n * @description\n * @author fex\n * @date 2017-11-07\n */\n\nimport {uncontrollable} from 'uncontrollable';\nimport React from 'react';\nimport isInteger from 'lodash/isInteger';\nimport omit from 'lodash/omit';\nimport VirtualList from './virtual-list';\nimport Overlay from './Overlay';\nimport PopOver from './PopOver';\nimport TooltipWrapper from './TooltipWrapper';\nimport Downshift, {ControllerStateAndHelpers} from 'downshift';\nimport {closeIcon, Icon} from './icons';\n// @ts-ignore\nimport {matchSorter} from 'match-sorter';\nimport {\n noop,\n isObject,\n findTree,\n autobind,\n ucFirst,\n normalizeNodePath,\n isMobile\n} from '../utils/helper';\nimport isPlainObject from 'lodash/isPlainObject';\nimport {highlight} from '../renderers/Form/Options';\nimport {findDOMNode} from 'react-dom';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport Checkbox from './Checkbox';\nimport Input from './Input';\nimport {LocaleProps, localeable} from '../locale';\nimport Spinner from './Spinner';\nimport {Option, Options} from '../Schema';\nimport {RemoteOptionsProps, withRemoteConfig} from './WithRemoteConfig';\nimport Picker from './Picker';\nimport PopUp from './PopUp';\n\nimport type {TooltipObject} from '../components/TooltipWrapper';\n\nexport {Option, Options};\n\nexport interface OptionProps {\n className?: string;\n multi?: boolean;\n multiple?: boolean;\n valueField?: string;\n labelField?: string;\n simpleValue?: boolean; // 默认onChange 出去是整个 option 节点,如果配置了 simpleValue 就只包含值。\n options: Options;\n loading?: boolean;\n joinValues?: boolean;\n extractValue?: boolean;\n delimiter?: string;\n clearable?: boolean;\n resetValue: any;\n placeholder?: string;\n disabled?: boolean;\n creatable?: boolean;\n pathSeparator?: string;\n itemHeight?: number; // 每个选项的高度,主要用于虚拟渲染\n virtualThreshold?: number; // 数据量多大的时候开启虚拟渲染\n hasError?: boolean;\n block?: boolean;\n onAdd?: (\n idx?: number | Array<number>,\n value?: any,\n skipForm?: boolean\n ) => void;\n editable?: boolean;\n onEdit?: (value: Option, origin?: Option, skipForm?: boolean) => void;\n removable?: boolean;\n onDelete?: (value: Option) => void;\n}\n\nexport type OptionValue = string | number | null | undefined | Option;\n\nexport function value2array(\n value: OptionValue | Array<OptionValue>,\n props: Pick<\n OptionProps,\n | 'multi'\n | 'multiple'\n | 'delimiter'\n | 'valueField'\n | 'labelField'\n | 'options'\n | 'pathSeparator'\n >,\n enableNodePath: boolean = false\n): Array<Option> {\n if (enableNodePath) {\n value = normalizeNodePath(\n value,\n enableNodePath,\n props.labelField,\n props.valueField,\n props.pathSeparator,\n props.delimiter\n ).nodeValueArray;\n }\n\n if (props.multi || props.multiple) {\n if (typeof value === 'string') {\n value = value.split(props.delimiter || ',');\n }\n\n if (!Array.isArray(value)) {\n if (value === null || value === undefined) {\n return [];\n }\n\n value = [value];\n }\n\n return value\n .map(\n (value: any) =>\n expandValue(value, props.options, props.valueField) ||\n (isObject(value) && value.hasOwnProperty(props.valueField || 'value')\n ? value\n : undefined)\n )\n .filter((item: any) => item) as Array<Option>;\n } else if (Array.isArray(value)) {\n value = value[0];\n }\n\n let expandedValue = expandValue(\n value as OptionValue,\n props.options,\n props.valueField\n );\n return expandedValue\n ? [expandedValue]\n : isObject(value) &&\n (value as Option).hasOwnProperty(props.valueField || 'value')\n ? [value as Option]\n : [];\n}\n\nexport function expandValue(\n value: OptionValue,\n options: Options,\n valueField = 'value'\n): Option | null {\n const valueType = typeof value;\n\n if (\n valueType !== 'string' &&\n valueType !== 'number' &&\n valueType !== 'boolean' &&\n valueType !== 'object'\n ) {\n return value as Option;\n }\n\n if (!options) {\n return null;\n }\n\n if (\n valueType === 'object' &&\n value &&\n value.hasOwnProperty(valueField || 'value')\n ) {\n value = (value as Option)[valueField || 'value'] ?? '';\n }\n\n return findTree(\n options,\n optionValueCompare(value, valueField || 'value')\n ) as Option;\n}\n\nexport function matchOptionValue(\n a: OptionValue,\n b: Option,\n valueField: string = 'value'\n) {\n return isObject(a)\n ? a === b[valueField || 'value']\n : String(b[valueField || 'value']) === String(a);\n}\n\nexport function optionValueCompare(\n a: OptionValue,\n valueField: string = 'value'\n) {\n return (b: Option) => matchOptionValue(a, b, valueField);\n}\n\nexport function normalizeOptions(\n options: string | {[propName: string]: string} | Array<string> | Options,\n share: {\n values: Array<any>;\n options: Array<any>;\n } = {\n values: [],\n options: []\n },\n valueField = 'value'\n): Options {\n if (typeof options === 'string') {\n return options.split(',').map(item => {\n const idx = share.values.indexOf(item);\n if (~idx) {\n return share.options[idx];\n }\n\n const option = {\n label: item,\n value: item\n };\n\n share.values.push(option.value);\n share.options.push(option);\n\n return option;\n });\n } else if (\n Array.isArray(options as Array<string>) &&\n typeof (options as Array<string>)[0] === 'string'\n ) {\n return (options as Array<string>).map(item => {\n const idx = share.values.indexOf(item);\n if (~idx) {\n return share.options[idx];\n }\n\n const option = {\n label: item,\n value: item\n };\n\n share.values.push(option.value);\n share.options.push(option);\n\n return option;\n });\n } else if (Array.isArray(options as Options)) {\n return (options as Options).map(item => {\n const value = item && item[valueField];\n\n const idx =\n value !== undefined && !item.children\n ? share.values.indexOf(value)\n : -1;\n\n if (~idx) {\n return share.options[idx];\n }\n\n const option = {\n ...item,\n value\n };\n\n if (typeof option.children !== 'undefined') {\n option.children = normalizeOptions(option.children, share, valueField);\n } else if (value !== undefined) {\n share.values.push(value);\n share.options.push(option);\n }\n\n return option;\n });\n } else if (isPlainObject(options)) {\n return Object.keys(options).map(key => {\n const idx = share.values.indexOf(key);\n if (~idx) {\n return share.options[idx];\n }\n\n const option = {\n label: (options as {[propName: string]: string})[key] as string,\n value: key\n };\n\n share.values.push(option.value);\n share.options.push(option);\n\n return option;\n });\n }\n\n return [];\n}\n\nconst DownshiftChangeTypes = Downshift.stateChangeTypes;\n\ninterface SelectProps extends OptionProps, ThemeProps, LocaleProps {\n className?: string;\n popoverClassName?: string;\n creatable: boolean;\n createBtnLabel: string;\n multiple: boolean;\n valuesNoWrap?: boolean;\n valueField: string;\n labelField: string;\n renderMenu?: (\n item: Option,\n states: {\n index: number;\n multiple?: boolean;\n checkAll?: boolean;\n checked: boolean;\n onChange: () => void;\n inputValue?: string;\n searchable?: boolean;\n }\n ) => JSX.Element;\n searchable?: boolean;\n options: Array<Option>;\n value: any;\n loadOptions?: Function;\n searchPromptText: string;\n loadingPlaceholder: string;\n spinnerClassName?: string;\n noResultsText: string;\n clearable: boolean;\n clearAllText: string;\n clearValueText: string;\n placeholder: string;\n inline: boolean;\n disabled: boolean;\n popOverContainer?: any;\n overlayPlacement?: string;\n onChange: (value: void | string | Option | Array<Option>) => void;\n onFocus?: Function;\n onBlur?: Function;\n checkAll?: boolean;\n checkAllLabel?: string;\n checkAllBySearch?: boolean;\n defaultCheckAll?: boolean;\n simpleValue?: boolean;\n defaultOpen?: boolean;\n useMobileUI?: boolean;\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n /**\n * 是否隐藏已选项\n */\n hideSelected?: boolean;\n\n /**\n * 移动端样式类名\n */\n mobileClassName?: string;\n\n /**\n * 标签的最大展示数量,超出数量后以收纳浮层的方式展示,仅在多选模式开启后生效\n */\n maxTagCount?: number;\n\n /**\n * 收纳标签的Popover配置\n */\n overflowTagPopover?: TooltipObject;\n}\n\ninterface SelectState {\n itemHeight: number;\n isOpen: boolean;\n isFocused: boolean;\n inputValue: string;\n highlightedIndex: number;\n selection: Array<Option>;\n pickerSelectItem: any;\n}\n\nexport class Select extends React.Component<SelectProps, SelectState> {\n static defaultProps = {\n multiple: false,\n clearable: true,\n creatable: false,\n createBtnLabel: 'Select.createLabel',\n searchPromptText: 'Select.searchPromptText',\n loadingPlaceholder: 'loading',\n noResultsText: 'noResult',\n clearAllText: 'Select.clearAll',\n clearValueText: 'Select.clear',\n placeholder: 'Select.placeholder',\n valueField: 'value',\n labelField: 'label',\n resetValue: '',\n inline: false,\n disabled: false,\n checkAll: false,\n checkAllLabel: 'Select.checkAll',\n defaultCheckAll: false,\n overlayPlacement: 'auto',\n virtualThreshold: 100\n };\n\n input: HTMLInputElement;\n target: HTMLElement;\n menu: React.RefObject<HTMLDivElement> = React.createRef();\n constructor(props: SelectProps) {\n super(props);\n\n this.state = {\n isOpen: props.defaultOpen || false,\n isFocused: false,\n inputValue: '',\n highlightedIndex: -1,\n selection: value2array(props.value, props),\n itemHeight: 35,\n pickerSelectItem: ''\n };\n }\n\n componentDidMount() {\n const {loadOptions} = this.props;\n loadOptions && loadOptions('');\n }\n\n componentDidUpdate(prevProps: SelectProps) {\n const props = this.props;\n let fn: () => void = noop;\n\n if (\n JSON.stringify(props.value) !== JSON.stringify(prevProps.value) ||\n JSON.stringify(props.options) !== JSON.stringify(prevProps.options)\n ) {\n const selection: Array<Option> = value2array(props.value, props);\n this.setState(\n {\n selection: selection\n },\n fn\n );\n }\n }\n\n @autobind\n open() {\n this.props.disabled ||\n this.setState(\n {\n isOpen: true,\n highlightedIndex: -1\n },\n () => setTimeout(this.focus, 500)\n );\n }\n\n @autobind\n close() {\n this.setState({\n isOpen: false\n });\n }\n\n @autobind\n confirm() {\n // @ts-ignore\n this.handleChange(this.state.pickerSelectItem);\n this.setState({\n isOpen: false\n });\n }\n\n @autobind\n toggle(e?: React.MouseEvent<HTMLDivElement>) {\n if (\n e &&\n this.menu.current &&\n this.menu.current.contains(e.target as HTMLElement)\n ) {\n return;\n }\n\n this.props.disabled ||\n this.setState(\n {\n isOpen: !this.state.isOpen,\n highlightedIndex: -1\n },\n this.state.isOpen ? undefined : () => setTimeout(this.focus, 500)\n );\n }\n\n @autobind\n onFocus(e: any) {\n const {simpleValue} = this.props;\n const {selection} = this.state;\n const value = simpleValue ? selection.map(item => item.value) : selection;\n\n this.props.disabled ||\n this.state.isOpen ||\n this.setState(\n {\n isFocused: true\n },\n this.focus\n );\n\n this.props.onFocus &&\n this.props.onFocus({\n ...e,\n value\n });\n }\n\n @autobind\n onBlur(e: any) {\n const {simpleValue} = this.props;\n const {selection} = this.state;\n const value = simpleValue ? selection.map(item => item.value) : selection;\n\n this.setState({\n isFocused: false\n });\n\n this.props.onBlur &&\n this.props.onBlur({\n ...e,\n value\n });\n }\n\n @autobind\n focus() {\n this.input\n ? this.input.focus()\n : this.getTarget() && this.getTarget().focus();\n }\n\n blur() {\n this.input\n ? this.input.blur()\n : this.getTarget() && this.getTarget().blur();\n }\n\n @autobind\n getTarget() {\n if (!this.target) {\n this.target = findDOMNode(this) as HTMLElement;\n }\n return this.target as HTMLElement;\n }\n\n @autobind\n inputRef(ref: HTMLInputElement) {\n this.input = ref;\n }\n\n @autobind\n toggleCheckAll() {\n const {\n options,\n onChange,\n simpleValue,\n checkAllBySearch,\n labelField,\n valueField\n } = this.props;\n const inputValue = this.state.inputValue;\n let {selection} = this.state;\n let filtedOptions: Array<Option> =\n inputValue && checkAllBySearch\n ? matchSorter(options, inputValue, {\n keys: [labelField || 'label', valueField || 'value']\n })\n : options.concat();\n const optionsValues = filtedOptions.map(option => option.value);\n const selectionValues = selection.map(select => select.value);\n const checkedAll = optionsValues.every(\n option => selectionValues.indexOf(option) > -1\n );\n\n selection = checkedAll ? [] : filtedOptions;\n onChange(simpleValue ? selection.map(item => item.value) : selection);\n }\n\n removeItem(index: number, e?: React.MouseEvent<HTMLElement>) {\n const {onChange, simpleValue, disabled} = this.props;\n if (disabled) {\n return;\n }\n let {selection: value} = this.state;\n\n e && e.stopPropagation();\n value = Array.isArray(value) ? value.concat() : [value];\n value.splice(index, 1);\n\n onChange(simpleValue ? value.map(item => item.value) : value);\n }\n\n @autobind\n handleInputChange(evt: React.ChangeEvent<HTMLInputElement>) {\n const {loadOptions} = this.props;\n this.setState(\n {\n inputValue: evt.currentTarget.value\n },\n () => loadOptions && loadOptions(this.state.inputValue)\n );\n }\n\n @autobind\n handlePickerChange(selectItem: any, index: number, confirm?: boolean) {\n if (!this.props.multiple) {\n selectItem = selectItem[0];\n }\n this.setState({\n pickerSelectItem: selectItem\n });\n // 直接选中选项\n if (confirm) {\n this.handleChange(selectItem);\n }\n }\n\n @autobind\n handleChange(selectItem: any) {\n const {onChange, multiple, simpleValue, valueField} = this.props;\n let {selection} = this.state;\n\n if (multiple) {\n const selectionValues = selection.map(item => item[valueField]);\n selection = selection.concat();\n const idx = selectionValues.indexOf(selectItem[valueField]);\n if (~idx) {\n selection.splice(idx, 1);\n } else {\n selection.push(selectItem);\n }\n onChange(\n simpleValue ? selection.map(item => item[valueField]) : selection\n );\n } else {\n onChange(simpleValue ? selectItem[valueField] : selectItem);\n }\n }\n\n @autobind\n handleStateChange(changes: any) {\n const {multiple, checkAll} = this.props;\n let update: any = {};\n\n switch (changes.type) {\n case DownshiftChangeTypes.keyDownEnter:\n case DownshiftChangeTypes.clickItem:\n update = {\n ...update,\n isOpen: multiple ? true : false,\n isFocused: multiple && checkAll ? true : false\n };\n break;\n case DownshiftChangeTypes.controlledPropUpdatedSelectedItem:\n break;\n case DownshiftChangeTypes.changeInput:\n update.highlightedIndex = 0;\n break;\n case DownshiftChangeTypes.keyDownArrowDown:\n case DownshiftChangeTypes.keyDownArrowUp:\n case DownshiftChangeTypes.itemMouseEnter:\n update = {\n ...update,\n ...changes\n };\n break;\n }\n\n if (Object.keys(update).length) {\n this.setState(update);\n }\n }\n\n @autobind\n handleKeyPress(e: React.KeyboardEvent) {\n if (this.props.multiple && e.key === ' ') {\n this.toggle();\n e.preventDefault();\n }\n }\n\n @autobind\n clearValue(e: React.MouseEvent<any>) {\n const onChange = this.props.onChange;\n e.preventDefault();\n e.stopPropagation();\n onChange(this.props.resetValue);\n }\n\n @autobind\n clearSearchValue() {\n const {loadOptions} = this.props;\n this.setState(\n {\n inputValue: ''\n },\n () => loadOptions?.('')\n );\n }\n\n @autobind\n handleAddClick() {\n const {onAdd} = this.props;\n onAdd && onAdd();\n }\n\n @autobind\n handleEditClick(e: Event, item: any) {\n const {onEdit} = this.props;\n e.preventDefault();\n e.stopPropagation();\n onEdit && onEdit(item);\n }\n\n @autobind\n handleDeleteClick(e: Event, item: any) {\n const {onDelete} = this.props;\n e.preventDefault();\n e.stopPropagation();\n onDelete && onDelete(item);\n }\n\n @autobind\n menuItemRef(ref: any) {\n ref && this.setState({itemHeight: ref.offsetHeight});\n }\n\n renderValue({inputValue, isOpen}: ControllerStateAndHelpers<any>) {\n const {\n classnames: cx,\n multiple,\n valuesNoWrap,\n placeholder,\n labelField,\n disabled,\n maxTagCount,\n overflowTagPopover,\n translate: __\n } = this.props;\n const selection = this.state.selection;\n\n if (!selection.length) {\n return (\n <div key=\"placeholder\" className={cx('Select-placeholder')}>\n {__(placeholder)}\n </div>\n );\n }\n\n if (\n multiple &&\n maxTagCount != null &&\n isInteger(Math.floor(maxTagCount)) &&\n Math.floor(maxTagCount) >= 0 &&\n Math.floor(maxTagCount) < selection.length\n ) {\n const maxVisibleCount = Math.floor(maxTagCount);\n const tooltipProps: TooltipObject = {\n placement: 'top',\n trigger: 'hover',\n showArrow: false,\n offset: [0, -10],\n tooltipClassName: cx(\n 'Select-overflow',\n overflowTagPopover?.tooltipClassName\n ),\n ...omit(overflowTagPopover, ['children', 'content', 'tooltipClassName'])\n };\n return [\n ...selection.slice(0, maxVisibleCount),\n {label: `+ ${selection.length - maxVisibleCount} ...`}\n ].map((item, index) => {\n if (index === maxVisibleCount) {\n return (\n <TooltipWrapper\n key={selection.length}\n tooltip={{\n ...tooltipProps,\n children: () => (\n <div className={cx('Select-overflow-wrapper')}>\n {selection\n .slice(maxVisibleCount, selection.length)\n .map((item, index) => {\n const itemIndex = index + maxVisibleCount;\n return (\n <div\n key={itemIndex}\n className={cx('Select-value', {\n 'is-disabled': disabled,\n 'is-invalid': item.__unmatched\n })}\n >\n <span className={cx('Select-valueLabel')}>\n {item[labelField || 'label']}\n </span>\n <span\n className={cx('Select-valueIcon', {\n 'is-disabled': disabled || item.disabled\n })}\n onClick={this.removeItem.bind(this, itemIndex)}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </span>\n </div>\n );\n })}\n </div>\n )\n }}\n >\n <div\n className={cx('Select-value', {\n 'is-disabled': disabled,\n 'is-invalid': item.__unmatched\n })}\n onClick={(e: React.MouseEvent) =>\n e.stopPropagation()\n } /** 避免点击查看浮窗时呼出下拉菜单 */\n >\n <span className={cx('Select-valueLabel')}>\n {item[labelField || 'label']}\n </span>\n </div>\n </TooltipWrapper>\n );\n }\n\n return (\n <TooltipWrapper\n placement={'top'}\n tooltip={item[labelField || 'label']}\n trigger={'hover'}\n key={index}\n >\n <div\n className={cx('Select-value', {\n 'is-disabled': disabled,\n 'is-invalid': item.__unmatched\n })}\n >\n <span className={cx('Select-valueLabel')}>\n {item[labelField || 'label']}\n </span>\n <span\n className={cx('Select-valueIcon', {\n 'is-disabled': disabled || item.disabled\n })}\n onClick={this.removeItem.bind(this, index)}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </span>\n </div>\n </TooltipWrapper>\n );\n });\n }\n\n return selection.map((item, index) => {\n if (!multiple) {\n return (\n <div\n className={cx('Select-value', {\n 'is-disabled': disabled,\n 'is-invalid': item.__unmatched\n })}\n key={index}\n >\n {item[labelField || 'label']}\n </div>\n );\n }\n\n return valuesNoWrap ? (\n `${item[labelField || 'label']}${\n index === selection.length - 1 ? '' : ' + '\n }`\n ) : (\n <TooltipWrapper\n placement={'top'}\n tooltip={item[labelField || 'label']}\n trigger={'hover'}\n key={index}\n >\n <div\n className={cx('Select-value', {\n 'is-disabled': disabled,\n 'is-invalid': item.__unmatched\n })}\n >\n <span className={cx('Select-valueLabel')}>\n {item[labelField || 'label']}\n </span>\n <span\n className={cx('Select-valueIcon', {\n 'is-disabled': disabled || item.disabled\n })}\n onClick={this.removeItem.bind(this, index)}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </span>\n </div>\n </TooltipWrapper>\n );\n });\n }\n\n renderOuter({\n selectedItem,\n getItemProps,\n highlightedIndex,\n inputValue,\n isOpen,\n getToggleButtonProps,\n getInputProps\n }: ControllerStateAndHelpers<any>) {\n const {\n popOverContainer,\n options,\n value,\n valueField,\n labelField,\n noResultsText,\n loadOptions,\n creatable,\n multiple,\n valuesNoWrap,\n classnames: cx,\n popoverClassName,\n checkAll,\n checkAllLabel,\n checkAllBySearch,\n searchable,\n createBtnLabel,\n disabled,\n searchPromptText,\n editable,\n removable,\n overlayPlacement,\n translate: __,\n hideSelected,\n renderMenu,\n mobileClassName,\n virtualThreshold = 200,\n useMobileUI = false\n } = this.props;\n const {selection} = this.state;\n\n let checkedAll = false;\n let checkedPartial = false;\n let filtedOptions: Array<Option> = (\n inputValue && isOpen && !loadOptions\n ? matchSorter(options, inputValue, {\n keys: [labelField || 'label', valueField || 'value']\n })\n : options.concat()\n ).filter((option: Option) => !option.hidden && option.visible !== false);\n\n const selectionValues = selection.map(select => select[valueField]);\n if (multiple && checkAll) {\n const optionsValues = (checkAllBySearch ? filtedOptions : options).map(\n option => option[valueField]\n );\n\n checkedAll = optionsValues.every(\n option => selectionValues.indexOf(option) > -1\n );\n checkedPartial = optionsValues.some(\n option => selectionValues.indexOf(option) > -1\n );\n }\n\n // 用于虚拟渲染的每项高度\n const virtualItemHeight = this.props.itemHeight || this.state.itemHeight;\n\n // 渲染单个选项\n const renderItem = ({index, style}: {index: number; style?: object}) => {\n const item = filtedOptions[index];\n if (!item) {\n return null;\n }\n const checked =\n selectedItem === item || !!~selectionValues.indexOf(item[valueField]);\n if (hideSelected && checked) {\n return null;\n }\n return (\n <div\n {...getItemProps({\n key:\n typeof item.value === 'string'\n ? `${item.label}-${item.value}`\n : index,\n index,\n item,\n disabled: item.disabled\n })}\n style={style}\n className={cx(`Select-option`, {\n 'is-disabled': item.disabled,\n 'is-highlight': highlightedIndex === index,\n 'is-active': checked\n })}\n >\n {removable ? (\n <a data-tooltip={__('Select.clear')} data-position=\"left\">\n <Icon\n icon=\"close\"\n className=\"icon\"\n onClick={(e: any) => this.handleDeleteClick(e, item)}\n />\n </a>\n ) : null}\n {editable ? (\n <a data-tooltip=\"编辑\" data-position=\"left\">\n <Icon\n icon=\"pencil\"\n className=\"icon\"\n onClick={(e: any) => this.handleEditClick(e, item)}\n />\n </a>\n ) : null}\n\n {renderMenu ? (\n multiple ? (\n <Checkbox\n checked={checked}\n trueValue={item.value}\n onChange={() => {\n this.handleChange(item);\n }}\n disabled={item.disabled}\n >\n {renderMenu(item, {\n multiple,\n checkAll,\n checked,\n onChange: () => this.handleChange(item),\n inputValue: inputValue || '',\n searchable,\n index\n })}\n </Checkbox>\n ) : (\n renderMenu(item, {\n multiple,\n checkAll,\n checked,\n onChange: () => this.handleChange(item),\n inputValue: inputValue || '',\n searchable,\n index\n })\n )\n ) : multiple ? (\n <Checkbox\n checked={checked}\n trueValue={item.value}\n onChange={() => {\n this.handleChange(item);\n }}\n disabled={item.disabled}\n size=\"sm\"\n >\n {item.disabled\n ? item[labelField]\n : highlight(\n item[labelField],\n inputValue as string,\n cx('Select-option-hl')\n )}\n\n {item.tip}\n </Checkbox>\n ) : (\n <span>\n {item.disabled\n ? item[labelField]\n : highlight(\n item[labelField],\n inputValue as string,\n cx('Select-option-hl')\n )}\n {item.tip}\n </span>\n )}\n </div>\n );\n };\n\n const mobileUI = isMobile() && useMobileUI;\n const column = {\n labelField: 'label',\n options: filtedOptions\n };\n const menu = (\n <div\n ref={this.menu}\n className={cx('Select-menu', {\n 'Select--longlist':\n filtedOptions.length && filtedOptions.length > virtualThreshold,\n 'is-mobile': mobileUI\n })}\n >\n {searchable ? (\n <div\n className={cx(`Select-input`, {\n 'is-focused': this.state.isFocused\n })}\n >\n <Icon icon=\"search\" className=\"icon\" />\n <Input\n {...getInputProps({\n onFocus: this.onFocus,\n onBlur: this.onBlur,\n disabled: disabled,\n placeholder: __(searchPromptText),\n onChange: this.handleInputChange,\n ref: this.inputRef\n })}\n />\n {inputValue?.length ? (\n <a onClick={this.clearSearchValue} className={cx('Select-clear')}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n </div>\n ) : null}\n {multiple && valuesNoWrap ? (\n <div className={cx('Select-option')}>\n 已选择({selectionValues.length})\n </div>\n ) : null}\n {multiple && checkAll && filtedOptions.length ? (\n <div className={cx('Select-option')}>\n <Checkbox\n checked={checkedPartial}\n partial={checkedPartial && !checkedAll}\n onChange={this.toggleCheckAll}\n size=\"sm\"\n >\n {__(checkAllLabel)}\n </Checkbox>\n </div>\n ) : null}\n\n <div ref={this.menuItemRef} className={cx('Select-option hidden')}>\n {multiple ? (\n <Checkbox size=\"sm\">Placeholder</Checkbox>\n ) : (\n <span>Placeholder</span>\n )}\n </div>\n\n {creatable && !disabled ? (\n <a className={cx('Select-addBtn')} onClick={this.handleAddClick}>\n <Icon icon=\"plus\" className=\"icon\" />\n {__(createBtnLabel)}\n </a>\n ) : null}\n\n {filtedOptions.length ? (\n filtedOptions.length > virtualThreshold ? ( // 较多数据时才启用 virtuallist,避免滚动条问题\n <VirtualList\n height={\n filtedOptions.length > 8\n ? 266\n : filtedOptions.length * virtualItemHeight\n }\n itemCount={filtedOptions.length}\n itemSize={virtualItemHeight}\n renderItem={renderItem}\n />\n ) : (\n filtedOptions.map((item, index) => {\n return renderItem({index});\n })\n )\n ) : (\n <div className={cx('Select-noResult')}>{__(noResultsText)}</div>\n )}\n </div>\n );\n return mobileUI ? (\n <PopUp\n className={cx(`Select-popup`)}\n container={popOverContainer}\n isShow={this.state.isOpen}\n onHide={this.close}\n >\n {menu}\n </PopUp>\n ) : (\n <Overlay\n container={popOverContainer || this.getTarget}\n target={this.getTarget}\n placement={overlayPlacement}\n show\n >\n <PopOver\n overlay\n className={cx('Select-popover')}\n style={{\n width: this.target ? this.target.offsetWidth : 'auto'\n }}\n onHide={this.close}\n >\n {menu}\n </PopOver>\n </Overlay>\n );\n }\n\n render() {\n const {\n classnames: cx,\n multiple,\n valuesNoWrap,\n searchable,\n inline,\n block,\n className,\n value,\n loading,\n clearable,\n labelField,\n disabled,\n checkAll,\n borderMode,\n useMobileUI,\n hasError\n } = this.props;\n\n const selection = this.state.selection;\n const inputValue = this.state.inputValue;\n const resetValue = this.props.resetValue;\n const mobileUI = useMobileUI && isMobile();\n return (\n <Downshift\n selectedItem={selection}\n highlightedIndex={this.state.highlightedIndex}\n isOpen={this.state.isOpen}\n inputValue={inputValue}\n onChange={\n /*展示 Checkbox 的时候,会出发多次 onChange 原因待查*/\n multiple ? noop : this.handleChange\n }\n onStateChange={this.handleStateChange}\n itemToString={item => (item ? `${item[labelField]}` : '')}\n >\n {(options: ControllerStateAndHelpers<any>) => {\n const {isOpen} = options;\n return (\n <div\n tabIndex={disabled ? -1 : 0}\n onKeyPress={this.handleKeyPress}\n onClick={this.toggle}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n className={cx(\n `Select`,\n {\n [`Select--multi`]: multiple,\n [`Select--inline`]: inline,\n [`Select--block`]: block,\n [`Select--searchable`]: searchable,\n 'is-opened': isOpen,\n 'is-focused': this.state.isFocused,\n 'is-disabled': disabled,\n 'is-mobile': mobileUI,\n 'is-error': hasError,\n [`Select--border${ucFirst(borderMode)}`]: borderMode\n },\n className\n )}\n >\n <div\n className={cx(`Select-valueWrap`, {\n 'Select-valuesNoWrap': valuesNoWrap\n })}\n >\n {this.renderValue(options)}\n </div>\n {clearable &&\n !disabled &&\n (Array.isArray(value)\n ? value.length\n : value != null && value !== resetValue) ? (\n <a onClick={this.clearValue} className={cx('Select-clear')}>\n <Icon icon=\"close-small\" className=\"icon\" />\n </a>\n ) : null}\n {loading ? (\n <Spinner\n show\n icon=\"reload\"\n size=\"sm\"\n spinnerClassName={cx('Select-spinner')}\n />\n ) : null}\n\n <span className={cx('Select-arrow')}>\n <Icon icon=\"right-arrow-bold\" className=\"icon\" />\n </span>\n {isOpen ? this.renderOuter(options) : null}\n </div>\n );\n }}\n </Downshift>\n );\n }\n}\n\nconst EnhancedSelect = themeable(\n localeable(\n uncontrollable(Select, {\n value: 'onChange'\n })\n )\n);\n\nexport default EnhancedSelect;\nexport const SelectWithRemoteOptions = withRemoteConfig<Array<Options>>({\n adaptor: data => data.options || data.items || data.rows || data,\n normalizeConfig: (options: any, origin) => {\n options = normalizeOptions(options);\n\n if (Array.isArray(options)) {\n return options.concat();\n }\n\n return origin;\n }\n})(\n class extends React.Component<\n RemoteOptionsProps<Array<Options>> &\n React.ComponentProps<typeof EnhancedSelect>\n > {\n render() {\n const {loading, config, deferLoad, updateConfig, ...rest} = this.props;\n\n return (\n <EnhancedSelect\n {...rest}\n options={config || rest.options || []}\n loading={loading}\n />\n );\n }\n }\n);\n"
11
+ "/**\n * @file Select\n * @description\n * @author fex\n * @date 2017-11-07\n */\n\nimport {uncontrollable} from 'uncontrollable';\nimport React from 'react';\nimport isInteger from 'lodash/isInteger';\nimport omit from 'lodash/omit';\nimport VirtualList from './virtual-list';\nimport Overlay from './Overlay';\nimport PopOver from './PopOver';\nimport TooltipWrapper from './TooltipWrapper';\nimport Downshift, {ControllerStateAndHelpers} from 'downshift';\nimport {closeIcon, Icon} from './icons';\n// @ts-ignore\nimport {matchSorter} from 'match-sorter';\nimport {\n noop,\n isObject,\n findTree,\n autobind,\n ucFirst,\n normalizeNodePath,\n isMobile\n} from '../utils/helper';\nimport isPlainObject from 'lodash/isPlainObject';\nimport {highlight} from '../renderers/Form/Options';\nimport {findDOMNode} from 'react-dom';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport Checkbox from './Checkbox';\nimport Input from './Input';\nimport {LocaleProps, localeable} from '../locale';\nimport Spinner from './Spinner';\nimport {Option, Options} from '../Schema';\nimport {RemoteOptionsProps, withRemoteConfig} from './WithRemoteConfig';\nimport Picker from './Picker';\nimport PopUp from './PopUp';\n\nimport type {TooltipObject} from '../components/TooltipWrapper';\n\nexport {Option, Options};\n\nexport interface OptionProps {\n className?: string;\n multi?: boolean;\n multiple?: boolean;\n valueField?: string;\n labelField?: string;\n simpleValue?: boolean; // 默认onChange 出去是整个 option 节点,如果配置了 simpleValue 就只包含值。\n options: Options;\n loading?: boolean;\n joinValues?: boolean;\n extractValue?: boolean;\n delimiter?: string;\n clearable?: boolean;\n resetValue: any;\n placeholder?: string;\n disabled?: boolean;\n creatable?: boolean;\n pathSeparator?: string;\n itemHeight?: number; // 每个选项的高度,主要用于虚拟渲染\n virtualThreshold?: number; // 数据量多大的时候开启虚拟渲染\n hasError?: boolean;\n block?: boolean;\n onAdd?: (\n idx?: number | Array<number>,\n value?: any,\n skipForm?: boolean\n ) => void;\n editable?: boolean;\n onEdit?: (value: Option, origin?: Option, skipForm?: boolean) => void;\n removable?: boolean;\n onDelete?: (value: Option) => void;\n}\n\nexport type OptionValue = string | number | null | undefined | Option;\n\nexport function value2array(\n value: OptionValue | Array<OptionValue>,\n props: Pick<\n OptionProps,\n | 'multi'\n | 'multiple'\n | 'delimiter'\n | 'valueField'\n | 'labelField'\n | 'options'\n | 'pathSeparator'\n >,\n enableNodePath: boolean = false\n): Array<Option> {\n if (enableNodePath) {\n value = normalizeNodePath(\n value,\n enableNodePath,\n props.labelField,\n props.valueField,\n props.pathSeparator,\n props.delimiter\n ).nodeValueArray;\n }\n\n if (props.multi || props.multiple) {\n if (typeof value === 'string') {\n value = value.split(props.delimiter || ',');\n }\n\n if (!Array.isArray(value)) {\n if (value === null || value === undefined) {\n return [];\n }\n\n value = [value];\n }\n\n return value\n .map(\n (value: any) =>\n expandValue(value, props.options, props.valueField) ||\n (isObject(value) && value.hasOwnProperty(props.valueField || 'value')\n ? value\n : undefined)\n )\n .filter((item: any) => item) as Array<Option>;\n } else if (Array.isArray(value)) {\n value = value[0];\n }\n\n let expandedValue = expandValue(\n value as OptionValue,\n props.options,\n props.valueField\n );\n return expandedValue\n ? [expandedValue]\n : isObject(value) &&\n (value as Option).hasOwnProperty(props.valueField || 'value')\n ? [value as Option]\n : [];\n}\n\nexport function expandValue(\n value: OptionValue,\n options: Options,\n valueField = 'value'\n): Option | null {\n const valueType = typeof value;\n\n if (\n valueType !== 'string' &&\n valueType !== 'number' &&\n valueType !== 'boolean' &&\n valueType !== 'object'\n ) {\n return value as Option;\n }\n\n if (!options) {\n return null;\n }\n\n if (\n valueType === 'object' &&\n value &&\n value.hasOwnProperty(valueField || 'value')\n ) {\n value = (value as Option)[valueField || 'value'] ?? '';\n }\n\n return findTree(\n options,\n optionValueCompare(value, valueField || 'value')\n ) as Option;\n}\n\nexport function matchOptionValue(\n a: OptionValue,\n b: Option,\n valueField: string = 'value'\n) {\n return isObject(a)\n ? a === b[valueField || 'value']\n : String(b[valueField || 'value']) === String(a);\n}\n\nexport function optionValueCompare(\n a: OptionValue,\n valueField: string = 'value'\n) {\n return (b: Option) => matchOptionValue(a, b, valueField);\n}\n\nexport function normalizeOptions(\n options: string | {[propName: string]: string} | Array<string> | Options,\n share: {\n values: Array<any>;\n options: Array<any>;\n } = {\n values: [],\n options: []\n },\n valueField = 'value'\n): Options {\n if (typeof options === 'string') {\n return options.split(',').map(item => {\n const idx = share.values.indexOf(item);\n if (~idx) {\n return share.options[idx];\n }\n\n const option = {\n label: item,\n value: item\n };\n\n share.values.push(option.value);\n share.options.push(option);\n\n return option;\n });\n } else if (\n Array.isArray(options as Array<string>) &&\n typeof (options as Array<string>)[0] === 'string'\n ) {\n return (options as Array<string>).map(item => {\n const idx = share.values.indexOf(item);\n if (~idx) {\n return share.options[idx];\n }\n\n const option = {\n label: item,\n value: item\n };\n\n share.values.push(option.value);\n share.options.push(option);\n\n return option;\n });\n } else if (Array.isArray(options as Options)) {\n return (options as Options).map(item => {\n const value = item && item[valueField];\n\n const idx =\n value !== undefined && !item.children\n ? share.values.indexOf(value)\n : -1;\n\n if (~idx) {\n return share.options[idx];\n }\n\n const option = {\n ...item,\n value\n };\n\n if (typeof option.children !== 'undefined') {\n option.children = normalizeOptions(option.children, share, valueField);\n } else if (value !== undefined) {\n share.values.push(value);\n share.options.push(option);\n }\n\n return option;\n });\n } else if (isPlainObject(options)) {\n return Object.keys(options).map(key => {\n const idx = share.values.indexOf(key);\n if (~idx) {\n return share.options[idx];\n }\n\n const option = {\n label: (options as {[propName: string]: string})[key] as string,\n value: key\n };\n\n share.values.push(option.value);\n share.options.push(option);\n\n return option;\n });\n }\n\n return [];\n}\n\nconst DownshiftChangeTypes = Downshift.stateChangeTypes;\n\ninterface SelectProps extends OptionProps, ThemeProps, LocaleProps {\n className?: string;\n popoverClassName?: string;\n creatable: boolean;\n createBtnLabel: string;\n multiple: boolean;\n valuesNoWrap?: boolean;\n valueField: string;\n labelField: string;\n renderMenu?: (\n item: Option,\n states: {\n index: number;\n multiple?: boolean;\n checkAll?: boolean;\n checked: boolean;\n onChange: () => void;\n inputValue?: string;\n searchable?: boolean;\n }\n ) => JSX.Element;\n searchable?: boolean;\n options: Array<Option>;\n value: any;\n loadOptions?: Function;\n searchPromptText: string;\n loadingPlaceholder: string;\n spinnerClassName?: string;\n noResultsText: string;\n clearable: boolean;\n clearAllText: string;\n clearValueText: string;\n placeholder: string;\n inline: boolean;\n disabled: boolean;\n popOverContainer?: any;\n overlayPlacement?: string;\n onChange: (value: void | string | Option | Array<Option>) => void;\n onFocus?: Function;\n onBlur?: Function;\n checkAll?: boolean;\n checkAllLabel?: string;\n checkAllBySearch?: boolean;\n defaultCheckAll?: boolean;\n simpleValue?: boolean;\n defaultOpen?: boolean;\n useMobileUI?: boolean;\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n /**\n * 是否隐藏已选项\n */\n hideSelected?: boolean;\n\n /**\n * 移动端样式类名\n */\n mobileClassName?: string;\n\n /**\n * 标签的最大展示数量,超出数量后以收纳浮层的方式展示,仅在多选模式开启后生效\n */\n maxTagCount?: number;\n\n /**\n * 收纳标签的Popover配置\n */\n overflowTagPopover?: TooltipObject;\n}\n\ninterface SelectState {\n itemHeight: number;\n isOpen: boolean;\n isFocused: boolean;\n inputValue: string;\n highlightedIndex: number;\n selection: Array<Option>;\n pickerSelectItem: any;\n}\n\nexport class Select extends React.Component<SelectProps, SelectState> {\n static defaultProps = {\n multiple: false,\n clearable: true,\n creatable: false,\n createBtnLabel: 'Select.createLabel',\n searchPromptText: 'Select.searchPromptText',\n loadingPlaceholder: 'loading',\n noResultsText: 'noResult',\n clearAllText: 'Select.clearAll',\n clearValueText: 'Select.clear',\n placeholder: 'Select.placeholder',\n valueField: 'value',\n labelField: 'label',\n resetValue: '',\n inline: false,\n disabled: false,\n checkAll: false,\n checkAllLabel: 'Select.checkAll',\n defaultCheckAll: false,\n overlayPlacement: 'auto',\n virtualThreshold: 100\n };\n\n input: HTMLInputElement;\n target: HTMLElement;\n menu: React.RefObject<HTMLDivElement> = React.createRef();\n constructor(props: SelectProps) {\n super(props);\n\n this.state = {\n isOpen: props.defaultOpen || false,\n isFocused: false,\n inputValue: '',\n highlightedIndex: -1,\n selection: value2array(props.value, props),\n itemHeight: 35,\n pickerSelectItem: ''\n };\n }\n\n componentDidMount() {\n const {loadOptions} = this.props;\n loadOptions && loadOptions('');\n }\n\n componentDidUpdate(prevProps: SelectProps) {\n const props = this.props;\n let fn: () => void = noop;\n\n if (\n JSON.stringify(props.value) !== JSON.stringify(prevProps.value) ||\n JSON.stringify(props.options) !== JSON.stringify(prevProps.options)\n ) {\n const selection: Array<Option> = value2array(props.value, props);\n this.setState(\n {\n selection: selection\n },\n fn\n );\n }\n }\n\n @autobind\n open() {\n this.props.disabled ||\n this.setState(\n {\n isOpen: true,\n highlightedIndex: -1\n },\n () => setTimeout(this.focus, 500)\n );\n }\n\n @autobind\n close() {\n this.setState({\n isOpen: false\n });\n }\n\n @autobind\n confirm() {\n // @ts-ignore\n this.handleChange(this.state.pickerSelectItem);\n this.setState({\n isOpen: false\n });\n }\n\n @autobind\n toggle(e?: React.MouseEvent<HTMLDivElement>) {\n if (\n e &&\n this.menu.current &&\n this.menu.current.contains(e.target as HTMLElement)\n ) {\n return;\n }\n\n this.props.disabled ||\n this.setState(\n {\n isOpen: !this.state.isOpen,\n highlightedIndex: -1\n },\n this.state.isOpen ? undefined : () => setTimeout(this.focus, 500)\n );\n }\n\n @autobind\n onFocus(e: any) {\n const {simpleValue} = this.props;\n const {selection} = this.state;\n const value = simpleValue ? selection.map(item => item.value) : selection;\n\n this.props.disabled ||\n this.state.isOpen ||\n this.setState(\n {\n isFocused: true\n },\n this.focus\n );\n\n this.props.onFocus &&\n this.props.onFocus({\n ...e,\n value\n });\n }\n\n @autobind\n onBlur(e: any) {\n const {simpleValue} = this.props;\n const {selection} = this.state;\n const value = simpleValue ? selection.map(item => item.value) : selection;\n\n this.setState({\n isFocused: false\n });\n\n this.props.onBlur &&\n this.props.onBlur({\n ...e,\n value\n });\n }\n\n @autobind\n focus() {\n this.input\n ? this.input.focus()\n : this.getTarget() && this.getTarget().focus();\n }\n\n blur() {\n this.input\n ? this.input.blur()\n : this.getTarget() && this.getTarget().blur();\n }\n\n @autobind\n getTarget() {\n if (!this.target) {\n this.target = findDOMNode(this) as HTMLElement;\n }\n return this.target as HTMLElement;\n }\n\n @autobind\n inputRef(ref: HTMLInputElement) {\n this.input = ref;\n }\n\n @autobind\n toggleCheckAll() {\n const {\n options,\n onChange,\n simpleValue,\n checkAllBySearch,\n labelField,\n valueField\n } = this.props;\n const inputValue = this.state.inputValue;\n let {selection} = this.state;\n let filtedOptions: Array<Option> =\n inputValue && checkAllBySearch\n ? matchSorter(options, inputValue, {\n keys: [labelField || 'label', valueField || 'value']\n })\n : options.concat();\n const optionsValues = filtedOptions.map(option => option.value);\n const selectionValues = selection.map(select => select.value);\n const checkedAll = optionsValues.every(\n option => selectionValues.indexOf(option) > -1\n );\n\n selection = checkedAll ? [] : filtedOptions;\n onChange(simpleValue ? selection.map(item => item.value) : selection);\n }\n\n removeItem(index: number, e?: React.MouseEvent<HTMLElement>) {\n const {onChange, simpleValue, disabled} = this.props;\n if (disabled) {\n return;\n }\n let {selection: value} = this.state;\n\n e && e.stopPropagation();\n value = Array.isArray(value) ? value.concat() : [value];\n value.splice(index, 1);\n\n onChange(simpleValue ? value.map(item => item.value) : value);\n }\n\n @autobind\n handleInputChange(evt: React.ChangeEvent<HTMLInputElement>) {\n const {loadOptions} = this.props;\n this.setState(\n {\n inputValue: evt.currentTarget.value\n },\n () => loadOptions && loadOptions(this.state.inputValue)\n );\n }\n\n @autobind\n handlePickerChange(selectItem: any, index: number, confirm?: boolean) {\n if (!this.props.multiple) {\n selectItem = selectItem[0];\n }\n this.setState({\n pickerSelectItem: selectItem\n });\n // 直接选中选项\n if (confirm) {\n this.handleChange(selectItem);\n }\n }\n\n @autobind\n handleChange(selectItem: any) {\n const {onChange, multiple, simpleValue, valueField} = this.props;\n let {selection} = this.state;\n\n if (multiple) {\n const selectionValues = selection.map(item => item[valueField]);\n selection = selection.concat();\n const idx = selectionValues.indexOf(selectItem[valueField]);\n if (~idx) {\n selection.splice(idx, 1);\n } else {\n selection.push(selectItem);\n }\n onChange(\n simpleValue ? selection.map(item => item[valueField]) : selection\n );\n } else {\n onChange(simpleValue ? selectItem[valueField] : selectItem);\n }\n }\n\n @autobind\n handleStateChange(changes: any) {\n const {multiple, checkAll} = this.props;\n let update: any = {};\n\n switch (changes.type) {\n case DownshiftChangeTypes.keyDownEnter:\n case DownshiftChangeTypes.clickItem:\n update = {\n ...update,\n isOpen: multiple ? true : false,\n isFocused: multiple && checkAll ? true : false\n };\n break;\n case DownshiftChangeTypes.controlledPropUpdatedSelectedItem:\n break;\n case DownshiftChangeTypes.changeInput:\n update.highlightedIndex = 0;\n break;\n case DownshiftChangeTypes.keyDownArrowDown:\n case DownshiftChangeTypes.keyDownArrowUp:\n case DownshiftChangeTypes.itemMouseEnter:\n update = {\n ...update,\n ...changes\n };\n break;\n }\n\n if (Object.keys(update).length) {\n this.setState(update);\n }\n }\n\n @autobind\n handleKeyPress(e: React.KeyboardEvent) {\n if (this.props.multiple && e.key === ' ') {\n this.toggle();\n e.preventDefault();\n }\n }\n\n @autobind\n clearValue(e: React.MouseEvent<any>) {\n const onChange = this.props.onChange;\n e.preventDefault();\n e.stopPropagation();\n onChange(this.props.resetValue);\n }\n\n @autobind\n clearSearchValue() {\n const {loadOptions} = this.props;\n this.setState(\n {\n inputValue: ''\n },\n () => loadOptions?.('')\n );\n }\n\n @autobind\n handleAddClick() {\n const {onAdd} = this.props;\n onAdd && onAdd();\n }\n\n @autobind\n handleEditClick(e: Event, item: any) {\n const {onEdit} = this.props;\n e.preventDefault();\n e.stopPropagation();\n onEdit && onEdit(item);\n }\n\n @autobind\n handleDeleteClick(e: Event, item: any) {\n const {onDelete} = this.props;\n e.preventDefault();\n e.stopPropagation();\n onDelete && onDelete(item);\n }\n\n @autobind\n menuItemRef(ref: any) {\n ref && this.setState({itemHeight: ref.offsetHeight});\n }\n\n renderValue({inputValue, isOpen}: ControllerStateAndHelpers<any>) {\n const {\n classnames: cx,\n multiple,\n valuesNoWrap,\n placeholder,\n labelField,\n disabled,\n maxTagCount,\n overflowTagPopover,\n translate: __\n } = this.props;\n const selection = this.state.selection;\n\n if (!selection.length) {\n return (\n <div key=\"placeholder\" className={cx('Select-placeholder')}>\n {__(placeholder)}\n </div>\n );\n }\n\n if (\n multiple &&\n maxTagCount != null &&\n isInteger(Math.floor(maxTagCount)) &&\n Math.floor(maxTagCount) >= 0 &&\n Math.floor(maxTagCount) < selection.length\n ) {\n const maxVisibleCount = Math.floor(maxTagCount);\n const tooltipProps: TooltipObject = {\n placement: 'top',\n trigger: 'hover',\n showArrow: false,\n offset: [0, -10],\n tooltipClassName: cx(\n 'Select-overflow',\n overflowTagPopover?.tooltipClassName\n ),\n ...omit(overflowTagPopover, ['children', 'content', 'tooltipClassName'])\n };\n return [\n ...selection.slice(0, maxVisibleCount),\n {label: `+ ${selection.length - maxVisibleCount} ...`}\n ].map((item, index) => {\n if (index === maxVisibleCount) {\n return (\n <TooltipWrapper\n key={selection.length}\n tooltip={{\n ...tooltipProps,\n children: () => (\n <div className={cx('Select-overflow-wrapper')}>\n {selection\n .slice(maxVisibleCount, selection.length)\n .map((item, index) => {\n const itemIndex = index + maxVisibleCount;\n return (\n <div\n key={itemIndex}\n className={cx('Select-value', {\n 'is-disabled': disabled,\n 'is-invalid': item.__unmatched\n })}\n >\n <span className={cx('Select-valueLabel')}>\n {item[labelField || 'label']}\n </span>\n <span\n className={cx('Select-valueIcon', {\n 'is-disabled': disabled || item.disabled\n })}\n onClick={this.removeItem.bind(this, itemIndex)}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </span>\n </div>\n );\n })}\n </div>\n )\n }}\n >\n <div\n className={cx('Select-value', {\n 'is-disabled': disabled,\n 'is-invalid': item.__unmatched\n })}\n onClick={(e: React.MouseEvent) =>\n e.stopPropagation()\n } /** 避免点击查看浮窗时呼出下拉菜单 */\n >\n <span className={cx('Select-valueLabel')}>\n {item[labelField || 'label']}\n </span>\n </div>\n </TooltipWrapper>\n );\n }\n\n return (\n <TooltipWrapper\n placement={'top'}\n tooltip={item[labelField || 'label']}\n trigger={'hover'}\n key={index}\n >\n <div\n className={cx('Select-value', {\n 'is-disabled': disabled,\n 'is-invalid': item.__unmatched\n })}\n >\n <span className={cx('Select-valueLabel')}>\n {item[labelField || 'label']}\n </span>\n <span\n className={cx('Select-valueIcon', {\n 'is-disabled': disabled || item.disabled\n })}\n onClick={this.removeItem.bind(this, index)}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </span>\n </div>\n </TooltipWrapper>\n );\n });\n }\n\n return selection.map((item, index) => {\n if (!multiple) {\n return (\n <div\n className={cx('Select-value', {\n 'is-disabled': disabled,\n 'is-invalid': item.__unmatched\n })}\n key={index}\n >\n {item[labelField || 'label']}\n </div>\n );\n }\n\n return valuesNoWrap ? (\n `${item[labelField || 'label']}${\n index === selection.length - 1 ? '' : ' + '\n }`\n ) : (\n <TooltipWrapper\n placement={'top'}\n tooltip={item[labelField || 'label']}\n trigger={'hover'}\n key={index}\n >\n <div\n className={cx('Select-value', {\n 'is-disabled': disabled,\n 'is-invalid': item.__unmatched\n })}\n >\n <span className={cx('Select-valueLabel')}>\n {item[labelField || 'label']}\n </span>\n <span\n className={cx('Select-valueIcon', {\n 'is-disabled': disabled || item.disabled\n })}\n onClick={this.removeItem.bind(this, index)}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </span>\n </div>\n </TooltipWrapper>\n );\n });\n }\n\n renderOuter({\n selectedItem,\n getItemProps,\n highlightedIndex,\n inputValue,\n isOpen,\n getToggleButtonProps,\n getInputProps\n }: ControllerStateAndHelpers<any>) {\n const {\n popOverContainer,\n options,\n value,\n valueField,\n labelField,\n noResultsText,\n loadOptions,\n creatable,\n multiple,\n valuesNoWrap,\n classnames: cx,\n popoverClassName,\n checkAll,\n checkAllLabel,\n checkAllBySearch,\n searchable,\n createBtnLabel,\n disabled,\n searchPromptText,\n editable,\n removable,\n overlayPlacement,\n translate: __,\n hideSelected,\n renderMenu,\n mobileClassName,\n virtualThreshold = 200,\n useMobileUI = false\n } = this.props;\n const {selection} = this.state;\n\n let checkedAll = false;\n let checkedPartial = false;\n let filtedOptions: Array<Option> = (\n inputValue && isOpen && !loadOptions\n ? matchSorter(options, inputValue, {\n keys: [labelField || 'label', valueField || 'value']\n })\n : options.concat()\n ).filter((option: Option) => !option.hidden && option.visible !== false);\n\n const selectionValues = selection.map(select => select[valueField]);\n if (multiple && checkAll) {\n const optionsValues = (checkAllBySearch ? filtedOptions : options).map(\n option => option[valueField]\n );\n\n checkedAll = optionsValues.every(\n option => selectionValues.indexOf(option) > -1\n );\n checkedPartial = optionsValues.some(\n option => selectionValues.indexOf(option) > -1\n );\n }\n\n // 用于虚拟渲染的每项高度\n const virtualItemHeight = this.props.itemHeight || this.state.itemHeight;\n\n // 渲染单个选项\n const renderItem = ({index, style}: {index: number; style?: object}) => {\n const item = filtedOptions[index];\n if (!item) {\n return null;\n }\n const checked =\n selectedItem === item || !!~selectionValues.indexOf(item[valueField]);\n if (hideSelected && checked) {\n return null;\n }\n return (\n <div\n {...getItemProps({\n key:\n typeof item.value === 'string'\n ? `${item.label}-${item.value}`\n : index,\n index,\n item,\n disabled: item.disabled\n })}\n style={style}\n className={cx(`Select-option`, {\n 'is-disabled': item.disabled,\n 'is-highlight': highlightedIndex === index,\n 'is-active': checked\n })}\n >\n {removable ? (\n <a data-tooltip={__('Select.clear')} data-position=\"left\">\n <Icon\n icon=\"close\"\n className=\"icon\"\n onClick={(e: any) => this.handleDeleteClick(e, item)}\n />\n </a>\n ) : null}\n {editable ? (\n <a data-tooltip=\"编辑\" data-position=\"left\">\n <Icon\n icon=\"pencil\"\n className=\"icon\"\n onClick={(e: any) => this.handleEditClick(e, item)}\n />\n </a>\n ) : null}\n\n {renderMenu ? (\n multiple ? (\n <Checkbox\n checked={checked}\n trueValue={item.value}\n onChange={() => {\n this.handleChange(item);\n }}\n disabled={item.disabled}\n >\n {renderMenu(item, {\n multiple,\n checkAll,\n checked,\n onChange: () => this.handleChange(item),\n inputValue: inputValue || '',\n searchable,\n index\n })}\n </Checkbox>\n ) : (\n renderMenu(item, {\n multiple,\n checkAll,\n checked,\n onChange: () => this.handleChange(item),\n inputValue: inputValue || '',\n searchable,\n index\n })\n )\n ) : multiple ? (\n <Checkbox\n checked={checked}\n trueValue={item.value}\n onChange={() => {\n this.handleChange(item);\n }}\n disabled={item.disabled}\n size=\"sm\"\n >\n {item.disabled\n ? item[labelField]\n : highlight(\n item[labelField],\n inputValue as string,\n cx('Select-option-hl')\n )}\n\n {item.tip}\n </Checkbox>\n ) : (\n <span\n className={cx('Select-option-content')}\n title={\n typeof item[labelField] === 'string' ? item[labelField] : ''\n }\n >\n {item.disabled\n ? item[labelField]\n : highlight(\n item[labelField],\n inputValue as string,\n cx('Select-option-hl')\n )}\n {item.tip}\n </span>\n )}\n </div>\n );\n };\n\n const mobileUI = isMobile() && useMobileUI;\n const column = {\n labelField: 'label',\n options: filtedOptions\n };\n const menu = (\n <div\n ref={this.menu}\n className={cx('Select-menu', {\n 'Select--longlist':\n filtedOptions.length && filtedOptions.length > virtualThreshold,\n 'is-mobile': mobileUI\n })}\n >\n {searchable ? (\n <div\n className={cx(`Select-input`, {\n 'is-focused': this.state.isFocused\n })}\n >\n <Icon icon=\"search\" className=\"icon\" />\n <Input\n {...getInputProps({\n onFocus: this.onFocus,\n onBlur: this.onBlur,\n disabled: disabled,\n placeholder: __(searchPromptText),\n onChange: this.handleInputChange,\n ref: this.inputRef\n })}\n />\n {inputValue?.length ? (\n <a onClick={this.clearSearchValue} className={cx('Select-clear')}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : null}\n </div>\n ) : null}\n {multiple && valuesNoWrap ? (\n <div className={cx('Select-option')}>\n 已选择({selectionValues.length})\n </div>\n ) : null}\n {multiple && checkAll && filtedOptions.length ? (\n <div className={cx('Select-option')}>\n <Checkbox\n checked={checkedPartial}\n partial={checkedPartial && !checkedAll}\n onChange={this.toggleCheckAll}\n size=\"sm\"\n >\n {__(checkAllLabel)}\n </Checkbox>\n </div>\n ) : null}\n\n <div ref={this.menuItemRef} className={cx('Select-option hidden')}>\n {multiple ? (\n <Checkbox size=\"sm\">Placeholder</Checkbox>\n ) : (\n <span>Placeholder</span>\n )}\n </div>\n\n {creatable && !disabled ? (\n <a className={cx('Select-addBtn')} onClick={this.handleAddClick}>\n <Icon icon=\"plus\" className=\"icon\" />\n {__(createBtnLabel)}\n </a>\n ) : null}\n\n {filtedOptions.length ? (\n filtedOptions.length > virtualThreshold ? ( // 较多数据时才启用 virtuallist,避免滚动条问题\n <VirtualList\n height={\n filtedOptions.length > 8\n ? 266\n : filtedOptions.length * virtualItemHeight\n }\n itemCount={filtedOptions.length}\n itemSize={virtualItemHeight}\n renderItem={renderItem}\n />\n ) : (\n filtedOptions.map((item, index) => {\n return renderItem({index});\n })\n )\n ) : (\n <div className={cx('Select-noResult')}>{__(noResultsText)}</div>\n )}\n </div>\n );\n return mobileUI ? (\n <PopUp\n className={cx(`Select-popup`)}\n container={popOverContainer}\n isShow={this.state.isOpen}\n onHide={this.close}\n >\n {menu}\n </PopUp>\n ) : (\n <Overlay\n container={popOverContainer || this.getTarget}\n target={this.getTarget}\n placement={overlayPlacement}\n show\n >\n <PopOver\n overlay\n className={cx('Select-popover')}\n style={{\n width: this.target ? this.target.offsetWidth : 'auto'\n }}\n onHide={this.close}\n >\n {menu}\n </PopOver>\n </Overlay>\n );\n }\n\n render() {\n const {\n classnames: cx,\n multiple,\n valuesNoWrap,\n searchable,\n inline,\n block,\n className,\n value,\n loading,\n clearable,\n labelField,\n disabled,\n checkAll,\n borderMode,\n useMobileUI,\n hasError\n } = this.props;\n\n const selection = this.state.selection;\n const inputValue = this.state.inputValue;\n const resetValue = this.props.resetValue;\n const mobileUI = useMobileUI && isMobile();\n return (\n <Downshift\n selectedItem={selection}\n highlightedIndex={this.state.highlightedIndex}\n isOpen={this.state.isOpen}\n inputValue={inputValue}\n onChange={\n /*展示 Checkbox 的时候,会出发多次 onChange 原因待查*/\n multiple ? noop : this.handleChange\n }\n onStateChange={this.handleStateChange}\n itemToString={item => (item ? `${item[labelField]}` : '')}\n >\n {(options: ControllerStateAndHelpers<any>) => {\n const {isOpen} = options;\n return (\n <div\n tabIndex={disabled ? -1 : 0}\n onKeyPress={this.handleKeyPress}\n onClick={this.toggle}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n className={cx(\n `Select`,\n {\n [`Select--multi`]: multiple,\n [`Select--inline`]: inline,\n [`Select--block`]: block,\n [`Select--searchable`]: searchable,\n 'is-opened': isOpen,\n 'is-focused': this.state.isFocused,\n 'is-disabled': disabled,\n 'is-mobile': mobileUI,\n 'is-error': hasError,\n [`Select--border${ucFirst(borderMode)}`]: borderMode\n },\n className\n )}\n >\n <div\n className={cx(`Select-valueWrap`, {\n 'Select-valuesNoWrap': valuesNoWrap\n })}\n >\n {this.renderValue(options)}\n </div>\n {clearable &&\n !disabled &&\n (Array.isArray(value)\n ? value.length\n : value != null && value !== resetValue) ? (\n <a onClick={this.clearValue} className={cx('Select-clear')}>\n <Icon icon=\"close-small\" className=\"icon\" />\n </a>\n ) : null}\n {loading ? (\n <Spinner\n show\n icon=\"reload\"\n size=\"sm\"\n spinnerClassName={cx('Select-spinner')}\n />\n ) : null}\n\n <span className={cx('Select-arrow')}>\n <Icon icon=\"right-arrow-bold\" className=\"icon\" />\n </span>\n {isOpen ? this.renderOuter(options) : null}\n </div>\n );\n }}\n </Downshift>\n );\n }\n}\n\nconst EnhancedSelect = themeable(\n localeable(\n uncontrollable(Select, {\n value: 'onChange'\n })\n )\n);\n\nexport default EnhancedSelect;\nexport const SelectWithRemoteOptions = withRemoteConfig<Array<Options>>({\n adaptor: data => data.options || data.items || data.rows || data,\n normalizeConfig: (options: any, origin) => {\n options = normalizeOptions(options);\n\n if (Array.isArray(options)) {\n return options.concat();\n }\n\n return origin;\n }\n})(\n class extends React.Component<\n RemoteOptionsProps<Array<Options>> &\n React.ComponentProps<typeof EnhancedSelect>\n > {\n render() {\n const {loading, config, deferLoad, updateConfig, ...rest} = this.props;\n\n return (\n <EnhancedSelect\n {...rest}\n options={config || rest.options || []}\n loading={loading}\n />\n );\n }\n }\n);\n"
12
12
  ]
13
13
  }
@@ -67,7 +67,8 @@ var FormulaEditor = /** @class */ (function (_super) {
67
67
  var from = 0;
68
68
  var idx = -1;
69
69
  while (~(idx = content.indexOf(v, from))) {
70
- html = html.replace(v, "<span class=\"c-field\">".concat(varMap[v], "</span>"));
70
+ var curNameEg = new RegExp("\\b".concat(v, "\\b"), 'g'); // 避免变量识别冲突,比如:name、me 被识别成 na「me」
71
+ html = html.replace(curNameEg, "<span class=\"c-field\">".concat(varMap[v], "</span>"));
71
72
  from = idx + v.length;
72
73
  }
73
74
  });
@@ -116,7 +117,7 @@ var FormulaEditor = /** @class */ (function (_super) {
116
117
  FormulaEditor.prototype.handleVariableSelect = function (item) {
117
118
  var _a;
118
119
  var _b = this.props, evalMode = _b.evalMode, selfVariableName = _b.selfVariableName;
119
- if (item && item.label && selfVariableName === item.label) {
120
+ if (item && item.value && selfVariableName === item.value) {
120
121
  Toast_1.toast.warning('不能使用当前变量[self],避免循环引用。');
121
122
  return;
122
123
  }
@@ -6,8 +6,8 @@
6
6
  "/src/components/formula/Editor.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "/**\n * @file 公式编辑器\n */\nimport React from 'react';\nimport {uncontrollable} from 'uncontrollable';\nimport {parse} from 'amis-formula';\nimport {doc} from 'amis-formula/dist/doc';\n\nimport {FormulaPlugin, editorFactory} from './plugin';\nimport FuncList from './FuncList';\nimport VariableList from './VariableList';\nimport CodeMirrorEditor from '../CodeMirror';\nimport {autobind, eachTree} from '../../utils/helper';\nimport {themeable, ThemeProps} from '../../theme';\nimport {localeable, LocaleProps} from '../../locale';\nimport {toast} from '../Toast';\n\nexport interface VariableItem {\n label: string;\n value?: string;\n children?: Array<VariableItem>;\n type?: string;\n tag?: string;\n selectMode?: 'tree' | 'tabs';\n}\n\nexport interface FuncGroup {\n groupName: string;\n items: Array<FuncItem>;\n}\n\nexport interface FuncItem {\n name: string; // 函数名\n example?: string; // 示例\n description?: string; // 描述\n [propName: string]: any;\n}\n\nexport interface FormulaEditorProps extends ThemeProps, LocaleProps {\n onChange?: (value: string) => void;\n value?: string;\n /**\n * evalMode 即直接就是表达式,否则\n * 需要 ${这里面才是表达式}\n * 默认为 true\n */\n evalMode?: boolean;\n\n /**\n * 用于提示的变量集合,默认为空\n */\n variables?: Array<VariableItem>;\n\n /**\n * 变量展现模式,可选值:'tabs' | 'tree'\n */\n variableMode?: 'tabs' | 'tree';\n\n /**\n * 函数集合,默认不需要传,即 amis-formula 里面那个函数\n * 如果有扩充,则需要传。\n */\n functions?: Array<FuncGroup>;\n\n /**\n * 顶部标题,默认为表达式\n */\n header: string;\n\n variableClassName?: string;\n\n functionClassName?: string;\n\n /**\n * 当前输入项字段 name: 用于避免循环绑定自身导致无限渲染\n */\n selfVariableName?: string;\n}\n\nexport interface FunctionsProps {\n name: string;\n items: FunctionProps[];\n}\n\nexport interface FunctionProps {\n name: string;\n intro: string;\n usage: string;\n example: string;\n}\n\nexport interface FormulaState {\n focused: boolean;\n}\n\nexport class FormulaEditor extends React.Component<\n FormulaEditorProps,\n FormulaState\n> {\n state: FormulaState = {\n focused: false\n };\n editorPlugin?: FormulaPlugin;\n\n static buildDefaultFunctions(\n doc: Array<{\n namespace: string;\n name: string;\n [propName: string]: any;\n }>\n ) {\n const funcs: Array<FuncGroup> = [];\n\n doc.forEach(item => {\n const namespace = item.namespace || 'Others';\n let exists = funcs.find(item => item.groupName === namespace);\n if (!exists) {\n exists = {\n groupName: namespace,\n items: []\n };\n funcs.push(exists);\n }\n exists.items.push(item);\n });\n\n return funcs;\n }\n\n static defaultProps: Pick<FormulaEditorProps, 'variables' | 'evalMode'> = {\n variables: [],\n evalMode: true\n };\n\n static highlightValue(\n value: string,\n variables: Array<VariableItem>,\n evalMode: boolean = true\n ) {\n if (!Array.isArray(variables) || !variables.length || !value) {\n return;\n }\n\n const varMap: {\n [propname: string]: string;\n } = {};\n\n eachTree(variables, item => {\n if (item.value) {\n const key = item.value;\n varMap[key] = item.label;\n }\n });\n const vars = Object.keys(varMap)\n .filter(item => item)\n .sort((a, b) => b.length - a.length);\n\n const content = value || '';\n let html = '';\n\n // 标记方法调用\n html = content.replace(/([A-Z]+)\\s*\\(/g, (_, func, pos) => {\n return _?.replace(func, `<span class=\"c-func\">${func}</span>`);\n });\n\n vars.forEach(v => {\n let from = 0;\n let idx = -1;\n while (~(idx = content.indexOf(v, from))) {\n html = html.replace(v, `<span class=\"c-field\">${varMap[v]}</span>`);\n from = idx + v.length;\n }\n });\n\n return {html};\n }\n\n componentWillUnmount() {\n this.editorPlugin?.dispose();\n }\n\n @autobind\n handleFocus() {\n this.setState({\n focused: true\n });\n }\n\n @autobind\n handleBlur() {\n this.setState({\n focused: false\n });\n }\n\n @autobind\n insertValue(value: any, type: 'variable' | 'func') {\n this.editorPlugin?.insertContent(value, type);\n }\n\n @autobind\n handleEditorMounted(cm: any, editor: any) {\n this.editorPlugin = new FormulaPlugin(editor, cm, () => this.props);\n }\n\n @autobind\n validate() {\n const value = this.props.value;\n\n try {\n value\n ? parse(value, {\n evalMode: this.props.evalMode\n })\n : null;\n } catch (e) {\n return e.message;\n }\n\n return;\n }\n\n @autobind\n handleFunctionSelect(item: FuncItem) {\n this.editorPlugin?.insertContent(`${item.name}`, 'func');\n }\n\n @autobind\n handleVariableSelect(item: VariableItem) {\n const {evalMode, selfVariableName} = this.props;\n\n if (item && item.label && selfVariableName === item.label) {\n toast.warning('不能使用当前变量[self],避免循环引用。');\n return;\n }\n\n this.editorPlugin?.insertContent(\n {\n key: item.value,\n name: item.label\n },\n 'variable'\n );\n }\n\n @autobind\n handleOnChange(value: any) {\n const onChange = this.props.onChange;\n onChange?.(value);\n }\n\n @autobind\n editorFactory(dom: HTMLElement, cm: any) {\n return editorFactory(dom, cm, this.props);\n }\n\n render() {\n const {\n variables,\n header,\n value,\n functions,\n variableMode,\n translate: __,\n classnames: cx,\n variableClassName,\n functionClassName,\n classPrefix,\n selfVariableName\n } = this.props;\n const {focused} = this.state;\n const customFunctions = Array.isArray(functions) ? functions : [];\n const functionList = [\n ...FormulaEditor.buildDefaultFunctions(doc),\n ...customFunctions\n ];\n\n return (\n <div\n className={cx(`FormulaEditor`, {\n 'is-focused': focused\n })}\n >\n <section className={cx(`FormulaEditor-content`)}>\n <header className={cx(`FormulaEditor-header`)}>\n {__(header || 'FormulaEditor.title')}\n </header>\n\n <CodeMirrorEditor\n className={cx('FormulaEditor-editor')}\n value={value}\n onChange={this.handleOnChange}\n editorFactory={this.editorFactory}\n editorDidMount={this.handleEditorMounted}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n </section>\n\n <section className={cx('FormulaEditor-settings')}>\n <div className={cx('FormulaEditor-panel')}>\n {variableMode !== 'tabs' ? (\n <div className={cx('FormulaEditor-panel-header')}>\n {__('FormulaEditor.variable')}\n </div>\n ) : null}\n <div\n className={cx(\n 'FormulaEditor-panel-body',\n variableMode && `FormulaEditor-panel-body--${variableMode}`\n )}\n >\n <VariableList\n classPrefix={classPrefix}\n className={cx(\n 'FormulaEditor-VariableList',\n 'FormulaEditor-VariableList-root',\n variableClassName\n )}\n selectMode={variableMode}\n data={variables!}\n onSelect={this.handleVariableSelect}\n selfVariableName={selfVariableName}\n />\n </div>\n </div>\n\n <FuncList\n className={functionClassName}\n title={__('FormulaEditor.function')}\n data={functionList}\n onSelect={this.handleFunctionSelect}\n />\n </section>\n </div>\n );\n }\n}\n\nexport default uncontrollable(\n themeable(localeable(FormulaEditor)),\n {\n value: 'onChange'\n },\n ['validate']\n);\n"
11
+ "/**\n * @file 公式编辑器\n */\nimport React from 'react';\nimport {uncontrollable} from 'uncontrollable';\nimport {parse} from 'amis-formula';\nimport {doc} from 'amis-formula/dist/doc';\n\nimport {FormulaPlugin, editorFactory} from './plugin';\nimport FuncList from './FuncList';\nimport VariableList from './VariableList';\nimport CodeMirrorEditor from '../CodeMirror';\nimport {autobind, eachTree} from '../../utils/helper';\nimport {themeable, ThemeProps} from '../../theme';\nimport {localeable, LocaleProps} from '../../locale';\nimport {toast} from '../Toast';\n\nexport interface VariableItem {\n label: string;\n value?: string;\n children?: Array<VariableItem>;\n type?: string;\n tag?: string;\n selectMode?: 'tree' | 'tabs';\n}\n\nexport interface FuncGroup {\n groupName: string;\n items: Array<FuncItem>;\n}\n\nexport interface FuncItem {\n name: string; // 函数名\n example?: string; // 示例\n description?: string; // 描述\n [propName: string]: any;\n}\n\nexport interface FormulaEditorProps extends ThemeProps, LocaleProps {\n onChange?: (value: string) => void;\n value?: string;\n /**\n * evalMode 即直接就是表达式,否则\n * 需要 ${这里面才是表达式}\n * 默认为 true\n */\n evalMode?: boolean;\n\n /**\n * 用于提示的变量集合,默认为空\n */\n variables?: Array<VariableItem>;\n\n /**\n * 变量展现模式,可选值:'tabs' | 'tree'\n */\n variableMode?: 'tabs' | 'tree';\n\n /**\n * 函数集合,默认不需要传,即 amis-formula 里面那个函数\n * 如果有扩充,则需要传。\n */\n functions?: Array<FuncGroup>;\n\n /**\n * 顶部标题,默认为表达式\n */\n header: string;\n\n variableClassName?: string;\n\n functionClassName?: string;\n\n /**\n * 当前输入项字段 name: 用于避免循环绑定自身导致无限渲染\n */\n selfVariableName?: string;\n}\n\nexport interface FunctionsProps {\n name: string;\n items: FunctionProps[];\n}\n\nexport interface FunctionProps {\n name: string;\n intro: string;\n usage: string;\n example: string;\n}\n\nexport interface FormulaState {\n focused: boolean;\n}\n\nexport class FormulaEditor extends React.Component<\n FormulaEditorProps,\n FormulaState\n> {\n state: FormulaState = {\n focused: false\n };\n editorPlugin?: FormulaPlugin;\n\n static buildDefaultFunctions(\n doc: Array<{\n namespace: string;\n name: string;\n [propName: string]: any;\n }>\n ) {\n const funcs: Array<FuncGroup> = [];\n\n doc.forEach(item => {\n const namespace = item.namespace || 'Others';\n let exists = funcs.find(item => item.groupName === namespace);\n if (!exists) {\n exists = {\n groupName: namespace,\n items: []\n };\n funcs.push(exists);\n }\n exists.items.push(item);\n });\n\n return funcs;\n }\n\n static defaultProps: Pick<FormulaEditorProps, 'variables' | 'evalMode'> = {\n variables: [],\n evalMode: true\n };\n\n static highlightValue(\n value: string,\n variables: Array<VariableItem>,\n evalMode: boolean = true\n ) {\n if (!Array.isArray(variables) || !variables.length || !value) {\n return;\n }\n\n const varMap: {\n [propname: string]: string;\n } = {};\n\n eachTree(variables, item => {\n if (item.value) {\n const key = item.value;\n varMap[key] = item.label;\n }\n });\n const vars = Object.keys(varMap)\n .filter(item => item)\n .sort((a, b) => b.length - a.length);\n\n const content = value || '';\n let html = '';\n\n // 标记方法调用\n html = content.replace(/([A-Z]+)\\s*\\(/g, (_, func, pos) => {\n return _?.replace(func, `<span class=\"c-func\">${func}</span>`);\n });\n\n vars.forEach(v => {\n let from = 0;\n let idx = -1;\n while (~(idx = content.indexOf(v, from))) {\n const curNameEg = new RegExp(`\\\\b${v}\\\\b`, 'g'); // 避免变量识别冲突,比如:name、me 被识别成 na「me」\n html = html.replace(curNameEg, `<span class=\"c-field\">${varMap[v]}</span>`);\n from = idx + v.length;\n }\n });\n\n return {html};\n }\n\n componentWillUnmount() {\n this.editorPlugin?.dispose();\n }\n\n @autobind\n handleFocus() {\n this.setState({\n focused: true\n });\n }\n\n @autobind\n handleBlur() {\n this.setState({\n focused: false\n });\n }\n\n @autobind\n insertValue(value: any, type: 'variable' | 'func') {\n this.editorPlugin?.insertContent(value, type);\n }\n\n @autobind\n handleEditorMounted(cm: any, editor: any) {\n this.editorPlugin = new FormulaPlugin(editor, cm, () => this.props);\n }\n\n @autobind\n validate() {\n const value = this.props.value;\n\n try {\n value\n ? parse(value, {\n evalMode: this.props.evalMode\n })\n : null;\n } catch (e) {\n return e.message;\n }\n\n return;\n }\n\n @autobind\n handleFunctionSelect(item: FuncItem) {\n this.editorPlugin?.insertContent(`${item.name}`, 'func');\n }\n\n @autobind\n handleVariableSelect(item: VariableItem) {\n const {evalMode, selfVariableName} = this.props;\n\n if (item && item.value && selfVariableName === item.value) {\n toast.warning('不能使用当前变量[self],避免循环引用。');\n return;\n }\n\n this.editorPlugin?.insertContent(\n {\n key: item.value,\n name: item.label\n },\n 'variable'\n );\n }\n\n @autobind\n handleOnChange(value: any) {\n const onChange = this.props.onChange;\n onChange?.(value);\n }\n\n @autobind\n editorFactory(dom: HTMLElement, cm: any) {\n return editorFactory(dom, cm, this.props);\n }\n\n render() {\n const {\n variables,\n header,\n value,\n functions,\n variableMode,\n translate: __,\n classnames: cx,\n variableClassName,\n functionClassName,\n classPrefix,\n selfVariableName\n } = this.props;\n const {focused} = this.state;\n const customFunctions = Array.isArray(functions) ? functions : [];\n const functionList = [\n ...FormulaEditor.buildDefaultFunctions(doc),\n ...customFunctions\n ];\n\n return (\n <div\n className={cx(`FormulaEditor`, {\n 'is-focused': focused\n })}\n >\n <section className={cx(`FormulaEditor-content`)}>\n <header className={cx(`FormulaEditor-header`)}>\n {__(header || 'FormulaEditor.title')}\n </header>\n\n <CodeMirrorEditor\n className={cx('FormulaEditor-editor')}\n value={value}\n onChange={this.handleOnChange}\n editorFactory={this.editorFactory}\n editorDidMount={this.handleEditorMounted}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n </section>\n\n <section className={cx('FormulaEditor-settings')}>\n <div className={cx('FormulaEditor-panel')}>\n {variableMode !== 'tabs' ? (\n <div className={cx('FormulaEditor-panel-header')}>\n {__('FormulaEditor.variable')}\n </div>\n ) : null}\n <div\n className={cx(\n 'FormulaEditor-panel-body',\n variableMode && `FormulaEditor-panel-body--${variableMode}`\n )}\n >\n <VariableList\n classPrefix={classPrefix}\n className={cx(\n 'FormulaEditor-VariableList',\n 'FormulaEditor-VariableList-root',\n variableClassName\n )}\n selectMode={variableMode}\n data={variables!}\n onSelect={this.handleVariableSelect}\n selfVariableName={selfVariableName}\n />\n </div>\n </div>\n\n <FuncList\n className={functionClassName}\n title={__('FormulaEditor.function')}\n data={functionList}\n onSelect={this.handleFunctionSelect}\n />\n </section>\n </div>\n );\n }\n}\n\nexport default uncontrollable(\n themeable(localeable(FormulaEditor)),\n {\n value: 'onChange'\n },\n ['validate']\n);\n"
12
12
  ]
13
13
  }
@@ -131,8 +131,8 @@ var FormulaPicker = /** @class */ (function (_super) {
131
131
  FormulaPicker.prototype.render = function () {
132
132
  var _a, _b, _c;
133
133
  var _d, _e, _f, _g, _h;
134
- var _j = this.props, cx = _j.classnames, __ = _j.translate, disabled = _j.disabled, allowInput = _j.allowInput, className = _j.className, onChange = _j.onChange, size = _j.size, borderMode = _j.borderMode, placeholder = _j.placeholder, mode = _j.mode, btnLabel = _j.btnLabel, level = _j.level, btnSize = _j.btnSize, icon = _j.icon, title = _j.title, clearable = _j.clearable, variables = _j.variables, functions = _j.functions, children = _j.children, variableMode = _j.variableMode, rest = (0, tslib_1.__rest)(_j, ["classnames", "translate", "disabled", "allowInput", "className", "onChange", "size", "borderMode", "placeholder", "mode", "btnLabel", "level", "btnSize", "icon", "title", "clearable", "variables", "functions", "children", "variableMode"]);
135
- var _k = this.state, isOpened = _k.isOpened, value = _k.value, editorValue = _k.editorValue, isError = _k.isError;
134
+ var _j = this.props, cx = _j.classnames, __ = _j.translate, disabled = _j.disabled, _k = _j.allowInput, allowInput = _k === void 0 ? true : _k, className = _j.className, onChange = _j.onChange, size = _j.size, borderMode = _j.borderMode, placeholder = _j.placeholder, _l = _j.mode, mode = _l === void 0 ? 'input-button' : _l, btnLabel = _j.btnLabel, level = _j.level, btnSize = _j.btnSize, icon = _j.icon, title = _j.title, clearable = _j.clearable, variables = _j.variables, functions = _j.functions, children = _j.children, variableMode = _j.variableMode, rest = (0, tslib_1.__rest)(_j, ["classnames", "translate", "disabled", "allowInput", "className", "onChange", "size", "borderMode", "placeholder", "mode", "btnLabel", "level", "btnSize", "icon", "title", "clearable", "variables", "functions", "children", "variableMode"]);
135
+ var _m = this.state, isOpened = _m.isOpened, value = _m.value, editorValue = _m.editorValue, isError = _m.isError;
136
136
  var iconElement = (0, icon_1.generateIcon)(cx, icon, 'Icon');
137
137
  return (react_1.default.createElement(react_1.default.Fragment, null,
138
138
  children ? (children({