@flatbiz/antd 5.0.13 → 5.0.15

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.
@@ -3,7 +3,7 @@
3
3
  import { _ as _objectWithoutProperties, a as _slicedToArray, b as _objectSpread2 } from './_rollupPluginBabelHelpers-BYm17lo8.js';
4
4
  import { hooks } from '@wove/react/hooks';
5
5
  import { isObject } from '@dimjs/lang/is-object';
6
- import { useRef, useState } from 'react';
6
+ import { useRef, useState, useEffect } from 'react';
7
7
  import { Select } from 'antd';
8
8
  import { isUndefinedOrNull, toArray } from '@flatbiz/utils';
9
9
  import { TreeModal } from './tree-modal/index.js';
@@ -27,23 +27,25 @@ var TreeModalSelector = function TreeModalSelector(props) {
27
27
  var dataSourceMapRef = useRef({});
28
28
  var labelKey = ((_otherProps$fieldName = otherProps.fieldNames) === null || _otherProps$fieldName === void 0 ? void 0 : _otherProps$fieldName.label) || 'label';
29
29
  var valueKey = ((_otherProps$fieldName2 = otherProps.fieldNames) === null || _otherProps$fieldName2 === void 0 ? void 0 : _otherProps$fieldName2.value) || 'value';
30
- var _useState = useState(function () {
31
- var _toArray;
32
- return ((_toArray = toArray(props.value)) === null || _toArray === void 0 ? void 0 : _toArray.map(function (item) {
33
- var _dataSourceMapRef$cur;
34
- var objItems = isObject(item) ? item : {
35
- label: item,
36
- value: item
37
- };
38
- return {
39
- value: objItems.value,
40
- label: ((_dataSourceMapRef$cur = dataSourceMapRef.current[objItems.value]) === null || _dataSourceMapRef$cur === void 0 ? void 0 : _dataSourceMapRef$cur[labelKey]) || objItems.value
41
- };
42
- })) || [];
43
- }),
30
+ var _useState = useState(),
44
31
  _useState2 = _slicedToArray(_useState, 2),
45
32
  showValues = _useState2[0],
46
33
  setShowValues = _useState2[1];
34
+ useEffect(function () {
35
+ var _toArray;
36
+ var dataList = ((_toArray = toArray(props.value)) === null || _toArray === void 0 ? void 0 : _toArray.map(function (item) {
37
+ var _dataSourceMapRef$cur;
38
+ var objItems = isObject(item) ? item : {
39
+ label: item,
40
+ value: item
41
+ };
42
+ return {
43
+ value: objItems.value,
44
+ label: ((_dataSourceMapRef$cur = dataSourceMapRef.current[objItems.value]) === null || _dataSourceMapRef$cur === void 0 ? void 0 : _dataSourceMapRef$cur[labelKey]) || objItems.value
45
+ };
46
+ })) || [];
47
+ setShowValues(dataList);
48
+ }, [labelKey, props.value]);
47
49
  var onInnerChange = function onInnerChange(value) {
48
50
  var valueFt = toArray(value).length ? value : undefined;
49
51
  if (otherProps.isMultiple == false) {
@@ -55,6 +57,7 @@ var TreeModalSelector = function TreeModalSelector(props) {
55
57
  }
56
58
  };
57
59
  var onSelectChange = function onSelectChange(value) {
60
+ setShowValues(value);
58
61
  if (labelInValue) {
59
62
  onInnerChange(value);
60
63
  return;
@@ -64,6 +67,7 @@ var TreeModalSelector = function TreeModalSelector(props) {
64
67
  }));
65
68
  };
66
69
  var treeModalChange = function treeModalChange(value) {
70
+ setShowValues(value);
67
71
  if (labelInValue) {
68
72
  onInnerChange(value);
69
73
  return;
@@ -103,4 +107,4 @@ var TreeModalSelector = function TreeModalSelector(props) {
103
107
  };
104
108
 
105
109
  export { TreeModalSelector as T };
106
- //# sourceMappingURL=selector-CxZacuxg.js.map
110
+ //# sourceMappingURL=selector-dbYimxeI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector-dbYimxeI.js","sources":["@flatbiz/antd/src/tree-modal-selector/selector.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\nimport { Select } from 'antd';\nimport { isObject } from '@dimjs/lang';\nimport { isUndefinedOrNull, toArray, type TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\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 dataSourceMapRef = useRef<TPlainObject>({});\n\n const labelKey = otherProps.fieldNames?.label || 'label';\n const valueKey = otherProps.fieldNames?.value || 'value';\n\n const [showValues, setShowValues] = useState<TreeModelSelectItem[]>();\n\n useEffect(() => {\n const dataList =\n toArray(props.value)?.map((item) => {\n const objItems = (\n isObject(item) ? item : { label: item, value: item }\n ) as TreeModelSelectItem;\n return {\n value: objItems.value,\n label:\n dataSourceMapRef.current[objItems.value]?.[labelKey] ||\n objItems.value,\n } as TreeModelSelectItem;\n }) || [];\n setShowValues(dataList);\n }, [labelKey, props.value]);\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 setShowValues(value);\n if (labelInValue) {\n onInnerChange(value);\n return;\n }\n\n onInnerChange(value?.map((item) => item.value));\n };\n const treeModalChange = (value) => {\n setShowValues(value);\n if (labelInValue) {\n onInnerChange(value);\n return;\n }\n onInnerChange(value?.map((item) => item.value));\n };\n\n const onDataSourceChange = hooks.useCallbackRef(\n (_treeDataList: TPlainObject[], mapData: TPlainObject) => {\n dataSourceMapRef.current = mapData;\n const result = showValues\n ?.map((item) => {\n const target = mapData[item.value];\n return target\n ? { label: target[labelKey], value: target[valueKey] }\n : undefined;\n })\n .filter(Boolean) as TreeModelSelectItem[];\n setShowValues(result);\n }\n );\n\n return (\n <TreeModal\n {...otherProps}\n forceRender={true}\n onChange={treeModalChange}\n onDataSourceChange={onDataSourceChange}\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","_otherProps$fieldName","_otherProps$fieldName2","placeholder","maxTagCount","labelInValue","otherProps","_objectWithoutProperties","_excluded","placeholderFt","isUndefinedOrNull","dataSourceMapRef","useRef","labelKey","fieldNames","label","valueKey","value","_useState","useState","_useState2","_slicedToArray","showValues","setShowValues","useEffect","_toArray","dataList","toArray","map","item","_dataSourceMapRef$cur","objItems","_isObject","current","onInnerChange","valueFt","length","undefined","isMultiple","_props$onChange","onChange","call","_props$onChange2","onSelectChange","treeModalChange","onDataSourceChange","_hooks","useCallbackRef","_treeDataList","mapData","result","target","filter","Boolean","_jsx","TreeModal","_objectSpread","forceRender","children","Select","style","width","mode","open"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tabs-D2IfpmxW.js","sources":["@flatbiz/antd/src/tabs-sticky/tabs.tsx"],"sourcesContent":["import { type ReactElement, useEffect, useMemo, useRef, useState } from 'react';\nimport { useSize } from 'ahooks';\nimport { Affix, type GetProps, Tabs } from 'antd';\nimport './style.less';\n\ntype TabsType = GetProps<typeof Tabs>;\n\nexport type TabsStickyProps = {\n tabsProps: TabsType;\n /** tabs头部布局 */\n headerRender?: ReactElement;\n /** 点击tabItem后,tab跳到顶部吸顶效果;默认值true */\n clickTabToTop?: boolean;\n};\n\n/**\n * Tabs吸顶组件\n * ```\n * 1. 组件根节点设置了 height: 100%、overflow: auto;所以外部包裹元素必须要有高度\n * ```\n */\nexport const TabsSticky = (props: TabsStickyProps) => {\n const tabsProps = props.tabsProps;\n\n const [activeKey, setActiveKey] = useState(tabsProps.defaultActiveKey);\n const headerRef = useRef<HTMLDivElement>(null);\n const affixRef = useRef<any>(null);\n const affixedFlagRef = useRef<boolean>();\n\n const headerSize = useSize(headerRef);\n\n const scollNodeRef = useRef<any>(null);\n\n const scollNodeSize = useSize(scollNodeRef);\n const affixRefSize = useSize(affixRef);\n\n useEffect(() => {\n if (tabsProps.activeKey) {\n setActiveKey(tabsProps.activeKey);\n }\n }, [tabsProps.activeKey]);\n\n const onChange = (activeKey) => {\n if (!tabsProps.activeKey) {\n setActiveKey(activeKey);\n }\n tabsProps.onChange?.(activeKey);\n const top = headerSize?.height || 0;\n if (affixedFlagRef.current) {\n scollNodeRef.current?.scrollTo({\n top,\n });\n } else {\n if (props.clickTabToTop !== false) {\n scollNodeRef.current?.scrollTo({\n top,\n });\n }\n }\n };\n\n const minHeight = (scollNodeSize?.height || 0) - (affixRefSize?.height || 0);\n\n const stickyTabItems = useMemo(() => {\n return tabsProps.items?.map((item) => {\n return {\n ...item,\n children: null,\n };\n });\n }, [tabsProps.items]);\n\n const contentTabItems = useMemo(() => {\n return tabsProps.items?.map((item) => {\n return {\n ...item,\n children: <div style={{ minHeight }}>{item.children}</div>,\n };\n });\n }, [tabsProps.items, minHeight]);\n\n return (\n <div ref={scollNodeRef} style={{ height: '100%', overflowY: 'auto' }}>\n <div ref={headerRef}>{props.headerRender}</div>\n <Affix\n offsetTop={0}\n target={() => scollNodeRef.current as HTMLElement}\n onChange={(affixed) => {\n affixedFlagRef.current = affixed;\n }}\n >\n <div ref={affixRef}>\n <Tabs\n {...tabsProps}\n activeKey={activeKey}\n items={stickyTabItems}\n tabBarStyle={{ ...tabsProps.tabBarStyle, margin: 0 }}\n style={{\n backgroundColor: 'var(--block-bg-color)',\n ...tabsProps.style,\n }}\n onChange={onChange}\n />\n </div>\n </Affix>\n <Tabs\n activeKey={activeKey}\n className=\"tabs-sticky-contents\"\n items={contentTabItems}\n />\n </div>\n );\n};\n"],"names":["TabsSticky","props","tabsProps","_useState","useState","defaultActiveKey","_useState2","_slicedToArray","activeKey","setActiveKey","headerRef","useRef","affixRef","affixedFlagRef","headerSize","useSize","scollNodeRef","scollNodeSize","affixRefSize","useEffect","onChange","_tabsProps$onChange","call","top","height","current","_scollNodeRef$current","scrollTo","clickTabToTop","_scollNodeRef$current2","minHeight","stickyTabItems","useMemo","_tabsProps$items","items","map","item","_objectSpread","children","contentTabItems","_tabsProps$items2","_jsx","style","_jsxs","ref","overflowY","headerRender","Affix","offsetTop","target","affixed","Tabs","tabBarStyle","margin","backgroundColor","className"],"mappings":"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"}
1
+ {"version":3,"file":"tabs-D2IfpmxW.js","sources":["@flatbiz/antd/src/tabs-sticky/tabs.tsx"],"sourcesContent":["import { type ReactElement, useEffect, useMemo, useRef, useState } from 'react';\nimport { useSize } from 'ahooks';\nimport { Affix, type GetProps, Tabs } from 'antd';\nimport './style.less';\n\ntype TabsType = GetProps<typeof Tabs>;\n\nexport type TabsStickyProps = {\n tabsProps: Omit<TabsType, 'tabPosition'>;\n /** tabs头部布局 */\n headerRender?: ReactElement;\n /** 点击tabItem后,tab跳到顶部吸顶效果;默认值true */\n clickTabToTop?: boolean;\n};\n\n/**\n * Tabs吸顶组件\n * ```\n * 1. 组件根节点设置了 height: 100%、overflow: auto;所以外部包裹元素必须要有高度\n * ```\n */\nexport const TabsSticky = (props: TabsStickyProps) => {\n const tabsProps = props.tabsProps;\n\n const [activeKey, setActiveKey] = useState(tabsProps.defaultActiveKey);\n const headerRef = useRef<HTMLDivElement>(null);\n const affixRef = useRef<any>(null);\n const affixedFlagRef = useRef<boolean>();\n\n const headerSize = useSize(headerRef);\n\n const scollNodeRef = useRef<any>(null);\n\n const scollNodeSize = useSize(scollNodeRef);\n const affixRefSize = useSize(affixRef);\n\n useEffect(() => {\n if (tabsProps.activeKey) {\n setActiveKey(tabsProps.activeKey);\n }\n }, [tabsProps.activeKey]);\n\n const onChange = (activeKey) => {\n if (!tabsProps.activeKey) {\n setActiveKey(activeKey);\n }\n tabsProps.onChange?.(activeKey);\n const top = headerSize?.height || 0;\n if (affixedFlagRef.current) {\n scollNodeRef.current?.scrollTo({\n top,\n });\n } else {\n if (props.clickTabToTop !== false) {\n scollNodeRef.current?.scrollTo({\n top,\n });\n }\n }\n };\n\n const minHeight = (scollNodeSize?.height || 0) - (affixRefSize?.height || 0);\n\n const stickyTabItems = useMemo(() => {\n return tabsProps.items?.map((item) => {\n return {\n ...item,\n children: null,\n };\n });\n }, [tabsProps.items]);\n\n const contentTabItems = useMemo(() => {\n return tabsProps.items?.map((item) => {\n return {\n ...item,\n children: <div style={{ minHeight }}>{item.children}</div>,\n };\n });\n }, [tabsProps.items, minHeight]);\n\n return (\n <div ref={scollNodeRef} style={{ height: '100%', overflowY: 'auto' }}>\n <div ref={headerRef}>{props.headerRender}</div>\n <Affix\n offsetTop={0}\n target={() => scollNodeRef.current as HTMLElement}\n onChange={(affixed) => {\n affixedFlagRef.current = affixed;\n }}\n >\n <div ref={affixRef}>\n <Tabs\n {...tabsProps}\n activeKey={activeKey}\n items={stickyTabItems}\n tabBarStyle={{ ...tabsProps.tabBarStyle, margin: 0 }}\n style={{\n backgroundColor: 'var(--block-bg-color)',\n ...tabsProps.style,\n }}\n onChange={onChange}\n />\n </div>\n </Affix>\n <Tabs\n activeKey={activeKey}\n className=\"tabs-sticky-contents\"\n items={contentTabItems}\n />\n </div>\n );\n};\n"],"names":["TabsSticky","props","tabsProps","_useState","useState","defaultActiveKey","_useState2","_slicedToArray","activeKey","setActiveKey","headerRef","useRef","affixRef","affixedFlagRef","headerSize","useSize","scollNodeRef","scollNodeSize","affixRefSize","useEffect","onChange","_tabsProps$onChange","call","top","height","current","_scollNodeRef$current","scrollTo","clickTabToTop","_scollNodeRef$current2","minHeight","stickyTabItems","useMemo","_tabsProps$items","items","map","item","_objectSpread","children","contentTabItems","_tabsProps$items2","_jsx","style","_jsxs","ref","overflowY","headerRender","Affix","offsetTop","target","affixed","Tabs","tabBarStyle","margin","backgroundColor","className"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { ReactElement } from 'react';
3
3
 
4
4
  export type TabsType = GetProps<typeof Tabs>;
5
5
  export type TabsStickyProps = {
6
- tabsProps: TabsType;
6
+ tabsProps: Omit<TabsType, "tabPosition">;
7
7
  /** tabs头部布局 */
8
8
  headerRender?: ReactElement;
9
9
  /** 点击tabItem后,tab跳到顶部吸顶效果;默认值true */
@@ -290,7 +290,7 @@ var TreeModalContent = function TreeModalContent(props) {
290
290
  return item.value !== value;
291
291
  });
292
292
  setValues(targetList);
293
- (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, values);
293
+ (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, targetList);
294
294
  };
295
295
  fbaHooks.useEffectCustom(function () {
296
296
  var values = toArray(props.value).map(function (item) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.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-content.tsx","@flatbiz/antd/src/tree-modal/select-modal.tsx","@flatbiz/antd/src/tree-modal/index.ts"],"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 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.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 }}>\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 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.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, useRef, useState } from 'react';\nimport { isObject } from '@dimjs/lang';\nimport { type TAny, type 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 { TreeModalContentProps, 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 TreeModalContent = (props: TreeModalContentProps) => {\n const { isMultiple } = props;\n const labelKey = props.fieldNames?.label || 'label';\n const valueKey = props.fieldNames?.value || 'value';\n const dataSourceMapRef = useRef<TPlainObject>({});\n\n const screenType = fbaHooks.useResponsivePoint() || '';\n\n const direction = screenType === 'xs' ? 'vertical' : 'horizontal';\n const isMultipleFt = isUndefinedOrNull(isMultiple) ? true : isMultiple;\n\n const [values, setValues] = useState<TreeModelSelectItem[]>();\n\n const onDeleteItem = (value) => {\n const targetList = values?.filter((item) => item.value !== value);\n setValues(targetList);\n props.onChange?.(values);\n };\n\n fbaHooks.useEffectCustom(() => {\n const values = toArray<TAny>(props.value).map((item) => {\n const target = isObject(item) ? item : { label: item, value: item };\n const value = target.value;\n return {\n value: value,\n label: dataSourceMapRef.current[value]?.[labelKey] || '',\n };\n });\n setValues(values);\n }, [props.value]);\n\n const treePropsFt = {\n ...props.treeProps,\n checkable: isMultipleFt ? true : false,\n };\n\n const onChange = (values?: TreeModelSelectItem[]) => {\n setValues(values);\n props.onChange?.(values);\n };\n\n const onChangeDataSource = hooks.useCallbackRef(\n (treeDataList: TPlainObject[], mapData: TPlainObject) => {\n dataSourceMapRef.current = mapData;\n const result = values\n ?.map((item) => {\n const target = mapData[item.value];\n return target\n ? { label: target[labelKey], value: target[valueKey] }\n : undefined;\n })\n .filter(Boolean) as TreeModelSelectItem[];\n setValues(result);\n props.onDataSourceChange?.(treeDataList, mapData);\n }\n );\n\n return (\n <Fragment>\n {direction === 'vertical' ? (\n <VerticalLayout\n value={values}\n onDeleteItem={onDeleteItem}\n fieldNames={props.fieldNames}\n onRequest={props.onRequest}\n textConfig={props.textConfig}\n onChange={onChange}\n onChangeDataSource={onChangeDataSource}\n treeProps={treePropsFt}\n ></VerticalLayout>\n ) : (\n <HorizontalLayout\n value={values}\n onDeleteItem={onDeleteItem}\n fieldNames={props.fieldNames}\n onRequest={props.onRequest}\n textConfig={props.textConfig}\n onChange={onChange}\n onChangeDataSource={onChangeDataSource}\n treeProps={treePropsFt}\n />\n )}\n </Fragment>\n );\n};\n","import { Fragment, useMemo, useRef, useState } from 'react';\nimport { useSize } from 'ahooks';\nimport { Modal } from 'antd';\nimport type { TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { TreeModalContent } from './select-modal-content.jsx';\nimport type { TreeModalProps, TreeModelSelectItem } from './types.js';\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' } = props;\n const [isOpen, setIsOpen] = useState(false);\n\n const htmlSize = useSize(document.querySelector('html'));\n const screenType = fbaHooks.useResponsivePoint() || '';\n\n const direction = screenType === 'xs' ? 'vertical' : 'horizontal';\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 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 onSubmit = () => {\n props.onChange?.(values);\n setIsOpen(false);\n };\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 20px 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 <TreeModalContent\n {...props}\n onChange={(values) => {\n setValues(values);\n }}\n />\n </Modal>\n </Fragment>\n );\n};\n","import { attachPropertiesToComponent } from '@flatbiz/utils';\nimport { TreeModal as TreeModalInner } from './select-modal.jsx';\nimport { TreeModalContent } from './select-modal-content.jsx';\n\nexport const TreeModal = attachPropertiesToComponent(TreeModalInner, {\n Content: TreeModalContent,\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","onChangeDataSource","width","display","flexDirection","flexShrink","fontWeight","length","replace","concat","flex","VerticalLayout","marginTop","TreeModalContent","isMultiple","labelKey","dataSourceMapRef","useRef","screenType","fbaHooks","useResponsivePoint","isMultipleFt","isUndefinedOrNull","_useState","useState","_useState2","_slicedToArray","setValues","targetList","filter","useEffectCustom","_dataSourceMapRef$cur","target","_isObject","current","treePropsFt","_props$onChange2","useCallbackRef","treeDataList","mapData","_props$onDataSourceCh","result","Boolean","onDataSourceChange","TreeModal","_props$size","isOpen","setIsOpen","htmlSize","useSize","document","querySelector","handleOnClick","Action","type","_useState3","_useState4","originalValuesRef","customSize","useMemo","isXsSm","includes","sizeCalculate","modalBodyHeight","modalWidth","onSubmit","onCancel","Modal","className","modalClassName","title","open","forceRender","centered","onOk","styles","body","maxHeight","content","header","footer","attachPropertiesToComponent","TreeModalInner","Content"],"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,KAYhC,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;AACF,YAAA,CAAAc,qBAAA,GAAA3E,KAAK,CAAC8E,kBAAkB,cAAAH,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;AACLqE,QAAAA,KAAK,EAAE,KAAK;AACZX,QAAAA,QAAQ,EAAE,QAAQ;AAClBD,QAAAA,MAAM,EAAE,MAAM;AACda,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,aAAa,EAAE,QAAQ;AACvBC,QAAAA,UAAU,EAAE;OACZ;AAAA9E,MAAAA,QAAA,gBAEFF,GAAA,CAAA,KAAA,EAAA;AAAKQ,QAAAA,KAAK,EAAE;AAAEQ,UAAAA,QAAQ,EAAE,EAAE;AAAEiE,UAAAA,UAAU,EAAE,KAAK;AAAEhE,UAAAA,YAAY,EAAE;SAAK;QAAAf,QAAA,EAC/DH,aAAa,CAACmF,MAAM,GAAG,CAAC,gBACvBlF,GAAA,CAACC,QAAQ,EAAA;AAAAC,UAAAA,QAAA,EACN4D,oBAAoB,GACjBA,oBAAoB,CAACqB,OAAO,CAC1B,SAAS,EAAA,EAAA,CAAAC,MAAA,CACN,CAAArF,aAAa,aAAbA,aAAa,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,aAAa,CAAEmF,MAAM,KAAI,EAAE,CAChC,CAAC,GAAAE,oBAAAA,CAAAA,MAAA,CACKrF,aAAa,KAAbA,IAAAA,IAAAA,aAAa,KAAbA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,aAAa,CAAEmF,MAAM;SACvB,CAAC,GAEXnB,WAAW,IAAI;OAEd,CAAC,eACN/D,GAAA,CAAA,KAAA,EAAA;AAAKQ,QAAAA,KAAK,EAAE;AAAE0D,UAAAA,QAAQ,EAAE,MAAM;AAAEmB,UAAAA,IAAI,EAAE;SAAI;QAAAnF,QAAA,eACxCF,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;;AClFM,IAAM4D,cAAc,GAAG,SAAjBA,cAAcA,CAAIxF,KAY9B,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;AACF,YAAA,CAAAc,qBAAA,GAAA3E,KAAK,CAAC8E,kBAAkB,cAAAH,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;AAAE+E,QAAAA,SAAS,EAAE;OAAK;AAAArF,MAAAA,QAAA,gBAC5BF,GAAA,CAAA,KAAA,EAAA;AAAKQ,QAAAA,KAAK,EAAE;AAAEQ,UAAAA,QAAQ,EAAE,EAAE;AAAEiE,UAAAA,UAAU,EAAE,KAAK;AAAEhE,UAAAA,YAAY,EAAE;SAAK;QAAAf,QAAA,EAC/DH,aAAa,CAACmF,MAAM,GAAG,CAAC,gBACvBlF,GAAA,CAACC,QAAQ,EAAA;AAAAC,UAAAA,QAAA,EACN4D,oBAAoB,GACjBA,oBAAoB,CAACqB,OAAO,CAC1B,SAAS,EAAA,EAAA,CAAAC,MAAA,CACN,CAAArF,aAAa,aAAbA,aAAa,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAbA,aAAa,CAAEmF,MAAM,KAAI,EAAE,CAChC,CAAC,GAAAE,oBAAAA,CAAAA,MAAA,CACKrF,aAAa,KAAbA,IAAAA,IAAAA,aAAa,KAAbA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,aAAa,CAAEmF,MAAM;AAAE,SACzB,CAAC,GAEXnB;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;;ACtDM,IAAM8D,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAI1F,KAA4B,EAAK;EAAA,IAAA0D,iBAAA,EAAAC,kBAAA;AAChE,EAAA,IAAQgC,UAAU,GAAK3F,KAAK,CAApB2F,UAAU;AAClB,EAAA,IAAMC,QAAQ,GAAG,CAAAlC,CAAAA,iBAAA,GAAA1D,KAAK,CAACiD,UAAU,MAAA,IAAA,IAAAS,iBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAA,CAAkBlD,KAAK,KAAI,OAAO;AACnD,EAAA,IAAMoD,QAAQ,GAAG,CAAAD,CAAAA,kBAAA,GAAA3D,KAAK,CAACiD,UAAU,MAAA,IAAA,IAAAU,kBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,kBAAA,CAAkBpD,KAAK,KAAI,OAAO;AACnD,EAAA,IAAMsF,gBAAgB,GAAGC,MAAM,CAAe,EAAE,CAAC;EAEjD,IAAMC,UAAU,GAAGC,QAAQ,CAACC,kBAAkB,EAAE,IAAI,EAAE;EAEtD,IAAMjF,SAAS,GAAG+E,UAAU,KAAK,IAAI,GAAG,UAAU,GAAG,YAAY;EACjE,IAAMG,YAAY,GAAGC,iBAAiB,CAACR,UAAU,CAAC,GAAG,IAAI,GAAGA,UAAU;AAEtE,EAAA,IAAAS,SAAA,GAA4BC,QAAQ,EAAyB;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAtD/C,IAAAA,MAAM,GAAAiD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,SAAS,GAAAF,UAAA,CAAA,CAAA,CAAA;AAExB,EAAA,IAAM1E,YAAY,GAAG,SAAfA,YAAYA,CAAIrB,KAAK,EAAK;AAAA,IAAA,IAAA+C,eAAA;IAC9B,IAAMmD,UAAU,GAAGpD,MAAM,KAANA,IAAAA,IAAAA,MAAM,KAANA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,MAAM,CAAEqD,MAAM,CAAC,UAACpG,IAAI,EAAA;AAAA,MAAA,OAAKA,IAAI,CAACC,KAAK,KAAKA,KAAK;KAAC,CAAA;IACjEiG,SAAS,CAACC,UAAU,CAAC;AACrB,IAAA,CAAAnD,eAAA,GAAAtD,KAAK,CAACoD,QAAQ,MAAAE,IAAAA,IAAAA,eAAA,KAAdA,KAAAA,CAAAA,IAAAA,eAAA,CAAAC,IAAA,CAAAvD,KAAK,EAAYqD,MAAM,CAAC;GACzB;EAED2C,QAAQ,CAACW,eAAe,CAAC,YAAM;AAC7B,IAAA,IAAMtD,MAAM,GAAGG,OAAO,CAAOxD,KAAK,CAACO,KAAK,CAAC,CAACF,GAAG,CAAC,UAACC,IAAI,EAAK;AAAA,MAAA,IAAAsG,qBAAA;MACtD,IAAMC,MAAM,GAAGC,QAAA,CAASxG,IAAI,CAAC,GAAGA,IAAI,GAAG;AAAEE,QAAAA,KAAK,EAAEF,IAAI;AAAEC,QAAAA,KAAK,EAAED;OAAM;AACnE,MAAA,IAAMC,KAAK,GAAGsG,MAAM,CAACtG,KAAK;MAC1B,OAAO;AACLA,QAAAA,KAAK,EAAEA,KAAK;AACZC,QAAAA,KAAK,EAAE,CAAAoG,CAAAA,qBAAA,GAAAf,gBAAgB,CAACkB,OAAO,CAACxG,KAAK,CAAC,cAAAqG,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAA/BA,qBAAA,CAAkChB,QAAQ,CAAC,KAAI;OACvD;AACH,KAAC,CAAC;IACFY,SAAS,CAACnD,MAAM,CAAC;AACnB,GAAC,EAAE,CAACrD,KAAK,CAACO,KAAK,CAAC,CAAC;EAEjB,IAAMyG,WAAW,GAAAxE,cAAA,CAAAA,cAAA,CACZxC,EAAAA,EAAAA,KAAK,CAAC8C,SAAS,CAAA,EAAA,EAAA,EAAA;AAClBF,IAAAA,SAAS,EAAEsD,YAAY,GAAG,IAAI,GAAG;GAClC,CAAA;AAED,EAAA,IAAM9C,QAAQ,GAAG,SAAXA,QAAQA,CAAIC,MAA8B,EAAK;AAAA,IAAA,IAAA4D,gBAAA;IACnDT,SAAS,CAACnD,MAAM,CAAC;AACjB,IAAA,CAAA4D,gBAAA,GAAAjH,KAAK,CAACoD,QAAQ,MAAA6D,IAAAA,IAAAA,gBAAA,KAAdA,KAAAA,CAAAA,IAAAA,gBAAA,CAAA1D,IAAA,CAAAvD,KAAK,EAAYqD,MAAM,CAAC;GACzB;EAED,IAAMyB,kBAAkB,GAAG1C,KAAA,CAAM8E,cAAc,CAC7C,UAACC,YAA4B,EAAEC,OAAqB,EAAK;AAAA,IAAA,IAAAC,qBAAA;IACvDxB,gBAAgB,CAACkB,OAAO,GAAGK,OAAO;AAClC,IAAA,IAAME,MAAM,GAAGjE,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CACjBhD,GAAG,CAAC,UAACC,IAAI,EAAK;AACd,MAAA,IAAMuG,MAAM,GAAGO,OAAO,CAAC9G,IAAI,CAACC,KAAK,CAAC;AAClC,MAAA,OAAOsG,MAAM,GACT;AAAErG,QAAAA,KAAK,EAAEqG,MAAM,CAACjB,QAAQ,CAAC;QAAErF,KAAK,EAAEsG,MAAM,CAACjD,QAAQ;AAAE,OAAC,GACpDtB,SAAS;AACf,KAAC,CAAC,CACDoE,MAAM,CAACa,OAAO,CAA0B;IAC3Cf,SAAS,CAACc,MAAM,CAAC;AACjB,IAAA,CAAAD,qBAAA,GAAArH,KAAK,CAACwH,kBAAkB,cAAAH,qBAAA,KAAA,KAAA,CAAA,IAAxBA,qBAAA,CAAA9D,IAAA,CAAAvD,KAAK,EAAsBmH,YAAY,EAAEC,OAAO,CAAC;AACnD,GACF,CAAC;EAED,oBACElH,GAAA,CAACC,QAAQ,EAAA;AAAAC,IAAAA,QAAA,EACNY,SAAS,KAAK,UAAU,gBACvBd,GAAA,CAACsF,cAAc,EAAA;AACbjF,MAAAA,KAAK,EAAE8C,MAAO;AACdzB,MAAAA,YAAY,EAAEA,YAAa;MAC3BqB,UAAU,EAAEjD,KAAK,CAACiD,UAAW;MAC7BuB,SAAS,EAAExE,KAAK,CAACwE,SAAU;MAC3BT,UAAU,EAAE/D,KAAK,CAAC+D,UAAW;AAC7BX,MAAAA,QAAQ,EAAEA,QAAS;AACnB0B,MAAAA,kBAAkB,EAAEA,kBAAmB;AACvChC,MAAAA,SAAS,EAAEkE;AAAY,KACR,CAAC,gBAElB9G,GAAA,CAACuD,gBAAgB,EAAA;AACflD,MAAAA,KAAK,EAAE8C,MAAO;AACdzB,MAAAA,YAAY,EAAEA,YAAa;MAC3BqB,UAAU,EAAEjD,KAAK,CAACiD,UAAW;MAC7BuB,SAAS,EAAExE,KAAK,CAACwE,SAAU;MAC3BT,UAAU,EAAE/D,KAAK,CAAC+D,UAAW;AAC7BX,MAAAA,QAAQ,EAAEA,QAAS;AACnB0B,MAAAA,kBAAkB,EAAEA,kBAAmB;AACvChC,MAAAA,SAAS,EAAEkE;KACZ;AACF,GACO,CAAC;AAEf,CAAC;;AC5FD;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMS,WAAS,GAAG,SAAZA,SAASA,CAAIzH,KAAqB,EAAK;AAClD,EAAA,IAAA0H,WAAA,GAA2B1H,KAAK,CAAxB8B,IAAI;AAAJA,IAAAA,IAAI,GAAA4F,WAAA,KAAG,KAAA,CAAA,GAAA,OAAO,GAAAA,WAAA;AACtB,EAAA,IAAAtB,SAAA,GAA4BC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAApCuB,IAAAA,MAAM,GAAArB,UAAA,CAAA,CAAA,CAAA;AAAEsB,IAAAA,SAAS,GAAAtB,UAAA,CAAA,CAAA,CAAA;EAExB,IAAMuB,QAAQ,GAAGC,OAAO,CAACC,QAAQ,CAACC,aAAa,CAAC,MAAM,CAAC,CAAC;EACxD,IAAMjC,UAAU,GAAGC,QAAQ,CAACC,kBAAkB,EAAE,IAAI,EAAE;EAEtD,IAAMjF,SAAS,GAAG+E,UAAU,KAAK,IAAI,GAAG,UAAU,GAAG,YAAY;AAEjE,EAAA,IAAMkC,aAAa,GAAG7F,KAAA,CAAM8E,cAAc,CAAC,YAAM;IAC/CU,SAAS,CAAC,IAAI,CAAC;AACjB,GAAC,CAAC;AAEF,EAAA,IAAMM,MAAM,GAAGlI,KAAK,CAACI,QAAQ,CAAC+H,IAAI;AAElC,EAAA,IAAAC,UAAA,GAA4B/B,QAAQ,EAAyB;IAAAgC,UAAA,GAAA9B,cAAA,CAAA6B,UAAA,EAAA,CAAA,CAAA;AAAtD/E,IAAAA,MAAM,GAAAgF,UAAA,CAAA,CAAA,CAAA;AAAE7B,IAAAA,SAAS,GAAA6B,UAAA,CAAA,CAAA,CAAA;AACxB,EAAA,IAAMC,iBAAiB,GAAGxC,MAAM,CAAwB,EAAE,CAAC;AAE3D,EAAA,IAAMyC,UAAU,GAAGC,OAAO,CAAC,YAAM;AAC/B,IAAA,IAAI,EAACX,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,IAAAA,QAAQ,CAAE1D,MAAM,CAAI,IAAA,CAAC4B,UAAU,EAAE,OAAOzD,SAAS;IACtD,IAAMmG,MAAM,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAACC,QAAQ,CAAC3C,UAAU,CAAC;IAChD,IAAI4C,aAA2B,GAAG,EAAE;IACpC,IAAI7G,IAAI,IAAI,OAAO,EAAE;AACnB6G,MAAAA,aAAa,GAAG;QACdxE,MAAM,EAAE,CAAA0D,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,uBAARA,QAAQ,CAAE1D,MAAM,IAAG,IAAI;AAC/BY,QAAAA,KAAK,EAAE;OACR;AACH,KAAC,MAAM,IAAIjD,IAAI,IAAI,OAAO,EAAE;AAC1B6G,MAAAA,aAAa,GAAG;QACdxE,MAAM,EAAE,CAAA0D,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,uBAARA,QAAQ,CAAE1D,MAAM,IAAG,IAAI;AAC/BY,QAAAA,KAAK,EAAE;OACR;AACH,KAAC,MAAM,IAAIjD,IAAI,IAAI,QAAQ,EAAE;AAC3B6G,MAAAA,aAAa,GAAG;QACdxE,MAAM,EAAE,CAAA0D,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,uBAARA,QAAQ,CAAE1D,MAAM,IAAG,IAAI;AAC/BY,QAAAA,KAAK,EAAE;OACR;AACH;IAEA,OAAO;AACLZ,MAAAA,MAAM,EAAEnE,KAAK,CAAC4I,eAAe,IAAID,aAAa,CAACxE,MAAM;MACrDY,KAAK,EAAE0D,MAAM,GAAG,KAAK,GAAGzI,KAAK,CAAC6I,UAAU,IAAIF,aAAa,CAAC5D;KAC3D;GACF,EAAE,CACD8C,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,QAAQ,CAAE1D,MAAM,EAChB4B,UAAU,EACVjE,IAAI,EACJ9B,KAAK,CAAC4I,eAAe,EACrB5I,KAAK,CAAC6I,UAAU,CACjB,CAAC;AAEF,EAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,GAAS;AAAA,IAAA,IAAAxF,eAAA;AACrB,IAAA,CAAAA,eAAA,GAAAtD,KAAK,CAACoD,QAAQ,MAAAE,IAAAA,IAAAA,eAAA,KAAdA,KAAAA,CAAAA,IAAAA,eAAA,CAAAC,IAAA,CAAAvD,KAAK,EAAYqD,MAAM,CAAC;IACxBuE,SAAS,CAAC,KAAK,CAAC;GACjB;AAED,EAAA,IAAMmB,QAAQ,GAAG,SAAXA,QAAQA,GAAS;IACrBnB,SAAS,CAAC,KAAK,CAAC;AAChBpB,IAAAA,SAAS,CAAC8B,iBAAiB,CAACvB,OAAO,CAAC;GACrC;EAED,oBACElG,IAAA,CAACV,QAAQ,EAAA;AAAAC,IAAAA,QAAA,EACPF,cAAAA,GAAA,CAACgI,MAAM,EAAA1F,cAAA,CAAAA,cAAA,CAAKxC,EAAAA,EAAAA,KAAK,CAACI,QAAQ,CAACJ,KAAK,CAAA,EAAA,EAAA,EAAA;AAAE2B,MAAAA,OAAO,EAAEsG;AAAc,KAAA,CAAE,CAAC,eAC5D/H,GAAA,CAAC8I,KAAK,EAAA;MACJC,SAAS,EAAEjJ,KAAK,CAACkJ,cAAe;AAChCC,MAAAA,KAAK,EAAEnJ,KAAK,CAAC+D,UAAU,CAACoF,KAAK,IAAI,IAAK;AACtCC,MAAAA,IAAI,EAAEzB,MAAO;AACboB,MAAAA,QAAQ,EAAEA,QAAS;MACnBM,WAAW,EAAErJ,KAAK,CAACqJ,WAAY;MAC/BC,QAAQ,EAAA,IAAA;AACRvE,MAAAA,KAAK,EAAEwD,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAExD,KAAM;AACzBwE,MAAAA,IAAI,EAAET,QAAS;AACfU,MAAAA,MAAM,EACJxI,SAAS,KAAK,YAAY,GACtB;AACEyI,QAAAA,IAAI,EAAE;AACJtF,UAAAA,MAAM,EAAEoE,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,UAAU,CAAEpE,MAAM;AAC1BuF,UAAAA,SAAS,EAAE,qBAAqB;AAChCpF,UAAAA,OAAO,EAAE;SACV;AACDqF,QAAAA,OAAO,EAAE;AACPrF,UAAAA,OAAO,EAAE;SACV;AACDsF,QAAAA,MAAM,EAAE;AACNtF,UAAAA,OAAO,EAAE;SACV;AACDuF,QAAAA,MAAM,EAAE;AACNvF,UAAAA,OAAO,EAAE;AACX;AACF,OAAC,GACD;AACEmF,QAAAA,IAAI,EAAE;AACJtF,UAAAA,MAAM,EAAEoE,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAVA,UAAU,CAAEpE;AACtB;OAEP;MAAA/D,QAAA,eAEDF,GAAA,CAACwF,gBAAgB,EAAAlD,cAAA,CAAAA,cAAA,CAAA,EAAA,EACXxC,KAAK,CAAA,EAAA,EAAA,EAAA;AACToD,QAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAGC,MAAM,EAAK;UACpBmD,SAAS,CAACnD,MAAM,CAAC;AACnB;OACD,CAAA;AAAC,KACG,CAAC;AAAA,GACA,CAAC;AAEf,CAAC;;ICvHYoE,SAAS,GAAGqC,2BAA2B,CAACC,WAAc,EAAE;AACnEC,EAAAA,OAAO,EAAEtE;AACX,CAAC;;;;"}
1
+ {"version":3,"file":"index.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-content.tsx","@flatbiz/antd/src/tree-modal/select-modal.tsx","@flatbiz/antd/src/tree-modal/index.ts"],"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 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.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 }}>\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 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.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, useRef, useState } from 'react';\nimport { isObject } from '@dimjs/lang';\nimport { type TAny, type 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 { TreeModalContentProps, 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 TreeModalContent = (props: TreeModalContentProps) => {\n const { isMultiple } = props;\n const labelKey = props.fieldNames?.label || 'label';\n const valueKey = props.fieldNames?.value || 'value';\n const dataSourceMapRef = useRef<TPlainObject>({});\n\n const screenType = fbaHooks.useResponsivePoint() || '';\n\n const direction = screenType === 'xs' ? 'vertical' : 'horizontal';\n const isMultipleFt = isUndefinedOrNull(isMultiple) ? true : isMultiple;\n\n const [values, setValues] = useState<TreeModelSelectItem[]>();\n\n const onDeleteItem = (value) => {\n const targetList = values?.filter((item) => item.value !== value);\n setValues(targetList);\n props.onChange?.(targetList);\n };\n\n fbaHooks.useEffectCustom(() => {\n const values = toArray<TAny>(props.value).map((item) => {\n const target = isObject(item) ? item : { label: item, value: item };\n const value = target.value;\n return {\n value: value,\n label: dataSourceMapRef.current[value]?.[labelKey] || '',\n };\n });\n setValues(values);\n }, [props.value]);\n\n const treePropsFt = {\n ...props.treeProps,\n checkable: isMultipleFt ? true : false,\n };\n\n const onChange = (values?: TreeModelSelectItem[]) => {\n setValues(values);\n props.onChange?.(values);\n };\n\n const onChangeDataSource = hooks.useCallbackRef(\n (treeDataList: TPlainObject[], mapData: TPlainObject) => {\n dataSourceMapRef.current = mapData;\n const result = values\n ?.map((item) => {\n const target = mapData[item.value];\n return target\n ? { label: target[labelKey], value: target[valueKey] }\n : undefined;\n })\n .filter(Boolean) as TreeModelSelectItem[];\n setValues(result);\n props.onDataSourceChange?.(treeDataList, mapData);\n }\n );\n\n return (\n <Fragment>\n {direction === 'vertical' ? (\n <VerticalLayout\n value={values}\n onDeleteItem={onDeleteItem}\n fieldNames={props.fieldNames}\n onRequest={props.onRequest}\n textConfig={props.textConfig}\n onChange={onChange}\n onChangeDataSource={onChangeDataSource}\n treeProps={treePropsFt}\n ></VerticalLayout>\n ) : (\n <HorizontalLayout\n value={values}\n onDeleteItem={onDeleteItem}\n fieldNames={props.fieldNames}\n onRequest={props.onRequest}\n textConfig={props.textConfig}\n onChange={onChange}\n onChangeDataSource={onChangeDataSource}\n treeProps={treePropsFt}\n />\n )}\n </Fragment>\n );\n};\n","import { Fragment, useMemo, useRef, useState } from 'react';\nimport { useSize } from 'ahooks';\nimport { Modal } from 'antd';\nimport type { TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { TreeModalContent } from './select-modal-content.jsx';\nimport type { TreeModalProps, TreeModelSelectItem } from './types.js';\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' } = props;\n const [isOpen, setIsOpen] = useState(false);\n\n const htmlSize = useSize(document.querySelector('html'));\n const screenType = fbaHooks.useResponsivePoint() || '';\n\n const direction = screenType === 'xs' ? 'vertical' : 'horizontal';\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 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 onSubmit = () => {\n props.onChange?.(values);\n setIsOpen(false);\n };\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 20px 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 <TreeModalContent\n {...props}\n onChange={(values) => {\n setValues(values);\n }}\n />\n </Modal>\n </Fragment>\n );\n};\n","import { attachPropertiesToComponent } from '@flatbiz/utils';\nimport { TreeModal as TreeModalInner } from './select-modal.jsx';\nimport { TreeModalContent } from './select-modal-content.jsx';\n\nexport const TreeModal = attachPropertiesToComponent(TreeModalInner, {\n Content: TreeModalContent,\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","onChangeDataSource","width","display","flexDirection","flexShrink","fontWeight","length","replace","concat","flex","VerticalLayout","marginTop","TreeModalContent","isMultiple","labelKey","dataSourceMapRef","useRef","screenType","fbaHooks","useResponsivePoint","isMultipleFt","isUndefinedOrNull","_useState","useState","_useState2","_slicedToArray","setValues","targetList","filter","useEffectCustom","_dataSourceMapRef$cur","target","_isObject","current","treePropsFt","_props$onChange2","useCallbackRef","treeDataList","mapData","_props$onDataSourceCh","result","Boolean","onDataSourceChange","TreeModal","_props$size","isOpen","setIsOpen","htmlSize","useSize","document","querySelector","handleOnClick","Action","type","_useState3","_useState4","originalValuesRef","customSize","useMemo","isXsSm","includes","sizeCalculate","modalBodyHeight","modalWidth","onSubmit","onCancel","Modal","className","modalClassName","title","open","forceRender","centered","onOk","styles","body","maxHeight","content","header","footer","attachPropertiesToComponent","TreeModalInner","Content"],"mappings":"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"}
@@ -15,7 +15,7 @@ import './../tree-wrapper/index.css';
15
15
  import './index.css';
16
16
  /*! @flatjs/forge MIT @flatbiz/antd */
17
17
 
18
- export { T as TreeModalSelector } from '../selector-CxZacuxg.js';
18
+ export { T as TreeModalSelector } from '../selector-dbYimxeI.js';
19
19
  import '../_rollupPluginBabelHelpers-BYm17lo8.js';
20
20
  import '@wove/react/hooks';
21
21
  import '@dimjs/lang/is-object';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flatbiz/antd",
3
- "version": "5.0.13",
3
+ "version": "5.0.15",
4
4
  "homepage": "https://gitlab.itcjf.com/flatjs-next/node-template-mono",
5
5
  "repository": {
6
6
  "type": "git",
@@ -575,7 +575,7 @@
575
575
  "@dimjs/model": ">=2.0.1",
576
576
  "@dimjs/model-react": ">=2.0.1",
577
577
  "@dimjs/utils": ">=2.0.2",
578
- "@flatbiz/utils": ">=5.0.6",
578
+ "@flatbiz/utils": ">=5.0.8",
579
579
  "@wove/react": ">=2.0.2",
580
580
  "ahooks": ">=3.7.11",
581
581
  "antd": ">=5.21.4",
@@ -588,7 +588,7 @@
588
588
  "@dnd-kit/modifiers": "^7.0.0",
589
589
  "@dnd-kit/sortable": "^8.0.0",
590
590
  "@dnd-kit/utilities": "^3.2.2",
591
- "@flatbiz/utils": "^5.0.6",
591
+ "@flatbiz/utils": "^5.0.8",
592
592
  "@tinymce/tinymce-react": "4.3.0",
593
593
  "ace-builds": "^1.36.3",
594
594
  "dequal": "2.0.3",
@@ -1 +0,0 @@
1
- {"version":3,"file":"cascader-wrapper-CTqFW2ON.js","sources":["@flatbiz/antd/src/cascader-wrapper/model.ts","@flatbiz/antd/src/cascader-wrapper/cascader-wrapper.tsx"],"sourcesContent":["import type { API, ModelType } from '@dimjs/model';\nimport { Model } from '@dimjs/model-react';\nimport type { TAny, TPlainObject } from '@flatbiz/utils';\nimport type { TRequestStatus } from '../request-status/request-status.jsx';\n\nexport type ModelState = {\n selectorList: TPlainObject[];\n queryIsEmpty: boolean;\n requestStatus: TRequestStatus;\n};\n\ntype ModelActionParams = {\n setSelectBoxList: { selectorList: TPlainObject[] };\n changeRequestStatus: ModelState['requestStatus'];\n};\n\nconst defaultState: ModelState = {\n selectorList: [],\n queryIsEmpty: false,\n requestStatus: 'request-init',\n};\n\nconst _SelectorWrapperModel: ModelType<ModelState, ModelActionParams> = {\n actions: {\n setSelectBoxList: (params) => {\n return (state) => {\n state.selectorList = params.selectorList || [];\n state.requestStatus = 'request-success';\n };\n },\n changeRequestStatus: (params) => {\n return (state) => {\n state.requestStatus = params;\n };\n },\n },\n state: defaultState,\n};\n\nconst cascaderWrapperModels: Record<\n string,\n API<ModelType<ModelState, ModelActionParams, TAny>>\n> = {};\n\n/**\n * ```\n * 使用方式\n * const [state, actions] = selectorWrapperModel('key值').useStore();\n * ```\n */\nexport const cascaderWrapperModel = (key: string) => {\n if (!cascaderWrapperModels[key]) {\n cascaderWrapperModels[key] = Model(_SelectorWrapperModel);\n }\n return cascaderWrapperModels[key];\n};\n","import type { ReactElement } from 'react';\nimport { forwardRef, useImperativeHandle, useState } from 'react';\nimport type { CascaderProps } from 'antd';\nimport { Button, Cascader, message } from 'antd';\nimport { RedoOutlined } from '@ant-design/icons';\nimport { isArray } from '@dimjs/lang';\nimport { cloneState } from '@dimjs/model';\nimport { classNames, extend, get } from '@dimjs/utils';\nimport type { TPlainObject } from '@flatbiz/utils';\nimport {\n cloneObject,\n type TAny,\n toArray,\n treeNodeParentsList,\n} from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport type { TRequestStatusProps } from '../request-status/request-status.jsx';\nimport { RequestStatus } from '../request-status/request-status.jsx';\nimport { cascaderWrapperModel } from './model.js';\nimport './style.less';\n\ntype CascaderWrapperServiceConfig = {\n params?: TPlainObject;\n onRequest?: (params?: TAny) => TAny;\n /**\n * 响应数据适配器\n */\n onRequestResultAdapter?: (respData: TAny) => TPlainObject[];\n};\n\nexport type CascaderWrapperProps = Omit<\n CascaderProps<TAny>,\n | 'loading'\n | 'notFoundContent'\n | 'options'\n | 'value'\n | 'multiple'\n | 'onChange'\n | 'fieldNames'\n> & {\n // 模型唯一值\n modelKey: string;\n /**\n * 参数Key映射\n * ```\n * 1. 默认值:value=value、label=label、children=children\n * 2. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'\n * 3. 配置 serviceConfig.onRequestResultAdapter后,fieldNames.list配置失效\n * 4. 如果没有配置list,可说明接口返回为数组\n * ```\n */\n fieldNames?: {\n list?: string;\n label?: string;\n value?: string;\n children?: string;\n };\n /**\n * 请求服务需求的数据,当设置`selectorList`后无效果\n */\n serviceConfig?: CascaderWrapperServiceConfig;\n // label渲染适配器\n onLabelRenderAdapter?: (dataItem: TPlainObject) => string | ReactElement;\n onSelectorListChange?: (dataList: TPlainObject[]) => void;\n /**\n * 是否动态加载选项\n */\n isDynamicLoad?: boolean;\n value?: string | number | Array<string | number>;\n onChange?: (\n value?: string | number | Array<string | number>,\n selectedList?: TPlainObject[]\n ) => void;\n requestMessageConfig?: TRequestStatusProps['messageConfig'];\n /**\n * 选择数据响应类型(当用户选中后响应数据),默认值:last\n * ```\n * 1. last 响应选中的最后一级数据\n * 2. all 响应选中的多级数据\n * ```\n */\n responseType?: 'last' | 'all';\n};\n\nexport type CascaderWrapperRefApi = {\n getCascaderList: () => TPlainObject[];\n};\n/**\n * 级联选择器包装组件\n * ```\n * 1. 数据源中 value 不能重复\n * 2. 不支持多选\n * 3. modelKey的配置是为了缓存数据,只缓存初始化数据,如果isDynamicLoad=true,动态获取的数据不再缓存\n * 4. onChange操作第一个参数返回叶子节点value(可配置返回多级),第二个参数返回选中的多级数据\n * 5. isDynamicLoad=true 会在请求中添加当前选中option的fieldNames.value为key的数据\n * ```\n */\nexport const CascaderWrapper = forwardRef<\n CascaderWrapperRefApi,\n CascaderWrapperProps\n>((props, ref) => {\n const {\n serviceConfig,\n modelKey,\n fieldNames,\n isDynamicLoad,\n requestMessageConfig,\n onSelectorListChange,\n responseType,\n ...otherProps\n } = props;\n const [options, setOptions] = useState<TAny[]>([]);\n\n const [loading, setLoading] = fbaHooks.useSafeState(false);\n const [state, actions] = cascaderWrapperModel(modelKey).useStore();\n const requestPreKey = `request-progress-${props.modelKey}`;\n const fieldNamesMerge = extend(\n true,\n { label: 'label', value: 'value', children: 'children' },\n fieldNames\n );\n const [valueList, setValueList] = useState<string[]>();\n\n const serviceRespDataAdapter = (respData) => {\n if (serviceConfig?.onRequestResultAdapter) {\n return serviceConfig.onRequestResultAdapter(\n respData as unknown as TPlainObject\n );\n }\n if (fieldNames?.list) {\n respData = get(respData, fieldNames?.list);\n }\n if (!isArray(respData)) {\n console.warn('接口返回数据不是数组类型,已被忽略', respData);\n return [];\n }\n return respData;\n };\n\n const startDataSourceRequest = hooks.useCallbackRef(async () => {\n if (!serviceConfig?.onRequest) {\n throw new Error('onRequest 调用接口服务不能为空');\n }\n try {\n setLoading(true);\n window[requestPreKey] = true;\n void actions.changeRequestStatus('request-progress');\n const respData = await serviceConfig.onRequest?.(serviceConfig.params);\n const respAdapterData = serviceRespDataAdapter(respData);\n if (isDynamicLoad) {\n respAdapterData.map((item) => {\n item.isLeaf = item.isLeaf || false;\n });\n }\n setLoading(false);\n window[requestPreKey] = false;\n void actions.setSelectBoxList({\n selectorList: respAdapterData || [],\n });\n onSelectorListChange?.(respAdapterData || []);\n } catch (error: TAny) {\n setLoading(false);\n window[requestPreKey] = false;\n void actions.changeRequestStatus('request-error');\n void message.error(error.message || '获取数据异常');\n }\n });\n\n fbaHooks.useEffectCustom(() => {\n if (window[requestPreKey]) return;\n if (state.requestStatus === 'request-success') {\n setOptions(cloneState(state.selectorList));\n } else {\n void startDataSourceRequest();\n }\n }, []);\n\n fbaHooks.useEffectCustom(() => {\n const cloneList = cloneObject(state.selectorList);\n const values = toArray<number | string>(props.value);\n if (values.length > 0) {\n if (responseType === 'all') {\n setValueList(values as string[]);\n } else {\n const filterList = treeNodeParentsList(\n values[0],\n cloneList,\n true,\n fieldNamesMerge\n ).reverse();\n if (filterList.length === 0) {\n setValueList([props.value as string]);\n } else {\n setValueList(filterList as string[]);\n }\n }\n } else {\n setValueList(undefined);\n }\n setOptions(cloneList);\n }, [state.selectorList, props.value]);\n\n useImperativeHandle(ref, () => {\n return {\n getCascaderList: () => {\n return state.selectorList;\n },\n };\n });\n\n const onAgainRequest = hooks.useCallbackRef(() => {\n void startDataSourceRequest();\n });\n\n const loadData = async (selectedOptions: TAny[]) => {\n const targetOption = selectedOptions[selectedOptions.length - 1];\n targetOption.loading = true;\n const respData = await serviceConfig?.onRequest?.({\n ...serviceConfig.params,\n [fieldNamesMerge.value]: targetOption[fieldNamesMerge.value],\n });\n const respAdapterData = serviceRespDataAdapter(respData);\n if (!respAdapterData || respAdapterData.length === 0) {\n targetOption.isLeaf = true;\n } else {\n respAdapterData.map((item) => {\n item.isLeaf = item.isLeaf || false;\n });\n targetOption.children = respAdapterData;\n }\n targetOption.loading = false;\n void actions.setSelectBoxList({\n selectorList: options || [],\n });\n onSelectorListChange?.(options || []);\n setOptions([...options]);\n };\n\n const onChange = hooks.useCallbackRef(\n (values: Array<string | number>, selectList) => {\n if (responseType === 'all') {\n props.onChange?.(values, selectList);\n } else {\n props.onChange?.(values?.[values.length - 1], selectList);\n }\n }\n );\n\n const onClear = hooks.useCallbackRef(() => {\n void props.onChange?.(undefined);\n });\n\n return (\n <Cascader\n showSearch={true}\n allowClear={true}\n {...(otherProps as TAny)}\n popupClassName={classNames(\n 'cascader-wrapper-popup',\n otherProps.popupClassName\n )}\n notFoundContent={\n <RequestStatus\n status={state.requestStatus}\n loading={loading}\n messageConfig={requestMessageConfig}\n errorButton={\n <Button type=\"primary\" onClick={onAgainRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n loading={loading}\n loadData={isDynamicLoad ? loadData : undefined}\n fieldNames={fieldNamesMerge}\n suffixIcon={\n state.requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={onAgainRequest} />\n ) : undefined\n }\n options={options}\n value={valueList}\n multiple={false}\n onChange={onChange}\n onClear={onClear}\n />\n );\n});\n"],"names":["defaultState","selectorList","queryIsEmpty","requestStatus","_SelectorWrapperModel","actions","setSelectBoxList","params","state","changeRequestStatus","cascaderWrapperModels","cascaderWrapperModel","key","Model","CascaderWrapper","forwardRef","props","ref","serviceConfig","modelKey","fieldNames","isDynamicLoad","requestMessageConfig","onSelectorListChange","responseType","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","options","setOptions","_fbaHooks$useSafeStat","fbaHooks","useSafeState","_fbaHooks$useSafeStat2","loading","setLoading","_cascaderWrapperModel","useStore","_cascaderWrapperModel2","requestPreKey","concat","fieldNamesMerge","_extend","label","value","children","_useState3","_useState4","valueList","setValueList","serviceRespDataAdapter","respData","onRequestResultAdapter","list","_get","_isArray","console","warn","startDataSourceRequest","_hooks","useCallbackRef","Promise","$return","$error","_serviceConfig$onRequ","respAdapterData","onRequest","Error","$Try_1_Post","$boundEx","$Try_1_Catch","error","window","message","resolve","call","then","$await_2","map","item","isLeaf","useEffectCustom","cloneState","cloneList","cloneObject","values","toArray","length","filterList","treeNodeParentsList","reverse","undefined","useImperativeHandle","getCascaderList","onAgainRequest","loadData","selectedOptions","_serviceConfig$onRequ2","targetOption","_objectSpread","_defineProperty","$await_3","_toConsumableArray","onChange","selectList","_props$onChange","_props$onChange2","onClear","_props$onChange3","_jsx","Cascader","showSearch","allowClear","popupClassName","_classNames","notFoundContent","RequestStatus","status","messageConfig","errorButton","Button","type","onClick","suffixIcon","_RedoOutlined","spin","multiple"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"selector-CxZacuxg.js","sources":["@flatbiz/antd/src/tree-modal-selector/selector.tsx"],"sourcesContent":["import { useRef, useState } from 'react';\nimport { Select } from 'antd';\nimport { isObject } from '@dimjs/lang';\nimport { isUndefinedOrNull, toArray, type TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\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 dataSourceMapRef = useRef<TPlainObject>({});\n\n const labelKey = otherProps.fieldNames?.label || 'label';\n const valueKey = otherProps.fieldNames?.value || 'value';\n\n const [showValues, setShowValues] = useState<TreeModelSelectItem[]>(() => {\n return (\n toArray(props.value)?.map((item) => {\n const objItems = (\n isObject(item) ? item : { label: item, value: item }\n ) as TreeModelSelectItem;\n return {\n value: objItems.value,\n label:\n dataSourceMapRef.current[objItems.value]?.[labelKey] ||\n objItems.value,\n } 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 const onDataSourceChange = hooks.useCallbackRef(\n (_treeDataList: TPlainObject[], mapData: TPlainObject) => {\n dataSourceMapRef.current = mapData;\n const result = showValues\n ?.map((item) => {\n const target = mapData[item.value];\n return target\n ? { label: target[labelKey], value: target[valueKey] }\n : undefined;\n })\n .filter(Boolean) as TreeModelSelectItem[];\n setShowValues(result);\n }\n );\n\n return (\n <TreeModal\n {...otherProps}\n forceRender={true}\n onChange={treeModalChange}\n onDataSourceChange={onDataSourceChange}\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","_otherProps$fieldName","_otherProps$fieldName2","placeholder","maxTagCount","labelInValue","otherProps","_objectWithoutProperties","_excluded","placeholderFt","isUndefinedOrNull","dataSourceMapRef","useRef","labelKey","fieldNames","label","valueKey","value","_useState","useState","_toArray","toArray","map","item","_dataSourceMapRef$cur","objItems","_isObject","current","_useState2","_slicedToArray","showValues","setShowValues","onInnerChange","valueFt","length","undefined","isMultiple","_props$onChange","onChange","call","_props$onChange2","onSelectChange","treeModalChange","onDataSourceChange","_hooks","useCallbackRef","_treeDataList","mapData","result","target","filter","Boolean","_jsx","TreeModal","_objectSpread","forceRender","children","Select","style","width","mode","open"],"mappings":"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"}