@flatbiz/antd 5.0.5 → 5.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/dist/{drag-BOT05TxF.js → drag-CBosXqSQ.js} +2 -2
  2. package/dist/{drag-BOT05TxF.js.map → drag-CBosXqSQ.js.map} +1 -1
  3. package/dist/drag-editable-card/index.d.ts +2 -0
  4. package/dist/drag-editable-card/index.js +3 -3
  5. package/dist/drag-editable-table-pro/index.d.ts +2 -0
  6. package/dist/drag-editable-table-pro/index.js +2 -2
  7. package/dist/easy-form/index.js +1 -1
  8. package/dist/easy-table/index.js +1 -1
  9. package/dist/editable-card/index.d.ts +2 -0
  10. package/dist/editable-card/index.js +2 -2
  11. package/dist/{editable-card-Of7zVIb7.js → editable-card-DzY1frTO.js} +2 -2
  12. package/dist/{editable-card-Of7zVIb7.js.map → editable-card-DzY1frTO.js.map} +1 -1
  13. package/dist/{editable-card-BnQPaIKV.js → editable-card-Od2SiaIS.js} +3 -2
  14. package/dist/editable-card-Od2SiaIS.js.map +1 -0
  15. package/dist/editable-table-pro/index.d.ts +2 -0
  16. package/dist/editable-table-pro/index.js +1 -1
  17. package/dist/{editable-table-pro-B40tH9it.js → editable-table-pro-D8Vt535W.js} +2 -1
  18. package/dist/editable-table-pro-D8Vt535W.js.map +1 -0
  19. package/dist/{form-N0iC7D0E.js → form-DlOnlnEr.js} +5 -4
  20. package/dist/form-DlOnlnEr.js.map +1 -0
  21. package/dist/index.d.ts +211 -125
  22. package/dist/index.js +9 -5
  23. package/dist/index.js.map +1 -1
  24. package/dist/select-modal-Dt4YHH8a.js +370 -0
  25. package/dist/select-modal-Dt4YHH8a.js.map +1 -0
  26. package/dist/selector-HbymPXNd.js +89 -0
  27. package/dist/selector-HbymPXNd.js.map +1 -0
  28. package/dist/tree-modal/index.css +0 -0
  29. package/dist/tree-modal/index.d.ts +415 -0
  30. package/dist/tree-modal/index.js +73 -0
  31. package/dist/tree-modal/index.js.map +1 -0
  32. package/dist/tree-modal-selector/index.css +0 -0
  33. package/dist/tree-modal-selector/index.d.ts +426 -0
  34. package/dist/tree-modal-selector/index.js +75 -0
  35. package/dist/tree-modal-selector/index.js.map +1 -0
  36. package/dist/tree-wrapper/index.d.ts +15 -1
  37. package/dist/tree-wrapper/index.js +188 -77
  38. package/dist/tree-wrapper/index.js.map +1 -1
  39. package/package.json +11 -3
  40. package/dist/editable-card-BnQPaIKV.js.map +0 -1
  41. package/dist/editable-table-pro-B40tH9it.js.map +0 -1
  42. package/dist/form-N0iC7D0E.js.map +0 -1
@@ -0,0 +1,370 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+
3
+ import { b as _objectSpread2, a as _slicedToArray } from './_rollupPluginBabelHelpers-BYm17lo8.js';
4
+ import { isObject } from '@dimjs/lang/is-object';
5
+ import { hooks } from '@wove/react/hooks';
6
+ import { Fragment, useState, useRef, useMemo } from 'react';
7
+ import { useSize } from 'ahooks';
8
+ import { Modal } from 'antd';
9
+ import { toArray, treeToTiledMap, isUndefinedOrNull } from '@flatbiz/utils';
10
+ import { fbaHooks } from './fba-hooks/index.js';
11
+ import { F as FlexLayout } from './flex-layout-BaDncU_Z.js';
12
+ import _CloseOutlined from '@ant-design/icons/es/icons/CloseOutlined.js';
13
+ import { C as CssNodeHover } from './css-node-hover-CsHQgf77.js';
14
+ import { I as IconWrapper } from './icon-wrapper-CR3akisG.js';
15
+ import { T as TextOverflow } from './text-overflow-Bk9MC6Cg.js';
16
+ import { jsx, jsxs } from 'react/jsx-runtime';
17
+ import { TreeWrapper } from './tree-wrapper/index.js';
18
+
19
+ var SelectItemList = function SelectItemList(props) {
20
+ var chenkedIdList = props.chenkedIdList;
21
+ return /*#__PURE__*/jsx(Fragment, {
22
+ children: chenkedIdList === null || chenkedIdList === void 0 ? void 0 : chenkedIdList.map(function (item) {
23
+ var value = item.value;
24
+ var label = item.label || value;
25
+ return /*#__PURE__*/jsx(CssNodeHover, {
26
+ style: {
27
+ paddingLeft: 5,
28
+ paddingRight: 0
29
+ },
30
+ children: /*#__PURE__*/jsxs(FlexLayout, {
31
+ fullIndex: 1,
32
+ direction: "horizontal",
33
+ style: {
34
+ alignItems: 'center',
35
+ fontSize: 14,
36
+ marginBottom: 0,
37
+ color: '#505050'
38
+ },
39
+ children: [/*#__PURE__*/jsx(TextOverflow, {
40
+ text: label
41
+ }), /*#__PURE__*/jsx("div", {
42
+ style: {
43
+ position: 'relative',
44
+ zIndex: 9,
45
+ color: '#a1a1a1'
46
+ },
47
+ children: /*#__PURE__*/jsx(IconWrapper, {
48
+ text: /*#__PURE__*/jsx(_CloseOutlined, {}),
49
+ onClick: props.onDeleteItem.bind(null, value),
50
+ size: "small",
51
+ style: {
52
+ paddingRight: 5,
53
+ margin: '2px'
54
+ }
55
+ })
56
+ })]
57
+ })
58
+ }, value);
59
+ })
60
+ });
61
+ };
62
+
63
+ var SelectContent = function SelectContent(props) {
64
+ var _props$treeProps, _props$value;
65
+ var modelKey = hooks.useId(undefined, 'tree-select-modal');
66
+ return /*#__PURE__*/jsx(TreeWrapper, _objectSpread2(_objectSpread2({
67
+ initRootExpand: true,
68
+ showSearch: true,
69
+ searchPlaceholder: "\u641C\u7D22",
70
+ checkable: true,
71
+ checkableType: "2"
72
+ }, props.treeProps), {}, {
73
+ showIcon: (_props$treeProps = props.treeProps) !== null && _props$treeProps !== void 0 && _props$treeProps.icon ? true : false,
74
+ value: (_props$value = props.value) === null || _props$value === void 0 ? void 0 : _props$value.map(function (item) {
75
+ return item.value;
76
+ }),
77
+ modelKey: modelKey,
78
+ fieldNames: props.fieldNames,
79
+ labelInValue: true,
80
+ serviceConfig: props.serviceConfig,
81
+ onChange: function onChange(values) {
82
+ var _props$onChange;
83
+ (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, toArray(values));
84
+ }
85
+ }));
86
+ };
87
+
88
+ var HorizontalLayout = function HorizontalLayout(props) {
89
+ var _props$fieldNames, _props$fieldNames2;
90
+ var chenkedIdList = props.value || [];
91
+ var valueKey = ((_props$fieldNames = props.fieldNames) === null || _props$fieldNames === void 0 ? void 0 : _props$fieldNames.value) || 'value';
92
+ var childrenKey = ((_props$fieldNames2 = props.fieldNames) === null || _props$fieldNames2 === void 0 ? void 0 : _props$fieldNames2.children) || 'children';
93
+ var _props$textConfig = props.textConfig,
94
+ selectQuantityPrompt = _props$textConfig.selectQuantityPrompt,
95
+ placeholder = _props$textConfig.placeholder;
96
+ return /*#__PURE__*/jsxs(FlexLayout, {
97
+ fullIndex: 0,
98
+ direction: "horizontal",
99
+ gap: 10,
100
+ style: {
101
+ height: '100%',
102
+ overflow: 'hidden'
103
+ },
104
+ children: [/*#__PURE__*/jsx("div", {
105
+ style: {
106
+ backgroundColor: '#f4f4f4',
107
+ padding: 10,
108
+ borderRadius: 5
109
+ },
110
+ children: /*#__PURE__*/jsx(SelectContent, {
111
+ treeProps: props.treeProps,
112
+ value: chenkedIdList,
113
+ onChange: props.onChange,
114
+ fieldNames: props.fieldNames,
115
+ serviceConfig: {
116
+ onRequest: props.onRequest,
117
+ onRequestResultAdapter: function onRequestResultAdapter(respData) {
118
+ var _props$onChangeDataSo;
119
+ var listMap = treeToTiledMap(respData, {
120
+ value: valueKey,
121
+ children: childrenKey
122
+ });
123
+ props.onChangeDataSourceMap(listMap);
124
+ (_props$onChangeDataSo = props.onChangeDataSource) === null || _props$onChangeDataSo === void 0 || _props$onChangeDataSo.call(props, respData, listMap);
125
+ return respData;
126
+ }
127
+ }
128
+ })
129
+ }), /*#__PURE__*/jsxs("div", {
130
+ style: {
131
+ width: '40%',
132
+ overflow: 'hidden',
133
+ height: '100%',
134
+ display: 'flex',
135
+ flexDirection: 'column',
136
+ flexShrink: 0
137
+ },
138
+ children: [/*#__PURE__*/jsx("div", {
139
+ style: {
140
+ fontSize: 15,
141
+ fontWeight: '500',
142
+ marginBottom: 10
143
+ },
144
+ children: chenkedIdList.length > 0 ? /*#__PURE__*/jsx(Fragment, {
145
+ children: selectQuantityPrompt ? selectQuantityPrompt.replace('{total}', "".concat((chenkedIdList === null || chenkedIdList === void 0 ? void 0 : chenkedIdList.length) || '')) : "\u5DF2\u9009\u62E9".concat(chenkedIdList === null || chenkedIdList === void 0 ? void 0 : chenkedIdList.length)
146
+ }) : placeholder || '请选择'
147
+ }), /*#__PURE__*/jsx("div", {
148
+ style: {
149
+ overflow: 'auto',
150
+ flex: 1,
151
+ paddingRight: 15
152
+ },
153
+ children: /*#__PURE__*/jsx(SelectItemList, {
154
+ chenkedIdList: chenkedIdList,
155
+ fieldNames: props.fieldNames,
156
+ onDeleteItem: props.onDeleteItem
157
+ })
158
+ })]
159
+ })]
160
+ });
161
+ };
162
+
163
+ var VerticalLayout = function VerticalLayout(props) {
164
+ var _props$fieldNames, _props$fieldNames2;
165
+ var _props$textConfig = props.textConfig,
166
+ selectQuantityPrompt = _props$textConfig.selectQuantityPrompt,
167
+ placeholder = _props$textConfig.placeholder;
168
+ var valueKey = ((_props$fieldNames = props.fieldNames) === null || _props$fieldNames === void 0 ? void 0 : _props$fieldNames.value) || 'value';
169
+ var childrenKey = ((_props$fieldNames2 = props.fieldNames) === null || _props$fieldNames2 === void 0 ? void 0 : _props$fieldNames2.children) || 'children';
170
+ var chenkedIdList = props.value || [];
171
+ return /*#__PURE__*/jsxs("div", {
172
+ style: {
173
+ height: '100%',
174
+ overflow: 'auto'
175
+ },
176
+ children: [/*#__PURE__*/jsx("div", {
177
+ style: {
178
+ backgroundColor: '#f4f4f4',
179
+ padding: 10,
180
+ borderRadius: 5
181
+ },
182
+ children: /*#__PURE__*/jsx(SelectContent, {
183
+ treeProps: props.treeProps,
184
+ value: chenkedIdList,
185
+ onChange: props.onChange,
186
+ fieldNames: props.fieldNames,
187
+ serviceConfig: {
188
+ onRequest: props.onRequest,
189
+ onRequestResultAdapter: function onRequestResultAdapter(respData) {
190
+ var _props$onChangeDataSo;
191
+ var listMap = treeToTiledMap(respData, {
192
+ value: valueKey,
193
+ children: childrenKey
194
+ });
195
+ props.onChangeDataSourceMap(listMap);
196
+ (_props$onChangeDataSo = props.onChangeDataSource) === null || _props$onChangeDataSo === void 0 || _props$onChangeDataSo.call(props, respData, listMap);
197
+ return respData;
198
+ }
199
+ }
200
+ })
201
+ }), /*#__PURE__*/jsxs("div", {
202
+ style: {
203
+ marginTop: 20
204
+ },
205
+ children: [/*#__PURE__*/jsx("div", {
206
+ style: {
207
+ fontSize: 15,
208
+ fontWeight: '500',
209
+ marginBottom: 10
210
+ },
211
+ children: chenkedIdList.length > 0 ? /*#__PURE__*/jsx(Fragment, {
212
+ children: selectQuantityPrompt ? selectQuantityPrompt.replace('{total}', "".concat((chenkedIdList === null || chenkedIdList === void 0 ? void 0 : chenkedIdList.length) || '')) : "\u5DF2\u9009\u62E9".concat(chenkedIdList === null || chenkedIdList === void 0 ? void 0 : chenkedIdList.length)
213
+ }) : placeholder
214
+ }), /*#__PURE__*/jsx(SelectItemList, {
215
+ chenkedIdList: chenkedIdList,
216
+ fieldNames: props.fieldNames,
217
+ onDeleteItem: props.onDeleteItem
218
+ })]
219
+ })]
220
+ });
221
+ };
222
+
223
+ var TreeModal = function TreeModal(props) {
224
+ var _props$fieldNames;
225
+ var _props$size = props.size,
226
+ size = _props$size === void 0 ? 'large' : _props$size,
227
+ isMultiple = props.isMultiple;
228
+ var _useState = useState(false),
229
+ _useState2 = _slicedToArray(_useState, 2),
230
+ isOpen = _useState2[0],
231
+ setIsOpen = _useState2[1];
232
+ var _useState3 = useState(),
233
+ _useState4 = _slicedToArray(_useState3, 2),
234
+ dataSourceMap = _useState4[0],
235
+ setDataSourceMap = _useState4[1];
236
+ var labelKey = ((_props$fieldNames = props.fieldNames) === null || _props$fieldNames === void 0 ? void 0 : _props$fieldNames.label) || 'label';
237
+ var htmlSize = useSize(document.querySelector('html'));
238
+ var screenType = fbaHooks.useResponsivePoint() || '';
239
+ var direction = screenType === 'xs' ? 'vertical' : 'horizontal';
240
+ var isMultipleFt = isUndefinedOrNull(isMultiple) ? true : isMultiple;
241
+ var handleOnClick = hooks.useCallbackRef(function () {
242
+ setIsOpen(true);
243
+ });
244
+ var Action = props.children.type;
245
+ var _useState5 = useState(),
246
+ _useState6 = _slicedToArray(_useState5, 2),
247
+ values = _useState6[0],
248
+ setValues = _useState6[1];
249
+ var originalValuesRef = useRef([]);
250
+ var onDeleteItem = function onDeleteItem(value) {
251
+ var targetList = values === null || values === void 0 ? void 0 : values.filter(function (item) {
252
+ return item.value !== value;
253
+ });
254
+ setValues(targetList);
255
+ };
256
+ fbaHooks.useEffectCustom(function () {
257
+ var values = toArray(props.value).map(function (item) {
258
+ if (isObject(item)) return item;
259
+ return {
260
+ value: item,
261
+ label: dataSourceMap === null || dataSourceMap === void 0 ? void 0 : dataSourceMap[item][labelKey]
262
+ };
263
+ });
264
+ if (dataSourceMap) {
265
+ var _props$onSelectChange;
266
+ (_props$onSelectChange = props.onSelectChange) === null || _props$onSelectChange === void 0 || _props$onSelectChange.call(props, values || []);
267
+ }
268
+ originalValuesRef.current = values || [];
269
+ setValues(values);
270
+ }, [props.value, dataSourceMap, labelKey]);
271
+ var customSize = useMemo(function () {
272
+ if (!(htmlSize !== null && htmlSize !== void 0 && htmlSize.height) || !screenType) return undefined;
273
+ var isXsSm = ['xs', 'sm'].includes(screenType);
274
+ var sizeCalculate = {};
275
+ if (size == 'large') {
276
+ sizeCalculate = {
277
+ height: (htmlSize === null || htmlSize === void 0 ? void 0 : htmlSize.height) * 0.65,
278
+ width: 800
279
+ };
280
+ } else if (size == 'small') {
281
+ sizeCalculate = {
282
+ height: (htmlSize === null || htmlSize === void 0 ? void 0 : htmlSize.height) * 0.45,
283
+ width: 450
284
+ };
285
+ } else if (size == 'middle') {
286
+ sizeCalculate = {
287
+ height: (htmlSize === null || htmlSize === void 0 ? void 0 : htmlSize.height) * 0.55,
288
+ width: 600
289
+ };
290
+ }
291
+ return {
292
+ height: props.modalBodyHeight || sizeCalculate.height,
293
+ width: isXsSm ? '90%' : props.modalWidth || sizeCalculate.width
294
+ };
295
+ }, [htmlSize === null || htmlSize === void 0 ? void 0 : htmlSize.height, screenType, size, props.modalBodyHeight, props.modalWidth]);
296
+ var treePropsFt = _objectSpread2(_objectSpread2({}, props.treeProps), {}, {
297
+ checkable: isMultipleFt ? true : false
298
+ });
299
+ var onSubmit = function onSubmit() {
300
+ var _props$onSelectChange2, _props$onChange;
301
+ (_props$onSelectChange2 = props.onSelectChange) === null || _props$onSelectChange2 === void 0 || _props$onSelectChange2.call(props, values);
302
+ (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, values);
303
+ setIsOpen(false);
304
+ };
305
+ var onChange = function onChange(values) {
306
+ setValues(values);
307
+ };
308
+ var onCancel = function onCancel() {
309
+ setIsOpen(false);
310
+ setValues(originalValuesRef.current);
311
+ };
312
+ return /*#__PURE__*/jsxs(Fragment, {
313
+ children: [/*#__PURE__*/jsx(Action, _objectSpread2(_objectSpread2({}, props.children.props), {}, {
314
+ onClick: handleOnClick
315
+ })), /*#__PURE__*/jsx(Modal, {
316
+ className: props.modalClassName,
317
+ title: props.textConfig.title || '选择',
318
+ open: isOpen,
319
+ onCancel: onCancel,
320
+ forceRender: props.forceRender,
321
+ centered: true,
322
+ width: customSize === null || customSize === void 0 ? void 0 : customSize.width,
323
+ onOk: onSubmit,
324
+ styles: direction === 'horizontal' ? {
325
+ body: {
326
+ height: customSize === null || customSize === void 0 ? void 0 : customSize.height,
327
+ maxHeight: 'calc(100vh - 200px)',
328
+ padding: '0px 0 0 20px'
329
+ },
330
+ content: {
331
+ padding: 0
332
+ },
333
+ header: {
334
+ padding: '20px 24px 0 20px'
335
+ },
336
+ footer: {
337
+ padding: '0 24px 20px 24px'
338
+ }
339
+ } : {
340
+ body: {
341
+ height: customSize === null || customSize === void 0 ? void 0 : customSize.height
342
+ }
343
+ },
344
+ children: direction === 'vertical' ? /*#__PURE__*/jsx(VerticalLayout, {
345
+ onChangeDataSourceMap: setDataSourceMap,
346
+ value: values,
347
+ onDeleteItem: onDeleteItem,
348
+ fieldNames: props.fieldNames,
349
+ onRequest: props.onRequest,
350
+ textConfig: props.textConfig,
351
+ onChange: onChange,
352
+ onChangeDataSource: props.onChangeDataSource,
353
+ treeProps: treePropsFt
354
+ }) : /*#__PURE__*/jsx(HorizontalLayout, {
355
+ value: values,
356
+ onChangeDataSourceMap: setDataSourceMap,
357
+ onDeleteItem: onDeleteItem,
358
+ fieldNames: props.fieldNames,
359
+ onRequest: props.onRequest,
360
+ textConfig: props.textConfig,
361
+ onChange: onChange,
362
+ onChangeDataSource: props.onChangeDataSource,
363
+ treeProps: treePropsFt
364
+ })
365
+ })]
366
+ });
367
+ };
368
+
369
+ export { TreeModal as T };
370
+ //# sourceMappingURL=select-modal-Dt4YHH8a.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-modal-Dt4YHH8a.js","sources":["@flatbiz/antd/src/tree-modal/select-item.tsx","@flatbiz/antd/src/tree-modal/tree.tsx","@flatbiz/antd/src/tree-modal/horizontal.tsx","@flatbiz/antd/src/tree-modal/vertical.tsx","@flatbiz/antd/src/tree-modal/select-modal.tsx"],"sourcesContent":["import { Fragment } from 'react';\nimport { CloseOutlined } from '@ant-design/icons';\nimport type { TAny, TPlainObject } from '@flatbiz/utils';\nimport { CssNodeHover } from '../css-node-hover/index.js';\nimport { FlexLayout } from '../flex-layout/index.js';\nimport { IconWrapper } from '../icon-wrapper/index.js';\nimport { TextOverflow } from '../text-overflow/index.js';\nimport type { TreeModalProps } from './types.js';\n\nexport const SelectItemList = (props: {\n chenkedIdList: TPlainObject[];\n fieldNames: TreeModalProps['fieldNames'];\n onDeleteItem: (value: TAny) => void;\n}) => {\n const chenkedIdList = props.chenkedIdList;\n return (\n <Fragment>\n {chenkedIdList?.map((item) => {\n const value = item.value;\n const label = item.label || value;\n\n return (\n <CssNodeHover style={{ paddingLeft: 5, paddingRight: 0 }} key={value}>\n <FlexLayout\n fullIndex={1}\n direction=\"horizontal\"\n style={{\n alignItems: 'center',\n fontSize: 14,\n marginBottom: 0,\n color: '#505050',\n }}\n >\n <TextOverflow text={label} />\n <div\n style={{\n position: 'relative',\n zIndex: 9,\n color: '#a1a1a1',\n }}\n >\n <IconWrapper\n text={<CloseOutlined />}\n onClick={props.onDeleteItem.bind(null, value)}\n size=\"small\"\n style={{ paddingRight: 5, margin: '2px' }}\n />\n </div>\n </FlexLayout>\n </CssNodeHover>\n );\n })}\n </Fragment>\n );\n};\n","import type { TAny } from '@flatbiz/utils';\nimport { toArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport type {\n TreeServiceConfig,\n TreeWrapperProps,\n} from '../tree-wrapper/index.js';\nimport { TreeWrapper } from '../tree-wrapper/index.js';\nimport type { TreeModalProps, TreeModelSelectItem } from './types.js';\n\nexport const SelectContent = (props: {\n value?: TAny;\n onChange?: (value?: TreeModelSelectItem[]) => void;\n fieldNames?: TreeWrapperProps['fieldNames'];\n serviceConfig?: TreeServiceConfig;\n treeProps?: TreeModalProps['treeProps'];\n}) => {\n const modelKey = hooks.useId(undefined, 'tree-select-modal');\n return (\n <TreeWrapper\n initRootExpand\n showSearch\n searchPlaceholder=\"搜索\"\n checkable={true}\n checkableType=\"2\"\n {...props.treeProps}\n showIcon={props.treeProps?.icon ? true : false}\n value={props.value?.map((item) => item.value)}\n modelKey={modelKey}\n fieldNames={props.fieldNames}\n labelInValue={true}\n serviceConfig={props.serviceConfig}\n onChange={(values) => {\n props.onChange?.(toArray(values));\n }}\n />\n );\n};\n","import { Fragment } from 'react';\nimport type { TAny, TPlainObject } from '@flatbiz/utils';\nimport { treeToTiledMap } from '@flatbiz/utils';\nimport { FlexLayout } from '../flex-layout/index.js';\nimport { SelectItemList } from './select-item.jsx';\nimport { SelectContent } from './tree.jsx';\nimport type { TreeModalProps, TreeModelSelectItem } from './types.js';\n\nexport const HorizontalLayout = (props: {\n onChangeDataSourceMap: (data: TPlainObject) => void;\n onChangeDataSource?: (\n treeDataList: TPlainObject[],\n mapData: TPlainObject\n ) => void;\n onDeleteItem: (value: TAny) => void;\n fieldNames?: TreeModalProps['fieldNames'];\n onRequest?: TreeModalProps['onRequest'];\n textConfig: TreeModalProps['textConfig'];\n onChange?: (value?: TreeModelSelectItem[]) => void;\n value?: TreeModelSelectItem[];\n treeProps?: TreeModalProps['treeProps'];\n}) => {\n const chenkedIdList = props.value || [];\n\n const valueKey = props.fieldNames?.value || 'value';\n const childrenKey = props.fieldNames?.children || 'children';\n\n const { selectQuantityPrompt, placeholder } = props.textConfig;\n\n return (\n <FlexLayout\n fullIndex={0}\n direction=\"horizontal\"\n gap={10}\n style={{ height: '100%', overflow: 'hidden' }}\n >\n <div style={{ backgroundColor: '#f4f4f4', padding: 10, borderRadius: 5 }}>\n <SelectContent\n treeProps={props.treeProps}\n value={chenkedIdList}\n onChange={props.onChange}\n fieldNames={props.fieldNames}\n serviceConfig={{\n onRequest: props.onRequest,\n onRequestResultAdapter: (respData) => {\n const listMap: TPlainObject = treeToTiledMap(respData, {\n value: valueKey,\n children: childrenKey,\n });\n props.onChangeDataSourceMap(listMap);\n props.onChangeDataSource?.(respData, listMap);\n return respData;\n },\n }}\n />\n </div>\n\n <div\n style={{\n width: '40%',\n overflow: 'hidden',\n height: '100%',\n display: 'flex',\n flexDirection: 'column',\n flexShrink: 0,\n }}\n >\n <div style={{ fontSize: 15, fontWeight: '500', marginBottom: 10 }}>\n {chenkedIdList.length > 0 ? (\n <Fragment>\n {selectQuantityPrompt\n ? selectQuantityPrompt.replace(\n '{total}',\n `${chenkedIdList?.length || ''}`\n )\n : `已选择${chenkedIdList?.length}`}\n </Fragment>\n ) : (\n placeholder || '请选择'\n )}\n </div>\n <div style={{ overflow: 'auto', flex: 1, paddingRight: 15 }}>\n <SelectItemList\n chenkedIdList={chenkedIdList}\n fieldNames={props.fieldNames}\n onDeleteItem={props.onDeleteItem}\n />\n </div>\n </div>\n </FlexLayout>\n );\n};\n","import { Fragment } from 'react';\nimport type { TAny, TPlainObject } from '@flatbiz/utils';\nimport { treeToTiledMap } from '@flatbiz/utils';\nimport { SelectItemList } from './select-item.jsx';\nimport { SelectContent } from './tree.jsx';\nimport type { TreeModalProps, TreeModelSelectItem } from './types.js';\n\nexport const VerticalLayout = (props: {\n onChangeDataSourceMap: (data: TPlainObject) => void;\n onChangeDataSource?: (\n treeDataList: TPlainObject[],\n mapData: TPlainObject\n ) => void;\n onDeleteItem: (value: TAny) => void;\n fieldNames?: TreeModalProps['fieldNames'];\n onRequest?: TreeModalProps['onRequest'];\n textConfig: TreeModalProps['textConfig'];\n onChange?: (value?: TreeModelSelectItem[]) => void;\n value?: TreeModelSelectItem[];\n treeProps?: TreeModalProps['treeProps'];\n}) => {\n const { selectQuantityPrompt, placeholder } = props.textConfig;\n const valueKey = props.fieldNames?.value || 'value';\n const childrenKey = props.fieldNames?.children || 'children';\n\n const chenkedIdList = props.value || [];\n\n return (\n <div style={{ height: '100%', overflow: 'auto' }}>\n <div style={{ backgroundColor: '#f4f4f4', padding: 10, borderRadius: 5 }}>\n <SelectContent\n treeProps={props.treeProps}\n value={chenkedIdList}\n onChange={props.onChange}\n fieldNames={props.fieldNames}\n serviceConfig={{\n onRequest: props.onRequest,\n onRequestResultAdapter: (respData) => {\n const listMap: TPlainObject = treeToTiledMap(respData, {\n value: valueKey,\n children: childrenKey,\n });\n props.onChangeDataSourceMap(listMap);\n props.onChangeDataSource?.(respData, listMap);\n return respData;\n },\n }}\n />\n </div>\n\n <div style={{ marginTop: 20 }}>\n <div style={{ fontSize: 15, fontWeight: '500', marginBottom: 10 }}>\n {chenkedIdList.length > 0 ? (\n <Fragment>\n {selectQuantityPrompt\n ? selectQuantityPrompt.replace(\n '{total}',\n `${chenkedIdList?.length || ''}`\n )\n : `已选择${chenkedIdList?.length}`}\n </Fragment>\n ) : (\n placeholder\n )}\n </div>\n <SelectItemList\n chenkedIdList={chenkedIdList}\n fieldNames={props.fieldNames}\n onDeleteItem={props.onDeleteItem}\n />\n </div>\n </div>\n );\n};\n","import { Fragment, useMemo, useRef, useState } from 'react';\nimport { useSize } from 'ahooks';\nimport { Modal } from 'antd';\nimport { isObject } from '@dimjs/lang';\nimport type { TAny, TPlainObject } from '@flatbiz/utils';\nimport { isUndefinedOrNull, toArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { HorizontalLayout } from './horizontal.jsx';\nimport type { TreeModalProps, TreeModelSelectItem } from './types.js';\nimport { VerticalLayout } from './vertical.jsx';\n\n/**\n * 树节点数据选择,一般用于选择员工等\n * ```\n * 1. 可通过 treeProps.checkableType 配置多选节点模式(包括返回所有节点、只返回叶子节点、叶子节点&父节点全选只返回父节点),默认只返回叶子节点\n * 2. demo: https://fex.qa.tcshuke.com/docs/admin/main/selector/tree\n * ```\n */\nexport const TreeModal = (props: TreeModalProps) => {\n const { size = 'large', isMultiple } = props;\n const [isOpen, setIsOpen] = useState(false);\n const [dataSourceMap, setDataSourceMap] = useState<TPlainObject>();\n const labelKey = props.fieldNames?.label || 'label';\n\n const htmlSize = useSize(document.querySelector('html'));\n const screenType = fbaHooks.useResponsivePoint() || '';\n\n const direction = screenType === 'xs' ? 'vertical' : 'horizontal';\n const isMultipleFt = isUndefinedOrNull(isMultiple) ? true : isMultiple;\n\n const handleOnClick = hooks.useCallbackRef(() => {\n setIsOpen(true);\n });\n\n const Action = props.children.type;\n\n const [values, setValues] = useState<TreeModelSelectItem[]>();\n const originalValuesRef = useRef<TreeModelSelectItem[]>([]);\n\n const onDeleteItem = (value) => {\n const targetList = values?.filter((item) => item.value !== value);\n setValues(targetList);\n };\n\n fbaHooks.useEffectCustom(() => {\n const values = toArray<TAny>(props.value).map((item) => {\n if (isObject(item)) return item;\n return {\n value: item,\n label: dataSourceMap?.[item][labelKey],\n };\n });\n if (dataSourceMap) {\n props.onSelectChange?.(values || []);\n }\n originalValuesRef.current = values || [];\n setValues(values);\n }, [props.value, dataSourceMap, labelKey]);\n\n const customSize = useMemo(() => {\n if (!htmlSize?.height || !screenType) return undefined;\n const isXsSm = ['xs', 'sm'].includes(screenType);\n let sizeCalculate: TPlainObject = {};\n if (size == 'large') {\n sizeCalculate = {\n height: htmlSize?.height * 0.65,\n width: 800,\n };\n } else if (size == 'small') {\n sizeCalculate = {\n height: htmlSize?.height * 0.45,\n width: 450,\n };\n } else if (size == 'middle') {\n sizeCalculate = {\n height: htmlSize?.height * 0.55,\n width: 600,\n };\n }\n\n return {\n height: props.modalBodyHeight || sizeCalculate.height,\n width: isXsSm ? '90%' : props.modalWidth || sizeCalculate.width,\n };\n }, [\n htmlSize?.height,\n screenType,\n size,\n props.modalBodyHeight,\n props.modalWidth,\n ]);\n\n const treePropsFt = {\n ...props.treeProps,\n checkable: isMultipleFt ? true : false,\n };\n const onSubmit = () => {\n props.onSelectChange?.(values);\n props.onChange?.(values);\n setIsOpen(false);\n };\n\n const onChange = (values?: TreeModelSelectItem[]) => {\n setValues(values);\n };\n const onCancel = () => {\n setIsOpen(false);\n setValues(originalValuesRef.current);\n };\n\n return (\n <Fragment>\n <Action {...props.children.props} onClick={handleOnClick} />\n <Modal\n className={props.modalClassName}\n title={props.textConfig.title || '选择'}\n open={isOpen}\n onCancel={onCancel}\n forceRender={props.forceRender}\n centered\n width={customSize?.width}\n onOk={onSubmit}\n styles={\n direction === 'horizontal'\n ? {\n body: {\n height: customSize?.height,\n maxHeight: 'calc(100vh - 200px)',\n padding: '0px 0 0 20px',\n },\n content: {\n padding: 0,\n },\n header: {\n padding: '20px 24px 0 20px',\n },\n footer: {\n padding: '0 24px 20px 24px',\n },\n }\n : {\n body: {\n height: customSize?.height,\n },\n }\n }\n >\n {direction === 'vertical' ? (\n <VerticalLayout\n onChangeDataSourceMap={setDataSourceMap}\n value={values}\n onDeleteItem={onDeleteItem}\n fieldNames={props.fieldNames}\n onRequest={props.onRequest}\n textConfig={props.textConfig}\n onChange={onChange}\n onChangeDataSource={props.onChangeDataSource}\n treeProps={treePropsFt}\n ></VerticalLayout>\n ) : (\n <HorizontalLayout\n value={values}\n onChangeDataSourceMap={setDataSourceMap}\n onDeleteItem={onDeleteItem}\n fieldNames={props.fieldNames}\n onRequest={props.onRequest}\n textConfig={props.textConfig}\n onChange={onChange}\n onChangeDataSource={props.onChangeDataSource}\n treeProps={treePropsFt}\n />\n )}\n </Modal>\n </Fragment>\n );\n};\n"],"names":["SelectItemList","props","chenkedIdList","_jsx","Fragment","children","map","item","value","label","CssNodeHover","style","paddingLeft","paddingRight","_jsxs","FlexLayout","fullIndex","direction","alignItems","fontSize","marginBottom","color","TextOverflow","text","position","zIndex","IconWrapper","_CloseOutlined","onClick","onDeleteItem","bind","size","margin","SelectContent","_props$treeProps","_props$value","modelKey","_hooks","useId","undefined","TreeWrapper","_objectSpread","initRootExpand","showSearch","searchPlaceholder","checkable","checkableType","treeProps","showIcon","icon","fieldNames","labelInValue","serviceConfig","onChange","values","_props$onChange","call","toArray","HorizontalLayout","_props$fieldNames","_props$fieldNames2","valueKey","childrenKey","_props$textConfig","textConfig","selectQuantityPrompt","placeholder","gap","height","overflow","backgroundColor","padding","borderRadius","onRequest","onRequestResultAdapter","respData","_props$onChangeDataSo","listMap","treeToTiledMap","onChangeDataSourceMap","onChangeDataSource","width","display","flexDirection","flexShrink","fontWeight","length","replace","concat","flex","VerticalLayout","marginTop","TreeModal","_props$size","isMultiple","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","_useState3","_useState4","dataSourceMap","setDataSourceMap","labelKey","htmlSize","useSize","document","querySelector","screenType","fbaHooks","useResponsivePoint","isMultipleFt","isUndefinedOrNull","handleOnClick","useCallbackRef","Action","type","_useState5","_useState6","setValues","originalValuesRef","useRef","targetList","filter","useEffectCustom","_isObject","_props$onSelectChange","onSelectChange","current","customSize","useMemo","isXsSm","includes","sizeCalculate","modalBodyHeight","modalWidth","treePropsFt","onSubmit","_props$onSelectChange2","onCancel","Modal","className","modalClassName","title","open","forceRender","centered","onOk","styles","body","maxHeight","content","header","footer"],"mappings":";;;;;;;;;;;;;;;;;;AASO,IAAMA,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,KAI9B,EAAK;AACJ,EAAA,IAAMC,aAAa,GAAGD,KAAK,CAACC,aAAa;EACzC,oBACEC,GAAA,CAACC,QAAQ,EAAA;IAAAC,QAAA,EACNH,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,aAAa,CAAEI,GAAG,CAAC,UAACC,IAAI,EAAK;AAC5B,MAAA,IAAMC,KAAK,GAAGD,IAAI,CAACC,KAAK;AACxB,MAAA,IAAMC,KAAK,GAAGF,IAAI,CAACE,KAAK,IAAID,KAAK;MAEjC,oBACEL,GAAA,CAACO,YAAY,EAAA;AAACC,QAAAA,KAAK,EAAE;AAAEC,UAAAA,WAAW,EAAE,CAAC;AAAEC,UAAAA,YAAY,EAAE;SAAI;QAAAR,QAAA,eACvDS,IAAA,CAACC,UAAU,EAAA;AACTC,UAAAA,SAAS,EAAE,CAAE;AACbC,UAAAA,SAAS,EAAC,YAAY;AACtBN,UAAAA,KAAK,EAAE;AACLO,YAAAA,UAAU,EAAE,QAAQ;AACpBC,YAAAA,QAAQ,EAAE,EAAE;AACZC,YAAAA,YAAY,EAAE,CAAC;AACfC,YAAAA,KAAK,EAAE;WACP;UAAAhB,QAAA,EAAA,cAEFF,GAAA,CAACmB,YAAY,EAAA;AAACC,YAAAA,IAAI,EAAEd;WAAQ,CAAC,eAC7BN,GAAA,CAAA,KAAA,EAAA;AACEQ,YAAAA,KAAK,EAAE;AACLa,cAAAA,QAAQ,EAAE,UAAU;AACpBC,cAAAA,MAAM,EAAE,CAAC;AACTJ,cAAAA,KAAK,EAAE;aACP;YAAAhB,QAAA,eAEFF,GAAA,CAACuB,WAAW,EAAA;AACVH,cAAAA,IAAI,eAAEpB,GAAA,CAAAwB,cAAA,IAAgB,CAAE;cACxBC,OAAO,EAAE3B,KAAK,CAAC4B,YAAY,CAACC,IAAI,CAAC,IAAI,EAAEtB,KAAK,CAAE;AAC9CuB,cAAAA,IAAI,EAAC,OAAO;AACZpB,cAAAA,KAAK,EAAE;AAAEE,gBAAAA,YAAY,EAAE,CAAC;AAAEmB,gBAAAA,MAAM,EAAE;AAAM;aACzC;AAAC,WACC,CAAC;SACI;AAAC,OAAA,EA1BgDxB,KA2BjD,CAAC;KAElB;AAAC,GACM,CAAC;AAEf,CAAC;;AC5CM,IAAMyB,aAAa,GAAG,SAAhBA,aAAaA,CAAIhC,KAM7B,EAAK;EAAA,IAAAiC,gBAAA,EAAAC,YAAA;EACJ,IAAMC,QAAQ,GAAGC,KAAA,CAAMC,KAAK,CAACC,SAAS,EAAE,mBAAmB,CAAC;AAC5D,EAAA,oBACEpC,GAAA,CAACqC,WAAW,EAAAC,cAAA,CAAAA,cAAA,CAAA;IACVC,cAAc,EAAA,IAAA;IACdC,UAAU,EAAA,IAAA;AACVC,IAAAA,iBAAiB,EAAC,cAAI;AACtBC,IAAAA,SAAS,EAAE,IAAK;AAChBC,IAAAA,aAAa,EAAC;GACV7C,EAAAA,KAAK,CAAC8C,SAAS,CAAA,EAAA,EAAA,EAAA;AACnBC,IAAAA,QAAQ,EAAE,CAAAd,gBAAA,GAAAjC,KAAK,CAAC8C,SAAS,MAAA,IAAA,IAAAb,gBAAA,KAAA,KAAA,CAAA,IAAfA,gBAAA,CAAiBe,IAAI,GAAG,IAAI,GAAG,KAAM;AAC/CzC,IAAAA,KAAK,EAAA2B,CAAAA,YAAA,GAAElC,KAAK,CAACO,KAAK,MAAA,IAAA,IAAA2B,YAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAXA,YAAA,CAAa7B,GAAG,CAAC,UAACC,IAAI,EAAA;MAAA,OAAKA,IAAI,CAACC,KAAK;KAAE,CAAA;AAC9C4B,IAAAA,QAAQ,EAAEA,QAAS;IACnBc,UAAU,EAAEjD,KAAK,CAACiD,UAAW;AAC7BC,IAAAA,YAAY,EAAE,IAAK;IACnBC,aAAa,EAAEnD,KAAK,CAACmD,aAAc;AACnCC,IAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAGC,MAAM,EAAK;AAAA,MAAA,IAAAC,eAAA;AACpB,MAAA,CAAAA,eAAA,GAAAtD,KAAK,CAACoD,QAAQ,MAAA,IAAA,IAAAE,eAAA,KAAdA,KAAAA,CAAAA,IAAAA,eAAA,CAAAC,IAAA,CAAAvD,KAAK,EAAYwD,OAAO,CAACH,MAAM,CAAC,CAAC;AACnC;AAAE,GAAA,CACH,CAAC;AAEN,CAAC;;AC7BM,IAAMI,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIzD,KAahC,EAAK;EAAA,IAAA0D,iBAAA,EAAAC,kBAAA;AACJ,EAAA,IAAM1D,aAAa,GAAGD,KAAK,CAACO,KAAK,IAAI,EAAE;AAEvC,EAAA,IAAMqD,QAAQ,GAAG,CAAAF,CAAAA,iBAAA,GAAA1D,KAAK,CAACiD,UAAU,MAAA,IAAA,IAAAS,iBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAA,CAAkBnD,KAAK,KAAI,OAAO;AACnD,EAAA,IAAMsD,WAAW,GAAG,CAAAF,CAAAA,kBAAA,GAAA3D,KAAK,CAACiD,UAAU,MAAA,IAAA,IAAAU,kBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,kBAAA,CAAkBvD,QAAQ,KAAI,UAAU;AAE5D,EAAA,IAAA0D,iBAAA,GAA8C9D,KAAK,CAAC+D,UAAU;IAAtDC,oBAAoB,GAAAF,iBAAA,CAApBE,oBAAoB;IAAEC,WAAW,GAAAH,iBAAA,CAAXG,WAAW;EAEzC,oBACEpD,IAAA,CAACC,UAAU,EAAA;AACTC,IAAAA,SAAS,EAAE,CAAE;AACbC,IAAAA,SAAS,EAAC,YAAY;AACtBkD,IAAAA,GAAG,EAAE,EAAG;AACRxD,IAAAA,KAAK,EAAE;AAAEyD,MAAAA,MAAM,EAAE,MAAM;AAAEC,MAAAA,QAAQ,EAAE;KAAW;AAAAhE,IAAAA,QAAA,gBAE9CF,GAAA,CAAA,KAAA,EAAA;AAAKQ,MAAAA,KAAK,EAAE;AAAE2D,QAAAA,eAAe,EAAE,SAAS;AAAEC,QAAAA,OAAO,EAAE,EAAE;AAAEC,QAAAA,YAAY,EAAE;OAAI;MAAAnE,QAAA,eACvEF,GAAA,CAAC8B,aAAa,EAAA;QACZc,SAAS,EAAE9C,KAAK,CAAC8C,SAAU;AAC3BvC,QAAAA,KAAK,EAAEN,aAAc;QACrBmD,QAAQ,EAAEpD,KAAK,CAACoD,QAAS;QACzBH,UAAU,EAAEjD,KAAK,CAACiD,UAAW;AAC7BE,QAAAA,aAAa,EAAE;UACbqB,SAAS,EAAExE,KAAK,CAACwE,SAAS;AAC1BC,UAAAA,sBAAsB,EAAE,SAAxBA,sBAAsBA,CAAGC,QAAQ,EAAK;AAAA,YAAA,IAAAC,qBAAA;AACpC,YAAA,IAAMC,OAAqB,GAAGC,cAAc,CAACH,QAAQ,EAAE;AACrDnE,cAAAA,KAAK,EAAEqD,QAAQ;AACfxD,cAAAA,QAAQ,EAAEyD;AACZ,aAAC,CAAC;AACF7D,YAAAA,KAAK,CAAC8E,qBAAqB,CAACF,OAAO,CAAC;AACpC,YAAA,CAAAD,qBAAA,GAAA3E,KAAK,CAAC+E,kBAAkB,cAAAJ,qBAAA,KAAA,KAAA,CAAA,IAAxBA,qBAAA,CAAApB,IAAA,CAAAvD,KAAK,EAAsB0E,QAAQ,EAAEE,OAAO,CAAC;AAC7C,YAAA,OAAOF,QAAQ;AACjB;AACF;OACD;KACE,CAAC,eAEN7D,IAAA,CAAA,KAAA,EAAA;AACEH,MAAAA,KAAK,EAAE;AACLsE,QAAAA,KAAK,EAAE,KAAK;AACZZ,QAAAA,QAAQ,EAAE,QAAQ;AAClBD,QAAAA,MAAM,EAAE,MAAM;AACdc,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,aAAa,EAAE,QAAQ;AACvBC,QAAAA,UAAU,EAAE;OACZ;AAAA/E,MAAAA,QAAA,gBAEFF,GAAA,CAAA,KAAA,EAAA;AAAKQ,QAAAA,KAAK,EAAE;AAAEQ,UAAAA,QAAQ,EAAE,EAAE;AAAEkE,UAAAA,UAAU,EAAE,KAAK;AAAEjE,UAAAA,YAAY,EAAE;SAAK;QAAAf,QAAA,EAC/DH,aAAa,CAACoF,MAAM,GAAG,CAAC,gBACvBnF,GAAA,CAACC,QAAQ,EAAA;AAAAC,UAAAA,QAAA,EACN4D,oBAAoB,GACjBA,oBAAoB,CAACsB,OAAO,CAC1B,SAAS,EAAA,EAAA,CAAAC,MAAA,CACN,CAAAtF,aAAa,aAAbA,aAAa,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,aAAa,CAAEoF,MAAM,KAAI,EAAE,CAChC,CAAC,GAAAE,oBAAAA,CAAAA,MAAA,CACKtF,aAAa,KAAbA,IAAAA,IAAAA,aAAa,KAAbA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,aAAa,CAAEoF,MAAM;SACvB,CAAC,GAEXpB,WAAW,IAAI;OAEd,CAAC,eACN/D,GAAA,CAAA,KAAA,EAAA;AAAKQ,QAAAA,KAAK,EAAE;AAAE0D,UAAAA,QAAQ,EAAE,MAAM;AAAEoB,UAAAA,IAAI,EAAE,CAAC;AAAE5E,UAAAA,YAAY,EAAE;SAAK;QAAAR,QAAA,eAC1DF,GAAA,CAACH,cAAc,EAAA;AACbE,UAAAA,aAAa,EAAEA,aAAc;UAC7BgD,UAAU,EAAEjD,KAAK,CAACiD,UAAW;UAC7BrB,YAAY,EAAE5B,KAAK,CAAC4B;SACrB;AAAC,OACC,CAAC;AAAA,KACH,CAAC;AAAA,GACI,CAAC;AAEjB,CAAC;;ACpFM,IAAM6D,cAAc,GAAG,SAAjBA,cAAcA,CAAIzF,KAa9B,EAAK;EAAA,IAAA0D,iBAAA,EAAAC,kBAAA;AACJ,EAAA,IAAAG,iBAAA,GAA8C9D,KAAK,CAAC+D,UAAU;IAAtDC,oBAAoB,GAAAF,iBAAA,CAApBE,oBAAoB;IAAEC,WAAW,GAAAH,iBAAA,CAAXG,WAAW;AACzC,EAAA,IAAML,QAAQ,GAAG,CAAAF,CAAAA,iBAAA,GAAA1D,KAAK,CAACiD,UAAU,MAAA,IAAA,IAAAS,iBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAA,CAAkBnD,KAAK,KAAI,OAAO;AACnD,EAAA,IAAMsD,WAAW,GAAG,CAAAF,CAAAA,kBAAA,GAAA3D,KAAK,CAACiD,UAAU,MAAA,IAAA,IAAAU,kBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,kBAAA,CAAkBvD,QAAQ,KAAI,UAAU;AAE5D,EAAA,IAAMH,aAAa,GAAGD,KAAK,CAACO,KAAK,IAAI,EAAE;AAEvC,EAAA,oBACEM,IAAA,CAAA,KAAA,EAAA;AAAKH,IAAAA,KAAK,EAAE;AAAEyD,MAAAA,MAAM,EAAE,MAAM;AAAEC,MAAAA,QAAQ,EAAE;KAAS;AAAAhE,IAAAA,QAAA,gBAC/CF,GAAA,CAAA,KAAA,EAAA;AAAKQ,MAAAA,KAAK,EAAE;AAAE2D,QAAAA,eAAe,EAAE,SAAS;AAAEC,QAAAA,OAAO,EAAE,EAAE;AAAEC,QAAAA,YAAY,EAAE;OAAI;MAAAnE,QAAA,eACvEF,GAAA,CAAC8B,aAAa,EAAA;QACZc,SAAS,EAAE9C,KAAK,CAAC8C,SAAU;AAC3BvC,QAAAA,KAAK,EAAEN,aAAc;QACrBmD,QAAQ,EAAEpD,KAAK,CAACoD,QAAS;QACzBH,UAAU,EAAEjD,KAAK,CAACiD,UAAW;AAC7BE,QAAAA,aAAa,EAAE;UACbqB,SAAS,EAAExE,KAAK,CAACwE,SAAS;AAC1BC,UAAAA,sBAAsB,EAAE,SAAxBA,sBAAsBA,CAAGC,QAAQ,EAAK;AAAA,YAAA,IAAAC,qBAAA;AACpC,YAAA,IAAMC,OAAqB,GAAGC,cAAc,CAACH,QAAQ,EAAE;AACrDnE,cAAAA,KAAK,EAAEqD,QAAQ;AACfxD,cAAAA,QAAQ,EAAEyD;AACZ,aAAC,CAAC;AACF7D,YAAAA,KAAK,CAAC8E,qBAAqB,CAACF,OAAO,CAAC;AACpC,YAAA,CAAAD,qBAAA,GAAA3E,KAAK,CAAC+E,kBAAkB,cAAAJ,qBAAA,KAAA,KAAA,CAAA,IAAxBA,qBAAA,CAAApB,IAAA,CAAAvD,KAAK,EAAsB0E,QAAQ,EAAEE,OAAO,CAAC;AAC7C,YAAA,OAAOF,QAAQ;AACjB;AACF;OACD;KACE,CAAC,eAEN7D,IAAA,CAAA,KAAA,EAAA;AAAKH,MAAAA,KAAK,EAAE;AAAEgF,QAAAA,SAAS,EAAE;OAAK;AAAAtF,MAAAA,QAAA,gBAC5BF,GAAA,CAAA,KAAA,EAAA;AAAKQ,QAAAA,KAAK,EAAE;AAAEQ,UAAAA,QAAQ,EAAE,EAAE;AAAEkE,UAAAA,UAAU,EAAE,KAAK;AAAEjE,UAAAA,YAAY,EAAE;SAAK;QAAAf,QAAA,EAC/DH,aAAa,CAACoF,MAAM,GAAG,CAAC,gBACvBnF,GAAA,CAACC,QAAQ,EAAA;AAAAC,UAAAA,QAAA,EACN4D,oBAAoB,GACjBA,oBAAoB,CAACsB,OAAO,CAC1B,SAAS,EAAA,EAAA,CAAAC,MAAA,CACN,CAAAtF,aAAa,aAAbA,aAAa,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,aAAa,CAAEoF,MAAM,KAAI,EAAE,CAChC,CAAC,GAAAE,oBAAAA,CAAAA,MAAA,CACKtF,aAAa,KAAbA,IAAAA,IAAAA,aAAa,KAAbA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,aAAa,CAAEoF,MAAM;AAAE,SACzB,CAAC,GAEXpB;AACD,OACE,CAAC,eACN/D,GAAA,CAACH,cAAc,EAAA;AACbE,QAAAA,aAAa,EAAEA,aAAc;QAC7BgD,UAAU,EAAEjD,KAAK,CAACiD,UAAW;QAC7BrB,YAAY,EAAE5B,KAAK,CAAC4B;AAAa,OAClC,CAAC;AAAA,KACC,CAAC;AAAA,GACH,CAAC;AAEV,CAAC;;ICtDY+D,SAAS,GAAG,SAAZA,SAASA,CAAI3F,KAAqB,EAAK;AAAA,EAAA,IAAA0D,iBAAA;AAClD,EAAA,IAAAkC,WAAA,GAAuC5F,KAAK,CAApC8B,IAAI;AAAJA,IAAAA,IAAI,GAAA8D,WAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,WAAA;IAAEC,UAAU,GAAK7F,KAAK,CAApB6F,UAAU;AAClC,EAAA,IAAAC,SAAA,GAA4BC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAApCI,IAAAA,MAAM,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,SAAS,GAAAH,UAAA,CAAA,CAAA,CAAA;AACxB,EAAA,IAAAI,UAAA,GAA0CL,QAAQ,EAAgB;IAAAM,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAA3DE,IAAAA,aAAa,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,gBAAgB,GAAAF,UAAA,CAAA,CAAA,CAAA;AACtC,EAAA,IAAMG,QAAQ,GAAG,CAAA9C,CAAAA,iBAAA,GAAA1D,KAAK,CAACiD,UAAU,MAAA,IAAA,IAAAS,iBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAA,CAAkBlD,KAAK,KAAI,OAAO;EAEnD,IAAMiG,QAAQ,GAAGC,OAAO,CAACC,QAAQ,CAACC,aAAa,CAAC,MAAM,CAAC,CAAC;EACxD,IAAMC,UAAU,GAAGC,QAAQ,CAACC,kBAAkB,EAAE,IAAI,EAAE;EAEtD,IAAM/F,SAAS,GAAG6F,UAAU,KAAK,IAAI,GAAG,UAAU,GAAG,YAAY;EACjE,IAAMG,YAAY,GAAGC,iBAAiB,CAACpB,UAAU,CAAC,GAAG,IAAI,GAAGA,UAAU;AAEtE,EAAA,IAAMqB,aAAa,GAAG9E,KAAA,CAAM+E,cAAc,CAAC,YAAM;IAC/ChB,SAAS,CAAC,IAAI,CAAC;AACjB,GAAC,CAAC;AAEF,EAAA,IAAMiB,MAAM,GAAGpH,KAAK,CAACI,QAAQ,CAACiH,IAAI;AAElC,EAAA,IAAAC,UAAA,GAA4BvB,QAAQ,EAAyB;IAAAwB,UAAA,GAAAtB,cAAA,CAAAqB,UAAA,EAAA,CAAA,CAAA;AAAtDjE,IAAAA,MAAM,GAAAkE,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,SAAS,GAAAD,UAAA,CAAA,CAAA,CAAA;AACxB,EAAA,IAAME,iBAAiB,GAAGC,MAAM,CAAwB,EAAE,CAAC;AAE3D,EAAA,IAAM9F,YAAY,GAAG,SAAfA,YAAYA,CAAIrB,KAAK,EAAK;IAC9B,IAAMoH,UAAU,GAAGtE,MAAM,KAANA,IAAAA,IAAAA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEuE,MAAM,CAAC,UAACtH,IAAI,EAAA;AAAA,MAAA,OAAKA,IAAI,CAACC,KAAK,KAAKA,KAAK;KAAC,CAAA;IACjEiH,SAAS,CAACG,UAAU,CAAC;GACtB;EAEDb,QAAQ,CAACe,eAAe,CAAC,YAAM;AAC7B,IAAA,IAAMxE,MAAM,GAAGG,OAAO,CAAOxD,KAAK,CAACO,KAAK,CAAC,CAACF,GAAG,CAAC,UAACC,IAAI,EAAK;AACtD,MAAA,IAAIwH,QAAA,CAASxH,IAAI,CAAC,EAAE,OAAOA,IAAI;MAC/B,OAAO;AACLC,QAAAA,KAAK,EAAED,IAAI;QACXE,KAAK,EAAE8F,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,aAAa,CAAGhG,IAAI,CAAC,CAACkG,QAAQ;OACtC;AACH,KAAC,CAAC;AACF,IAAA,IAAIF,aAAa,EAAE;AAAA,MAAA,IAAAyB,qBAAA;AACjB,MAAA,CAAAA,qBAAA,GAAA/H,KAAK,CAACgI,cAAc,cAAAD,qBAAA,KAAA,KAAA,CAAA,IAApBA,qBAAA,CAAAxE,IAAA,CAAAvD,KAAK,EAAkBqD,MAAM,IAAI,EAAE,CAAC;AACtC;AACAoE,IAAAA,iBAAiB,CAACQ,OAAO,GAAG5E,MAAM,IAAI,EAAE;IACxCmE,SAAS,CAACnE,MAAM,CAAC;GAClB,EAAE,CAACrD,KAAK,CAACO,KAAK,EAAE+F,aAAa,EAAEE,QAAQ,CAAC,CAAC;AAE1C,EAAA,IAAM0B,UAAU,GAAGC,OAAO,CAAC,YAAM;AAC/B,IAAA,IAAI,EAAC1B,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAEtC,MAAM,CAAI,IAAA,CAAC0C,UAAU,EAAE,OAAOvE,SAAS;IACtD,IAAM8F,MAAM,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAACC,QAAQ,CAACxB,UAAU,CAAC;IAChD,IAAIyB,aAA2B,GAAG,EAAE;IACpC,IAAIxG,IAAI,IAAI,OAAO,EAAE;AACnBwG,MAAAA,aAAa,GAAG;QACdnE,MAAM,EAAE,CAAAsC,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,uBAARA,QAAQ,CAAEtC,MAAM,IAAG,IAAI;AAC/Ba,QAAAA,KAAK,EAAE;OACR;AACH,KAAC,MAAM,IAAIlD,IAAI,IAAI,OAAO,EAAE;AAC1BwG,MAAAA,aAAa,GAAG;QACdnE,MAAM,EAAE,CAAAsC,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,uBAARA,QAAQ,CAAEtC,MAAM,IAAG,IAAI;AAC/Ba,QAAAA,KAAK,EAAE;OACR;AACH,KAAC,MAAM,IAAIlD,IAAI,IAAI,QAAQ,EAAE;AAC3BwG,MAAAA,aAAa,GAAG;QACdnE,MAAM,EAAE,CAAAsC,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,uBAARA,QAAQ,CAAEtC,MAAM,IAAG,IAAI;AAC/Ba,QAAAA,KAAK,EAAE;OACR;AACH;IAEA,OAAO;AACLb,MAAAA,MAAM,EAAEnE,KAAK,CAACuI,eAAe,IAAID,aAAa,CAACnE,MAAM;MACrDa,KAAK,EAAEoD,MAAM,GAAG,KAAK,GAAGpI,KAAK,CAACwI,UAAU,IAAIF,aAAa,CAACtD;KAC3D;GACF,EAAE,CACDyB,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,QAAQ,CAAEtC,MAAM,EAChB0C,UAAU,EACV/E,IAAI,EACJ9B,KAAK,CAACuI,eAAe,EACrBvI,KAAK,CAACwI,UAAU,CACjB,CAAC;EAEF,IAAMC,WAAW,GAAAjG,cAAA,CAAAA,cAAA,CACZxC,EAAAA,EAAAA,KAAK,CAAC8C,SAAS,CAAA,EAAA,EAAA,EAAA;AAClBF,IAAAA,SAAS,EAAEoE,YAAY,GAAG,IAAI,GAAG;GAClC,CAAA;AACD,EAAA,IAAM0B,QAAQ,GAAG,SAAXA,QAAQA,GAAS;IAAA,IAAAC,sBAAA,EAAArF,eAAA;AACrB,IAAA,CAAAqF,sBAAA,GAAA3I,KAAK,CAACgI,cAAc,MAAAW,IAAAA,IAAAA,sBAAA,KAApBA,KAAAA,CAAAA,IAAAA,sBAAA,CAAApF,IAAA,CAAAvD,KAAK,EAAkBqD,MAAM,CAAC;AAC9B,IAAA,CAAAC,eAAA,GAAAtD,KAAK,CAACoD,QAAQ,MAAAE,IAAAA,IAAAA,eAAA,KAAdA,KAAAA,CAAAA,IAAAA,eAAA,CAAAC,IAAA,CAAAvD,KAAK,EAAYqD,MAAM,CAAC;IACxB8C,SAAS,CAAC,KAAK,CAAC;GACjB;AAED,EAAA,IAAM/C,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,MAA8B,EAAK;IACnDmE,SAAS,CAACnE,MAAM,CAAC;GAClB;AACD,EAAA,IAAMuF,QAAQ,GAAG,SAAXA,QAAQA,GAAS;IACrBzC,SAAS,CAAC,KAAK,CAAC;AAChBqB,IAAAA,SAAS,CAACC,iBAAiB,CAACQ,OAAO,CAAC;GACrC;EAED,oBACEpH,IAAA,CAACV,QAAQ,EAAA;AAAAC,IAAAA,QAAA,EACPF,cAAAA,GAAA,CAACkH,MAAM,EAAA5E,cAAA,CAAAA,cAAA,CAAKxC,EAAAA,EAAAA,KAAK,CAACI,QAAQ,CAACJ,KAAK,CAAA,EAAA,EAAA,EAAA;AAAE2B,MAAAA,OAAO,EAAEuF;AAAc,KAAA,CAAE,CAAC,eAC5DhH,GAAA,CAAC2I,KAAK,EAAA;MACJC,SAAS,EAAE9I,KAAK,CAAC+I,cAAe;AAChCC,MAAAA,KAAK,EAAEhJ,KAAK,CAAC+D,UAAU,CAACiF,KAAK,IAAI,IAAK;AACtCC,MAAAA,IAAI,EAAE/C,MAAO;AACb0C,MAAAA,QAAQ,EAAEA,QAAS;MACnBM,WAAW,EAAElJ,KAAK,CAACkJ,WAAY;MAC/BC,QAAQ,EAAA,IAAA;AACRnE,MAAAA,KAAK,EAAEkD,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAElD,KAAM;AACzBoE,MAAAA,IAAI,EAAEV,QAAS;AACfW,MAAAA,MAAM,EACJrI,SAAS,KAAK,YAAY,GACtB;AACEsI,QAAAA,IAAI,EAAE;AACJnF,UAAAA,MAAM,EAAE+D,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAE/D,MAAM;AAC1BoF,UAAAA,SAAS,EAAE,qBAAqB;AAChCjF,UAAAA,OAAO,EAAE;SACV;AACDkF,QAAAA,OAAO,EAAE;AACPlF,UAAAA,OAAO,EAAE;SACV;AACDmF,QAAAA,MAAM,EAAE;AACNnF,UAAAA,OAAO,EAAE;SACV;AACDoF,QAAAA,MAAM,EAAE;AACNpF,UAAAA,OAAO,EAAE;AACX;AACF,OAAC,GACD;AACEgF,QAAAA,IAAI,EAAE;AACJnF,UAAAA,MAAM,EAAE+D,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAVA,UAAU,CAAE/D;AACtB;OAEP;AAAA/D,MAAAA,QAAA,EAEAY,SAAS,KAAK,UAAU,gBACvBd,GAAA,CAACuF,cAAc,EAAA;AACbX,QAAAA,qBAAqB,EAAEyB,gBAAiB;AACxChG,QAAAA,KAAK,EAAE8C,MAAO;AACdzB,QAAAA,YAAY,EAAEA,YAAa;QAC3BqB,UAAU,EAAEjD,KAAK,CAACiD,UAAW;QAC7BuB,SAAS,EAAExE,KAAK,CAACwE,SAAU;QAC3BT,UAAU,EAAE/D,KAAK,CAAC+D,UAAW;AAC7BX,QAAAA,QAAQ,EAAEA,QAAS;QACnB2B,kBAAkB,EAAE/E,KAAK,CAAC+E,kBAAmB;AAC7CjC,QAAAA,SAAS,EAAE2F;AAAY,OACR,CAAC,gBAElBvI,GAAA,CAACuD,gBAAgB,EAAA;AACflD,QAAAA,KAAK,EAAE8C,MAAO;AACdyB,QAAAA,qBAAqB,EAAEyB,gBAAiB;AACxC3E,QAAAA,YAAY,EAAEA,YAAa;QAC3BqB,UAAU,EAAEjD,KAAK,CAACiD,UAAW;QAC7BuB,SAAS,EAAExE,KAAK,CAACwE,SAAU;QAC3BT,UAAU,EAAE/D,KAAK,CAAC+D,UAAW;AAC7BX,QAAAA,QAAQ,EAAEA,QAAS;QACnB2B,kBAAkB,EAAE/E,KAAK,CAAC+E,kBAAmB;AAC7CjC,QAAAA,SAAS,EAAE2F;OACZ;AACF,KACI,CAAC;AAAA,GACA,CAAC;AAEf;;;;"}
@@ -0,0 +1,89 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+
3
+ import { _ as _objectWithoutProperties, a as _slicedToArray, b as _objectSpread2 } from './_rollupPluginBabelHelpers-BYm17lo8.js';
4
+ import { isObject } from '@dimjs/lang/is-object';
5
+ import { useState } from 'react';
6
+ import { Select } from 'antd';
7
+ import { isUndefinedOrNull, toArray } from '@flatbiz/utils';
8
+ import { T as TreeModal } from './select-modal-Dt4YHH8a.js';
9
+ import { jsx } from 'react/jsx-runtime';
10
+
11
+ var _excluded = ["placeholder", "maxTagCount", "labelInValue"];
12
+ /**
13
+ * 树弹框选择器
14
+ * ```
15
+ * 1. 可通过 treeProps.checkableType 配置多选节点模式(包括返回所有节点、只返回叶子节点、叶子节点&父节点全选只返回父节点),默认只返回叶子节点
16
+ * 2. demo: https://fex.qa.tcshuke.com/docs/admin/main/selector/tree
17
+ * ```
18
+ */
19
+ var TreeModalSelector = function TreeModalSelector(props) {
20
+ var placeholder = props.placeholder,
21
+ maxTagCount = props.maxTagCount,
22
+ labelInValue = props.labelInValue,
23
+ otherProps = _objectWithoutProperties(props, _excluded);
24
+ var placeholderFt = isUndefinedOrNull(placeholder) ? '请选择' : placeholder;
25
+ var _useState = useState(function () {
26
+ var _toArray;
27
+ return ((_toArray = toArray(props.value)) === null || _toArray === void 0 ? void 0 : _toArray.map(function (item) {
28
+ return isObject(item) ? item : {
29
+ label: item,
30
+ value: item
31
+ };
32
+ })) || [];
33
+ }),
34
+ _useState2 = _slicedToArray(_useState, 2),
35
+ showValues = _useState2[0],
36
+ setShowValues = _useState2[1];
37
+ var onInnerChange = function onInnerChange(value) {
38
+ var valueFt = toArray(value).length ? value : undefined;
39
+ if (otherProps.isMultiple == false) {
40
+ var _props$onChange;
41
+ (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, valueFt === null || valueFt === void 0 ? void 0 : valueFt[0]);
42
+ } else {
43
+ var _props$onChange2;
44
+ (_props$onChange2 = props.onChange) === null || _props$onChange2 === void 0 || _props$onChange2.call(props, valueFt);
45
+ }
46
+ };
47
+ var onSelectChange = function onSelectChange(value) {
48
+ if (labelInValue) {
49
+ onInnerChange(value);
50
+ return;
51
+ }
52
+ onInnerChange(value === null || value === void 0 ? void 0 : value.map(function (item) {
53
+ return item.value;
54
+ }));
55
+ };
56
+ var treeModalChange = function treeModalChange(value) {
57
+ if (labelInValue) {
58
+ onInnerChange(value);
59
+ return;
60
+ }
61
+ onInnerChange(value === null || value === void 0 ? void 0 : value.map(function (item) {
62
+ return item.value;
63
+ }));
64
+ };
65
+ return /*#__PURE__*/jsx(TreeModal, _objectSpread2(_objectSpread2({}, otherProps), {}, {
66
+ forceRender: true,
67
+ onChange: treeModalChange,
68
+ onSelectChange: function onSelectChange(values) {
69
+ var _props$onSelectChange;
70
+ setShowValues(values || []);
71
+ (_props$onSelectChange = props.onSelectChange) === null || _props$onSelectChange === void 0 || _props$onSelectChange.call(props, values || []);
72
+ },
73
+ children: /*#__PURE__*/jsx(Select, {
74
+ labelInValue: true,
75
+ style: {
76
+ width: '100%'
77
+ },
78
+ placeholder: placeholderFt,
79
+ maxTagCount: maxTagCount,
80
+ mode: "multiple",
81
+ open: false,
82
+ value: showValues,
83
+ onChange: onSelectChange
84
+ })
85
+ }));
86
+ };
87
+
88
+ export { TreeModalSelector as T };
89
+ //# sourceMappingURL=selector-HbymPXNd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector-HbymPXNd.js","sources":["@flatbiz/antd/src/tree-modal-selector/selector.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { Select } from 'antd';\nimport { isObject } from '@dimjs/lang';\nimport { isUndefinedOrNull, toArray } from '@flatbiz/utils';\nimport { TreeModal } from '../tree-modal/index.js';\nimport type {\n TreeModalProps,\n TreeModelSelectItem,\n} from '../tree-modal/types.js';\nexport type TreeModalSelectorProps = Omit<\n TreeModalProps,\n 'children' | 'forceRender' | 'onChange'\n> & {\n placeholder?: string;\n /**\n * 1. 可指定数量\n * 2. 可设置 responsive,一行自适应显示\n */\n maxTagCount?: number | 'responsive';\n /** 是否返回label+value模式 */\n labelInValue?: boolean;\n onChange?: (values?: TreeModelSelectItem[] | TreeModelSelectItem) => void;\n};\n\n/**\n * 树弹框选择器\n * ```\n * 1. 可通过 treeProps.checkableType 配置多选节点模式(包括返回所有节点、只返回叶子节点、叶子节点&父节点全选只返回父节点),默认只返回叶子节点\n * 2. demo: https://fex.qa.tcshuke.com/docs/admin/main/selector/tree\n * ```\n */\nexport const TreeModalSelector = (props: TreeModalSelectorProps) => {\n const { placeholder, maxTagCount, labelInValue, ...otherProps } = props;\n const placeholderFt = isUndefinedOrNull(placeholder) ? '请选择' : placeholder;\n\n const [showValues, setShowValues] = useState<TreeModelSelectItem[]>(() => {\n return (\n toArray(props.value)?.map((item) => {\n return isObject(item)\n ? (item as TreeModelSelectItem)\n : ({ label: item, value: item } as TreeModelSelectItem);\n }) || []\n );\n });\n\n const onInnerChange = (value: TreeModelSelectItem[]) => {\n const valueFt = toArray(value).length ? value : undefined;\n if (otherProps.isMultiple == false) {\n props.onChange?.(valueFt?.[0]);\n } else {\n props.onChange?.(valueFt);\n }\n };\n\n const onSelectChange = (value) => {\n if (labelInValue) {\n onInnerChange(value);\n return;\n }\n\n onInnerChange(value?.map((item) => item.value));\n };\n const treeModalChange = (value) => {\n if (labelInValue) {\n onInnerChange(value);\n return;\n }\n\n onInnerChange(value?.map((item) => item.value));\n };\n\n return (\n <TreeModal\n {...otherProps}\n forceRender={true}\n onChange={treeModalChange}\n onSelectChange={(values) => {\n setShowValues(values || []);\n props.onSelectChange?.(values || []);\n }}\n >\n <Select\n labelInValue\n style={{ width: '100%' }}\n placeholder={placeholderFt}\n maxTagCount={maxTagCount}\n mode=\"multiple\"\n open={false}\n value={showValues}\n onChange={onSelectChange}\n />\n </TreeModal>\n );\n};\n"],"names":["TreeModalSelector","props","placeholder","maxTagCount","labelInValue","otherProps","_objectWithoutProperties","_excluded","placeholderFt","isUndefinedOrNull","_useState","useState","_toArray","toArray","value","map","item","_isObject","label","_useState2","_slicedToArray","showValues","setShowValues","onInnerChange","valueFt","length","undefined","isMultiple","_props$onChange","onChange","call","_props$onChange2","onSelectChange","treeModalChange","_jsx","TreeModal","_objectSpread","forceRender","values","_props$onSelectChange","children","Select","style","width","mode","open"],"mappings":"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"}
File without changes