amis 1.9.0 → 1.9.1-beta.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (269) hide show
  1. package/lib/RootRenderer.js +10 -2
  2. package/lib/RootRenderer.js.map +2 -2
  3. package/lib/Schema.d.ts +3 -2
  4. package/lib/Schema.js.map +1 -1
  5. package/lib/actions/Action.d.ts +1 -0
  6. package/lib/actions/Action.js +7 -6
  7. package/lib/actions/Action.js.map +2 -2
  8. package/lib/components/Button.d.ts +11 -10
  9. package/lib/components/Button.js +2 -2
  10. package/lib/components/Button.js.map +2 -2
  11. package/lib/components/CalendarMobile.d.ts +40 -40
  12. package/lib/components/Checkbox.js +1 -1
  13. package/lib/components/Checkbox.js.map +2 -2
  14. package/lib/components/ContextMenu.d.ts +4 -0
  15. package/lib/components/ContextMenu.js +23 -7
  16. package/lib/components/ContextMenu.js.map +2 -2
  17. package/lib/components/DatePicker.d.ts +40 -40
  18. package/lib/components/DateRangePicker.d.ts +40 -40
  19. package/lib/components/Form.d.ts +22 -0
  20. package/lib/components/Form.js +44 -0
  21. package/lib/components/Form.js.map +13 -0
  22. package/lib/components/FormField.d.ts +65 -0
  23. package/lib/components/FormField.js +48 -0
  24. package/lib/components/FormField.js.map +13 -0
  25. package/lib/components/InputBox.d.ts +10 -10
  26. package/lib/components/InputBox.js +4 -3
  27. package/lib/components/InputBox.js.map +2 -2
  28. package/lib/components/InputBoxWithSuggestion.d.ts +280 -0
  29. package/lib/components/InputBoxWithSuggestion.js +65 -0
  30. package/lib/components/InputBoxWithSuggestion.js.map +13 -0
  31. package/lib/components/ListGroup.d.ts +10 -10
  32. package/lib/components/PickerContainer.d.ts +4 -2
  33. package/lib/components/PickerContainer.js +28 -5
  34. package/lib/components/PickerContainer.js.map +2 -2
  35. package/lib/components/Radios.d.ts +10 -10
  36. package/lib/components/ResultBox.d.ts +40 -40
  37. package/lib/components/Select.d.ts +195 -202
  38. package/lib/components/Select.js +7 -3
  39. package/lib/components/Select.js.map +2 -2
  40. package/lib/components/Textarea.d.ts +568 -2
  41. package/lib/components/Textarea.js +129 -1
  42. package/lib/components/Textarea.js.map +2 -2
  43. package/lib/components/Toast.js +11 -9
  44. package/lib/components/Toast.js.map +2 -2
  45. package/lib/components/UserSelect.d.ts +500 -0
  46. package/lib/components/UserSelect.js +559 -0
  47. package/lib/components/UserSelect.js.map +13 -0
  48. package/lib/components/UserTabSelect.d.ts +320 -0
  49. package/lib/components/UserTabSelect.js +163 -0
  50. package/lib/components/UserTabSelect.js.map +13 -0
  51. package/lib/components/WithRemoteConfig.d.ts +7 -0
  52. package/lib/components/WithRemoteConfig.js +17 -11
  53. package/lib/components/WithRemoteConfig.js.map +2 -2
  54. package/lib/components/calendar/DaysView.d.ts +26 -1
  55. package/lib/components/calendar/DaysView.js +60 -19
  56. package/lib/components/calendar/DaysView.js.map +2 -2
  57. package/lib/components/calendar/TimeView.d.ts +1 -1
  58. package/lib/components/calendar/TimeView.js +10 -3
  59. package/lib/components/calendar/TimeView.js.map +2 -2
  60. package/lib/components/formula/Picker.js +4 -4
  61. package/lib/components/formula/Picker.js.map +2 -2
  62. package/lib/components/icons.d.ts +7 -1
  63. package/lib/components/icons.js +17 -1
  64. package/lib/components/icons.js.map +2 -2
  65. package/lib/components/index.d.ts +2 -1
  66. package/lib/components/index.js +3 -1
  67. package/lib/components/index.js.map +2 -2
  68. package/lib/components/json-schema/Array.d.ts +3 -0
  69. package/lib/components/json-schema/Array.js +125 -0
  70. package/lib/components/json-schema/Array.js.map +13 -0
  71. package/lib/components/json-schema/Item.d.ts +3 -0
  72. package/lib/components/json-schema/Item.js +34 -0
  73. package/lib/components/json-schema/Item.js.map +13 -0
  74. package/lib/components/json-schema/Object.d.ts +3 -0
  75. package/lib/components/json-schema/Object.js +178 -0
  76. package/lib/components/json-schema/Object.js.map +13 -0
  77. package/lib/components/json-schema/index.d.ts +279 -0
  78. package/lib/components/json-schema/index.js +16 -0
  79. package/lib/components/json-schema/index.js.map +13 -0
  80. package/lib/components/schema-editor/Array.js +2 -2
  81. package/lib/components/schema-editor/Array.js.map +2 -2
  82. package/lib/components/schema-editor/Common.d.ts +2 -0
  83. package/lib/components/schema-editor/Common.js +39 -3
  84. package/lib/components/schema-editor/Common.js.map +2 -2
  85. package/lib/components/schema-editor/Object.js +2 -2
  86. package/lib/components/schema-editor/Object.js.map +2 -2
  87. package/lib/components/schema-editor/index.d.ts +45 -41
  88. package/lib/components/schema-editor/index.js +5 -5
  89. package/lib/components/schema-editor/index.js.map +2 -2
  90. package/lib/helper.css +125 -124
  91. package/lib/helper.css.map +1 -1
  92. package/lib/hooks/use-validation-resolver.d.ts +1 -0
  93. package/lib/hooks/use-validation-resolver.js +49 -0
  94. package/lib/hooks/use-validation-resolver.js.map +13 -0
  95. package/lib/icons/department.js +17 -0
  96. package/lib/icons/menu.js +9 -0
  97. package/lib/icons/post.js +15 -0
  98. package/lib/icons/role.js +14 -0
  99. package/lib/icons/user-remove.js +12 -0
  100. package/lib/index.d.ts +2 -0
  101. package/lib/index.js +3 -1
  102. package/lib/index.js.map +2 -2
  103. package/lib/locale/de-DE.js +11 -1
  104. package/lib/locale/de-DE.js.map +2 -2
  105. package/lib/locale/en-US.js +12 -1
  106. package/lib/locale/en-US.js.map +2 -2
  107. package/lib/locale/zh-CN.js +14 -3
  108. package/lib/locale/zh-CN.js.map +2 -2
  109. package/lib/renderers/Action.js +25 -11
  110. package/lib/renderers/Action.js.map +2 -2
  111. package/lib/renderers/CRUD.js +5 -1
  112. package/lib/renderers/CRUD.js.map +2 -2
  113. package/lib/renderers/Dialog.js +9 -3
  114. package/lib/renderers/Dialog.js.map +2 -2
  115. package/lib/renderers/Drawer.js +5 -1
  116. package/lib/renderers/Drawer.js.map +2 -2
  117. package/lib/renderers/Form/InputDate.d.ts +2 -2
  118. package/lib/renderers/Form/InputDate.js.map +2 -2
  119. package/lib/renderers/Form/InputFile.js +5 -12
  120. package/lib/renderers/Form/InputFile.js.map +2 -2
  121. package/lib/renderers/Form/InputText.d.ts +1 -1
  122. package/lib/renderers/Form/InputText.js.map +1 -1
  123. package/lib/renderers/Form/JSONSchema.d.ts +23 -0
  124. package/lib/renderers/Form/JSONSchema.js +44 -0
  125. package/lib/renderers/Form/JSONSchema.js.map +13 -0
  126. package/lib/renderers/Form/JSONSchemaEditor.d.ts +2 -3
  127. package/lib/renderers/Form/JSONSchemaEditor.js +9 -24
  128. package/lib/renderers/Form/JSONSchemaEditor.js.map +2 -2
  129. package/lib/renderers/Form/Textarea.d.ts +1 -8
  130. package/lib/renderers/Form/Textarea.js +11 -75
  131. package/lib/renderers/Form/Textarea.js.map +2 -2
  132. package/lib/renderers/Form/UserSelect.d.ts +54 -0
  133. package/lib/renderers/Form/UserSelect.js +197 -0
  134. package/lib/renderers/Form/UserSelect.js.map +13 -0
  135. package/lib/renderers/Form/index.d.ts +1 -1
  136. package/lib/renderers/Form/index.js +88 -42
  137. package/lib/renderers/Form/index.js.map +2 -2
  138. package/lib/renderers/Link.d.ts +1 -1
  139. package/lib/renderers/Link.js +15 -29
  140. package/lib/renderers/Link.js.map +2 -2
  141. package/lib/renderers/Log.d.ts +28 -0
  142. package/lib/renderers/Log.js +110 -20
  143. package/lib/renderers/Log.js.map +2 -2
  144. package/lib/renderers/Page.js +5 -1
  145. package/lib/renderers/Page.js.map +2 -2
  146. package/lib/renderers/Service.js +5 -1
  147. package/lib/renderers/Service.js.map +2 -2
  148. package/lib/renderers/Wizard.js +37 -14
  149. package/lib/renderers/Wizard.js.map +2 -2
  150. package/lib/store/form.js +65 -45
  151. package/lib/store/form.js.map +2 -2
  152. package/lib/themes/ang-ie11.css +576 -24
  153. package/lib/themes/ang.css +553 -12
  154. package/lib/themes/ang.css.map +1 -1
  155. package/lib/themes/antd-ie11.css +576 -24
  156. package/lib/themes/antd.css +553 -12
  157. package/lib/themes/antd.css.map +1 -1
  158. package/lib/themes/cxd-ie11.css +576 -24
  159. package/lib/themes/cxd.css +553 -12
  160. package/lib/themes/cxd.css.map +1 -1
  161. package/lib/themes/dark-ie11.css +576 -24
  162. package/lib/themes/dark.css +553 -12
  163. package/lib/themes/dark.css.map +1 -1
  164. package/lib/themes/default-ie11.css +576 -24
  165. package/lib/themes/default.css +553 -12
  166. package/lib/themes/default.css.map +1 -1
  167. package/lib/utils/api.js +1 -1
  168. package/lib/utils/api.js.map +2 -2
  169. package/lib/utils/renderer-event.js.map +2 -2
  170. package/package.json +2 -1
  171. package/schema.json +542 -4
  172. package/scss/_properties.scss +20 -8
  173. package/scss/components/_input-box.scss +22 -1
  174. package/scss/components/_json-schema.scss +124 -0
  175. package/scss/components/_log.scss +37 -5
  176. package/scss/components/form/_date-range.scss +1 -0
  177. package/scss/components/form/_select.scss +9 -0
  178. package/scss/components/form/_transfer.scss +19 -3
  179. package/scss/components/form/_user-select.scss +422 -0
  180. package/scss/helper/background/_background-color.scss +125 -124
  181. package/scss/themes/_common.scss +2 -0
  182. package/sdk/ang-ie11.css +670 -24
  183. package/sdk/ang.css +647 -12
  184. package/sdk/antd-ie11.css +670 -24
  185. package/sdk/antd.css +647 -12
  186. package/sdk/barcode.js +51 -51
  187. package/sdk/charts.js +14 -14
  188. package/sdk/codemirror.js +7 -7
  189. package/sdk/color-picker.js +65 -65
  190. package/sdk/cropperjs.js +2 -2
  191. package/sdk/cxd-ie11.css +670 -24
  192. package/sdk/cxd.css +647 -12
  193. package/sdk/dark-ie11.css +670 -24
  194. package/sdk/dark.css +647 -12
  195. package/sdk/exceljs.js +1 -1
  196. package/sdk/helper.css +125 -124
  197. package/sdk/helper.css.map +1 -1
  198. package/sdk/locale/de-DE.js +11 -1
  199. package/sdk/markdown.js +69 -69
  200. package/sdk/papaparse.js +1 -1
  201. package/sdk/renderers/Form/CityDB.js +1 -1
  202. package/sdk/rest.js +16 -16
  203. package/sdk/rich-text.js +62 -62
  204. package/sdk/sdk-ie11.css +670 -24
  205. package/sdk/sdk.css +647 -12
  206. package/sdk/sdk.js +1651 -1637
  207. package/sdk/thirds/hls.js/hls.js +1 -1
  208. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  209. package/sdk/tinymce.js +57 -57
  210. package/src/RootRenderer.tsx +27 -15
  211. package/src/Schema.ts +5 -1
  212. package/src/actions/Action.ts +5 -4
  213. package/src/components/Button.tsx +3 -0
  214. package/src/components/Checkbox.tsx +2 -1
  215. package/src/components/ContextMenu.tsx +25 -7
  216. package/src/components/Form.tsx +70 -0
  217. package/src/components/FormField.tsx +127 -0
  218. package/src/components/InputBox.tsx +4 -1
  219. package/src/components/InputBoxWithSuggestion.tsx +113 -0
  220. package/src/components/PickerContainer.tsx +20 -5
  221. package/src/components/Select.tsx +18 -10
  222. package/src/components/Textarea.tsx +234 -2
  223. package/src/components/Toast.tsx +19 -18
  224. package/src/components/UserSelect.tsx +850 -0
  225. package/src/components/UserTabSelect.tsx +261 -0
  226. package/src/components/WithRemoteConfig.tsx +22 -7
  227. package/src/components/calendar/DaysView.tsx +117 -49
  228. package/src/components/calendar/TimeView.tsx +11 -6
  229. package/src/components/formula/Picker.tsx +2 -1
  230. package/src/components/icons.tsx +17 -1
  231. package/src/components/index.tsx +3 -1
  232. package/src/components/json-schema/Array.tsx +216 -0
  233. package/src/components/json-schema/Item.tsx +47 -0
  234. package/src/components/json-schema/Object.tsx +339 -0
  235. package/src/components/json-schema/index.tsx +44 -0
  236. package/src/components/schema-editor/Array.tsx +3 -1
  237. package/src/components/schema-editor/Common.tsx +61 -4
  238. package/src/components/schema-editor/Object.tsx +3 -1
  239. package/src/components/schema-editor/index.tsx +12 -5
  240. package/src/hooks/use-validation-resolver.ts +45 -0
  241. package/src/icons/department.svg +17 -0
  242. package/src/icons/menu.svg +2 -0
  243. package/src/icons/post.svg +15 -0
  244. package/src/icons/role.svg +14 -0
  245. package/src/icons/user-remove.svg +12 -0
  246. package/src/index.tsx +2 -0
  247. package/src/locale/de-DE.ts +11 -1
  248. package/src/locale/en-US.ts +12 -1
  249. package/src/locale/zh-CN.ts +14 -3
  250. package/src/renderers/Action.tsx +10 -9
  251. package/src/renderers/CRUD.tsx +5 -1
  252. package/src/renderers/Dialog.tsx +9 -3
  253. package/src/renderers/Drawer.tsx +5 -1
  254. package/src/renderers/Form/InputDate.tsx +9 -4
  255. package/src/renderers/Form/InputFile.tsx +5 -15
  256. package/src/renderers/Form/InputText.tsx +1 -1
  257. package/src/renderers/Form/JSONSchema.tsx +56 -0
  258. package/src/renderers/Form/JSONSchemaEditor.tsx +8 -27
  259. package/src/renderers/Form/Textarea.tsx +7 -117
  260. package/src/renderers/Form/UserSelect.tsx +263 -0
  261. package/src/renderers/Form/index.tsx +28 -18
  262. package/src/renderers/Link.tsx +5 -17
  263. package/src/renderers/Log.tsx +213 -19
  264. package/src/renderers/Page.tsx +6 -1
  265. package/src/renderers/Service.tsx +5 -1
  266. package/src/renderers/Wizard.tsx +24 -10
  267. package/src/store/form.ts +24 -17
  268. package/src/utils/api.ts +1 -1
  269. package/src/utils/renderer-event.ts +0 -2
@@ -0,0 +1,13 @@
1
+ {
2
+ "version": 3,
3
+ "file": "UserSelect.js",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "/src/components/UserSelect.tsx"
7
+ ],
8
+ "names": [],
9
+ "mappings": "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",
10
+ "sourcesContent": [
11
+ "/**\n * @file 移动端人员、部门、角色、岗位选择\n * @author fex\n */\n\nimport React from 'react';\nimport {themeable, ThemeProps} from '../theme';\nimport {LocaleProps, localeable} from '../locale';\nimport {ResultBox} from '../components';\nimport {Option} from '../renderers/Form/Options';\nimport Sortable from 'sortablejs';\nimport PopUp from '../components/PopUp';\nimport InputBox from '../components/InputBox';\nimport {Icon} from '../components/icons';\nimport debounce from 'lodash/debounce';\nimport {autobind, findTree} from '../utils/helper';\nimport Checkbox from '../components/Checkbox';\nimport {optionValueCompare, value2array} from './Select';\nimport Spinner from '../components/Spinner';\nimport flatten from 'lodash/flatten';\nimport {findDOMNode} from 'react-dom';\nimport {Api, PlainObject} from '../types';\nimport {Payload} from 'echarts';\n\nexport interface UserSelectProps extends ThemeProps, LocaleProps {\n showNav?: boolean;\n navTitle?: string;\n options: Array<any>;\n value?: Array<Option> | Option | string;\n selection?: Array<Option>;\n valueField?: string;\n labelField?: string;\n multi?: boolean;\n multiple?: boolean;\n isDep?: boolean;\n isRef?: boolean;\n searchable?: boolean;\n // 选项卡模式开关\n showResultBox?: boolean;\n placeholder?: string;\n searchPlaceholder?: string;\n controlled?: boolean;\n fetcher?: (\n api: Api,\n data?: any,\n options?: PlainObject | undefined\n ) => Promise<Payload>;\n onSearch?: (\n term: string,\n cancelExecutor: Function\n ) => Promise<any[]> | undefined;\n deferLoad: (\n data?: PlainObject,\n isRef?: boolean,\n param?: PlainObject\n ) => Promise<Option[]>;\n onChange: (value: Array<Option> | Option, isReplace?: boolean) => void;\n}\n\nexport interface UserSelectState {\n isOpened: boolean;\n isSearch: boolean;\n isSelectOpened: boolean;\n inputValue: string;\n breadList: Array<any>;\n options: Array<Option>;\n tempSelection: Array<Option>;\n selection: Array<Option>;\n searchList: Array<Option>;\n searchLoading: boolean;\n isEdit: boolean;\n}\n\nexport class UserSelect extends React.Component<\n UserSelectProps,\n UserSelectState\n> {\n cancelSearch?: Function;\n sortable?: Sortable;\n unmounted = false;\n\n constructor(props: UserSelectProps) {\n super(props);\n this.state = {\n isOpened: false,\n isSelectOpened: false,\n inputValue: '',\n options: this.props.options || [],\n breadList: [],\n searchList: [],\n tempSelection: [],\n selection: props.selection || [],\n isSearch: false,\n searchLoading: false,\n isEdit: false\n };\n }\n\n static defaultProps = {\n showResultBox: true,\n labelField: 'label',\n valueField: 'value'\n };\n\n componentDidMount() {}\n\n componentDidUpdate(prevProps: UserSelectProps) {\n let {options, value} = this.props;\n if (prevProps.options !== options) {\n if (\n options &&\n options.length === 1 &&\n options[0].leftOptions &&\n Array.isArray(options[0].children)\n ) {\n let leftOptions = options[0].leftOptions as Option[];\n this.setState({\n options: leftOptions\n });\n } else {\n // 部门选择\n this.setState({\n options: options\n });\n }\n }\n if (\n JSON.stringify(value) !== JSON.stringify(prevProps.value) ||\n JSON.stringify(options) !== JSON.stringify(prevProps.options)\n ) {\n const selection: Array<Option> = value2array(value, this.props);\n this.setState({\n selection\n });\n }\n }\n\n componentWillUnmount() {\n this.unmounted = true;\n }\n\n @autobind\n onClose() {\n this.setState({\n isOpened: false,\n isSearch: false,\n inputValue: '',\n searchList: [],\n searchLoading: false\n });\n }\n\n @autobind\n handleSearch(text: string) {\n if (text) {\n this.setState(\n {\n isSearch: true,\n searchLoading: true,\n inputValue: text\n },\n () => {\n // 如果有取消搜索,先取消掉。\n this.cancelSearch && this.cancelSearch();\n this.lazySearch(text);\n }\n );\n } else {\n this.handleSeachCancel();\n }\n }\n\n @autobind\n handleSeachCancel() {\n this.setState({\n isSearch: false,\n searchLoading: false,\n inputValue: ''\n });\n }\n\n lazySearch = debounce(\n (text: string) => {\n (async (text: string) => {\n const onSearch = this.props.onSearch!;\n let result = await onSearch(\n text,\n (cancelExecutor: () => void) => (this.cancelSearch = cancelExecutor)\n );\n if (this.unmounted) {\n return;\n }\n\n if (!Array.isArray(result)) {\n throw new Error('onSearch 需要返回数组');\n }\n\n this.setState({\n searchList: result,\n searchLoading: false\n });\n })(text).catch(e => {\n this.setState({searchLoading: false});\n console.error(e);\n });\n },\n 250,\n {\n trailing: true,\n leading: false\n }\n );\n\n swapSelectPosition(oldIndex: number, newIndex: number) {\n const tempSelection = this.state.tempSelection;\n tempSelection.splice(newIndex, 0, tempSelection.splice(oldIndex, 1)[0]);\n this.setState({tempSelection});\n }\n\n @autobind\n dragRef(ref: any) {\n if (ref) {\n this.initDragging();\n }\n }\n\n initDragging() {\n const ns = this.props.classPrefix;\n this.sortable = new Sortable(\n document.querySelector(`.${ns}UserSelect-checkContent`) as HTMLElement,\n {\n group: `UserSelect-checkContent`,\n animation: 150,\n handle: `.${ns}UserSelect-dragBar`,\n ghostClass: `${ns}UserSelect--dragging`,\n onEnd: (e: any) => {\n if (!this.state.isEdit || e.newIndex === e.oldIndex) {\n return;\n }\n const parent = e.to as HTMLElement;\n if (e.oldIndex < parent.childNodes.length - 1) {\n parent.insertBefore(e.item, parent.childNodes[e.oldIndex]);\n } else {\n parent.appendChild(e.item);\n }\n this.swapSelectPosition(e.oldIndex, e.newIndex);\n }\n }\n );\n }\n\n destroyDragging() {\n this.sortable && this.sortable.destroy();\n }\n\n @autobind\n onOpen() {\n const {selection} = this.state;\n this.setState({\n isOpened: true,\n tempSelection: selection.slice()\n });\n }\n\n @autobind\n handleBack() {\n this.setState({\n isOpened: false,\n inputValue: '',\n isSearch: false,\n searchList: [],\n breadList: []\n });\n }\n\n @autobind\n async handleExpand(option: Option) {\n const {deferLoad, isRef, isDep} = this.props;\n if (!option.isLoaded || (!isRef && isDep && !option.children?.length)) {\n option.isLoaded = true;\n let deferParam = option.deferApi ? {deferApi: option.deferApi} : {};\n if (isRef) {\n // 部门、人员一起加载\n const res = await Promise.all([\n deferLoad(option, false, deferParam),\n deferLoad({...option, ref: option.value}, true, deferParam)\n ]);\n option.children = flatten(res);\n } else {\n // 只加载部门\n const res = await deferLoad(option, false, deferParam);\n option.children = res || [];\n }\n }\n\n const breadList = this.state.breadList;\n breadList.push(option);\n this.setState({\n breadList\n });\n }\n\n @autobind\n handleSelectChange(option: Option, isReplace?: boolean) {\n const {multiple, onChange, valueField = 'value', controlled} = this.props;\n if (controlled) {\n onChange(option);\n return;\n }\n let selection = this.state.selection.slice();\n // 直接替换的option 肯定是数组\n if (isReplace) {\n selection = option as Option[];\n } else {\n let selectionVals = selection.map((option: Option) => option[valueField]);\n let pos = selectionVals.indexOf(option[valueField]);\n if (pos !== -1) {\n selection.splice(selection.indexOf(option), 1);\n } else {\n if (multiple) {\n selection.push(option);\n } else {\n selection = [option];\n }\n }\n }\n\n onChange(multiple ? selection : selection?.[0]);\n this.setState({\n selection\n });\n return false;\n }\n\n @autobind\n onDelete(option: Option, isTemp: boolean = false) {\n const {valueField = 'value'} = this.props;\n const {tempSelection, selection} = this.state;\n let _selection = isTemp ? tempSelection : selection;\n _selection = _selection.filter(\n (item: Option) => item[valueField] !== option[valueField]\n );\n if (isTemp) {\n this.setState({tempSelection: _selection});\n } else {\n this.setState({selection: _selection});\n }\n }\n\n @autobind\n handleBreadChange(option: Option, index: number) {\n const breadList = this.state.breadList.slice(0, index);\n this.setState({\n breadList\n });\n }\n\n @autobind\n handleEdit() {\n const {multiple, onChange, controlled} = this.props;\n const {isEdit, tempSelection} = this.state;\n if (isEdit) {\n if (controlled) {\n onChange(multiple ? tempSelection : tempSelection?.[0], true);\n this.setState({\n isSelectOpened: false,\n isEdit: false\n });\n return;\n } else {\n this.setState({\n isSelectOpened: false,\n isEdit: false,\n selection: tempSelection\n });\n }\n } else {\n this.setState({\n isEdit: true\n });\n }\n }\n\n renderIcon(option: Option, isSelect?: boolean) {\n const {labelField = 'label', classnames: cx, isRef} = this.props;\n const {isSearch} = this.state;\n\n if (!option.icon) {\n if (option.isRef || ((isSearch || isSelect) && isRef)) {\n return (\n <span className={cx('UserSelect-text-userPic')}>\n {option[labelField].slice(0, 1)}\n </span>\n );\n } else {\n // 没有icon默认返回部门图标\n return (\n <span className={cx('icon', 'UserSelect-icon-box', 'department')}>\n <Icon icon=\"department\" className=\"icon\" />\n </span>\n );\n }\n }\n // 支持角色、岗位等图标配置\n let IconHtml;\n switch (option.icon) {\n case 'user-default-department':\n IconHtml = (\n <span className={cx('icon', 'UserSelect-icon-box', 'department')}>\n <Icon icon=\"department\" className=\"icon\" />\n </span>\n );\n break;\n case 'user-default-role':\n IconHtml = (\n <span className={cx('icon', 'UserSelect-icon-box', 'role')}>\n <Icon icon=\"role\" className=\"icon\" />\n </span>\n );\n break;\n case 'user-default-post':\n IconHtml = (\n <span className={cx('icon', 'UserSelect-icon-box', 'post')}>\n <Icon icon=\"post\" className=\"icon\" />\n </span>\n );\n break;\n case '':\n IconHtml = (\n <span className={cx('UserSelect-text-userPic')}>\n {option[labelField].slice(0, 1)}\n </span>\n );\n break;\n default:\n IconHtml = (\n <img src={option.icon} className={cx('UserSelect-userPic')} />\n );\n }\n return IconHtml;\n }\n\n renderList(\n options: Array<object> = [],\n key?: number | string,\n isSearch?: boolean\n ) {\n const {\n classnames: cx,\n valueField = 'value',\n labelField = 'label',\n isDep,\n isRef,\n translate: __,\n controlled\n } = this.props;\n\n let selection = controlled\n ? this.props.selection || []\n : this.state.selection;\n const checkValues = selection.map((item: Option) => item[valueField]);\n\n return options.length ? (\n <div className={cx('UserSelect-memberList-box')} key={key}>\n <ul className={cx(`UserSelect-memberList`)} key={key}>\n {options.map((option: Option, index: number) => {\n const hasChildren =\n (isRef && !option.isRef) ||\n (isDep && (option.defer || option.children?.length));\n const checkVisible =\n (isDep && isRef) ||\n (isRef && option.isRef) ||\n (isDep && !isRef) ||\n isSearch;\n\n const userIcon = this.renderIcon(option);\n\n return (\n <li key={index}>\n {checkVisible ? (\n <Checkbox\n size=\"sm\"\n checked={checkValues.includes(option[valueField])}\n label={''}\n onChange={() => this.handleSelectChange(option)}\n />\n ) : null}\n <span\n className={cx('UserSelect-memberName')}\n onClick={() =>\n checkVisible\n ? this.handleSelectChange(option)\n : hasChildren && this.handleExpand(option)\n }\n >\n {userIcon ? (\n <span className={cx('UserSelect-userPic-box')}>\n {userIcon}\n </span>\n ) : null}\n\n <span className={cx('UserSelect-label')}>\n {option[labelField]}\n </span>\n </span>\n\n {!isSearch && hasChildren ? (\n <span\n className={cx(`UserSelect-more`)}\n onClick={() => this.handleExpand(option)}\n >\n <Icon icon=\"caret\" className=\"icon\" />\n </span>\n ) : null}\n </li>\n );\n })}\n </ul>\n </div>\n ) : (\n <div className={cx(`UserSelect-noRecord`)}>\n {__('placeholder.noOption')}~\n </div>\n );\n }\n\n renderselectList(options: Array<object> = []) {\n const {\n classnames: cx,\n labelField = 'label',\n valueField = 'value',\n translate: __\n } = this.props;\n const {isEdit} = this.state;\n\n return options.length ? (\n <div className={cx('UserSelect-selection-wrap')}>\n <ul\n className={cx(`UserSelect-selection`, `UserSelect-checkContent`)}\n ref={this.dragRef}\n >\n {options.map((option: Option, index: number) => {\n const userIcon = this.renderIcon(option, true);\n const options = this.state.options;\n const originOption = findTree(\n options,\n (item: Option) => item[valueField] === option[valueField]\n );\n return (\n <li key={index}>\n {isEdit ? (\n <span\n className={cx(`UserSelect-del`)}\n onClick={() => this.onDelete(option, true)}\n >\n <Icon icon=\"user-remove\" className=\"icon\" />\n </span>\n ) : null}\n\n <span className={cx(`UserSelect-memberName`)}>\n {userIcon ? (\n <span className={cx('UserSelect-userPic-box')}>\n {userIcon}\n </span>\n ) : null}\n\n <span className={cx('UserSelect-label')}>\n {originOption\n ? originOption[labelField]\n : option[labelField]}\n </span>\n </span>\n {isEdit ? (\n <a className={cx('UserSelect-dragBar')}>\n <Icon icon=\"drag-bar\" className={cx('icon')} />\n </a>\n ) : null}\n </li>\n );\n })}\n </ul>\n </div>\n ) : (\n <div className={cx(`UserSelect-noRecord`)}>\n {__('placeholder.noOption')}~\n </div>\n );\n }\n\n renderContent() {\n let {\n navTitle,\n showNav,\n searchable,\n searchPlaceholder,\n controlled,\n labelField = 'label',\n valueField = 'value',\n classnames: cx,\n translate: __\n } = this.props;\n\n const {breadList, options, isSearch, searchList, searchLoading} =\n this.state;\n let selection = controlled\n ? this.props.selection || []\n : this.state.selection;\n\n return (\n <div className={cx(`UserSelect-wrap`)}>\n {showNav ? (\n <div className={cx('UserSelect-navbar')}>\n <span className=\"left-arrow-box\" onClick={this.handleBack}>\n <Icon icon=\"left-arrow\" className=\"icon\" />\n </span>\n <div className={cx('UserSelect-navbar-title')}>{navTitle}</div>\n </div>\n ) : null}\n\n {/* 搜索 */}\n {searchable ? (\n <div className={cx('UserSelect-searchBox')}>\n <InputBox\n className={cx(`UserSelect-search`)}\n value={this.state.inputValue}\n onChange={this.handleSearch}\n placeholder={searchPlaceholder}\n clearable={false}\n >\n {this.state.isSearch ? (\n <a onClick={this.handleSeachCancel}>\n <Icon icon=\"close\" className=\"icon\" />\n </a>\n ) : (\n <Icon icon=\"search\" className=\"icon\" />\n )}\n </InputBox>\n </div>\n ) : null}\n\n {/* 面包屑 */}\n {breadList.length ? (\n <div className={cx('UserSelect-breadcrumb')}>\n {breadList\n .map<React.ReactNode>((item, index) => (\n <span\n className={cx('UserSelect-breadcrumb-item')}\n key={index}\n onClick={() => this.handleBreadChange(item, index)}\n >\n {item[labelField]}\n </span>\n ))\n .reduce((prev, curr, index) => [\n prev,\n <Icon\n icon=\"caret\"\n className={cx('UserSelect-breadcrumb-separator', 'icon')}\n key={`separator-${index}`}\n />,\n curr\n ])}\n </div>\n ) : null}\n\n {selection?.length ? (\n <div className={cx(`UserSelect-resultBox`)}>\n <ul className={cx(`UserSelect-selectList`)}>\n {selection.map((item: Option, index) => {\n const originOption = findTree(\n options,\n (op: Option) => op[valueField] === item[valueField]\n );\n return (\n <li key={index} className={cx('UserSelect-selectList-item')}>\n <span>\n {originOption\n ? originOption[labelField]\n : item[labelField]}\n </span>\n <span\n className={cx('UserSelect-selectList-item-closeBox')}\n onClick={() => this.onDelete(item)}\n >\n <Icon icon=\"close\" className=\"icon\" />\n </span>\n </li>\n );\n })}\n </ul>\n <span\n className={cx('UserSelect-selectSort-box')}\n onClick={() =>\n this.setState({\n isSelectOpened: true,\n tempSelection: selection.slice()\n })\n }\n >\n <Icon\n icon=\"menu\"\n className={cx('UserSelect-selectSort', 'icon')}\n />\n </span>\n </div>\n ) : null}\n\n {isSearch ? (\n searchLoading ? (\n <div className={cx(`UserSelect-searchLoadingBox`)}>\n <Spinner />\n </div>\n ) : (\n <div className={cx('UserSelect-searchResult')}>\n {this.renderList(searchList, -1, true)}\n </div>\n )\n ) : (\n <div className={cx(`UserSelect-contentBox`)}>\n <div\n className={cx(`UserSelect-scroll`)}\n style={{\n width: 100 * (breadList.length + 1) + 'vw',\n left: -breadList.length * 100 + 'vw'\n }}\n >\n {this.renderList(options)}\n\n {breadList.map((option: Option, index: number) => {\n const treeOption = findTree(\n options,\n optionValueCompare(option[valueField], valueField || 'value')\n ) as Option;\n const children = treeOption.children;\n const hasChildren = Array.isArray(children) && children;\n\n return hasChildren ? (\n this.renderList(children, option[valueField])\n ) : (\n <div className={cx(`UserSelect-spinnerBox`)} key={index}>\n <Spinner />\n </div>\n );\n })}\n </div>\n </div>\n )}\n </div>\n );\n }\n\n render() {\n let {\n classnames: cx,\n translate: __,\n placeholder = '请选择',\n showResultBox,\n controlled,\n onChange\n } = this.props;\n\n const {isOpened, tempSelection, isSelectOpened, isEdit} = this.state;\n let selection = controlled ? this.props.selection : this.state.selection;\n\n return (\n <div className={cx('UserSelect')}>\n {showResultBox ? (\n <ResultBox\n className={cx('UserSelect-input', isOpened ? 'is-active' : '')}\n allowInput={false}\n result={selection}\n onResultChange={value => this.handleSelectChange(value, true)}\n onResultClick={this.onOpen}\n placeholder={placeholder}\n useMobileUI\n />\n ) : null}\n\n {showResultBox ? (\n <PopUp\n isShow={isOpened}\n className={cx(`UserSelect-popup`)}\n onHide={this.onClose}\n showClose={false}\n >\n {this.renderContent()}\n </PopUp>\n ) : (\n this.renderContent()\n )}\n\n <PopUp\n isShow={isSelectOpened}\n className={cx(`UserSelect-selectPopup`)}\n onHide={() =>\n this.setState({\n isSelectOpened: false,\n isEdit: false\n })\n }\n showClose={false}\n >\n <div className={cx('UserSelect-selectBody')}>\n <div className={cx('UserSelect-navbar')}>\n <span\n className=\"left-arrow-box\"\n onClick={() =>\n this.setState({\n isSelectOpened: false,\n isEdit: false\n })\n }\n >\n <Icon icon=\"left-arrow\" className=\"icon\" />\n </span>\n <div className={cx('UserSelect-navbar-title')}>\n {__('UserSelect.resultSort')}\n </div>\n <span\n className={cx('UserSelect-navbar-btnEdit')}\n onClick={this.handleEdit}\n >\n {isEdit ? __('UserSelect.save') : __('UserSelect.edit')}\n </span>\n </div>\n\n <div className={cx('UserSelect-selectList-box')}>\n <div className={cx('UserSelect-select-head')}>\n <span className={cx('UserSelect-select-head-text')}>\n {__('UserSelect.selected')}\n </span>\n {isEdit ? (\n <span\n className={cx('UserSelect-select-head-btnClear')}\n onClick={() => this.setState({tempSelection: []})}\n >\n {__('UserSelect.clear')}\n </span>\n ) : null}\n </div>\n {this.renderselectList(tempSelection)}\n </div>\n </div>\n </PopUp>\n </div>\n );\n }\n}\n\nexport default themeable(localeable(UserSelect));\n"
12
+ ]
13
+ }
@@ -0,0 +1,320 @@
1
+ /**
2
+ * @file 移动端人员、部门、角色、岗位选择
3
+ * @author fex
4
+ */
5
+ /// <reference types="hoist-non-react-statics" />
6
+ import React from 'react';
7
+ import { ThemeProps } from '../theme';
8
+ import { LocaleProps } from '../locale';
9
+ import { Option } from '../renderers/Form/Options';
10
+ import Sortable from 'sortablejs';
11
+ import { UserSelectProps } from './UserSelect';
12
+ import { PlainObject } from '../types';
13
+ export interface UserSelectTop extends UserSelectProps {
14
+ title: string;
15
+ deferApi?: string;
16
+ searchApi?: string;
17
+ searchable?: boolean;
18
+ searchParam?: PlainObject;
19
+ searchTerm?: string;
20
+ }
21
+ export interface UserTabSelectProps extends ThemeProps, LocaleProps {
22
+ tabOptions?: Array<UserSelectTop>;
23
+ multiple?: boolean;
24
+ placeholder?: string;
25
+ valueField?: string;
26
+ labelField?: string;
27
+ selection?: Array<Option>;
28
+ data?: PlainObject;
29
+ onChange: (value: Array<Option> | Option) => void;
30
+ onSearch?: (term: string, cancelExecutor: Function, paramObj?: PlainObject) => Promise<any[]> | undefined;
31
+ deferLoad: (data?: Object, isRef?: boolean, param?: PlainObject) => Promise<Option[]>;
32
+ }
33
+ export interface UserTabSelectState {
34
+ isOpened: boolean;
35
+ isSearch: boolean;
36
+ isSelectOpened: boolean;
37
+ inputValue: string;
38
+ breadList: Array<any>;
39
+ options: Array<Option>;
40
+ tempSelection: Array<Option>;
41
+ selection: Array<Option>;
42
+ searchList: Array<Option>;
43
+ searchLoading: boolean;
44
+ isEdit: boolean;
45
+ activeKey: number;
46
+ }
47
+ export declare class UserTabSelect extends React.Component<UserTabSelectProps, UserTabSelectState> {
48
+ cancelSearch?: Function;
49
+ sortable?: Sortable;
50
+ unmounted: boolean;
51
+ constructor(props: UserTabSelectProps);
52
+ static defaultProps: {};
53
+ componentDidMount(): void;
54
+ componentDidUpdate(prevProps: UserTabSelectProps): void;
55
+ componentWillUnmount(): void;
56
+ onClose(): void;
57
+ onOpen(): void;
58
+ handleBack(): void;
59
+ handleSelectChange(option: Option | Array<Option>, isReplace?: boolean): boolean;
60
+ handleTabChange(key: number): void;
61
+ render(): JSX.Element;
62
+ }
63
+ declare const _default: {
64
+ new (props: Omit<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
65
+ locale?: string | undefined;
66
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
67
+ }, keyof ThemeProps> & import("../theme").ThemeOutterProps): {
68
+ ref: any;
69
+ childRef(ref: any): void;
70
+ getWrappedInstance(): any;
71
+ render(): JSX.Element;
72
+ context: any;
73
+ setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<Omit<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
74
+ locale?: string | undefined;
75
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
76
+ }, keyof ThemeProps> & import("../theme").ThemeOutterProps>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
77
+ forceUpdate(callback?: (() => void) | undefined): void;
78
+ readonly props: Readonly<Omit<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
79
+ locale?: string | undefined;
80
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
81
+ }, keyof ThemeProps> & import("../theme").ThemeOutterProps> & Readonly<{
82
+ children?: React.ReactNode;
83
+ }>;
84
+ state: Readonly<{}>;
85
+ refs: {
86
+ [key: string]: React.ReactInstance;
87
+ };
88
+ componentDidMount?(): void;
89
+ shouldComponentUpdate?(nextProps: Readonly<Omit<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
90
+ locale?: string | undefined;
91
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
92
+ }, keyof ThemeProps> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): boolean;
93
+ componentWillUnmount?(): void;
94
+ componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
95
+ getSnapshotBeforeUpdate?(prevProps: Readonly<Omit<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
96
+ locale?: string | undefined;
97
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
98
+ }, keyof ThemeProps> & import("../theme").ThemeOutterProps>, prevState: Readonly<{}>): any;
99
+ componentDidUpdate?(prevProps: Readonly<Omit<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
100
+ locale?: string | undefined;
101
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
102
+ }, keyof ThemeProps> & import("../theme").ThemeOutterProps>, prevState: Readonly<{}>, snapshot?: any): void;
103
+ componentWillMount?(): void;
104
+ UNSAFE_componentWillMount?(): void;
105
+ componentWillReceiveProps?(nextProps: Readonly<Omit<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
106
+ locale?: string | undefined;
107
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
108
+ }, keyof ThemeProps> & import("../theme").ThemeOutterProps>, nextContext: any): void;
109
+ UNSAFE_componentWillReceiveProps?(nextProps: Readonly<Omit<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
110
+ locale?: string | undefined;
111
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
112
+ }, keyof ThemeProps> & import("../theme").ThemeOutterProps>, nextContext: any): void;
113
+ componentWillUpdate?(nextProps: Readonly<Omit<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
114
+ locale?: string | undefined;
115
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
116
+ }, keyof ThemeProps> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): void;
117
+ UNSAFE_componentWillUpdate?(nextProps: Readonly<Omit<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
118
+ locale?: string | undefined;
119
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
120
+ }, keyof ThemeProps> & import("../theme").ThemeOutterProps>, nextState: Readonly<{}>, nextContext: any): void;
121
+ };
122
+ displayName: string;
123
+ contextType: React.Context<string>;
124
+ ComposedComponent: React.ComponentType<{
125
+ new (props: Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
126
+ locale?: string | undefined;
127
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
128
+ }): {
129
+ ref: any;
130
+ childRef(ref: any): void;
131
+ getWrappedInstance(): any;
132
+ render(): JSX.Element;
133
+ context: any;
134
+ setState<K_1 extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
135
+ locale?: string | undefined;
136
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
137
+ }>) => {} | Pick<{}, K_1> | null) | Pick<{}, K_1> | null, callback?: (() => void) | undefined): void;
138
+ forceUpdate(callback?: (() => void) | undefined): void;
139
+ readonly props: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
140
+ locale?: string | undefined;
141
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
142
+ }> & Readonly<{
143
+ children?: React.ReactNode;
144
+ }>;
145
+ state: Readonly<{}>;
146
+ refs: {
147
+ [key: string]: React.ReactInstance;
148
+ };
149
+ componentDidMount?(): void;
150
+ shouldComponentUpdate?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
151
+ locale?: string | undefined;
152
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
153
+ }>, nextState: Readonly<{}>, nextContext: any): boolean;
154
+ componentWillUnmount?(): void;
155
+ componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
156
+ getSnapshotBeforeUpdate?(prevProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
157
+ locale?: string | undefined;
158
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
159
+ }>, prevState: Readonly<{}>): any;
160
+ componentDidUpdate?(prevProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
161
+ locale?: string | undefined;
162
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
163
+ }>, prevState: Readonly<{}>, snapshot?: any): void;
164
+ componentWillMount?(): void;
165
+ UNSAFE_componentWillMount?(): void;
166
+ componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
167
+ locale?: string | undefined;
168
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
169
+ }>, nextContext: any): void;
170
+ UNSAFE_componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
171
+ locale?: string | undefined;
172
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
173
+ }>, nextContext: any): void;
174
+ componentWillUpdate?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
175
+ locale?: string | undefined;
176
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
177
+ }>, nextState: Readonly<{}>, nextContext: any): void;
178
+ UNSAFE_componentWillUpdate?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
179
+ locale?: string | undefined;
180
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
181
+ }>, nextState: Readonly<{}>, nextContext: any): void;
182
+ };
183
+ displayName: string;
184
+ contextType: React.Context<string>;
185
+ ComposedComponent: React.ComponentType<typeof UserTabSelect>;
186
+ } & import("hoist-non-react-statics").NonReactStatics<typeof UserTabSelect, {}> & {
187
+ ComposedComponent: typeof UserTabSelect;
188
+ }>;
189
+ } & import("hoist-non-react-statics").NonReactStatics<{
190
+ new (props: Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
191
+ locale?: string | undefined;
192
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
193
+ }): {
194
+ ref: any;
195
+ childRef(ref: any): void;
196
+ getWrappedInstance(): any;
197
+ render(): JSX.Element;
198
+ context: any;
199
+ setState<K_1 extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
200
+ locale?: string | undefined;
201
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
202
+ }>) => {} | Pick<{}, K_1> | null) | Pick<{}, K_1> | null, callback?: (() => void) | undefined): void;
203
+ forceUpdate(callback?: (() => void) | undefined): void;
204
+ readonly props: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
205
+ locale?: string | undefined;
206
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
207
+ }> & Readonly<{
208
+ children?: React.ReactNode;
209
+ }>;
210
+ state: Readonly<{}>;
211
+ refs: {
212
+ [key: string]: React.ReactInstance;
213
+ };
214
+ componentDidMount?(): void;
215
+ shouldComponentUpdate?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
216
+ locale?: string | undefined;
217
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
218
+ }>, nextState: Readonly<{}>, nextContext: any): boolean;
219
+ componentWillUnmount?(): void;
220
+ componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
221
+ getSnapshotBeforeUpdate?(prevProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
222
+ locale?: string | undefined;
223
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
224
+ }>, prevState: Readonly<{}>): any;
225
+ componentDidUpdate?(prevProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
226
+ locale?: string | undefined;
227
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
228
+ }>, prevState: Readonly<{}>, snapshot?: any): void;
229
+ componentWillMount?(): void;
230
+ UNSAFE_componentWillMount?(): void;
231
+ componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
232
+ locale?: string | undefined;
233
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
234
+ }>, nextContext: any): void;
235
+ UNSAFE_componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
236
+ locale?: string | undefined;
237
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
238
+ }>, nextContext: any): void;
239
+ componentWillUpdate?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
240
+ locale?: string | undefined;
241
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
242
+ }>, nextState: Readonly<{}>, nextContext: any): void;
243
+ UNSAFE_componentWillUpdate?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
244
+ locale?: string | undefined;
245
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
246
+ }>, nextState: Readonly<{}>, nextContext: any): void;
247
+ };
248
+ displayName: string;
249
+ contextType: React.Context<string>;
250
+ ComposedComponent: React.ComponentType<typeof UserTabSelect>;
251
+ } & import("hoist-non-react-statics").NonReactStatics<typeof UserTabSelect, {}> & {
252
+ ComposedComponent: typeof UserTabSelect;
253
+ }, {}> & {
254
+ ComposedComponent: {
255
+ new (props: Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
256
+ locale?: string | undefined;
257
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
258
+ }): {
259
+ ref: any;
260
+ childRef(ref: any): void;
261
+ getWrappedInstance(): any;
262
+ render(): JSX.Element;
263
+ context: any;
264
+ setState<K_1 extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
265
+ locale?: string | undefined;
266
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
267
+ }>) => {} | Pick<{}, K_1> | null) | Pick<{}, K_1> | null, callback?: (() => void) | undefined): void;
268
+ forceUpdate(callback?: (() => void) | undefined): void;
269
+ readonly props: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
270
+ locale?: string | undefined;
271
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
272
+ }> & Readonly<{
273
+ children?: React.ReactNode;
274
+ }>;
275
+ state: Readonly<{}>;
276
+ refs: {
277
+ [key: string]: React.ReactInstance;
278
+ };
279
+ componentDidMount?(): void;
280
+ shouldComponentUpdate?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
281
+ locale?: string | undefined;
282
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
283
+ }>, nextState: Readonly<{}>, nextContext: any): boolean;
284
+ componentWillUnmount?(): void;
285
+ componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
286
+ getSnapshotBeforeUpdate?(prevProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
287
+ locale?: string | undefined;
288
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
289
+ }>, prevState: Readonly<{}>): any;
290
+ componentDidUpdate?(prevProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
291
+ locale?: string | undefined;
292
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
293
+ }>, prevState: Readonly<{}>, snapshot?: any): void;
294
+ componentWillMount?(): void;
295
+ UNSAFE_componentWillMount?(): void;
296
+ componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
297
+ locale?: string | undefined;
298
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
299
+ }>, nextContext: any): void;
300
+ UNSAFE_componentWillReceiveProps?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
301
+ locale?: string | undefined;
302
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
303
+ }>, nextContext: any): void;
304
+ componentWillUpdate?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
305
+ locale?: string | undefined;
306
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
307
+ }>, nextState: Readonly<{}>, nextContext: any): void;
308
+ UNSAFE_componentWillUpdate?(nextProps: Readonly<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, "classPrefix" | "classnames" | "data" | "className" | "theme" | "multiple" | "valueField" | "labelField" | "placeholder" | "onChange" | "deferLoad" | "selection" | "onSearch" | "tabOptions"> & Partial<Pick<Omit<UserTabSelectProps, keyof LocaleProps>, never>> & Partial<Pick<{}, never>> & {
309
+ locale?: string | undefined;
310
+ translate?: ((str: string, ...args: any[]) => string) | undefined;
311
+ }>, nextState: Readonly<{}>, nextContext: any): void;
312
+ };
313
+ displayName: string;
314
+ contextType: React.Context<string>;
315
+ ComposedComponent: React.ComponentType<typeof UserTabSelect>;
316
+ } & import("hoist-non-react-statics").NonReactStatics<typeof UserTabSelect, {}> & {
317
+ ComposedComponent: typeof UserTabSelect;
318
+ };
319
+ };
320
+ export default _default;
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+ /**
3
+ * @file 移动端人员、部门、角色、岗位选择
4
+ * @author fex
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.UserTabSelect = void 0;
8
+ var tslib_1 = require("tslib");
9
+ var react_1 = (0, tslib_1.__importDefault)(require("react"));
10
+ var theme_1 = require("../theme");
11
+ var locale_1 = require("../locale");
12
+ var components_1 = require("../components");
13
+ var UserSelect_1 = (0, tslib_1.__importDefault)(require("./UserSelect"));
14
+ var PopUp_1 = (0, tslib_1.__importDefault)(require("../components/PopUp"));
15
+ var icons_1 = require("../components/icons");
16
+ var helper_1 = require("../utils/helper");
17
+ var Tabs_1 = tslib_1.__importStar(require("./Tabs"));
18
+ var tpl_builtin_1 = require("../utils/tpl-builtin");
19
+ var UserTabSelect = /** @class */ (function (_super) {
20
+ (0, tslib_1.__extends)(UserTabSelect, _super);
21
+ function UserTabSelect(props) {
22
+ var _this = _super.call(this, props) || this;
23
+ _this.unmounted = false;
24
+ _this.state = {
25
+ isOpened: false,
26
+ isSelectOpened: false,
27
+ inputValue: '',
28
+ options: [],
29
+ breadList: [],
30
+ searchList: [],
31
+ tempSelection: [],
32
+ selection: props.selection ? props.selection : [],
33
+ isSearch: false,
34
+ searchLoading: false,
35
+ isEdit: false,
36
+ activeKey: 0
37
+ };
38
+ return _this;
39
+ }
40
+ UserTabSelect.prototype.componentDidMount = function () { };
41
+ UserTabSelect.prototype.componentDidUpdate = function (prevProps) { };
42
+ UserTabSelect.prototype.componentWillUnmount = function () {
43
+ this.unmounted = true;
44
+ };
45
+ UserTabSelect.prototype.onClose = function () {
46
+ this.setState({
47
+ isOpened: false,
48
+ isSearch: false,
49
+ inputValue: '',
50
+ searchList: [],
51
+ searchLoading: false,
52
+ activeKey: 0
53
+ });
54
+ };
55
+ UserTabSelect.prototype.onOpen = function () {
56
+ var selection = this.state.selection;
57
+ this.setState({
58
+ isOpened: true,
59
+ tempSelection: selection.slice()
60
+ });
61
+ };
62
+ UserTabSelect.prototype.handleBack = function () {
63
+ this.onClose();
64
+ var onChange = this.props.onChange;
65
+ onChange(this.state.selection);
66
+ };
67
+ UserTabSelect.prototype.handleSelectChange = function (option, isReplace) {
68
+ var _a = this.props, multiple = _a.multiple, _b = _a.valueField, valueField = _b === void 0 ? 'value' : _b;
69
+ var selection = this.state.selection.slice();
70
+ var selectionVals = selection.map(function (option) { return option[valueField]; });
71
+ if (isReplace && Array.isArray(option)) {
72
+ selection = option.slice();
73
+ }
74
+ else if (!Array.isArray(option)) {
75
+ var pos = selectionVals.indexOf(option[valueField]);
76
+ if (pos !== -1) {
77
+ selection.splice(selection.indexOf(option), 1);
78
+ }
79
+ else {
80
+ if (multiple) {
81
+ selection.push(option);
82
+ }
83
+ else {
84
+ selection = [option];
85
+ }
86
+ }
87
+ }
88
+ this.setState({
89
+ selection: selection
90
+ });
91
+ return false;
92
+ };
93
+ UserTabSelect.prototype.handleTabChange = function (key) {
94
+ this.setState({
95
+ activeKey: key
96
+ });
97
+ };
98
+ UserTabSelect.prototype.render = function () {
99
+ var _this = this;
100
+ var _a = this.props, cx = _a.classnames, __ = _a.translate, onChange = _a.onChange, _b = _a.placeholder, placeholder = _b === void 0 ? '请选择' : _b, tabOptions = _a.tabOptions, onSearch = _a.onSearch, deferLoad = _a.deferLoad, data = _a.data;
101
+ var _c = this.state, activeKey = _c.activeKey, isOpened = _c.isOpened, selection = _c.selection;
102
+ return (react_1.default.createElement("div", { className: cx('UserTabSelect') },
103
+ react_1.default.createElement(components_1.ResultBox, { className: cx('UserTabSelect-input', isOpened ? 'is-active' : ''), allowInput: false, result: selection, onResultChange: function (value) { return _this.handleSelectChange(value, true); }, onResultClick: this.onOpen, placeholder: placeholder, useMobileUI: true }),
104
+ react_1.default.createElement(PopUp_1.default, { isShow: isOpened, className: cx("UserTabSelect-popup"), onHide: this.onClose, showClose: false },
105
+ react_1.default.createElement("div", { className: cx('UserTabSelect-wrap') },
106
+ react_1.default.createElement("div", { className: cx('UserSelect-navbar') },
107
+ react_1.default.createElement("span", { className: "left-arrow-box", onClick: this.handleBack },
108
+ react_1.default.createElement(icons_1.Icon, { icon: "left-arrow", className: "icon" })),
109
+ react_1.default.createElement("div", { className: cx('UserSelect-navbar-title') }, "\u4EBA\u5458\u9009\u62E9")),
110
+ react_1.default.createElement(Tabs_1.default, { mode: "tiled", className: cx('UserTabSelect-tabs'), onSelect: this.handleTabChange, activeKey: activeKey }, tabOptions === null || tabOptions === void 0 ? void 0 : tabOptions.map(function (item, index) {
111
+ return (react_1.default.createElement(Tabs_1.Tab, (0, tslib_1.__assign)({}, _this.props, { eventKey: index, key: index, title: item.title, className: "TabsTransfer-tab" }),
112
+ react_1.default.createElement(UserSelect_1.default, (0, tslib_1.__assign)({ selection: selection, showResultBox: false }, item, { options: typeof item.options === 'string' && data
113
+ ? (0, tpl_builtin_1.resolveVariableAndFilter)(item.options, data, '| raw')
114
+ : item.options, multiple: true, controlled: true, onChange: _this.handleSelectChange, onSearch: function (input, cancelExecutor) {
115
+ return item.searchable && onSearch
116
+ ? onSearch(input, cancelExecutor, {
117
+ searchApi: item.searchApi,
118
+ searchParam: item.searchParam,
119
+ searchTerm: item.searchTerm
120
+ })
121
+ : undefined;
122
+ }, deferLoad: function (data, isRef, param) {
123
+ return deferLoad(data, isRef, (0, tslib_1.__assign)({ deferApi: item.deferApi }, (param || {})));
124
+ } }))));
125
+ }))))));
126
+ };
127
+ var _a, _b;
128
+ UserTabSelect.defaultProps = {};
129
+ (0, tslib_1.__decorate)([
130
+ helper_1.autobind,
131
+ (0, tslib_1.__metadata)("design:type", Function),
132
+ (0, tslib_1.__metadata)("design:paramtypes", []),
133
+ (0, tslib_1.__metadata)("design:returntype", void 0)
134
+ ], UserTabSelect.prototype, "onClose", null);
135
+ (0, tslib_1.__decorate)([
136
+ helper_1.autobind,
137
+ (0, tslib_1.__metadata)("design:type", Function),
138
+ (0, tslib_1.__metadata)("design:paramtypes", []),
139
+ (0, tslib_1.__metadata)("design:returntype", void 0)
140
+ ], UserTabSelect.prototype, "onOpen", null);
141
+ (0, tslib_1.__decorate)([
142
+ helper_1.autobind,
143
+ (0, tslib_1.__metadata)("design:type", Function),
144
+ (0, tslib_1.__metadata)("design:paramtypes", []),
145
+ (0, tslib_1.__metadata)("design:returntype", void 0)
146
+ ], UserTabSelect.prototype, "handleBack", null);
147
+ (0, tslib_1.__decorate)([
148
+ helper_1.autobind,
149
+ (0, tslib_1.__metadata)("design:type", Function),
150
+ (0, tslib_1.__metadata)("design:paramtypes", [Object, Boolean]),
151
+ (0, tslib_1.__metadata)("design:returntype", void 0)
152
+ ], UserTabSelect.prototype, "handleSelectChange", null);
153
+ (0, tslib_1.__decorate)([
154
+ helper_1.autobind,
155
+ (0, tslib_1.__metadata)("design:type", Function),
156
+ (0, tslib_1.__metadata)("design:paramtypes", [Number]),
157
+ (0, tslib_1.__metadata)("design:returntype", void 0)
158
+ ], UserTabSelect.prototype, "handleTabChange", null);
159
+ return UserTabSelect;
160
+ }(react_1.default.Component));
161
+ exports.UserTabSelect = UserTabSelect;
162
+ exports.default = (0, theme_1.themeable)((0, locale_1.localeable)(UserTabSelect));
163
+ //# sourceMappingURL=./components/UserTabSelect.js.map