@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.
- package/dist/bootstrap/index.js +2 -2
- package/dist/{bootstrap-DTx6-Q_Y.js → bootstrap-DtZAiLNG.js} +2 -2
- package/dist/{bootstrap-DTx6-Q_Y.js.map → bootstrap-DtZAiLNG.js.map} +1 -1
- package/dist/button-operate/index.d.ts +7 -0
- package/dist/button-operate/index.js +1 -1
- package/dist/{button-operate-CPlw00Mg.js → button-operate-DprXMhOZ.js} +18 -8
- package/dist/button-operate-DprXMhOZ.js.map +1 -0
- package/dist/{cell-render-Dp344auH.js → cell-render-Btk1xTUj.js} +2 -2
- package/dist/{cell-render-Dp344auH.js.map → cell-render-Btk1xTUj.js.map} +1 -1
- package/dist/{drag-WgtQg-qO.js → drag-Dr-jbsnU.js} +2 -2
- package/dist/{drag-WgtQg-qO.js.map → drag-Dr-jbsnU.js.map} +1 -1
- package/dist/drag-editable-table/index.d.ts +12 -2
- package/dist/drag-editable-table/index.js +5 -5
- package/dist/editable-table/index.d.ts +12 -2
- package/dist/editable-table/index.js +4 -4
- package/dist/{editable-table-D7Zpl0MJ.js → editable-table-Bsch15kT.js} +3 -3
- package/dist/{editable-table-D7Zpl0MJ.js.map → editable-table-Bsch15kT.js.map} +1 -1
- package/dist/fba-app/index.js +1 -1
- package/dist/{fba-app-BTgXf567.js → fba-app-Ew89Y7th.js} +3 -4
- package/dist/fba-app-Ew89Y7th.js.map +1 -0
- package/dist/index.d.ts +33 -5
- package/dist/index.js +8 -8
- package/dist/{selector-CQ_yMKjh.js → selector-DGXElqt2.js} +9 -6
- package/dist/selector-DGXElqt2.js.map +1 -0
- package/dist/selector-wrapper/index.d.ts +12 -2
- package/dist/selector-wrapper/index.js +1 -1
- package/dist/{selector-wrapper-BSpsy8KA.js → selector-wrapper-DfaplVbz.js} +6 -3
- package/dist/selector-wrapper-DfaplVbz.js.map +1 -0
- package/dist/table-cell-render/index.d.ts +7 -0
- package/dist/table-cell-render/index.js +2 -2
- package/dist/tree-modal/index.d.ts +14 -2
- package/dist/tree-modal/index.js +1 -1
- package/dist/tree-modal-selector/index.d.ts +14 -2
- package/dist/tree-modal-selector/index.js +1 -1
- package/dist/tree-selector-wrapper/index.d.ts +7 -1
- package/dist/tree-selector-wrapper/index.js +1 -1
- package/dist/tree-wrapper/index.d.ts +14 -2
- package/dist/tree-wrapper/index.js +9 -6
- package/dist/tree-wrapper/index.js.map +1 -1
- package/package.json +3 -3
- package/dist/button-operate-CPlw00Mg.js.map +0 -1
- package/dist/fba-app-BTgXf567.js.map +0 -1
- package/dist/selector-CQ_yMKjh.js.map +0 -1
- 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
|
-
/**
|
|
1922
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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,
|
|
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(
|
|
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(
|
|
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(
|
|
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-
|
|
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
|
-
/**
|
|
27
|
-
|
|
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-
|
|
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:
|
|
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-
|
|
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":";;;;;;;;;;;;;;;;;;;AAaO,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,OAU1B,EAAK;AACJ,EAAA,IACEC,QAAQ,GASND,OAAO,CATTC,QAAQ;IACRC,aAAa,GAQXF,OAAO,CARTE,aAAa;IACbC,oBAAoB,GAOlBH,OAAO,CAPTG,oBAAoB;IACpBC,iBAAiB,GAMfJ,OAAO,CANTI,iBAAiB;IACjBC,gBAAgB,GAKdL,OAAO,CALTK,gBAAgB;IAChBC,sBAAsB,GAIpBN,OAAO,CAJTM,sBAAsB;IACtBC,QAAQ,GAGNP,OAAO,CAHTO,QAAQ;IACRC,QAAQ,GAENR,OAAO,CAFTQ,QAAQ;IACRC,UAAU,GACRT,OAAO,CADTS,UAAU;EAEZ,IAAMC,oBAAoB,GAAGR,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAbA,MAAAA,GAAAA,MAAAA,GAAAA,aAAa,CAAES,MAAM;EAClD,IAAMC,kBAAkB,GAAG,CAAAV,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,MAAA,GAAA,MAAA,GAAbA,aAAa,CAAEU,kBAAkB,KAAI,EAAE;AAClE,EAAA,IAAMC,uBAAuB,GAC3BH,oBAAoB,IAAII,MAAM,CAACC,IAAI,CAACL,oBAAoB,CAAC,CAACM,MAAM,GAAG,CAAC;AAEtE,EAAA,IAAAC,SAAA,GAAkDC,QAAQ,EAAkB;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAArEI,IAAAA,iBAAiB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,oBAAoB,GAAAH,UAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAI,UAAA,GAA0CL,QAAQ,EAAkB;IAAAM,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAA7DE,IAAAA,aAAa,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,gBAAgB,GAAAF,UAAA,CAAA,CAAA,CAAA;EACtC,IAAAG,UAAA,GAAoCT,QAAQ,CAACU,IAAI,CAACC,GAAG,EAAE,CAAC;IAAAC,UAAA,GAAAV,cAAA,CAAAO,UAAA,EAAA,CAAA,CAAA;AAAjDI,IAAAA,UAAU,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,aAAa,GAAAF,UAAA,CAAA,CAAA,CAAA;AAEhC,EAAA,IAAMG,6BAA6B,GAAGC,OAAO,CAAC,YAAM;IAClD,IAAI;AACF,MAAA,IAAIrB,uBAAuB,EAAE;QAC3B,IAAMsB,iBAAiB,GAAGC,IAAI,CAACC,SAAS,CAACC,IAAA,CAAK5B,oBAAoB,CAAC,CAAC;QACpE,IAAIyB,iBAAiB,KAAK,IAAI,EAAE;AAC9B,UAAA,OAAOI,SAAS;AAClB;AACA,QAAA,OAAOJ,iBAAiB;AAC1B;KACD,CAAC,OAAOK,MAAM,EAAE;AACf;AAAA;AAEF,IAAA,OAAOD,SAAS;AAClB,GAAC,EAAE,CAAC1B,uBAAuB,EAAEH,oBAAoB,CAAC,CAAC;AACnD;AACA,EAAA,IAAM+B,sBAAsB,GAAA,EAAA,CAAAC,MAAA,CAAMT,6BAA6B,CAAE;AACjE,EAAA,IAAMU,4BAA4B,GAAA,EAAA,CAAAD,MAAA,CAAMT,6BAA6B,EAAS,SAAA,CAAA;EAC9E,IAAMW,SAAS,MAAAF,MAAA,CAAMzC,QAAQ,EAAAyC,GAAAA,CAAAA,CAAAA,MAAA,CAAID,sBAAsB,CAAE;;AAEzD;AACA,EAAA,IAAMI,iCAAiC,GAAGC,QAAQ,CAACC,WAAW,CAC5Dd,6BACF,CAAC;AACD,EAAA,IAAMe,UAAU,GAAGF,QAAQ,CAACC,WAAW,CAACrC,oBAAoB,CAAC;AAE7D,EAAA,IAAMuC,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAIC,QAAQ,EAAK;IAC3C,IAAIC,MAAsB,GAAGD,QAAQ;AACrC,IAAA,IAAIhD,aAAa,KAAbA,IAAAA,IAAAA,aAAa,eAAbA,aAAa,CAAEkD,sBAAsB,EAAE;MACzCD,MAAM,GAAGjD,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,MAAA,GAAA,MAAA,GAAbA,aAAa,CAAEkD,sBAAsB,CAC5CF,QACF,CAAC;KACF,MAAM,IAAIzC,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAVA,MAAAA,IAAAA,UAAU,CAAE4C,IAAI,EAAE;AAC3BF,MAAAA,MAAM,GAAGG,GAAA,CAAIJ,QAAQ,EAAEzC,UAAU,KAAVA,IAAAA,IAAAA,UAAU,KAAVA,MAAAA,GAAAA,MAAAA,GAAAA,UAAU,CAAE4C,IAAI,CAAC;AAC1C;AACA,IAAA,IAAIF,MAAM,IAAI,CAACI,OAAA,CAAQJ,MAAM,CAAC,EAAE;AAC9BK,MAAAA,OAAO,CAACC,IAAI,CAAC,aAAa,EAAEN,MAAM,CAAC;AACnC,MAAA,OAAO,EAAE;AACX;IACA,OAAOA,MAAM,IAAI,EAAE;GACpB;AAED,EAAA,IAAMO,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAS;AAAA,IAAA,IAAAC,qBAAA;AAC/B,IAAA,OAAA,CAAAA,qBAAA,GAAOC,MAAM,CAAC,qBAAqB,CAAC,MAAAD,IAAAA,IAAAA,qBAAA,KAA7BA,MAAAA,GAAAA,MAAAA,GAAAA,qBAAA,CAAgC1D,QAAQ,CAAC;GACjD;AACD,EAAA,IAAM4D,mBAAmB,GAAG,SAAtBA,mBAAmBA,GAAS;AAAA,IAAA,IAAAC,mBAAA;IAChC,OAAAA,CAAAA,mBAAA,GAAOJ,kBAAkB,EAAE,MAAAI,IAAAA,IAAAA,mBAAA,KAApBA,MAAAA,GAAAA,MAAAA,GAAAA,mBAAA,CAAuBrB,sBAAsB,CAAC;GACtD;AACD,EAAA,IAAMsB,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAAS;AAAA,IAAA,IAAAC,oBAAA;IACjC,OAAAA,CAAAA,oBAAA,GAAON,kBAAkB,EAAE,MAAAM,IAAAA,IAAAA,oBAAA,KAApBA,MAAAA,GAAAA,MAAAA,GAAAA,oBAAA,CAAuBrB,4BAA4B,CAAC;GAC5D;EAED,IAAMsB,cAAc,GAAG,SAAjBA,cAAcA,CAAIC,GAAG,EAAEC,KAAK,EAAK;AACrC,IAAA,IAAI,CAACP,MAAM,CAAC,qBAAqB,CAAC,EAAE;AAClCA,MAAAA,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE;AACpC;IACA,IAAI,CAACA,MAAM,CAAC,qBAAqB,CAAC,CAAC3D,QAAQ,CAAC,EAAE;MAC5C2D,MAAM,CAAC,qBAAqB,CAAC,CAAC3D,QAAQ,CAAC,GAAG,EAAE;AAC9C;IACA2D,MAAM,CAAC,qBAAqB,CAAC,CAAC3D,QAAQ,CAAC,CAACiE,GAAG,CAAC,GAAGC,KAAK;GACrD;AAED,EAAA,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,MAAsB,EAAK;AACxDJ,IAAAA,cAAc,CAACtB,4BAA4B,EAAE0B,MAAM,CAAC;IACpD3C,gBAAgB,CAAC2C,MAAM,CAAC;GACzB;AAED,EAAA,IAAMC,SAAS,GAAG,SAAZA,SAASA,GAAA;AAAG,IAAA,OAAA,IAAAC,OAAA,CAAA,UAAAC,OAAA,EAAAC,MAAA,EAAA;AAAA,MAAA,IAAAC,qBAAA,EAIRxB,QAEL,EACKyB,eAAkD;AArH9D,MAAA,IAAIC,YAAA,GAAA,UAiISC,KAAU,EAAE;QAjIzB,IAAI;AAkIErB,UAAAA,OAAO,CAACqB,KAAK,CAACA,KAAK,CAAC;UACpBT,qBAAqB,CAAC,eAAe,CAAC;UACtC9C,oBAAoB,CAACiB,SAAS,CAAC;AAC/BuC,UAAAA,UAAU,CAAC,YAAM;AACfC,YAAAA,MAAM,CAACC,OAAO,CAACpC,SAAS,EAAE;AACxByB,cAAAA,MAAM,EAAE;AACV,aAAC,CAAC;AACJ,WAAC,CAAC;AACF/D,UAAAA,sBAAsB,aAAtBA,sBAAsB,KAAA,KAAA,CAAA,IAAtBA,sBAAsB,CAAGuE,KAAK,CAAC;AAC/B,UAAA,OAAAL,OAAA,CAAOD,OAAO,CAACU,MAAM,EAAE,CAAA;SA3IpB,CAAC,OAAAC,QAAA,EAAU;UAAC,OAAOT,MAAA,CAAAS,QAAK,CAAC;AAAA;OAAvB;MA+GP,IAAI;QACFd,qBAAqB,CAAC,kBAAkB,CAAC;AAExB,QAAA,OAAAG,OAAA,CAAAY,OAAA,CAAMjF,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,KAAA,CAAA,IAAA,CAAAwE,qBAAA,GAAbxE,aAAa,CAAEoE,SAAS,MAAAI,IAAAA,IAAAA,qBAAA,KAAxBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,qBAAA,CAAAU,IAAA,CAAAlF,aAAa,EAClCQ,oBAAoB,IAAI,EAC1B,CAAC,CAFgB2E,CAAAA,IAEhB,WAAAC,QAAA,EAAA;UApHP,IAAI;AAkHQpC,YAAAA,QAAQ,GAAGoC,QAEhB;AACKX,YAAAA,eAAe,GAAG1B,sBAAsB,CAACC,QAAQ,CAAC;AAExDe,YAAAA,cAAc,CAACxB,sBAAsB,EAAEkC,eAAe,CAAC;YACvDP,qBAAqB,CAAC,iBAAiB,CAAC;AACxCU,YAAAA,UAAU,CAAC,YAAM;AACfC,cAAAA,MAAM,CAACC,OAAO,CAACpC,SAAS,EAAE;AACxByB,gBAAAA,MAAM,EAAE,iBAAiB;AACzBnB,gBAAAA,QAAQ,EAAEyB;AACZ,eAAC,CAAC;AACJ,aAAC,CAAC;YAEF,OAAAH,OAAA,CAAOG,eAAe,CAAA;WAhInB,CAAC,OAAAO,QAAA,EAAU;YAAC,OAAON,YAAA,CAAAM,QAAK,CAAC;AAAA;AAAC,SAAA,EAAAN,YAAA,CAAA;OAiI9B,CAAC,OAAOC,KAAU,EAAE;AAAAD,QAAAA,YAAA,CAAZC,KAAU;AAWnB;AAAC,KAAA,CAAA;AACF,GAAA;EAED/B,QAAQ,CAACyC,oBAAoB,CAAC,YAAA;AAAA,IAAA,OAAA,IAAAhB,OAAA,CAAA,UAAAC,OAAA,EAAAC,MAAA,EAAA;AAAA,MAAA,IAQpBe,OAIE,EAAAC,sBAAA,EAuBEvC,QAEL,EACKyB,eAAkD,EAuBxDN,MAA+B,EAE7BqB,QAAgC,EAqBhCC,gBAAmC;AAnF3C,MAAA,IAAIxF,oBAAoB,EAAE;QACxBuB,gBAAgB,CAAC,iBAAiB,CAAC;QACnCJ,oBAAoB,CAAClB,iBAAiB,CAAC;AACvCC,QAAAA,gBAAgB,aAAhBA,gBAAgB,KAAA,MAAA,IAAhBA,gBAAgB,CAAGD,iBAAiB,CAAC;AACrC,QAAA,OAAAoE,OAAA,EAAA;AACF;AACA,MAAA,IAAI5D,kBAAkB,CAACI,MAAM,GAAG,CAAC,EAAE;QAC3BwE,OAAO,GAAG9E,oBAAoB,GAChCE,kBAAkB,CAACgF,IAAI,CAAC,UAAC1B,GAAG,EAAA;AAAA,UAAA,OAC1B2B,iBAAiB,CAACnF,oBAAoB,CAACwD,GAAG,CAAC,CAAC;SAC9C,CAAC,GACD,IAAI;AACR,QAAA,IAAIsB,OAAO,EAAE;AACX;UACAlE,oBAAoB,CAAC,EAAE,CAAC;UACxBI,gBAAgB,CAAC,wBAAwB,CAAC;AAC1C;AACR;AACA;AACA;AACQ,UAAA,IAAImB,iCAAiC,EAAE;AACrCtC,YAAAA,QAAQ,aAARA,QAAQ,KAAA,MAAA,IAARA,QAAQ,CAAGgC,SAAS,CAAC;AACvB;AACA,UAAA,OAAAiC,OAAA,EAAA;AACF;;AAEA;QACA,IAAIhE,QAAQ,KAAK,KAAK,EAAE;AACtB;AACA,UAAA,IAAIsF,WAAA,CAAYpF,oBAAoB,EAAEsC,UAAU,CAAC,EAAE;AACjD,YAAA,OAAAwB,OAAA,EAAA;AACF;UA/KR,IAAIuB,WAAA,eAAA;YAAJ,IAAI;AA+LI,cAAA,OAAAvB,OAAA,EAAA;aA/LC,CAAC,OAAAU,QAAA,EAAU;cAAC,OAAOT,MAAA,CAAAS,QAAK,CAAC;AAAA;WAAvB;AAAX,UAAA,IAAIc,YAAA,GAAA,UAyLanB,KAAU,EAAE;YAzL7B,IAAI;AA0LMrB,cAAAA,OAAO,CAACqB,KAAK,CAACA,KAAK,CAAC;cACpBnD,gBAAgB,CAAC,eAAe,CAAC;cACjCJ,oBAAoB,CAACiB,SAAS,CAAC;AAC/BjC,cAAAA,sBAAsB,aAAtBA,sBAAsB,KAAA,KAAA,CAAA,IAAtBA,sBAAsB,CAAGuE,KAAK,CAAC;cA7LzC,OAAOkB,WAAA,EAAI;aAAF,CAAC,OAAAb,QAAA,EAAU;cAAC,OAAOT,MAAA,CAAAS,QAAK,CAAC;AAAA;WAAvB;UAgLH,IAAI;YACFxD,gBAAgB,CAAC,kBAAkB,CAAC;AACnB,YAAA,OAAA6C,OAAA,CAAAY,OAAA,CAAMjF,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,KAAA,CAAA,IAAA,CAAAuF,sBAAA,GAAbvF,aAAa,CAAEoE,SAAS,MAAAmB,IAAAA,IAAAA,sBAAA,KAAxBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,sBAAA,CAAAL,IAAA,CAAAlF,aAAa,EAClCQ,oBAAoB,IAAI,EAC1B,CAAC,CAFgB2E,CAAAA,IAEhB,WAAAY,QAAA,EAAA;cApLX,IAAI;AAkLY/C,gBAAAA,QAAQ,GAAG+C,QAEhB;AACKtB,gBAAAA,eAAe,GAAG1B,sBAAsB,CAACC,QAAQ,CAAC;gBACxDxB,gBAAgB,CAAC,iBAAiB,CAAC;gBACnCJ,oBAAoB,CAACqD,eAAe,CAAC;AACrCtE,gBAAAA,gBAAgB,aAAhBA,gBAAgB,KAAA,KAAA,CAAA,IAAhBA,gBAAgB,CAAGsE,eAAe,CAAC;gBAxL7C,OAAOoB,WAAA,EAAI;eAAF,CAAC,OAAAb,QAAA,EAAU;gBAAC,OAAOc,YAAA,CAAAd,QAAK,CAAC;AAAA;AAAC,aAAA,EAAAc,YAAA,CAAA;WAyL1B,CAAC,OAAOnB,KAAU,EAAE;AAAAmB,YAAAA,YAAA,CAAZnB,KAAU;AAKnB;AAEF;AAAC,QAAA,OAhMPqB,KAAA,CAAGd,IAAI,CAAA,IAAG,CAAC;AAiMP;;AAEA;AACJ;AACA;AACA;AACA;AACI;AACA;AACA;AAAA,MAAA,SAAAc,KAAA,GAAA;QAEM7B,MAAM,GAAGN,oBAAoB,EAAE;QACrC,IAAIM,MAAM,KAAK,iBAAiB,EAAE;UAC1BqB,QAAQ,GAAG7B,mBAAmB,EAAE;UACtCvC,oBAAoB,CAACoE,QAAQ,CAAC;UAC9BhE,gBAAgB,CAAC2C,MAAM,CAAC;AACxBhE,UAAAA,gBAAgB,aAAhBA,gBAAgB,KAAA,MAAA,IAAhBA,gBAAgB,CAAGqF,QAAQ,CAAC;AAC5B,UAAA,OAAAlB,OAAA,EAAA;AACF;QACA,IAAIH,MAAM,KAAK,kBAAkB,EAAE;UACjC3C,gBAAgB,CAAC2C,MAAM,CAAC;UACxBU,MAAM,CAACoB,SAAS,CAACvD,SAAS,EAAE,UAACwD,IAAI,EAAAC,IAAA,EAA2B;AAAA,YAAA,IAAvBhC,MAAM,GAAAgC,IAAA,CAANhC,MAAM;cAAEnB,QAAQ,GAAAmD,IAAA,CAARnD,QAAQ;YACnD,IAAImB,MAAM,KAAK,iBAAiB,EAAE;cAChC3C,gBAAgB,CAAC2C,MAAM,CAAC;cACxB/C,oBAAoB,CAAC4B,QAAQ,CAAC;AAC9B7C,cAAAA,gBAAgB,aAAhBA,gBAAgB,KAAA,MAAA,IAAhBA,gBAAgB,CAAG6C,QAAQ,CAAC;AAC9B,aAAC,MAAM;cACLxB,gBAAgB,CAAC,eAAe,CAAC;cACjCJ,oBAAoB,CAACiB,SAAS,CAAC;AACjC;AACF,WAAC,CAAC;AACF,UAAA,OAAAiC,OAAA,EAAA;AACF;QAjOJ,IAAI8B,WAAA,eAAA;UAAJ,IAAI;AAAA,YAAA,OAAA9B,OAAA,EAAA;WAAK,CAAC,OAAAU,QAAA,EAAU;YAAC,OAAOT,MAAA,CAAAS,QAAK,CAAC;AAAA;SAAvB;AAAX,QAAA,IAAIqB,YAAA,GAAA,UAuOS1B,KAAU,EAAE;UAvOzB,IAAI;AAwOErB,YAAAA,OAAO,CAACqB,KAAK,CAACA,KAAK,CAAC;YACpBnD,gBAAgB,CAAC,eAAe,CAAC;YACjCJ,oBAAoB,CAACiB,SAAS,CAAC;AAC/BjC,YAAAA,sBAAsB,aAAtBA,sBAAsB,KAAA,KAAA,CAAA,IAAtBA,sBAAsB,CAAGuE,KAAK,CAAC;YA3OrC,OAAOyB,WAAA,EAAI;WAAF,CAAC,OAAApB,QAAA,EAAU;YAAC,OAAOT,MAAA,CAAAS,QAAK,CAAC;AAAA;SAAvB;QAkOP,IAAI;UACsB,OAAAX,OAAA,CAAAY,OAAA,CAAMb,SAAS,EAAE,CAAA,CAAjBe,IAAiB,CAAA,UAAAmB,QAAA,EAAA;YAnO/C,IAAI;AAmOQ7B,cAAAA,gBAAe,GAAG6B,QAAiB;cACzClF,oBAAoB,CAACqD,gBAAe,CAAC;cACrCjD,gBAAgB,CAAC,iBAAiB,CAAC;AACnCrB,cAAAA,gBAAgB,aAAhBA,gBAAgB,KAAA,KAAA,CAAA,IAAhBA,gBAAgB,CAAGsE,gBAAe,CAAC;cAtOzC,OAAO2B,WAAA,EAAI;aAAF,CAAC,OAAApB,QAAA,EAAU;cAAC,OAAOqB,YAAA,CAAArB,QAAK,CAAC;AAAA;AAAC,WAAA,EAAAqB,YAAA,CAAA;SAuO9B,CAAC,OAAO1B,KAAU,EAAE;AAAA0B,UAAAA,YAAA,CAAZ1B,KAAU;AAKnB;AAAC;AAAA,MAAA,OA5OLqB,KAAA,CAAGd,IAAI,CAAA,IAAG,CAAC;AAAA,KAAA,CAAA;AA6OR,GAAA,EAAE,CAAChD,IAAI,CAACC,SAAS,CAAC3B,oBAAoB,CAAC,EAAEN,iBAAiB,EAAE2B,UAAU,CAAC,CAAC;AAEzE,EAAA,IAAM0E,gBAAgB,GAAG,SAAnBA,gBAAgBA,GAAS;AAC7BzE,IAAAA,aAAa,CAACJ,IAAI,CAACC,GAAG,EAAE,CAAC;GAC1B;EAED,OAAO;AACLJ,IAAAA,aAAa,EAAbA,aAAa;AACbJ,IAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBY,IAAAA,6BAA6B,EAA7BA,6BAA6B;AAC7BwE,IAAAA,gBAAgB,EAAhBA;GACD;AACH,CAAC;;ACtPD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAIC,IAAI,EAAEC,QAAyB,EAAK;AAC/D,EAAA,IAAIC,SAAS,GAAGC,OAAO,CAAkBH,IAAI,CAAC;AAC9CE,EAAAA,SAAS,GAAGA,SAAS,CAACE,GAAG,CAAC,UAACC,IAAI,EAAK;IAClC,IAAIC,QAAA,CAASD,IAAI,CAAC,EAAE,OAAOA,IAAI,CAACJ,QAAQ,CAAC;AACzC,IAAA,OAAOI,IAAI;AACb,GAAC,CAAC;AACF,EAAA,OAAOH,SAAS;AAClB,CAAC;;;ACLD;AACA;AACA;AACA;AACA;AACA;IACaK,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,KAA2B,EAAK;AAC9D,EAAA,IACEjH,aAAa,GAcXiH,KAAK,CAdPjH,aAAa;IACbkH,aAAa,GAaXD,KAAK,CAbPC,aAAa;IACbC,oBAAoB,GAYlBF,KAAK,CAZPE,oBAAoB;IACpBC,uBAAuB,GAWrBH,KAAK,CAXPG,uBAAuB;IACvBhH,sBAAsB,GAUpB6G,KAAK,CAVP7G,sBAAsB;IACtBiH,oBAAoB,GASlBJ,KAAK,CATPI,oBAAoB;IACpBC,oBAAoB,GAQlBL,KAAK,CARPK,oBAAoB;IACNpH,iBAAiB,GAO7B+G,KAAK,CAPPM,YAAY;IACZC,QAAQ,GAMNP,KAAK,CANPO,QAAQ;IACRjH,UAAU,GAKR0G,KAAK,CALP1G,UAAU;IACV0D,KAAK,GAIHgD,KAAK,CAJPhD,KAAK;IACLwD,YAAY,GAGVR,KAAK,CAHPQ,YAAY;IACZnH,QAAQ,GAEN2G,KAAK,CAFP3G,QAAQ;AACLoH,IAAAA,UAAU,GAAAC,wBAAA,CACXV,KAAK,EAAAW,SAAA,CAAA;AAET,EAAA,IAAMC,qBAAqB,GAAGC,MAAM,CAAC,IAAI,CAAC;AAE1C,EAAA,IAAMC,aAAa,GAAG/F,OAAO,CAAC,YAAM;AAClC,IAAA,OAAOwF,QAAQ,IAAIQ,OAAO,EAAE;AAC9B,GAAC,EAAE,CAACR,QAAQ,CAAC,CAAC;;AAEd;AACA,EAAA,IAAMvH,oBAAoB,GAAGW,MAAM,CAACqH,SAAS,CAACC,cAAc,CAAChD,IAAI,CAC/D+B,KAAK,EACL,cACF,CAAC;EACD,IAAMkB,eAAe,GAAAC,cAAA,CAAA;AACnBC,IAAAA,KAAK,EAAE,OAAO;AACdpE,IAAAA,KAAK,EAAE,OAAO;AACdqE,IAAAA,QAAQ,EAAE;AAAU,GAAA,EACjB/H,UAAU,CACd;AAED,EAAA,IACSgI,qBAAqB,GAG1BJ,eAAe,CAHjBE,KAAK;IACEG,qBAAqB,GAE1BL,eAAe,CAFjBlE,KAAK;IACKwE,wBAAwB,GAChCN,eAAe,CADjBG,QAAQ;AAGV,EAAA,IAAMI,eAAe,GAAG1G,OAAO,CAAC,YAAM;AACpC,IAAA,IAAI,CAACkF,aAAa,EAAE,OAAO,IAAI;AAC/B,IAAA,IAAMyB,MAAM,GAAGzB,aAAa,KAAK,IAAI;IACrC,OAAA0B,eAAA,CAAAA,eAAA,CAAA,EAAA,EACGL,qBAAqB,EAAGI,MAAM,GAAG,IAAI,GAAGzB,aAAa,CAACmB,KAAK,CAAA,EAC3DG,qBAAqB,EAAGG,MAAM,GAAG,EAAE,GAAGzB,aAAa,CAACjD,KAAK,CAAA;GAE7D,EAAE,CAACsE,qBAAqB,EAAEC,qBAAqB,EAAEtB,aAAa,CAAC,CAAC;EAEjE,IAAM2B,UAAU,GAAGC,YAAY,CAAC7B,KAAK,CAAC8B,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC;EAEzD,IAAAC,WAAA,GAA+DnJ,UAAU,CAAC;AACxEU,MAAAA,UAAU,EAAE4H,eAAe;AAC3BpI,MAAAA,QAAQ,EAAEgI,aAAa;AACvB9H,MAAAA,oBAAoB,EAApBA,oBAAoB;MACpBI,QAAQ,EAAE4G,KAAK,CAAC5G,QAAQ;AACxBL,MAAAA,aAAa,EAAbA,aAAa;AACbE,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBC,MAAAA,gBAAgB,EAAE,SAAlBA,gBAAgBA,CAAGqF,QAAQ,EAAK;QAC9B,IAAIqC,qBAAqB,CAACoB,OAAO,EAAE;UACjC9B,oBAAoB,KAAA,IAAA,IAApBA,oBAAoB,KAApBA,MAAAA,IAAAA,oBAAoB,CAAG3B,QAAQ,IAAI,EAAE,CAAC;UACtCqC,qBAAqB,CAACoB,OAAO,GAAG,KAAK;AACvC;QACA7B,uBAAuB,KAAA,IAAA,IAAvBA,uBAAuB,KAAvBA,MAAAA,IAAAA,uBAAuB,CAAG5B,QAAQ,IAAI,EAAE,CAAC;OAC1C;AACDpF,MAAAA,sBAAsB,EAAtBA,sBAAsB;AACtBE,MAAAA,QAAQ,EAAEA,QAAQ,KAAK+B,SAAS,GAAG,IAAI,GAAG/B;AAC5C,KAAC,CAAC;IAhBMiB,aAAa,GAAAyH,WAAA,CAAbzH,aAAa;IAAEJ,iBAAiB,GAAA6H,WAAA,CAAjB7H,iBAAiB;IAAEoF,gBAAgB,GAAAyC,WAAA,CAAhBzC,gBAAgB;EAkB1D,IAAM2C,YAAY,GAAGC,KAAA,CAAMC,cAAc,CAAC,UAACC,YAA4B,EAAK;AAC1E,IAAA,IAAI5B,YAAY,EAAE;AAChB,MAAA,IAAIoB,UAAU,EAAE;AAAA,QAAA,IAAAS,eAAA;AACd,QAAA,CAAAA,eAAA,GAAArC,KAAK,CAAC5G,QAAQ,cAAAiJ,eAAA,KAAA,MAAA,IAAdA,eAAA,CAAApE,IAAA,CAAA+B,KAAK,EAAYoC,YAAY,EAAEA,YAAY,CAAC;AAC9C,OAAC,MAAM;AAAA,QAAA,IAAAE,gBAAA;QACL,CAAAA,gBAAA,GAAAtC,KAAK,CAAC5G,QAAQ,MAAAkJ,IAAAA,IAAAA,gBAAA,eAAdA,gBAAA,CAAArE,IAAA,CAAA+B,KAAK,EAAYoC,YAAY,CAAC,CAAC,CAAC,EAAEA,YAAY,CAAC;AACjD;AACF,KAAC,MAAM;AACL,MAAA,IAAM1C,SAAS,GAAG0C,YAAY,CAACxC,GAAG,CAAC,UAACC,IAAI,EAAA;QAAA,OAAKA,IAAI,CAAC0B,qBAAqB,CAAC;OAAC,CAAA;AACzE,MAAA,IAAIK,UAAU,EAAE;AAAA,QAAA,IAAAW,gBAAA;AACd,QAAA,CAAAA,gBAAA,GAAAvC,KAAK,CAAC5G,QAAQ,cAAAmJ,gBAAA,KAAA,MAAA,IAAdA,gBAAA,CAAAtE,IAAA,CAAA+B,KAAK,EAAYN,SAAS,EAAE0C,YAAY,CAAC;AAC3C,OAAC,MAAM;AAAA,QAAA,IAAAI,gBAAA;QACL,CAAAA,gBAAA,GAAAxC,KAAK,CAAC5G,QAAQ,MAAAoJ,IAAAA,IAAAA,gBAAA,KAAdA,MAAAA,IAAAA,gBAAA,CAAAvE,IAAA,CAAA+B,KAAK,EAAYN,SAAS,CAAC,CAAC,CAAC,EAAE0C,YAAY,CAAC,CAAC,CAAC,CAAC;AACjD;AACF;AACF,GAAC,CAAC;EAEF,IAAMK,aAAa,GAAGP,KAAA,CAAMC,cAAc,CAAC,UAACO,MAAM,EAAEC,WAAW,EAAK;AAAA,IAAA,IAAAC,gBAAA;AAClE,IAAA,IAAI,CAACD,WAAW,EAAE,QAAAC,gBAAA,GAAO5C,KAAK,CAAC5G,QAAQ,cAAAwJ,gBAAA,KAAA,MAAA,GAAA,MAAA,GAAdA,gBAAA,CAAA3E,IAAA,CAAA+B,KAAK,EAAY5E,SAAS,CAAC;AACpD,IAAA,IAAMgH,YAAY,GAAGzC,OAAO,CAAOgD,WAAW,CAAC;IAC/C,IAAME,UAAU,GAAG,EAAoB;AACvCT,IAAAA,YAAY,CAACU,OAAO,CAAC,UAACjD,IAAI,EAAK;AAC7B,MAAA,IACEI,aAAa,IACbwB,eAAe,IACf5B,IAAI,CAAC7C,KAAK,KAAKyE,eAAe,CAACF,qBAAqB,CAAC,EACrD;AACAsB,QAAAA,UAAU,CAACE,IAAI,CAACtB,eAAe,CAAC;AAClC,OAAC,MAAM;AACL,QAAA,IAAMuB,YAAY,GAAGC,SAAS,CAC5B/I,iBAAiB,IAAI,EAAE,EACvB2F,IAAI,CAAC7C,KAAK,EACVuE,qBACF,CAAC;AACD,QAAA,IAAIyB,YAAY,EAAE;AAChBH,UAAAA,UAAU,CAACE,IAAI,CAACC,YAAY,CAAC;AAC/B;AACF;AACF,KAAC,CAAC;IACFf,YAAY,CAACY,UAAU,CAAC;AAC1B,GAAC,CAAC;AAEF,EAAA,IAAMK,eAAe,GAAGnI,OAAO,CAAC,YAAM;AACpC,IAAA,IAAIT,aAAa,KAAK,iBAAiB,EAAE,OAAO,EAAE;IAClD,IAAI,CAACJ,iBAAiB,IAAIA,iBAAiB,CAACL,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE;AACnE,IAAA,IAAI,CAAC4H,eAAe,EAAE,OAAOvH,iBAAiB;AAC9C,IAAA,OAAO,CAACuH,eAAe,CAAC,CAAClG,MAAM,CAACrB,iBAAiB,CAAC;GACnD,EAAE,CAACuH,eAAe,EAAEnH,aAAa,EAAEJ,iBAAiB,CAAC,CAAC;AAEvD,EAAA,IAAMiJ,OAAO,GAAG7I,aAAa,KAAK,kBAAkB;AAEpD,EAAA,IAAM8I,WAAW,GAAGrI,OAAO,CAAC,YAAM;AAChC,IAAA,IAAM8H,UAAU,GAAGtD,YAAY,CAACvC,KAAK,EAAEuE,qBAAqB,CAAC;AAC7D,IAAA,OAAOK,UAAU,GAAGiB,UAAU,GAAGA,UAAU,CAAC,CAAC,CAAC;GAC/C,EAAE,CAACjB,UAAU,EAAEL,qBAAqB,EAAEvE,KAAK,CAAC,CAAC;EAE9C,IAAMqG,YAAY,GAAGnB,KAAA,CAAMC,cAAc,CAAC,UAACmB,KAAa,EAAEC,MAAM,EAAK;AACnE,IAAA,IAAMC,QAAQ,GAAG7D,OAAO,CAAC4D,MAAM,CAACC,QAAQ,CAAC;IACzC,IAAIC,WAAW,GAAG,EAAE;IACpB,IAAMC,mBAAmB,GAAGF,QAAQ,CAAC/E,IAAI,CAAC,UAACoB,IAAI,EAAK;MAClD,oBAAO8D,cAAc,CAAC9D,IAAI,CAAC;AAC7B,KAAC,CAAC;IACF,IAAI,CAAC6D,mBAAmB,EAAE;AACxBF,MAAAA,QAAQ,CAACV,OAAO,CAAC,UAACjD,IAAI,EAAK;AACzB,QAAA,IAAI+D,QAAA,CAAS/D,IAAI,CAAC,EAAE4D,WAAW,IAAI5D,IAAI;AACzC,OAAC,CAAC;AACJ,KAAC,MAAM;AACL4D,MAAAA,WAAW,GAAGG,QAAA,CAASL,MAAM,KAAA,IAAA,IAANA,MAAM,KAANA,MAAAA,GAAAA,MAAAA,GAAAA,MAAM,CAAEnC,KAAK,CAAC,GAAGmC,MAAM,CAACnC,KAAK,GAAGhG,SAAS;AAClE;AACA,IAAA,OAAOqI,WAAW,CAACI,WAAW,EAAE,CAACC,OAAO,CAACR,KAAK,CAACO,WAAW,EAAE,CAAC,IAAI,CAAC;AACpE,GAAC,CAAC;AAEF,EAAA,oBACEE,GAAA,CAACC,MAAM,EAAA7C,cAAA,CAAAA,cAAA,CAAA;AACL8C,IAAAA,UAAU,EAAE,IAAK;AACjBC,IAAAA,UAAU,EAAE,IAAK;AACjBC,IAAAA,qBAAqB,EAAE,KAAM;AAC7Bd,IAAAA,YAAY,EAAEA;AAAa,GAAA,EACvB5C,UAAU,CAAA,EAAA,EAAA,EAAA;AACd2D,IAAAA,KAAK,EAAAjD,cAAA,CAAA;AAAIkD,MAAAA,KAAK,EAAE;KAAWrE,EAAAA,KAAK,CAACoE,KAAK,CAAG;AACzCpH,IAAAA,KAAK,EAAEoG,WAAY;AACnBD,IAAAA,OAAO,EAAEA,OAAQ;AACjB/J,IAAAA,QAAQ,EAAEqJ,aAAc;AACxBnJ,IAAAA,UAAU,EAAE8B,SAAU;AACtBkJ,IAAAA,UAAU,EACRhK,aAAa,KAAK,eAAe,gBAC/ByJ,GAAA,CAAAQ,aAAA,EAAA;AAAcC,MAAAA,IAAI,EAAErB,OAAQ;AAACsB,MAAAA,OAAO,EAAEnF;AAAiB,KAAE,CAAC,GAE1DmB,UAAU,CAAC6D,UAEd;IACDI,eAAe,eACbX,GAAA,CAACY,aAAa,EAAA;AACZzH,MAAAA,MAAM,EAAE5C,aAAc;AACtB6I,MAAAA,OAAO,EAAEA,OAAQ;AACjByB,MAAAA,aAAa,EAAAzD,cAAA,CAAA;AACX,QAAA,cAAc,EAAE;AAAM,OAAA,EACnBd,oBAAoB,CACvB;MACFwE,WAAW,eACTd,GAAA,CAACe,MAAM,EAAA;AAACC,QAAAA,IAAI,EAAC,SAAS;AAACN,QAAAA,OAAO,EAAEnF,gBAAiB;AAAAkE,QAAAA,QAAA,EAAC;OAE1C;AACT,KACF,CACF;IAAAA,QAAA,EAEAN,eAAe,CAACtD,GAAG,CAAC,UAACC,IAAI,EAAEmF,KAAK,EAAK;AAAA,MAAA,IAAAC,WAAA;AACpC,MAAA,IAAMjI,KAAK,GAAG6C,IAAI,CAAC0B,qBAAqB,CAAC;AACzC,MAAA,IAAMH,KAAK,GAAGvB,IAAI,CAACyB,qBAAqB,CAAC;AACzC,MAAA,oBACE4D,IAAA,CAAClB,MAAM,CAACmB,MAAM,EAAA;AACZnI,QAAAA,KAAK,EAAEA,KAAM;AACboE,QAAAA,KAAK,EAAEA,KAAM;AAEbC,QAAAA,QAAQ,EAAExB,IAAI,CAAC2B,wBAAwB,CAAE;AAAAgC,QAAAA,QAAA,EAExCxD,CAAAA,KAAK,CAACoF,QAAQ,gBACbrB,GAAA,CAAA,MAAA,EAAA;AAAMsB,UAAAA,SAAS,EAAC,sBAAsB;AAAA7B,UAAAA,QAAA,GAAAyB,WAAA,GACnCjF,KAAK,CAACsF,IAAI,MAAAL,IAAAA,IAAAA,WAAA,KAAVA,MAAAA,GAAAA,MAAAA,GAAAA,WAAA,CAAAhH,IAAA,CAAA+B,KAAK,EAAQH,IAAI,EAAEmF,KAAK;SACrB,CAAC,GACL,IAAI,EACP5E,oBAAoB,GAAGA,oBAAoB,CAACP,IAAI,CAAC,GAAGuB,KAAK;OAAA7F,EAAAA,EAAAA,CAAAA,MAAA,CARlDyB,KAAK,EAAA,GAAA,CAAA,CAAAzB,MAAA,CAAIyJ,KAAK,CAST,CAAC;KAEnB;AAAC,GAAA,CACI,CAAC;AAEb;;;;"}
|
|
@@ -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-
|
|
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-
|
|
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
|
-
|
|
173
|
+
/**
|
|
174
|
+
* 设置请求唯一值
|
|
175
|
+
* ```
|
|
176
|
+
* 1. 设置后,如果请求入参不变,不会重复请求接口,直接使用上次缓存数据
|
|
177
|
+
* ```
|
|
178
|
+
*/
|
|
179
|
+
modelKey?: string;
|
|
168
180
|
/**
|
|
169
181
|
* 字段映射
|
|
170
182
|
* ```
|
package/dist/tree-modal/index.js
CHANGED
|
@@ -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-
|
|
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
|
-
|
|
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-
|
|
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
|
-
|
|
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-
|
|
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';
|