@flatbiz/antd 5.0.40 → 5.0.42

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 (44) hide show
  1. package/dist/bootstrap/index.js +2 -2
  2. package/dist/{bootstrap-DTx6-Q_Y.js → bootstrap-DtZAiLNG.js} +2 -2
  3. package/dist/{bootstrap-DTx6-Q_Y.js.map → bootstrap-DtZAiLNG.js.map} +1 -1
  4. package/dist/button-operate/index.d.ts +7 -0
  5. package/dist/button-operate/index.js +1 -1
  6. package/dist/{button-operate-CPlw00Mg.js → button-operate-DprXMhOZ.js} +18 -8
  7. package/dist/button-operate-DprXMhOZ.js.map +1 -0
  8. package/dist/{cell-render-Dp344auH.js → cell-render-Btk1xTUj.js} +2 -2
  9. package/dist/{cell-render-Dp344auH.js.map → cell-render-Btk1xTUj.js.map} +1 -1
  10. package/dist/{drag-WgtQg-qO.js → drag-Dr-jbsnU.js} +2 -2
  11. package/dist/{drag-WgtQg-qO.js.map → drag-Dr-jbsnU.js.map} +1 -1
  12. package/dist/drag-editable-table/index.d.ts +12 -2
  13. package/dist/drag-editable-table/index.js +5 -5
  14. package/dist/editable-table/index.d.ts +12 -2
  15. package/dist/editable-table/index.js +4 -4
  16. package/dist/{editable-table-D7Zpl0MJ.js → editable-table-Bsch15kT.js} +3 -3
  17. package/dist/{editable-table-D7Zpl0MJ.js.map → editable-table-Bsch15kT.js.map} +1 -1
  18. package/dist/fba-app/index.js +1 -1
  19. package/dist/{fba-app-BTgXf567.js → fba-app-Ew89Y7th.js} +3 -4
  20. package/dist/fba-app-Ew89Y7th.js.map +1 -0
  21. package/dist/index.d.ts +33 -5
  22. package/dist/index.js +8 -8
  23. package/dist/{selector-CQ_yMKjh.js → selector-DGXElqt2.js} +9 -6
  24. package/dist/selector-DGXElqt2.js.map +1 -0
  25. package/dist/selector-wrapper/index.d.ts +12 -2
  26. package/dist/selector-wrapper/index.js +1 -1
  27. package/dist/{selector-wrapper-BSpsy8KA.js → selector-wrapper-DfaplVbz.js} +6 -3
  28. package/dist/selector-wrapper-DfaplVbz.js.map +1 -0
  29. package/dist/table-cell-render/index.d.ts +7 -0
  30. package/dist/table-cell-render/index.js +2 -2
  31. package/dist/tree-modal/index.d.ts +14 -2
  32. package/dist/tree-modal/index.js +1 -1
  33. package/dist/tree-modal-selector/index.d.ts +14 -2
  34. package/dist/tree-modal-selector/index.js +1 -1
  35. package/dist/tree-selector-wrapper/index.d.ts +7 -1
  36. package/dist/tree-selector-wrapper/index.js +1 -1
  37. package/dist/tree-wrapper/index.d.ts +14 -2
  38. package/dist/tree-wrapper/index.js +9 -6
  39. package/dist/tree-wrapper/index.js.map +1 -1
  40. package/package.json +3 -3
  41. package/dist/button-operate-CPlw00Mg.js.map +0 -1
  42. package/dist/fba-app-BTgXf567.js.map +0 -1
  43. package/dist/selector-CQ_yMKjh.js.map +0 -1
  44. package/dist/selector-wrapper-BSpsy8KA.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -601,6 +601,13 @@ export interface ButtonOperateProps {
601
601
  gap?: number;
602
602
  /** 折叠合拢属性 */
603
603
  dropdownMenuProps?: Omit<DropdownMenuWrapperProps, "menuList">;
604
+ /**
605
+ * 按钮布局尺寸
606
+ * ```
607
+ * 1. 设置为small后,gap、split 配置失效
608
+ * ```
609
+ */
610
+ size?: "small" | "default";
604
611
  }
605
612
  export declare const ButtonOperateItemContent: (props: Pick<ButtonOperateItem, "hoverTips" | "tipsType"> & {
606
613
  content: ReactNode;
@@ -1918,8 +1925,13 @@ export type SelectorServiceConfig = {
1918
1925
  export type SelectorWrapperProps = Omit<SelectProps, "onSearch" | "notFoundContent" | "options" | "fieldNames" | "onChange" | "value" | "loading" | "mode"> & {
1919
1926
  /** 不支持 tags 模式,tags模式请使用 SelectorWrapperSimple 组件 */
1920
1927
  mode?: "multiple";
1921
- /** key值,相同的key 同页面可共用缓存数据 */
1922
- modelKey: string;
1928
+ /**
1929
+ * 设置请求唯一值
1930
+ * ```
1931
+ * 1. 设置后,如果请求入参不变,不会重复请求接口,直接使用上次缓存数据
1932
+ * ```
1933
+ */
1934
+ modelKey?: string;
1923
1935
  /**
1924
1936
  * 参数Key映射
1925
1937
  * ```
@@ -1990,6 +2002,11 @@ export type SelectorWrapperProps = Omit<SelectProps, "onSearch" | "notFoundConte
1990
2002
  * 1. true: 在 modelKey下使用请求参数缓存数据,如果相同modelKey、相同请求参数直接使用缓存数据
1991
2003
  * 2. false: 每次都调用接口,不参与缓存数据、不使用缓存数据
1992
2004
  * 3. useCache=false 在 serviceConfig.requiredParamsKeys.length > 0 有效
2005
+ *
2006
+ * @deprecated 已废弃
2007
+ *
2008
+ * ```
2009
+ * 1. 需要缓存设置 modelKey,不需要不设置
1993
2010
  * ```
1994
2011
  */
1995
2012
  useCache?: boolean;
@@ -5928,8 +5945,13 @@ export type TreeLoadDataServiceConfig = {
5928
5945
  onRequestResultAdapter?: (respData: TAny) => TPlainObject[];
5929
5946
  };
5930
5947
  export type TreeWrapperProps = Omit<TreeProps, "treeData" | "onExpand" | "selectedKeys" | "checkedKeys" | "onCheck" | "onSelect" | "fieldNames" | "multiple" | "loadData" | "icon" | "defaultCheckedKeys" | "defaultExpandParent" | "defaultSelectedKeys"> & {
5931
- /** 唯一值,用于缓存数据 */
5932
- modelKey: string;
5948
+ /**
5949
+ * 设置请求唯一值
5950
+ * ```
5951
+ * 1. 设置后,如果请求入参不变,不会重复请求接口,直接使用上次缓存数据
5952
+ * ```
5953
+ */
5954
+ modelKey?: string;
5933
5955
  /**
5934
5956
  * 字段映射
5935
5957
  * ```
@@ -6308,7 +6330,13 @@ export type TreeSelectorServiceConfig = {
6308
6330
  onRequestResultAdapter?: (respData: TAny) => TPlainObject[];
6309
6331
  };
6310
6332
  export type TreeSelectorWrapperProps = Omit<TreeSelectProps, "treeExpandedKeys" | "treeData" | "loading" | "onTreeExpand" | "onChange" | "value" | "fieldNames" | "defaultValue" | "treeDataSimpleMode" | "onSearch"> & {
6311
- modelKey: string;
6333
+ /**
6334
+ * 设置请求唯一值
6335
+ * ```
6336
+ * 1. 设置后,如果请求入参不变,不会重复请求接口,直接使用上次缓存数据
6337
+ * ```
6338
+ */
6339
+ modelKey?: string;
6312
6340
  fieldNames?: {
6313
6341
  /**
6314
6342
  * 1. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'
package/dist/index.js CHANGED
@@ -148,9 +148,9 @@ export { A as AmountFenInput } from './amount-fen-input-DI4mxLeO.js';
148
148
  export { A as AmountFenInputFormItem } from './amount-fen-input-Vaayc5GF.js';
149
149
  export { A as AnchorSteps } from './anchor-steps-CqqmN9Pf.js';
150
150
  export { B as BlockLayout } from './layout-2woF_D6T.js';
151
- export { B as Bootstrap } from './bootstrap-DTx6-Q_Y.js';
151
+ export { B as Bootstrap } from './bootstrap-DtZAiLNG.js';
152
152
  export { BoxGrid, useBoxBreakpoint } from './box-grid/index.js';
153
- export { a as ButtonOperate, B as ButtonOperateItemContent } from './button-operate-CPlw00Mg.js';
153
+ export { a as ButtonOperate, B as ButtonOperateItemContent } from './button-operate-DprXMhOZ.js';
154
154
  export { B as ButtonWrapper } from './button-wrapper-DezyMqPx.js';
155
155
  export { C as CardLayout } from './card-layout-P-Qb5pCT.js';
156
156
  export { C as CardWrapper } from './card-wrapper-C8YADYlW.js';
@@ -177,7 +177,7 @@ export { d as dialogPreviewImage } from './preview-image-BCBOv4h_.js';
177
177
  export { D as DragCollapse } from './drag-collapse-DhZ1V5P6.js';
178
178
  export { D as DragCollapseFormList } from './drag-collapse-D2mbeDvD.js';
179
179
  export { D as DragEditableCard } from './editable-card-DdXga629.js';
180
- export { D as DragEditableTable } from './drag-WgtQg-qO.js';
180
+ export { D as DragEditableTable } from './drag-Dr-jbsnU.js';
181
181
  export { D as DragEditableTablePro } from './drag-xBmmIPTD.js';
182
182
  export { D as DragFormList } from './drag-form-list-BrIW06Ex.js';
183
183
  export { D as DragTable } from './drag-table-B5s0LEwN.js';
@@ -188,7 +188,7 @@ export { EasyTable } from './easy-table/index.js';
188
188
  export { E as EditableCard } from './editable-card-CnYsG1xL.js';
189
189
  export { E as EditableField } from './editable-field-BH6M_S9W.js';
190
190
  export { E as EditableFieldProvider } from './editable-field-provider-DqKcZQYP.js';
191
- export { E as EditableTable } from './editable-table-D7Zpl0MJ.js';
191
+ export { E as EditableTable } from './editable-table-Bsch15kT.js';
192
192
  export { E as EditableTablePro } from './editable-table-pro-B12YG7J_.js';
193
193
  export { E as ErrorBoundaryWrapper } from './error-boundary-D6RX4EQZ.js';
194
194
  export { FbaApp } from './fba-app/index.js';
@@ -239,7 +239,7 @@ export { R as RollLocationInView } from './in-view-XeG6cIRO.js';
239
239
  export { R as RuleDescribe } from './rule-describe-BkkX7ukt.js';
240
240
  export { S as SearchForm } from './search-BbKmdP-9.js';
241
241
  export { S as SearchMenu } from './search-menu-N7nz0XoH.js';
242
- export { S as SelectorWrapper } from './selector-wrapper-BSpsy8KA.js';
242
+ export { S as SelectorWrapper } from './selector-wrapper-DfaplVbz.js';
243
243
  export { S as SelectorWrapperSearch } from './selector-wrapper-search-DG0GPWl6.js';
244
244
  export { S as SelectorWrapperSimple } from './selector-wrapper-simple-BE6H7nX7.js';
245
245
  export { S as SimpleLayout } from './simple-layout-mSolkIZ5.js';
@@ -249,7 +249,7 @@ export { styles } from './styles/index.js';
249
249
  export { S as SvgHttpView } from './svg-CqFW3W-s.js';
250
250
  export { S as SwitchConfirmWrapper } from './switch-confirm-wrapper-CFFD0YJY.js';
251
251
  export { S as SwitchWrapper } from './switch-wrapper-CxGztawn.js';
252
- export { t as tableCellRender } from './cell-render-Dp344auH.js';
252
+ export { t as tableCellRender } from './cell-render-Btk1xTUj.js';
253
253
  export { T as TableScrollbar } from './table-scrollbar-yqz5FkCz.js';
254
254
  export { T as TableTitleTooltip } from './title-render-DGYUo6yV.js';
255
255
  export { T as TabsSticky } from './tabs-cpy2bCpo.js';
@@ -267,7 +267,7 @@ export { T as TipsTitle } from './tips-title-B6qZn_zc.js';
267
267
  export { T as TipsWrapper } from './tips-wrapper-DvbgHMwl.js';
268
268
  export { TreeModal } from './tree-modal/index.js';
269
269
  export { T as TreeModalSelector } from './selector-D0YxuDbf.js';
270
- export { T as TreeSelectorWrapper } from './selector-CQ_yMKjh.js';
270
+ export { T as TreeSelectorWrapper } from './selector-DGXElqt2.js';
271
271
  export { TreeWrapper } from './tree-wrapper/index.js';
272
272
  export { types } from './types/index.js';
273
273
  export { U as UploadWrapper } from './upload-wrapper--IfkLPBP.js';
@@ -296,7 +296,7 @@ import 'ace-builds/src-noconflict/mode-xml.js';
296
296
  import 'ace-builds/src-noconflict/snippets/xml.js';
297
297
  import '@flatbiz/ai-request';
298
298
  import '@dimjs/utils/get/get';
299
- import './fba-app-BTgXf567.js';
299
+ import './fba-app-Ew89Y7th.js';
300
300
  import '@dimjs/lang/is-promise';
301
301
  import 'ahooks';
302
302
  import '@wove/react/create-ctx';
@@ -9,11 +9,11 @@ import { hooks } from '@wove/react/hooks';
9
9
  import { isArray } from '@dimjs/lang/is-array';
10
10
  import { get } from '@dimjs/utils/get/get';
11
11
  import { isObject } from '@dimjs/lang/is-object';
12
- import { useState, useRef, useMemo, createElement } from 'react';
12
+ import { useMemo, useState, useRef, createElement } from 'react';
13
13
  import { usePrevious } from 'ahooks';
14
14
  import { TreeSelect, Button } from 'antd';
15
15
  import { dequal } from 'dequal';
16
- import { toArray, treeToTiledMap, isNotEmptyArray, treeToArray, isUndefinedOrNull } from '@flatbiz/utils';
16
+ import { getUuid, toArray, treeToTiledMap, isNotEmptyArray, treeToArray, isUndefinedOrNull } from '@flatbiz/utils';
17
17
  import { fbaHooks } from './fba-hooks/index.js';
18
18
  import { R as RequestStatus } from './request-status-5M9DP8-J.js';
19
19
  import { Model } from '@dimjs/model-react';
@@ -119,6 +119,9 @@ var TreeSelectorWrapper = function TreeSelectorWrapper(props) {
119
119
  * 1. 勾选的和回填选中不相同情况,勾选后会渲染defaultValue模式后,弹框被关闭,操作体验存在问题
120
120
  */
121
121
  var hasTreeSelectorList = Object.prototype.hasOwnProperty.call(props, 'treeSelectorList');
122
+ var modelKeyInner = useMemo(function () {
123
+ return modelKey || getUuid();
124
+ }, [modelKey]);
122
125
  var newServiceConfig = serviceConfig || {};
123
126
  var newEffectDependencyList = effectDependencyList || [];
124
127
  var _fbaHooks$useSafeStat = fbaHooks.useSafeState(false),
@@ -129,11 +132,11 @@ var TreeSelectorWrapper = function TreeSelectorWrapper(props) {
129
132
  _useState2 = _slicedToArray(_useState, 2),
130
133
  treeExpandedKeys = _useState2[0],
131
134
  setTreeExpandedKeys = _useState2[1];
132
- var _treeSelectorWrapperM = treeSelectorWrapperModel(modelKey).useStore(),
135
+ var _treeSelectorWrapperM = treeSelectorWrapperModel(modelKeyInner).useStore(),
133
136
  _treeSelectorWrapperM2 = _slicedToArray(_treeSelectorWrapperM, 2),
134
137
  state = _treeSelectorWrapperM2[0],
135
138
  actions = _treeSelectorWrapperM2[1];
136
- var requestPreKey = "request-progress-".concat(modelKey);
139
+ var requestPreKey = "request-progress-".concat(modelKeyInner);
137
140
  var isMultiple = otherProps.treeCheckable || otherProps.multiple;
138
141
  var responseFirstRef = useRef(true);
139
142
  /**
@@ -319,7 +322,7 @@ var TreeSelectorWrapper = function TreeSelectorWrapper(props) {
319
322
  void startDataSourceRequest();
320
323
  return;
321
324
  }
322
- var allState = treeSelectorWrapperModel(modelKey).getState();
325
+ var allState = treeSelectorWrapperModel(modelKeyInner).getState();
323
326
  if (allState.requestStatus === 'request-success') {
324
327
  return;
325
328
  }
@@ -491,4 +494,4 @@ var TreeSelectorWrapper = function TreeSelectorWrapper(props) {
491
494
  };
492
495
 
493
496
  export { TreeSelectorWrapper as T };
494
- //# sourceMappingURL=selector-CQ_yMKjh.js.map
497
+ //# sourceMappingURL=selector-DGXElqt2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector-DGXElqt2.js","sources":["@flatbiz/antd/src/tree-selector-wrapper/model.ts","@flatbiz/antd/src/tree-selector-wrapper/utils.ts","@flatbiz/antd/src/tree-selector-wrapper/selector.tsx"],"sourcesContent":["import type { TreeSelectProps } from 'antd';\nimport type { API, ModelType } from '@dimjs/model';\nimport { Model } from '@dimjs/model-react';\nimport type { TAny, TPlainObject, TSetDefaultDefined } from '@flatbiz/utils';\nimport type { TRequestStatus } from '../request-status/index.js';\n\nexport type ModelState = {\n treeSelectorList: TSetDefaultDefined<TreeSelectProps['treeData'], []>;\n treeSelectorTiledMap: TPlainObject;\n queryIsEmpty: boolean;\n requestStatus?: TRequestStatus;\n};\n\ntype ModelActionParams = {\n setSelectBoxList: {\n treeSelectorList: ModelState['treeSelectorList'];\n treeSelectorTiledMap: TPlainObject;\n };\n resetSelectBoxList: void;\n changeRequestStatus: TRequestStatus;\n};\n\nconst defaultState: ModelState = {\n treeSelectorList: [],\n treeSelectorTiledMap: {},\n queryIsEmpty: false,\n};\n\nconst TreeSelectorWrapperModel: ModelType<ModelState, ModelActionParams> = {\n actions: {\n setSelectBoxList: (params) => {\n return (state) => {\n state.treeSelectorList = params.treeSelectorList || [];\n state.treeSelectorTiledMap = params.treeSelectorTiledMap || {};\n state.requestStatus = 'request-success';\n };\n },\n resetSelectBoxList: () => {\n return (state) => {\n state.treeSelectorList = [];\n state.treeSelectorTiledMap = {};\n };\n },\n changeRequestStatus: (params) => {\n return (state) => {\n state.requestStatus = params;\n };\n },\n },\n state: defaultState,\n};\n\nconst treeSelectorWrapperModels: Record<\n string,\n API<ModelType<ModelState, ModelActionParams, TAny>>\n> = {};\n\n/**\n * ```\n * 使用方式\n * const [state, actions] = useTreeSelectorWrapperModel('key值').useStore();\n * ```\n */\nexport const treeSelectorWrapperModel = (key: string) => {\n if (!treeSelectorWrapperModels[key]) {\n treeSelectorWrapperModels[key] = Model(TreeSelectorWrapperModel);\n }\n return treeSelectorWrapperModels[key];\n};\n","export const getExpandedKeysByValue = (value: string | number, treeSelectorTiledMap) => {\n const tempList: Array<string | number> = [];\n let parentNode = treeSelectorTiledMap[value];\n while (parentNode) {\n const pId = parentNode.pId;\n parentNode = treeSelectorTiledMap[pId];\n if (parentNode) {\n tempList.push(pId);\n }\n }\n return tempList;\n};\n\nexport const getExpandedKeysByValues = (values: Array<string | number>, treeSelectorTiledMap) => {\n if (values.length === 0) return [];\n const expandedKeys: Array<string | number> = [];\n values.forEach((value) => {\n const targetList = getExpandedKeysByValue(value, treeSelectorTiledMap);\n expandedKeys.push(...targetList);\n });\n return Array.from(new Set(expandedKeys));\n};\n","import {\n type DependencyList,\n type Key,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { usePrevious } from 'ahooks';\nimport { Button, TreeSelect, type TreeSelectProps } from 'antd';\nimport { dequal } from 'dequal';\nimport { CaretDownFilled, RedoOutlined } from '@ant-design/icons';\nimport { isArray, isObject } from '@dimjs/lang';\nimport { classNames, extend, get } from '@dimjs/utils';\nimport {\n getUuid,\n isNotEmptyArray,\n isUndefinedOrNull,\n type TAny,\n toArray,\n type TPlainObject,\n treeToArray,\n treeToTiledMap,\n} from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport {\n RequestStatus,\n type TRequestStatusProps,\n} from '../request-status/index.js';\nimport { treeSelectorWrapperModel } from './model.js';\nimport { getExpandedKeysByValues } from './utils.js';\nimport './style.less';\n\ntype TreeSelectorWrapperValue =\n | string\n | number\n | Array<string | number>\n | TPlainObject<string | number>\n | Array<TPlainObject<string | number>>;\n\ntype TreeSelectorServiceConfig = {\n params?: TPlainObject;\n requiredParamsKeys?: string[];\n onRequest?: (params?: TAny) => TAny;\n /**\n * 响应数据适配器\n */\n onRequestResultAdapter?: (respData: TAny) => TPlainObject[];\n};\n\nexport type TreeSelectorWrapperProps = Omit<\n TreeSelectProps,\n | 'treeExpandedKeys'\n | 'treeData'\n | 'loading'\n | 'onTreeExpand'\n | 'onChange'\n | 'value'\n | 'fieldNames'\n | 'defaultValue'\n | 'treeDataSimpleMode'\n | 'onSearch'\n> & {\n /**\n * 设置请求唯一值\n * ```\n * 1. 设置后,如果请求入参不变,不会重复请求接口,直接使用上次缓存数据\n * ```\n */\n modelKey?: string;\n fieldNames?: {\n /**\n * 1. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'\n * 2. 配置 serviceConfig.onRequestResultAdapter 后此配置失效\n */\n list?: string;\n label?: string;\n value?: string;\n children?: string;\n disabled?: string;\n };\n /**\n * useEffect依赖项数组,用于重新发起获取接口数据\n */\n effectDependencyList?: DependencyList;\n /**\n * 请求服务需求的数据,当设置`treeSelectorList`后无效果\n */\n serviceConfig?: TreeSelectorServiceConfig;\n /**\n * 当设置treeSelectorList后,serviceConfig 将失效\n */\n treeSelectorList?: TreeSelectProps['treeData'];\n /**\n * treeSelectorList发生变更时触发\n */\n onTreeSelectorListChange?: (\n treeSelectorList?: TreeSelectProps['treeData']\n ) => void;\n /**\n * 通过服务获取数据异常回调,当设置`treeSelectorList`后无效果\n */\n onTreeSelectorRequestError?: (error: Error) => void;\n /**\n * 添加全部选项\n * ```\n * 1. showAllOption = true,添加默认全部选项(value值为空字符串)\n * 2. 可自定义全部选项,例如:{ label: '全部', value: 'all' }\n * 3. 自定义字段会通过fieldNames转换后使用\n * 4. 多选操作时,最好不要设置全部选项\n * ```\n */\n showAllOption?: true | TPlainObject<string | number>;\n /**\n * 1. 当 treeCheckable = true && treeCheckStrictly = true,如果选择的数据中含有父节点,selectedValue、selectedList返回数据包含父节点\n * 2. 当 treeCheckable = true && treeCheckStrictly = false,selectedValue、selectedList返回的数据不包含父节点\n * 3. 当 treeCheckable = false,节点选择没有级联关系,selectedValue、selectedList返回的数据就是实际选择\n * 4. selectAllDataList 返回的数据都包含父节点\n * 5. 使用 onTreeItemAdapter 拼接label数据后,选中回填数据也是拼接后的\n * 6. triggerInfo 当前操作节点数据\n */\n onChange?: (\n selectedValue?: TreeSelectorWrapperValue,\n selectedData?: TPlainObject[] | TPlainObject,\n triggerInfo?: TPlainObject\n ) => void;\n /**\n * tree item 数据适配器,返回的数据会通过fieldNames配置取数据\n * ```\n * 1. 可用于设置disabled状态\n * onTreeItemDataAdapter: (dataItem) => {\n * if(dataItem.xx === xx){\n * dataItem['disabled] = true;\n * }\n * return dataItem;\n * }\n * 2. 可设置label数据显示\n * ```\n */\n onTreeItemDataAdapter?: (dataItem: TPlainObject) => TPlainObject;\n // icon 无法实现、treeIcon不起作用4.20.0\n // showIcon?: boolean;\n // icon?: (data: TPlainObject) => ReactElement;\n /** 自定义异常提示文案 */\n requestMessageConfig?: TRequestStatusProps['messageConfig'];\n /**\n * value格式\n *```\n * 1. string 、number\n * 2. Array<string | number>\n * 3. lableInValue = true,根据labelInValueFieldNames配置格式\n * 4. lableInValue = true,Array<labelInValueFieldNames配置>\n * ```\n */\n value?: TreeSelectorWrapperValue;\n\n /**\n * treeCheckStrictly \tcheckable 状态下节点选择完全受控(父子节点选中状态不再关联),\n * 会使得 labelInValue 强制为 true\n */\n labelInValue?: boolean;\n /**\n * @deprecated 已弃用\n * ```\n * lableInValue = true,onChange输出数据字段名称,默认:{ label: string; value: string|number }\n * ```\n */\n labelInValueFieldNames?: { label: string; value: string };\n /**\n * treeCheckStrictly = true模式下有效,点击父节点是否选中所有子节点,默认值:true\n */\n selectedParentCheckedAllChildrenList?: boolean;\n /** 有唯一跟节点时,初始化是否展开,默认值:false */\n initRootExpand?: boolean;\n\n /**\n * 在第一次渲染value时,主动执行一次onChange\n * ```\n * 1. 设置labelInValue = true 时有效\n * 2. 不考虑子父节点的关系\n * ```\n */\n executeOnChangeInRenderFirstValue?: boolean;\n};\n\n/**\n * 树选择器包装组件,由于过度封装,部分antd TreeSelect原始功能不支持,不满足情况的请使用antd TreeSelect实现\n * ```\n * 1. 当设置treeSelectorList属性后,serviceConfig、onTreeSelectorListChange将失效\n * 2. 父节点默认不返回,需要返回请设置showCheckedStrategy\n * ```\n */\nexport const TreeSelectorWrapper = (props: TreeSelectorWrapperProps) => {\n const {\n serviceConfig,\n effectDependencyList,\n onTreeSelectorListChange,\n onTreeSelectorRequestError,\n treeSelectorList,\n requestMessageConfig,\n modelKey,\n value,\n labelInValue: _labelInValue,\n labelInValueFieldNames,\n onTreeItemDataAdapter,\n selectedParentCheckedAllChildrenList = true,\n fieldNames,\n onChange,\n treeDefaultExpandAll,\n showAllOption,\n initRootExpand,\n treeDefaultExpandedKeys,\n executeOnChangeInRenderFirstValue,\n ...otherProps\n } = props;\n /**\n * 不能使用key、defaultValue模式\n * 1. 勾选的和回填选中不相同情况,勾选后会渲染defaultValue模式后,弹框被关闭,操作体验存在问题\n */\n const hasTreeSelectorList = Object.prototype.hasOwnProperty.call(\n props,\n 'treeSelectorList'\n );\n\n const modelKeyInner = useMemo(() => {\n return modelKey || getUuid();\n }, [modelKey]);\n\n const newServiceConfig = serviceConfig || {};\n const newEffectDependencyList = effectDependencyList || [];\n const [loading, setLoading] = fbaHooks.useSafeState(false);\n const [treeExpandedKeys, setTreeExpandedKeys] = useState<Key[]>();\n const [state, actions] = treeSelectorWrapperModel(modelKeyInner).useStore();\n const requestPreKey = `request-progress-${modelKeyInner}`;\n const isMultiple = otherProps.treeCheckable || otherProps.multiple;\n const responseFirstRef = useRef(true);\n /**\n * treeCheckStrictly \tcheckable 状态下节点选择完全受控(父子节点选中状态不再关联),\n * 会使得 labelInValue 强制为 true\n */\n const labelInValue = useMemo(() => {\n if (otherProps.treeCheckStrictly) return true;\n return _labelInValue;\n }, [_labelInValue, otherProps.treeCheckStrictly]);\n\n const fieldNamesMerge = useMemo(() => {\n return {\n label: 'label',\n value: 'value',\n children: 'children',\n disabled: 'disabled',\n ...fieldNames,\n };\n }, [fieldNames]);\n\n const labelInValueFieldNamesMerge = useMemo(() => {\n return { label: 'label', value: 'value', ...labelInValueFieldNames };\n }, [labelInValueFieldNames]);\n\n const allOptionConfig = useMemo(() => {\n if (showAllOption) {\n const isTrue = showAllOption === true;\n return {\n label: isTrue ? '全部' : showAllOption.label,\n value: isTrue ? '' : showAllOption.value,\n };\n }\n return null;\n }, [showAllOption]);\n\n const [searchValue, setSearchValue] = useState<string>();\n\n const propsPureValue = fbaHooks.useMemoCustom(() => {\n return toArray<TAny>(value).map((item) => {\n if (isObject(item)) {\n return (\n labelInValue\n ? item[labelInValueFieldNamesMerge.value]\n : item[fieldNamesMerge.value]\n ) as string | number;\n }\n return item as string | number;\n });\n }, [\n fieldNamesMerge.value,\n labelInValue,\n labelInValueFieldNamesMerge.value,\n props.value,\n ]);\n\n const prevPropsPureValue = usePrevious(propsPureValue);\n\n fbaHooks.useEffectCustom(() => {\n if (state.treeSelectorList.length > 0) {\n if (\n responseFirstRef.current &&\n executeOnChangeInRenderFirstValue &&\n labelInValue\n ) {\n const dataList: TPlainObject[] = [];\n const originalList: TPlainObject[] = [];\n propsPureValue.forEach((item) => {\n const target = state.treeSelectorTiledMap[item];\n if (target) {\n originalList.push(target);\n dataList.push({\n [labelInValueFieldNamesMerge.label]:\n target[fieldNamesMerge.label],\n [labelInValueFieldNamesMerge.value]:\n target[fieldNamesMerge.value],\n });\n }\n });\n if (isMultiple) {\n props.onChange?.(dataList ? dataList : undefined, originalList);\n } else {\n props.onChange?.(dataList ? dataList[0] : undefined, originalList[0]);\n }\n }\n let treeExpandedKeys: Array<string | number> = [];\n if (responseFirstRef.current) {\n responseFirstRef.current = false;\n if (treeDefaultExpandedKeys) {\n treeExpandedKeys = treeDefaultExpandedKeys as Array<string | number>;\n } else if (treeDefaultExpandAll) {\n const allValues = Object.keys(state.treeSelectorTiledMap).map(\n (item) =>\n state.treeSelectorTiledMap[item]?.[fieldNamesMerge.value] as\n | string\n | number\n );\n treeExpandedKeys = allValues;\n } else if (initRootExpand && state.treeSelectorList.length === 1) {\n treeExpandedKeys = [state.treeSelectorList[0][fieldNamesMerge.value]];\n }\n setTreeExpandedKeys(treeExpandedKeys);\n }\n // else {\n // responseFirstRef.current = false;\n // if (!searchValue) {\n // const expandedKeys = getExpandedKeysByValues(\n // propsPureValue,\n // state.treeSelectorTiledMap\n // );\n // setTreeExpandedKeys(expandedKeys);\n // }\n // }\n }\n }, [propsPureValue, state.treeSelectorList]);\n\n fbaHooks.useEffectCustom(() => {\n if (!responseFirstRef.current && propsPureValue.length > 0) {\n if (\n state.treeSelectorList.length > 0 &&\n JSON.stringify(propsPureValue) !== JSON.stringify(prevPropsPureValue)\n ) {\n if (!searchValue) {\n const expandedKeys = getExpandedKeysByValues(\n propsPureValue,\n state.treeSelectorTiledMap\n );\n setTreeExpandedKeys(expandedKeys);\n }\n }\n }\n }, [propsPureValue, state.treeSelectorList]);\n\n const valueIsEmpty = (value: string | number) => {\n return value === '' || isUndefinedOrNull(value);\n };\n\n const serviceResponseHandle = (respData) => {\n let result = respData;\n if (newServiceConfig.onRequestResultAdapter) {\n result = newServiceConfig.onRequestResultAdapter(\n respData as unknown as TPlainObject\n );\n } else if (fieldNamesMerge.list) {\n result = get(respData, fieldNamesMerge.list);\n }\n if (result && !isArray(result)) {\n console.warn('待渲染数据为非数组结构', result);\n return [];\n }\n return result || [];\n };\n\n const startDataSourceRequest = hooks.useCallbackRef(async () => {\n if (!newServiceConfig.onRequest) {\n throw new Error('onRequest 调用接口服务不能为空');\n }\n const requiredParamsKeys = newServiceConfig.requiredParamsKeys || [];\n const params = extend({}, newServiceConfig.params);\n const isEmpty = requiredParamsKeys.find((key) => {\n return valueIsEmpty(params[key] as string | number);\n });\n if (isEmpty) {\n void actions.changeRequestStatus('no-dependencies-params');\n console.warn(\n `TreeSelectorWrapper组件:参数:${requiredParamsKeys.join('、')}不能为空`\n );\n return;\n }\n try {\n setLoading(true);\n window[requestPreKey] = true;\n void actions.changeRequestStatus('request-progress');\n const _respData = await newServiceConfig.onRequest?.(params);\n const respData = serviceResponseHandle(\n _respData\n ) as TreeSelectProps['treeData'];\n setLoading(false);\n window[requestPreKey] = false;\n onChangeSelectorList(respData || []);\n } catch (error: TAny) {\n setLoading(false);\n window[requestPreKey] = false;\n void actions.changeRequestStatus('request-error');\n onTreeSelectorRequestError?.(error);\n }\n });\n\n hooks.useCustomCompareEffect(\n () => {\n if (hasTreeSelectorList) return;\n // 当无依赖项时,如果存在缓存数据,就不在调用接口\n if (newEffectDependencyList.length) {\n // 内部主动清楚数据,被依赖的数据发生变更时,依赖组件数据清空\n onChangeSelectorList([]);\n void startDataSourceRequest();\n return;\n }\n const allState = treeSelectorWrapperModel(modelKeyInner).getState();\n if (allState.requestStatus === 'request-success') {\n return;\n }\n // 判断相同的modelKey是否已经在请求数据中,避免重复请求\n if (!window[requestPreKey]) {\n void startDataSourceRequest();\n return;\n }\n },\n newEffectDependencyList,\n dequal\n );\n\n const onChangeSelectorList = hooks.useCallbackRef((dataList: TAny[]) => {\n if (dataList?.length === 0 && state.treeSelectorList.length === 0) {\n void actions.setSelectBoxList({\n treeSelectorList: [],\n treeSelectorTiledMap: {},\n });\n onTreeSelectorListChange?.([]);\n return;\n }\n // 全部选项\n const tempItem = allOptionConfig\n ? {\n [fieldNamesMerge.label]: allOptionConfig.label,\n [fieldNamesMerge.value]: allOptionConfig.value,\n }\n : undefined;\n const newdataList = showAllOption ? [tempItem, ...dataList] : dataList;\n void actions.setSelectBoxList({\n treeSelectorList: newdataList,\n treeSelectorTiledMap: treeToTiledMap(\n newdataList,\n {\n value: fieldNamesMerge.value,\n children: fieldNamesMerge.children,\n },\n 'pId'\n ),\n });\n onTreeSelectorListChange?.(dataList);\n });\n\n fbaHooks.useEffectCustom(() => {\n if (hasTreeSelectorList) {\n onChangeSelectorList(treeSelectorList || []);\n }\n }, [treeSelectorList]);\n\n const onTreeExpand = hooks.useCallbackRef((expandedKeys) => {\n setTreeExpandedKeys(expandedKeys as string[]);\n });\n\n const onAgainRequest = hooks.useCallbackRef(() => {\n void startDataSourceRequest();\n });\n\n /**\n * 根据treeCheckable、treeCheckStrictly、showCheckedStrategy等设置情况,判断返回数据是否包含父节点\n * 1. 当 treeCheckable = true,changeValue 数据格式为 { label,value }[]\n */\n const onInnerChange = hooks.useCallbackRef(\n (changeValue: TAny, _data, triggerInfo: TPlainObject) => {\n let resultValueList = toArray<TAny>(changeValue);\n if (otherProps.treeCheckStrictly) {\n if (selectedParentCheckedAllChildrenList && triggerInfo.checked) {\n const target = state.treeSelectorTiledMap[triggerInfo?.triggerValue];\n if (isNotEmptyArray(target[fieldNamesMerge.children])) {\n resultValueList = treeToArray(\n [target],\n fieldNamesMerge.children\n ).map((item) => {\n return item[fieldNamesMerge.value];\n });\n } else {\n resultValueList = changeValue?.map((item) => item.value);\n }\n } else {\n resultValueList = changeValue?.map((item) => item.value);\n }\n }\n if (labelInValue) {\n const resultItemList = resultValueList.map((item) => {\n const target = state.treeSelectorTiledMap[item];\n return {\n [labelInValueFieldNamesMerge.label]: target[fieldNamesMerge.label],\n [labelInValueFieldNamesMerge.value]: target[fieldNamesMerge.value],\n };\n });\n if (isMultiple) {\n onChange?.(resultItemList, resultItemList, triggerInfo);\n } else {\n onChange?.(resultItemList[0], resultItemList[0], triggerInfo);\n }\n } else {\n const resultItemList = resultValueList.map((item) => {\n return state.treeSelectorTiledMap[item];\n });\n if (isMultiple) {\n onChange?.(resultValueList, resultItemList, triggerInfo);\n } else {\n onChange?.(resultValueList[0], resultItemList[0], triggerInfo);\n }\n }\n }\n );\n\n const mapTree = hooks.useCallbackRef((data) => {\n if (!data) return null;\n return data.map((item) => {\n const itemAdapterData = onTreeItemDataAdapter?.({ ...item }) || item;\n const children = itemAdapterData[fieldNamesMerge.children];\n const value = itemAdapterData[fieldNamesMerge.value];\n const label = itemAdapterData[fieldNamesMerge.label];\n const disabled = itemAdapterData[fieldNamesMerge.disabled]\n ? itemAdapterData[fieldNamesMerge.disabled]\n : itemAdapterData.disabled;\n return (\n <TreeSelect.TreeNode\n {...itemAdapterData}\n disabled={disabled}\n value={value}\n title={label}\n key={`${value}`}\n >\n {children && children.length > 0 && mapTree(children)}\n </TreeSelect.TreeNode>\n );\n });\n });\n\n const onSearch = (searchValue?: string) => {\n setSearchValue(searchValue);\n let targetKeyList: Array<string | number> = [];\n if (!searchValue) {\n setSearchValue(undefined);\n targetKeyList = propsPureValue;\n } else {\n Object.keys(state.treeSelectorTiledMap).forEach((item) => {\n const target = state.treeSelectorTiledMap[item];\n const label = target?.[fieldNamesMerge.label] as string;\n if (label?.includes(searchValue)) {\n targetKeyList.push(target[fieldNamesMerge.value]);\n }\n });\n }\n\n const expandedKeysMerge = getExpandedKeysByValues(\n targetKeyList,\n state.treeSelectorTiledMap\n );\n setTreeExpandedKeys(expandedKeysMerge);\n };\n\n const treeValue = isMultiple ? propsPureValue : propsPureValue[0];\n\n /**\n * 1. 使用 TreeNode 渲染节点,不能重写 fieldNames 配置\n * 2. 使用 TreeNode 是为了实现 TreeNode ICON\n */\n return (\n <TreeSelect\n searchValue={searchValue}\n dropdownStyle={{ maxHeight: 400, overflow: 'auto' }}\n showSearch={true}\n treeLine={{ showLeafIcon: false }}\n treeNodeFilterProp=\"title\"\n switcherIcon={<CaretDownFilled />}\n popupMatchSelectWidth={false}\n {...otherProps}\n className={classNames('v-tree-select-wrapper', otherProps.className)}\n popupClassName={classNames(\n 'v-tree-select-wrapper-dropdown',\n otherProps.popupClassName\n )}\n onChange={onInnerChange}\n treeExpandedKeys={treeExpandedKeys}\n value={treeValue}\n onSearch={onSearch}\n loading={loading}\n onTreeExpand={onTreeExpand}\n style={{ width: '100%', ...otherProps.style }}\n suffixIcon={\n state.requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={onAgainRequest} />\n ) : undefined\n }\n notFoundContent={\n <RequestStatus\n status={state.requestStatus}\n messageConfig={requestMessageConfig}\n loading={loading}\n errorButton={\n <Button type=\"primary\" onClick={onAgainRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n >\n {mapTree(state.treeSelectorList)}\n </TreeSelect>\n );\n};\n"],"names":["defaultState","treeSelectorList","treeSelectorTiledMap","queryIsEmpty","TreeSelectorWrapperModel","actions","setSelectBoxList","params","state","requestStatus","resetSelectBoxList","changeRequestStatus","treeSelectorWrapperModels","treeSelectorWrapperModel","key","Model","getExpandedKeysByValue","value","tempList","parentNode","pId","push","getExpandedKeysByValues","values","length","expandedKeys","forEach","targetList","apply","_toConsumableArray","Array","from","Set","TreeSelectorWrapper","props","serviceConfig","effectDependencyList","onTreeSelectorListChange","onTreeSelectorRequestError","requestMessageConfig","modelKey","_labelInValue","labelInValue","labelInValueFieldNames","onTreeItemDataAdapter","_props$selectedParent","selectedParentCheckedAllChildrenList","fieldNames","onChange","treeDefaultExpandAll","showAllOption","initRootExpand","treeDefaultExpandedKeys","executeOnChangeInRenderFirstValue","otherProps","_objectWithoutProperties","_excluded","hasTreeSelectorList","Object","prototype","hasOwnProperty","call","modelKeyInner","useMemo","getUuid","newServiceConfig","newEffectDependencyList","_fbaHooks$useSafeStat","fbaHooks","useSafeState","_fbaHooks$useSafeStat2","_slicedToArray","loading","setLoading","_useState","useState","_useState2","treeExpandedKeys","setTreeExpandedKeys","_treeSelectorWrapperM","useStore","_treeSelectorWrapperM2","requestPreKey","concat","isMultiple","treeCheckable","multiple","responseFirstRef","useRef","treeCheckStrictly","fieldNamesMerge","_objectSpread","label","children","disabled","labelInValueFieldNamesMerge","allOptionConfig","isTrue","_useState3","_useState4","searchValue","setSearchValue","propsPureValue","useMemoCustom","toArray","map","item","_isObject","prevPropsPureValue","usePrevious","useEffectCustom","current","dataList","originalList","target","_defineProperty","_props$onChange","undefined","_props$onChange2","allValues","keys","_state$treeSelectorTi","JSON","stringify","valueIsEmpty","isUndefinedOrNull","serviceResponseHandle","respData","result","onRequestResultAdapter","list","_get","_isArray","console","warn","startDataSourceRequest","_hooks","useCallbackRef","Promise","$return","$error","requiredParamsKeys","isEmpty","_newServiceConfig$onR","_respData","onRequest","Error","_extend","find","join","$Try_1_Post","$boundEx","$Try_1_Catch","error","window","resolve","then","$await_2","onChangeSelectorList","useCustomCompareEffect","allState","getState","dequal","tempItem","newdataList","treeToTiledMap","onTreeExpand","onAgainRequest","onInnerChange","changeValue","_data","triggerInfo","resultValueList","checked","triggerValue","isNotEmptyArray","treeToArray","resultItemList","mapTree","data","itemAdapterData","_createElement","TreeSelect","TreeNode","title","onSearch","targetKeyList","includes","expandedKeysMerge","treeValue","_jsx","dropdownStyle","maxHeight","overflow","showSearch","treeLine","showLeafIcon","treeNodeFilterProp","switcherIcon","_CaretDownFilled","popupMatchSelectWidth","className","_classNames","popupClassName","style","width","suffixIcon","_RedoOutlined","spin","onClick","notFoundContent","RequestStatus","status","messageConfig","errorButton","Button","type"],"mappings":"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"}
@@ -23,8 +23,13 @@ export type SelectorServiceConfig = {
23
23
  export type SelectorWrapperProps = Omit<SelectProps, "onSearch" | "notFoundContent" | "options" | "fieldNames" | "onChange" | "value" | "loading" | "mode"> & {
24
24
  /** 不支持 tags 模式,tags模式请使用 SelectorWrapperSimple 组件 */
25
25
  mode?: "multiple";
26
- /** key值,相同的key 同页面可共用缓存数据 */
27
- modelKey: string;
26
+ /**
27
+ * 设置请求唯一值
28
+ * ```
29
+ * 1. 设置后,如果请求入参不变,不会重复请求接口,直接使用上次缓存数据
30
+ * ```
31
+ */
32
+ modelKey?: string;
28
33
  /**
29
34
  * 参数Key映射
30
35
  * ```
@@ -95,6 +100,11 @@ export type SelectorWrapperProps = Omit<SelectProps, "onSearch" | "notFoundConte
95
100
  * 1. true: 在 modelKey下使用请求参数缓存数据,如果相同modelKey、相同请求参数直接使用缓存数据
96
101
  * 2. false: 每次都调用接口,不参与缓存数据、不使用缓存数据
97
102
  * 3. useCache=false 在 serviceConfig.requiredParamsKeys.length > 0 有效
103
+ *
104
+ * @deprecated 已废弃
105
+ *
106
+ * ```
107
+ * 1. 需要缓存设置 modelKey,不需要不设置
98
108
  * ```
99
109
  */
100
110
  useCache?: boolean;
@@ -4,7 +4,7 @@ import './../request-status/index.css';
4
4
  import './index.css';
5
5
  /*! @flatjs/forge MIT @flatbiz/antd */
6
6
 
7
- export { S as SelectorWrapper } from '../selector-wrapper-BSpsy8KA.js';
7
+ export { S as SelectorWrapper } from '../selector-wrapper-DfaplVbz.js';
8
8
  import '@ant-design/icons/es/icons/RedoOutlined.js';
9
9
  import '@dimjs/lang/is-string';
10
10
  import '@wove/react/hooks';
@@ -6,7 +6,7 @@ import { hooks } from '@wove/react/hooks';
6
6
  import { a as _slicedToArray, _ as _objectWithoutProperties, b as _objectSpread2, i as _defineProperty } from './_rollupPluginBabelHelpers-BspM60Sw.js';
7
7
  import { useState, useMemo, useRef, isValidElement } from 'react';
8
8
  import { Select, Button } from 'antd';
9
- import { isUndefinedOrNull, toArray, valueIsEqual, arrayFind } from '@flatbiz/utils';
9
+ import { isUndefinedOrNull, toArray, getUuid, valueIsEqual, arrayFind } from '@flatbiz/utils';
10
10
  import { R as RequestStatus } from './request-status-5M9DP8-J.js';
11
11
  import { isDeepEqual } from '@dimjs/lang/is-deep-equal';
12
12
  import { isArray } from '@dimjs/lang/is-array';
@@ -338,6 +338,9 @@ var SelectorWrapper = function SelectorWrapper(props) {
338
338
  useCache = props.useCache,
339
339
  otherProps = _objectWithoutProperties(props, _excluded);
340
340
  var firstRenderSelectList = useRef(true);
341
+ var modelKeyInner = useMemo(function () {
342
+ return modelKey || getUuid();
343
+ }, [modelKey]);
341
344
 
342
345
  // props 是否存在 selectorList,selectorList = undefined 也算存在
343
346
  var hasOuterSelectorList = Object.prototype.hasOwnProperty.call(props, 'selectorList');
@@ -357,7 +360,7 @@ var SelectorWrapper = function SelectorWrapper(props) {
357
360
  var isMultiple = valueIsEqual(props.mode, ['multiple']);
358
361
  var _useRequest = useRequest({
359
362
  fieldNames: mergeFieldNames,
360
- cacheKey: modelKey,
363
+ cacheKey: modelKeyInner,
361
364
  hasOuterSelectorList: hasOuterSelectorList,
362
365
  onChange: props.onChange,
363
366
  serviceConfig: serviceConfig,
@@ -487,4 +490,4 @@ var SelectorWrapper = function SelectorWrapper(props) {
487
490
  };
488
491
 
489
492
  export { SelectorWrapper as S };
490
- //# sourceMappingURL=selector-wrapper-BSpsy8KA.js.map
493
+ //# sourceMappingURL=selector-wrapper-DfaplVbz.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selector-wrapper-DfaplVbz.js","sources":["@flatbiz/antd/src/selector-wrapper/use-request.ts","@flatbiz/antd/src/selector-wrapper/utils.ts","@flatbiz/antd/src/selector-wrapper/selector-wrapper.tsx"],"sourcesContent":["import { useMemo, useState } from 'react';\nimport pubSub from 'pubsub-js';\nimport { isArray, isDeepEqual } from '@dimjs/lang';\nimport { get, sort } from '@dimjs/utils';\nimport type { TPlainObject } from '@flatbiz/utils';\nimport { isUndefinedOrNull } from '@flatbiz/utils';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { type TRequestStatus } from '../request-status/index.js';\nimport {\n type SelectorServiceConfig,\n type SelectorWrapperProps,\n} from './types.js';\n\nexport const useRequest = (options: {\n cacheKey: string;\n serviceConfig?: SelectorServiceConfig;\n hasOuterSelectorList?: boolean;\n onChange?: SelectorWrapperProps['onChange'];\n outerSelectorList?: SelectorWrapperProps['selectorList'];\n onRespDataChange?: (dataList?: TPlainObject[]) => void;\n onSelectorRequestError?: SelectorWrapperProps['onSelectorRequestError'];\n useCache: boolean;\n fieldNames: SelectorWrapperProps['fieldNames'];\n}) => {\n const {\n cacheKey,\n serviceConfig,\n hasOuterSelectorList,\n outerSelectorList,\n onRespDataChange,\n onSelectorRequestError,\n onChange,\n useCache,\n fieldNames,\n } = options;\n const serviceRequestParams = serviceConfig?.params;\n const requiredParamsKeys = serviceConfig?.requiredParamsKeys || [];\n const hasServiceRequestParams =\n serviceRequestParams && Object.keys(serviceRequestParams).length > 0;\n\n const [stateSelectorList, setStateSelectorList] = useState<TPlainObject[]>();\n const [requestStatus, setRequestStatus] = useState<TRequestStatus>();\n const [refreshKey, setRefreshKey] = useState(Date.now());\n\n const serviceRequestParamsStringify = useMemo(() => {\n try {\n if (hasServiceRequestParams) {\n const sortDataStringify = JSON.stringify(sort(serviceRequestParams));\n if (sortDataStringify === '{}') {\n return undefined;\n }\n return sortDataStringify;\n }\n } catch (_error) {\n //\n }\n return undefined;\n }, [hasServiceRequestParams, serviceRequestParams]);\n // 将 undefined => 'undefined'\n const serviceRequestCahceKey = `${serviceRequestParamsStringify}`;\n const serviceRequestCahceStatusKey = `${serviceRequestParamsStringify}_status`;\n const pubSubKey = `${cacheKey}_${serviceRequestCahceKey}`;\n\n // 上一个参数值\n const prevServiceRequestParamsStringify = fbaHooks.usePrevious(\n serviceRequestParamsStringify\n );\n const prevParams = fbaHooks.usePrevious(serviceRequestParams);\n\n const serviceRespDataAdapter = (respData) => {\n let result: TPlainObject[] = respData;\n if (serviceConfig?.onRequestResultAdapter) {\n result = serviceConfig?.onRequestResultAdapter(\n respData as unknown as TPlainObject\n );\n } else if (fieldNames?.list) {\n result = get(respData, fieldNames?.list);\n }\n if (result && !isArray(result)) {\n console.warn('待渲染数据为非数组结构', result);\n return [];\n }\n return result || [];\n };\n\n const getWindowCacheData = () => {\n return window['__selector_wrapper_']?.[cacheKey];\n };\n const getWindowCacheValue = () => {\n return getWindowCacheData()?.[serviceRequestCahceKey];\n };\n const getWindowCacheStatus = () => {\n return getWindowCacheData()?.[serviceRequestCahceStatusKey];\n };\n\n const setWindowCache = (key, value) => {\n if (!window['__selector_wrapper_']) {\n window['__selector_wrapper_'] = {};\n }\n if (!window['__selector_wrapper_'][cacheKey]) {\n window['__selector_wrapper_'][cacheKey] = {};\n }\n window['__selector_wrapper_'][cacheKey][key] = value;\n };\n\n const onChangeRequestStatus = (status: TRequestStatus) => {\n setWindowCache(serviceRequestCahceStatusKey, status);\n setRequestStatus(status);\n };\n\n const onRequest = async () => {\n try {\n onChangeRequestStatus('request-progress');\n\n const respData = await serviceConfig?.onRequest?.(\n serviceRequestParams || {}\n );\n const respAdapterData = serviceRespDataAdapter(respData);\n\n setWindowCache(serviceRequestCahceKey, respAdapterData);\n onChangeRequestStatus('request-success');\n setTimeout(() => {\n pubSub.publish(pubSubKey, {\n status: 'request-success',\n respData: respAdapterData,\n });\n });\n\n return respAdapterData;\n } catch (error: any) {\n console.error(error);\n onChangeRequestStatus('request-error');\n setStateSelectorList(undefined);\n setTimeout(() => {\n pubSub.publish(pubSubKey, {\n status: 'request-error',\n });\n });\n onSelectorRequestError?.(error);\n return Promise.reject();\n }\n };\n\n fbaHooks.useEffectCustomAsync(async () => {\n if (hasOuterSelectorList) {\n setRequestStatus('request-success');\n setStateSelectorList(outerSelectorList);\n onRespDataChange?.(outerSelectorList);\n return;\n }\n if (requiredParamsKeys.length > 0) {\n const isEmpty = serviceRequestParams\n ? requiredParamsKeys.find((key) =>\n isUndefinedOrNull(serviceRequestParams[key])\n )\n : true;\n if (isEmpty) {\n // 当依赖项查询条件为空时,清空当前缓存数据\n setStateSelectorList([]);\n setRequestStatus('no-dependencies-params');\n /**\n * 怎么判断数据是从有到无的\n * 每一次 params 变少,只要 上一次 params 值存在,就应该清空 value 值\n */\n if (prevServiceRequestParamsStringify) {\n onChange?.(undefined);\n }\n return;\n }\n\n // 不使用缓存模式\n if (useCache === false) {\n // 判断参数是否发生变化\n if (isDeepEqual(serviceRequestParams, prevParams)) {\n return;\n }\n try {\n setRequestStatus('request-progress');\n const respData = await serviceConfig?.onRequest?.(\n serviceRequestParams || {}\n );\n const respAdapterData = serviceRespDataAdapter(respData);\n setRequestStatus('request-success');\n setStateSelectorList(respAdapterData);\n onRespDataChange?.(respAdapterData);\n } catch (error: any) {\n console.error(error);\n setRequestStatus('request-error');\n setStateSelectorList(undefined);\n onSelectorRequestError?.(error);\n }\n return;\n }\n }\n\n /**\n * 此处无法判断 调用props.onChange?.(undefined);\n * A、B、C\n * 例如:C依赖A、B,当外部只修改了一个元素,理论上应该应该清空C value 值(调用onChange(undefined)),如果此时外部直接回填A、B、C时,C无法回填成功;该场景只能在A、B的onChange事件中,清空C\n */\n // if (prevServiceRequestParamsStringify) {\n // props.onChange?.(undefined);\n // }\n\n const status = getWindowCacheStatus();\n if (status === 'request-success') {\n const dataList = getWindowCacheValue();\n setStateSelectorList(dataList);\n setRequestStatus(status);\n onRespDataChange?.(dataList);\n return;\n }\n if (status === 'request-progress') {\n setRequestStatus(status);\n pubSub.subscribe(pubSubKey, (_msg, { status, respData }) => {\n if (status === 'request-success') {\n setRequestStatus(status);\n setStateSelectorList(respData);\n onRespDataChange?.(respData);\n } else {\n setRequestStatus('request-error');\n setStateSelectorList(undefined);\n }\n });\n return;\n }\n try {\n const respAdapterData = await onRequest();\n setStateSelectorList(respAdapterData);\n setRequestStatus('request-success');\n onRespDataChange?.(respAdapterData);\n } catch (error: any) {\n console.error(error);\n setRequestStatus('request-error');\n setStateSelectorList(undefined);\n onSelectorRequestError?.(error);\n }\n }, [JSON.stringify(serviceRequestParams), outerSelectorList, refreshKey]);\n\n const onRefreshRequest = () => {\n setRefreshKey(Date.now());\n };\n\n return {\n requestStatus,\n stateSelectorList,\n serviceRequestParamsStringify,\n onRefreshRequest,\n };\n};\n","import { isObject } from '@dimjs/lang';\nimport { toArray } from '@flatbiz/utils';\n\n/**\n * value存在两种格式\n * 1. string | number;\n * 2. labelInValue 格式\n * @param data\n * @param labelInValueFieldNames\n * @returns\n */\nexport const getVauleList = (data, valueKey: string | number) => {\n let valueList = toArray<string | number>(data);\n valueList = valueList.map((item) => {\n if (isObject(item)) return item[valueKey];\n return item;\n });\n return valueList;\n};\n","import { isValidElement, useMemo, useRef } from 'react';\nimport { Button, Select } from 'antd';\nimport { RedoOutlined } from '@ant-design/icons';\nimport { isString } from '@dimjs/lang';\nimport type { TAny, TPlainObject } from '@flatbiz/utils';\nimport { arrayFind, getUuid, toArray, valueIsEqual } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { RequestStatus } from '../request-status/index.js';\nimport type { SelectorWrapperProps } from './types.js';\nimport { useRequest } from './use-request.js';\nimport { getVauleList } from './utils.js';\nimport './style.less';\nexport * from './types.js';\n/**\n * 选择器包装组件\n * ```\n * 1. 不支持搜索调用服务模式,可使用组件 SelectorWrapperSearch\n * ```\n */\nexport const SelectorWrapper = (props: SelectorWrapperProps) => {\n const {\n serviceConfig,\n showAllOption,\n onSelectorListChange,\n onSelectorListAllChange,\n onSelectorRequestError,\n onLabelRenderAdapter,\n requestMessageConfig,\n selectorList: outerSelectorList,\n modelKey,\n fieldNames,\n value,\n labelInValue,\n useCache,\n ...otherProps\n } = props;\n\n const firstRenderSelectList = useRef(true);\n\n const modelKeyInner = useMemo(() => {\n return modelKey || getUuid();\n }, [modelKey]);\n\n // props 是否存在 selectorList,selectorList = undefined 也算存在\n const hasOuterSelectorList = Object.prototype.hasOwnProperty.call(\n props,\n 'selectorList'\n );\n const mergeFieldNames = {\n label: 'label',\n value: 'value',\n disabled: 'disabled',\n ...fieldNames,\n };\n\n const {\n label: optionsItemLabelField,\n value: optionsItemValueField,\n disabled: optionsItemDisabledField,\n } = mergeFieldNames;\n\n const allOptionConfig = useMemo(() => {\n if (!showAllOption) return null;\n const isTrue = showAllOption === true;\n return {\n [optionsItemLabelField]: isTrue ? '全部' : showAllOption.label,\n [optionsItemValueField]: isTrue ? '' : showAllOption.value,\n };\n }, [optionsItemLabelField, optionsItemValueField, showAllOption]);\n\n const isMultiple = valueIsEqual(props.mode, ['multiple']);\n\n const { requestStatus, stateSelectorList, onRefreshRequest } = useRequest({\n fieldNames: mergeFieldNames,\n cacheKey: modelKeyInner,\n hasOuterSelectorList,\n onChange: props.onChange,\n serviceConfig,\n outerSelectorList,\n onRespDataChange: (dataList) => {\n if (firstRenderSelectList.current) {\n onSelectorListChange?.(dataList || []);\n firstRenderSelectList.current = false;\n }\n onSelectorListAllChange?.(dataList || []);\n },\n onSelectorRequestError,\n useCache: useCache === undefined ? true : useCache,\n });\n\n const onRespChange = hooks.useCallbackRef((selectedList: TPlainObject[]) => {\n if (labelInValue) {\n if (isMultiple) {\n props.onChange?.(selectedList, selectedList);\n } else {\n props.onChange?.(selectedList[0], selectedList);\n }\n } else {\n const valueList = selectedList.map((item) => item[optionsItemValueField]);\n if (isMultiple) {\n props.onChange?.(valueList, selectedList);\n } else {\n props.onChange?.(valueList[0], selectedList[0]);\n }\n }\n });\n\n const onInnerChange = hooks.useCallbackRef((_value, otherParams) => {\n if (!otherParams) return props.onChange?.(undefined);\n const selectedList = toArray<TAny>(otherParams);\n const targetList = [] as TPlainObject[];\n selectedList.forEach((item) => {\n if (\n showAllOption &&\n allOptionConfig &&\n item.value === allOptionConfig[optionsItemValueField]\n ) {\n targetList.push(allOptionConfig);\n } else {\n const filterTarget = arrayFind(\n stateSelectorList || [],\n item.value,\n optionsItemValueField\n );\n if (filterTarget) {\n targetList.push(filterTarget);\n }\n }\n });\n onRespChange(targetList);\n });\n\n const selectorAllList = useMemo(() => {\n if (requestStatus !== 'request-success') return [];\n if (!stateSelectorList || stateSelectorList.length === 0) return [];\n if (!allOptionConfig) return stateSelectorList;\n return [allOptionConfig].concat(stateSelectorList);\n }, [allOptionConfig, requestStatus, stateSelectorList]);\n\n const loading = requestStatus === 'request-progress';\n\n const selectValue = useMemo(() => {\n const targetList = getVauleList(value, optionsItemValueField);\n return isMultiple ? targetList : targetList[0];\n }, [isMultiple, optionsItemValueField, value]);\n\n const filterOption = hooks.useCallbackRef((input: string, option) => {\n const children = toArray(option.children);\n let mergeString = '';\n const hasValidElementItem = children.find((item) => {\n return isValidElement(item);\n });\n if (!hasValidElementItem) {\n children.forEach((item) => {\n if (isString(item)) mergeString += item;\n });\n } else {\n mergeString = isString(option?.label) ? option.label : undefined;\n }\n return mergeString.toLowerCase().indexOf(input.toLowerCase()) >= 0;\n });\n\n return (\n <Select\n showSearch={true}\n allowClear={true}\n popupMatchSelectWidth={false}\n filterOption={filterOption}\n {...otherProps}\n style={{ width: '100%', ...props.style }}\n value={selectValue}\n loading={loading}\n onChange={onInnerChange}\n fieldNames={undefined}\n suffixIcon={\n requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={onRefreshRequest} />\n ) : (\n otherProps.suffixIcon\n )\n }\n notFoundContent={\n <RequestStatus\n status={requestStatus}\n loading={loading}\n messageConfig={{\n 'request-init': '暂无数据',\n ...requestMessageConfig,\n }}\n errorButton={\n <Button type=\"primary\" onClick={onRefreshRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n >\n {selectorAllList.map((item, index) => {\n const value = item[optionsItemValueField];\n const label = item[optionsItemLabelField];\n return (\n <Select.Option\n value={value}\n label={label}\n key={`${value}-${index}`}\n disabled={item[optionsItemDisabledField]}\n >\n {props.showIcon ? (\n <span className=\"v-selector-item-icon\">\n {props.icon?.(item, index)}\n </span>\n ) : null}\n {onLabelRenderAdapter ? onLabelRenderAdapter(item) : label}\n </Select.Option>\n );\n })}\n </Select>\n );\n};\n"],"names":["useRequest","options","cacheKey","serviceConfig","hasOuterSelectorList","outerSelectorList","onRespDataChange","onSelectorRequestError","onChange","useCache","fieldNames","serviceRequestParams","params","requiredParamsKeys","hasServiceRequestParams","Object","keys","length","_useState","useState","_useState2","_slicedToArray","stateSelectorList","setStateSelectorList","_useState3","_useState4","requestStatus","setRequestStatus","_useState5","Date","now","_useState6","refreshKey","setRefreshKey","serviceRequestParamsStringify","useMemo","sortDataStringify","JSON","stringify","_sort","undefined","_error","serviceRequestCahceKey","concat","serviceRequestCahceStatusKey","pubSubKey","prevServiceRequestParamsStringify","fbaHooks","usePrevious","prevParams","serviceRespDataAdapter","respData","result","onRequestResultAdapter","list","_get","_isArray","console","warn","getWindowCacheData","_window$__selector_wr","window","getWindowCacheValue","_getWindowCacheData","getWindowCacheStatus","_getWindowCacheData2","setWindowCache","key","value","onChangeRequestStatus","status","onRequest","Promise","$return","$error","_serviceConfig$onRequ","respAdapterData","$Try_2_Catch","error","setTimeout","pubSub","publish","reject","$boundEx","resolve","call","then","$await_7","useEffectCustomAsync","isEmpty","_serviceConfig$onRequ2","dataList","_respAdapterData","find","isUndefinedOrNull","_isDeepEqual","$Try_3_Post","$Try_3_Catch","$await_8","$If_5","subscribe","_msg","_ref","$Try_4_Post","$Try_4_Catch","$await_9","onRefreshRequest","getVauleList","data","valueKey","valueList","toArray","map","item","_isObject","SelectorWrapper","props","showAllOption","onSelectorListChange","onSelectorListAllChange","onLabelRenderAdapter","requestMessageConfig","selectorList","modelKey","labelInValue","otherProps","_objectWithoutProperties","_excluded","firstRenderSelectList","useRef","modelKeyInner","getUuid","prototype","hasOwnProperty","mergeFieldNames","_objectSpread","label","disabled","optionsItemLabelField","optionsItemValueField","optionsItemDisabledField","allOptionConfig","isTrue","_defineProperty","isMultiple","valueIsEqual","mode","_useRequest","current","onRespChange","_hooks","useCallbackRef","selectedList","_props$onChange","_props$onChange2","_props$onChange3","_props$onChange4","onInnerChange","_value","otherParams","_props$onChange5","targetList","forEach","push","filterTarget","arrayFind","selectorAllList","loading","selectValue","filterOption","input","option","children","mergeString","hasValidElementItem","isValidElement","_isString","toLowerCase","indexOf","_jsx","Select","showSearch","allowClear","popupMatchSelectWidth","style","width","suffixIcon","_RedoOutlined","spin","onClick","notFoundContent","RequestStatus","messageConfig","errorButton","Button","type","index","_props$icon","_jsxs","Option","showIcon","className","icon"],"mappings":"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"}
@@ -136,6 +136,13 @@ export interface ButtonOperateProps {
136
136
  gap?: number;
137
137
  /** 折叠合拢属性 */
138
138
  dropdownMenuProps?: Omit<DropdownMenuWrapperProps, "menuList">;
139
+ /**
140
+ * 按钮布局尺寸
141
+ * ```
142
+ * 1. 设置为small后,gap、split 配置失效
143
+ * ```
144
+ */
145
+ size?: "small" | "default";
139
146
  }
140
147
  export type TagListSelectValue = string | number | boolean;
141
148
  export type TagListSelectDataItem = {
@@ -7,7 +7,7 @@ import './../tag-list-render/index.css';
7
7
  import './index.css';
8
8
  /*! @flatjs/forge MIT @flatbiz/antd */
9
9
 
10
- export { t as tableCellRender } from '../cell-render-Dp344auH.js';
10
+ export { t as tableCellRender } from '../cell-render-Btk1xTUj.js';
11
11
  import '@dimjs/lang/is-string';
12
12
  import '@dimjs/lang/is-object';
13
13
  import '@dimjs/utils/get/get';
@@ -17,7 +17,7 @@ import '@dimjs/lang/is-empty';
17
17
  import 'react';
18
18
  import 'antd';
19
19
  import '@flatbiz/utils';
20
- import '../button-operate-CPlw00Mg.js';
20
+ import '../button-operate-DprXMhOZ.js';
21
21
  import '@ant-design/icons/es/icons/MoreOutlined.js';
22
22
  import '@dimjs/lang/is-undefined';
23
23
  import '@dimjs/utils/class-names/class-names';
@@ -136,6 +136,13 @@ export interface ButtonOperateProps {
136
136
  gap?: number;
137
137
  /** 折叠合拢属性 */
138
138
  dropdownMenuProps?: Omit<DropdownMenuWrapperProps, "menuList">;
139
+ /**
140
+ * 按钮布局尺寸
141
+ * ```
142
+ * 1. 设置为small后,gap、split 配置失效
143
+ * ```
144
+ */
145
+ size?: "small" | "default";
139
146
  }
140
147
  export type TRequestStatus = "request-init" | "request-progress" | "request-success" | "request-error" | "no-dependencies-params";
141
148
  export type TRequestStatusProps = {
@@ -163,8 +170,13 @@ export type TreeLoadDataServiceConfig = {
163
170
  onRequestResultAdapter?: (respData: TAny) => TPlainObject[];
164
171
  };
165
172
  export type TreeWrapperProps = Omit<TreeProps, "treeData" | "onExpand" | "selectedKeys" | "checkedKeys" | "onCheck" | "onSelect" | "fieldNames" | "multiple" | "loadData" | "icon" | "defaultCheckedKeys" | "defaultExpandParent" | "defaultSelectedKeys"> & {
166
- /** 唯一值,用于缓存数据 */
167
- modelKey: string;
173
+ /**
174
+ * 设置请求唯一值
175
+ * ```
176
+ * 1. 设置后,如果请求入参不变,不会重复请求接口,直接使用上次缓存数据
177
+ * ```
178
+ */
179
+ modelKey?: string;
168
180
  /**
169
181
  * 字段映射
170
182
  * ```
@@ -42,7 +42,7 @@ import '@ant-design/icons/es/icons/MoreOutlined.js';
42
42
  import '@dimjs/utils/extend/extend';
43
43
  import '@dimjs/utils/get/get';
44
44
  import '@dimjs/model';
45
- import '../button-operate-CPlw00Mg.js';
45
+ import '../button-operate-DprXMhOZ.js';
46
46
  import '@dimjs/lang/is-plain-object';
47
47
  import '@dimjs/lang/is-promise';
48
48
  import '../button-wrapper-DezyMqPx.js';
@@ -136,6 +136,13 @@ export interface ButtonOperateProps {
136
136
  gap?: number;
137
137
  /** 折叠合拢属性 */
138
138
  dropdownMenuProps?: Omit<DropdownMenuWrapperProps, "menuList">;
139
+ /**
140
+ * 按钮布局尺寸
141
+ * ```
142
+ * 1. 设置为small后,gap、split 配置失效
143
+ * ```
144
+ */
145
+ size?: "small" | "default";
139
146
  }
140
147
  export type TRequestStatus = "request-init" | "request-progress" | "request-success" | "request-error" | "no-dependencies-params";
141
148
  export type TRequestStatusProps = {
@@ -163,8 +170,13 @@ export type TreeLoadDataServiceConfig = {
163
170
  onRequestResultAdapter?: (respData: TAny) => TPlainObject[];
164
171
  };
165
172
  export type TreeWrapperProps = Omit<TreeProps, "treeData" | "onExpand" | "selectedKeys" | "checkedKeys" | "onCheck" | "onSelect" | "fieldNames" | "multiple" | "loadData" | "icon" | "defaultCheckedKeys" | "defaultExpandParent" | "defaultSelectedKeys"> & {
166
- /** 唯一值,用于缓存数据 */
167
- modelKey: string;
173
+ /**
174
+ * 设置请求唯一值
175
+ * ```
176
+ * 1. 设置后,如果请求入参不变,不会重复请求接口,直接使用上次缓存数据
177
+ * ```
178
+ */
179
+ modelKey?: string;
168
180
  /**
169
181
  * 字段映射
170
182
  * ```
@@ -45,7 +45,7 @@ import '@ant-design/icons/es/icons/MoreOutlined.js';
45
45
  import '@dimjs/utils/extend/extend';
46
46
  import '@dimjs/utils/get/get';
47
47
  import '@dimjs/model';
48
- import '../button-operate-CPlw00Mg.js';
48
+ import '../button-operate-DprXMhOZ.js';
49
49
  import '@dimjs/lang/is-plain-object';
50
50
  import '@dimjs/lang/is-promise';
51
51
  import '../button-wrapper-DezyMqPx.js';
@@ -20,7 +20,13 @@ export type TreeSelectorServiceConfig = {
20
20
  onRequestResultAdapter?: (respData: TAny) => TPlainObject[];
21
21
  };
22
22
  export type TreeSelectorWrapperProps = Omit<TreeSelectProps, "treeExpandedKeys" | "treeData" | "loading" | "onTreeExpand" | "onChange" | "value" | "fieldNames" | "defaultValue" | "treeDataSimpleMode" | "onSearch"> & {
23
- modelKey: string;
23
+ /**
24
+ * 设置请求唯一值
25
+ * ```
26
+ * 1. 设置后,如果请求入参不变,不会重复请求接口,直接使用上次缓存数据
27
+ * ```
28
+ */
29
+ modelKey?: string;
24
30
  fieldNames?: {
25
31
  /**
26
32
  * 1. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'
@@ -4,7 +4,7 @@ import './../request-status/index.css';
4
4
  import './index.css';
5
5
  /*! @flatjs/forge MIT @flatbiz/antd */
6
6
 
7
- export { T as TreeSelectorWrapper } from '../selector-CQ_yMKjh.js';
7
+ export { T as TreeSelectorWrapper } from '../selector-DGXElqt2.js';
8
8
  import '@ant-design/icons/es/icons/RedoOutlined.js';
9
9
  import '@dimjs/utils/class-names/class-names';
10
10
  import '@ant-design/icons/es/icons/CaretDownFilled.js';