@flatbiz/antd 5.0.48 → 5.0.49
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/{code-D9xbvmEX.js → code-6OasUxQG.js} +17 -4
- package/dist/code-6OasUxQG.js.map +1 -0
- package/dist/code-render/index.css +1 -1
- package/dist/code-render/index.d.ts +6 -2
- package/dist/code-render/index.js +2 -1
- package/dist/code-render/index.js.map +1 -1
- package/dist/drag-collapse-form-list/index.d.ts +1 -1
- package/dist/index.d.ts +9 -3
- package/dist/index.js +2 -2
- package/dist/local-loading/index.js +1 -4
- package/dist/local-loading/index.js.map +1 -1
- package/dist/search-menu/index.d.ts +2 -0
- package/dist/search-menu/index.js +1 -1
- package/dist/{search-menu-N7nz0XoH.js → search-menu-BEAe3rD_.js} +4 -2
- package/dist/search-menu-BEAe3rD_.js.map +1 -0
- package/package.json +1 -1
- package/dist/code-D9xbvmEX.js.map +0 -1
- package/dist/search-menu-N7nz0XoH.js.map +0 -1
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
2
|
|
|
3
|
+
import { isArray } from '@dimjs/lang/is-array';
|
|
3
4
|
import { c as classNames } from './index-C6y8q2MK.js';
|
|
4
5
|
import { jsx } from 'react/jsx-runtime';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* 代码、json格式化渲染
|
|
8
9
|
* ```
|
|
10
|
+
* 1. wrap 是否换行,默认值:true
|
|
9
11
|
* 例如:
|
|
10
12
|
* // json数据渲染
|
|
11
13
|
* <CodeWrapper code={JSON.stringify(data, null, 2)}/>
|
|
@@ -31,15 +33,26 @@ return results;
|
|
|
31
33
|
var CodeRender = function CodeRender(props) {
|
|
32
34
|
var code = props.code,
|
|
33
35
|
className = props.className,
|
|
34
|
-
style = props.style
|
|
36
|
+
style = props.style,
|
|
37
|
+
wrap = props.wrap,
|
|
38
|
+
size = props.size;
|
|
39
|
+
var codeList = isArray(code) ? code : [code];
|
|
40
|
+
var codeRenderClassName = classNames('code-render', className, {
|
|
41
|
+
'code-render-small': size === 'small'
|
|
42
|
+
});
|
|
43
|
+
if (!props.code) return null;
|
|
44
|
+
var wrapFt = wrap === undefined ? true : wrap;
|
|
35
45
|
return /*#__PURE__*/jsx("pre", {
|
|
36
|
-
className:
|
|
46
|
+
className: codeRenderClassName,
|
|
37
47
|
style: style,
|
|
38
48
|
children: /*#__PURE__*/jsx("code", {
|
|
39
|
-
|
|
49
|
+
style: {
|
|
50
|
+
whiteSpace: wrapFt ? 'pre-wrap' : undefined
|
|
51
|
+
},
|
|
52
|
+
children: "".concat(codeList.join('\n'))
|
|
40
53
|
})
|
|
41
54
|
});
|
|
42
55
|
};
|
|
43
56
|
|
|
44
57
|
export { CodeRender as C };
|
|
45
|
-
//# sourceMappingURL=code-
|
|
58
|
+
//# sourceMappingURL=code-6OasUxQG.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-6OasUxQG.js","sources":["@flatbiz/antd/src/code-render/code.tsx"],"sourcesContent":["import type { CSSProperties } from 'react';\nimport classNames from 'classnames';\nimport { isArray } from '@dimjs/lang';\nimport './style.less';\n\nexport type CodeRenderProps = {\n code?: string | string[];\n className?: string;\n style?: CSSProperties;\n /** 是否换行,默认值:true */\n wrap?: boolean;\n size?: 'small' | 'default';\n};\n\n/**\n * 代码、json格式化渲染\n * ```\n * 1. wrap 是否换行,默认值:true\n * 例如:\n * // json数据渲染\n * <CodeWrapper code={JSON.stringify(data, null, 2)}/>\n * \n * // 代码渲染\n * <CodeWrapper code={`def results=[];\ndef datas=表单字段.dataList;\nfor index,data in datas do\n def item = [\n 'a':data.DomainName,\n 'b':data.Owner,\n 'userName': 流程参数.发起人账号\n ];\n results = results+item;\nend\nreturn results;\n` \n}/>\n *\n * ```\n *\n */\nexport const CodeRender = (props: CodeRenderProps) => {\n const { code, className, style, wrap, size } = props;\n const codeList = (isArray(code) ? code : [code]) as any[];\n const codeRenderClassName = classNames('code-render', className, {\n 'code-render-small': size === 'small',\n });\n\n if (!props.code) return null;\n\n const wrapFt = wrap === undefined ? true : wrap;\n\n return (\n <pre className={codeRenderClassName} style={style}>\n <code\n style={{ whiteSpace: wrapFt ? 'pre-wrap' : undefined }}\n >{`${codeList.join('\\n')}`}</code>\n </pre>\n );\n};\n"],"names":["CodeRender","props","code","className","style","wrap","size","codeList","_isArray","codeRenderClassName","classNames","wrapFt","undefined","_jsx","children","whiteSpace","concat","join"],"mappings":";;;;;;AAcA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,KAAsB,EAAK;AACpD,EAAA,IAAQC,IAAI,GAAmCD,KAAK,CAA5CC,IAAI;IAAEC,SAAS,GAAwBF,KAAK,CAAtCE,SAAS;IAAEC,KAAK,GAAiBH,KAAK,CAA3BG,KAAK;IAAEC,IAAI,GAAWJ,KAAK,CAApBI,IAAI;IAAEC,IAAI,GAAKL,KAAK,CAAdK,IAAI;EAC1C,IAAMC,QAAQ,GAAIC,OAAA,CAAQN,IAAI,CAAC,GAAGA,IAAI,GAAG,CAACA,IAAI,CAAW;AACzD,EAAA,IAAMO,mBAAmB,GAAGC,UAAU,CAAC,aAAa,EAAEP,SAAS,EAAE;IAC/D,mBAAmB,EAAEG,IAAI,KAAK;AAChC,GAAC,CAAC;AAEF,EAAA,IAAI,CAACL,KAAK,CAACC,IAAI,EAAE,OAAO,IAAI;EAE5B,IAAMS,MAAM,GAAGN,IAAI,KAAKO,SAAS,GAAG,IAAI,GAAGP,IAAI;AAE/C,EAAA,oBACEQ,GAAA,CAAA,KAAA,EAAA;AAAKV,IAAAA,SAAS,EAAEM,mBAAoB;AAACL,IAAAA,KAAK,EAAEA,KAAM;AAAAU,IAAAA,QAAA,eAChDD,GAAA,CAAA,MAAA,EAAA;AACET,MAAAA,KAAK,EAAE;AAAEW,QAAAA,UAAU,EAAEJ,MAAM,GAAG,UAAU,GAAGC;OAAY;MAAAE,QAAA,EAAA,EAAA,CAAAE,MAAA,CACpDT,QAAQ,CAACU,IAAI,CAAC,IAAI,CAAC;KAAS;AAAC,GAC/B,CAAC;AAEV;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.code-render{background-color:#f5f5f5;border-radius:4px;margin:0;padding:10px}
|
|
1
|
+
.code-render{background-color:#f5f5f5;border-radius:4px;color:#3d3d3d;font-size:14px;margin:0;padding:10px}.code-render-small{font-size:12px}
|
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
import { CSSProperties } from 'react';
|
|
2
2
|
|
|
3
3
|
export type CodeRenderProps = {
|
|
4
|
-
code?: string;
|
|
4
|
+
code?: string | string[];
|
|
5
5
|
className?: string;
|
|
6
6
|
style?: CSSProperties;
|
|
7
|
+
/** 是否换行,默认值:true */
|
|
8
|
+
wrap?: boolean;
|
|
9
|
+
size?: "small" | "default";
|
|
7
10
|
};
|
|
8
11
|
/**
|
|
9
12
|
* 代码、json格式化渲染
|
|
10
13
|
* ```
|
|
14
|
+
* 1. wrap 是否换行,默认值:true
|
|
11
15
|
* 例如:
|
|
12
16
|
* // json数据渲染
|
|
13
17
|
* <CodeWrapper code={JSON.stringify(data, null, 2)}/>
|
|
@@ -30,6 +34,6 @@ return results;
|
|
|
30
34
|
* ```
|
|
31
35
|
*
|
|
32
36
|
*/
|
|
33
|
-
export declare const CodeRender: (props: CodeRenderProps) => import("react").JSX.Element;
|
|
37
|
+
export declare const CodeRender: (props: CodeRenderProps) => import("react").JSX.Element | null;
|
|
34
38
|
|
|
35
39
|
export {};
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
import './index.css';
|
|
3
3
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
4
4
|
|
|
5
|
-
export { C as CodeRender } from '../code-
|
|
5
|
+
export { C as CodeRender } from '../code-6OasUxQG.js';
|
|
6
|
+
import '@dimjs/lang/is-array';
|
|
6
7
|
import '../index-C6y8q2MK.js';
|
|
7
8
|
import '../_commonjsHelpers-a3yINl_6.js';
|
|
8
9
|
import 'react/jsx-runtime';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -31,7 +31,7 @@ export type DragCollapseFormListProps = {
|
|
|
31
31
|
/** 手风琴模式,只允许单个内容区域展开 */
|
|
32
32
|
accordion?: boolean;
|
|
33
33
|
/** 当前激活 tab 面板的key */
|
|
34
|
-
activeKey?:
|
|
34
|
+
activeKey?: (string | number)[];
|
|
35
35
|
/** 所有子面板是否可折叠或指定可折叠触发区域,可选: header | icon | disabled */
|
|
36
36
|
collapsible?: CollapseProps["collapsible"];
|
|
37
37
|
/** 初始化选中面板的 key */
|
package/dist/index.d.ts
CHANGED
|
@@ -843,13 +843,17 @@ export type CheckboxWrapperProps = Omit<CheckboxProps, "checked" | "defaultCheck
|
|
|
843
843
|
*/
|
|
844
844
|
export declare const CheckboxWrapper: (props: CheckboxWrapperProps) => import("react").JSX.Element;
|
|
845
845
|
export type CodeRenderProps = {
|
|
846
|
-
code?: string;
|
|
846
|
+
code?: string | string[];
|
|
847
847
|
className?: string;
|
|
848
848
|
style?: CSSProperties;
|
|
849
|
+
/** 是否换行,默认值:true */
|
|
850
|
+
wrap?: boolean;
|
|
851
|
+
size?: "small" | "default";
|
|
849
852
|
};
|
|
850
853
|
/**
|
|
851
854
|
* 代码、json格式化渲染
|
|
852
855
|
* ```
|
|
856
|
+
* 1. wrap 是否换行,默认值:true
|
|
853
857
|
* 例如:
|
|
854
858
|
* // json数据渲染
|
|
855
859
|
* <CodeWrapper code={JSON.stringify(data, null, 2)}/>
|
|
@@ -872,7 +876,7 @@ return results;
|
|
|
872
876
|
* ```
|
|
873
877
|
*
|
|
874
878
|
*/
|
|
875
|
-
export declare const CodeRender: (props: CodeRenderProps) => import("react").JSX.Element;
|
|
879
|
+
export declare const CodeRender: (props: CodeRenderProps) => import("react").JSX.Element | null;
|
|
876
880
|
export type ColorPickerWrapperProps = Omit<ColorPickerProps, "value" | "onChange"> & {
|
|
877
881
|
/** 格式:#1677ff */
|
|
878
882
|
value?: string;
|
|
@@ -1500,7 +1504,7 @@ export type DragCollapseFormListProps = {
|
|
|
1500
1504
|
/** 手风琴模式,只允许单个内容区域展开 */
|
|
1501
1505
|
accordion?: boolean;
|
|
1502
1506
|
/** 当前激活 tab 面板的key */
|
|
1503
|
-
activeKey?:
|
|
1507
|
+
activeKey?: (string | number)[];
|
|
1504
1508
|
/** 所有子面板是否可折叠或指定可折叠触发区域,可选: header | icon | disabled */
|
|
1505
1509
|
collapsible?: CollapseProps["collapsible"];
|
|
1506
1510
|
/** 初始化选中面板的 key */
|
|
@@ -5037,6 +5041,8 @@ export interface ISearchMenuProps {
|
|
|
5037
5041
|
wrapStyle?: CSSProperties;
|
|
5038
5042
|
style?: CSSProperties;
|
|
5039
5043
|
searchStyle?: CSSProperties;
|
|
5044
|
+
/** 搜索框自动聚焦 */
|
|
5045
|
+
searchAutoFocus?: boolean;
|
|
5040
5046
|
/** 是否显示搜索区域 */
|
|
5041
5047
|
showSearch?: boolean;
|
|
5042
5048
|
}
|
package/dist/index.js
CHANGED
|
@@ -156,7 +156,7 @@ export { C as CardWrapper } from './card-wrapper-C8YADYlW.js';
|
|
|
156
156
|
export { C as CascaderWrapper } from './cascader-wrapper-CMYrmR6L.js';
|
|
157
157
|
export { CheckList } from './check-list/index.js';
|
|
158
158
|
export { C as CheckboxWrapper } from './checkbox-wrapper-BOIS5kIz.js';
|
|
159
|
-
export { C as CodeRender } from './code-
|
|
159
|
+
export { C as CodeRender } from './code-6OasUxQG.js';
|
|
160
160
|
export { C as ColorPickerWrapper } from './color-picker-D8Tiiut0.js';
|
|
161
161
|
export { C as ConfigProviderWrapper } from './config-provider-wrapper-C72dPUJZ.js';
|
|
162
162
|
export { C as CopyWrapper } from './copy-BSlIwnwz.js';
|
|
@@ -238,7 +238,7 @@ export { R as RollLocationCenter } from './center-DgQUmnwe.js';
|
|
|
238
238
|
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
|
-
export { S as SearchMenu } from './search-menu-
|
|
241
|
+
export { S as SearchMenu } from './search-menu-BEAe3rD_.js';
|
|
242
242
|
export { S as SelectorWrapper } from './selector-wrapper-B5PUm15M.js';
|
|
243
243
|
export { S as SelectorWrapperSearch } from './selector-wrapper-search-BMyOMlZl.js';
|
|
244
244
|
export { S as SelectorWrapperSimple } from './selector-wrapper-simple-Vbt4cYNm.js';
|
|
@@ -63,7 +63,6 @@ var LocalLoadingInner = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
63
63
|
loading = _useState6[0],
|
|
64
64
|
setLoading = _useState6[1];
|
|
65
65
|
var errorRef = useRef();
|
|
66
|
-
var hiddenRequiredErrorRenderRef = useRef(true);
|
|
67
66
|
var prevParams = fbaHooks.usePrevious(serviceConfig.params);
|
|
68
67
|
var loadingSpinContent = getValueOrDefault(loadingSpinProps === null || loadingSpinProps === void 0 ? void 0 : loadingSpinProps.content, /*#__PURE__*/jsx("span", {}));
|
|
69
68
|
var loadingSpinBgColor = getValueOrDefault(loadingSpinProps === null || loadingSpinProps === void 0 ? void 0 : loadingSpinProps.bgColor, 'rgba(0,0,0,0.01)');
|
|
@@ -129,7 +128,6 @@ var LocalLoadingInner = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
129
128
|
console.error(error);
|
|
130
129
|
setStatus('error');
|
|
131
130
|
errorRef.current = error.message;
|
|
132
|
-
hiddenRequiredErrorRenderRef.current = false;
|
|
133
131
|
return $Try_1_Finally($Try_1_Post)();
|
|
134
132
|
} catch ($boundEx) {
|
|
135
133
|
return $Try_1_Finally($error)($boundEx);
|
|
@@ -143,7 +141,6 @@ var LocalLoadingInner = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
143
141
|
_respData = $await_3;
|
|
144
142
|
setStatus('success');
|
|
145
143
|
setRespData(_respData);
|
|
146
|
-
hiddenRequiredErrorRenderRef.current = false;
|
|
147
144
|
return $Try_1_Finally($Try_1_Post)();
|
|
148
145
|
} catch ($boundEx) {
|
|
149
146
|
return $Try_1_Catch($boundEx);
|
|
@@ -189,7 +186,7 @@ var LocalLoadingInner = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
189
186
|
};
|
|
190
187
|
});
|
|
191
188
|
if (!completeResult.complete) {
|
|
192
|
-
if (
|
|
189
|
+
if (!showRequiredError) {
|
|
193
190
|
return /*#__PURE__*/jsx(Fragment, {});
|
|
194
191
|
}
|
|
195
192
|
return /*#__PURE__*/jsx(LocalLoadingCtxProvider, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/local-loading/context.ts","@flatbiz/antd/src/local-loading/local-loading.tsx","@flatbiz/antd/src/local-loading/index.ts"],"sourcesContent":["import type { TPlainObject } from '@flatbiz/utils';\nimport { createCtx } from '@wove/react';\n\nexport const [useLocalLoadingCtx, LocalLoadingCtxProvider] = createCtx<{\n onRequest: (params?: TPlainObject) => void;\n}>();\n","import type { CSSProperties, ReactElement } from 'react';\nimport {\n forwardRef,\n Fragment,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { Button, Result, Spin } from 'antd';\nimport { isDeepEqual } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport type { TAny, TPlainObject } from '@flatbiz/utils';\nimport { getValueOrDefault, isUndefinedOrNull, toArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { LocalLoadingCtxProvider } from './context.js';\nimport './style.less';\n\nexport type LocalLoadingServiceConfig = {\n onRequest: (params?: TAny) => Promise<TAny>;\n params?: TPlainObject;\n /** 标记serviceConfig.params中无效参数,被设置的params key 不传入服务接口入参 */\n invalidParamKey?: string[];\n /** 必填字段设置 */\n requiredParamsKeys?: string[];\n};\n\nexport interface LocalLoadingProps {\n className?: string;\n style?: CSSProperties;\n contentStyle?: CSSProperties;\n /** 接口数据配置 */\n serviceConfig: LocalLoadingServiceConfig;\n /** children 为函数,参数【respData】为接口返回数据 */\n children: (respData?: TAny) => ReactElement;\n /**\n * 是否异步,默认:false\n * ```\n * true(异步):onRequest、react dom渲染同步执行\n * false(同步):onRequest有结果了才渲染 react dom\n * ```\n */\n isAsync?: boolean;\n /** loading高度,默认值:100;isAsync = true 无效 */\n loadingHeight?: number | string;\n /** loading spin 属性设置 */\n loadingSpinProps?: {\n /** loading tip,默认值:Loading */\n tip?: string;\n /** loading 内容 */\n content?: ReactElement;\n /** 背景色,默认值:rgba(0,0,0,0.01) */\n bgColor?: string;\n };\n textConfigs?: {\n /** 必填异常文本 */\n requiredErrorText?: string;\n };\n /** 是否显示必填异常 */\n showRequiredError?: boolean;\n /** 自定义异常渲染处理 */\n errorRender?: (error?: TAny) => ReactElement;\n /** 设置内部滚动,需要设置 style.height 才能生效,@5.0.16 */\n contentScroll?: boolean;\n /** 设置高度 */\n height?: number | string;\n}\n\nexport type LocalLoadingRefApi = {\n onRefresh: (params?: TPlainObject) => void;\n};\n\n/**\n * 局部加载,包含接口数据处理逻辑\n * ```\n * 包括\n * 1. loading显示效果、error显示效果、获取服务数据\n * 2. 当 serviceConfig.params 值与上一次值不相等时,会主动发起服务调用\n * 3. 通过 serviceConfig.requiredParamsKeys 设置服务调用必填字段\n * 4. 通过 ref.onRequest 可主动发起服务调用\n * 5. 子组件通过下面方式主动发起服务调用\n * const localLoadingApi = LocalLoading.useLocalLoading();\n * localLoadingApi.onRequest();\n * 6. 如果内部需要滚动条,可设置 contentScroll = true (外部有高度或者设置style.height 才能生效)\n * ```\n */\nexport const LocalLoadingInner = forwardRef<\n LocalLoadingRefApi,\n LocalLoadingProps\n>((props, ref) => {\n const {\n serviceConfig,\n isAsync,\n children,\n errorRender,\n loadingSpinProps,\n textConfigs,\n showRequiredError,\n contentScroll,\n contentStyle,\n height,\n } = props;\n const [status, setStatus] = useState<\n 'success' | 'error' | 'required_error' | 'init'\n >('init');\n const [respData, setRespData] = useState<TAny>();\n const loadingHeight =\n props.loadingHeight === undefined ? 100 : props.loadingHeight;\n const [loading, setLoading] = useState<boolean>(false);\n const errorRef = useRef<string>();\n const hiddenRequiredErrorRenderRef = useRef(true);\n\n const prevParams = fbaHooks.usePrevious(serviceConfig.params);\n\n const loadingSpinContent = getValueOrDefault(\n loadingSpinProps?.content,\n <span />\n );\n const loadingSpinBgColor = getValueOrDefault(\n loadingSpinProps?.bgColor,\n 'rgba(0,0,0,0.01)'\n );\n const loadingSpinTip = getValueOrDefault(loadingSpinProps?.tip, 'Loading');\n\n const requiredErrorText = textConfigs?.requiredErrorText;\n\n // 用于直接发起接口调用,不能用于比较\n const serviceParams = useMemo(() => {\n if (\n !serviceConfig.params ||\n toArray(serviceConfig.invalidParamKey).length === 0\n ) {\n return serviceConfig.params;\n }\n const newParams = { ...serviceConfig.params };\n serviceConfig.invalidParamKey?.forEach((key) => {\n newParams[key] = undefined;\n });\n return newParams;\n }, [serviceConfig]);\n\n // 判断必要参数是否完整\n const validateRequiredParamsComplete = hooks.useCallbackRef(\n (params?: TPlainObject) => {\n const keys = serviceConfig?.requiredParamsKeys;\n if (keys?.length) {\n const target = keys.find((item) => {\n return isUndefinedOrNull(params?.[item]);\n });\n if (target) {\n return {\n complete: false,\n message:\n requiredErrorText ||\n `LocalLoading渲染缺少必填参数:${keys.join('、')}`,\n };\n }\n }\n return { complete: true };\n }\n );\n\n const completeResult = useMemo(() => {\n return validateRequiredParamsComplete(serviceConfig.params);\n }, [validateRequiredParamsComplete, serviceConfig.params]);\n\n const onInitRequest = async (params?: TPlainObject) => {\n try {\n const mergeProps = { ...serviceParams, ...params };\n setLoading(true);\n const respData = await serviceConfig.onRequest(mergeProps);\n setStatus('success');\n setRespData(respData);\n hiddenRequiredErrorRenderRef.current = false;\n } catch (error: TAny) {\n console.error(error);\n setStatus('error');\n errorRef.current = error.message;\n hiddenRequiredErrorRenderRef.current = false;\n } finally {\n setLoading(false);\n }\n };\n\n fbaHooks.useEffectCustomAsync(async () => {\n if (completeResult.complete) {\n await onInitRequest();\n }\n }, []);\n\n fbaHooks.useEffectCustom(() => {\n if (completeResult.complete) {\n if (prevParams) {\n if (!isDeepEqual(serviceConfig.params, prevParams)) {\n if (status === 'error') {\n setStatus('init');\n }\n void onInitRequest();\n }\n }\n }\n }, [prevParams, serviceConfig.params]);\n\n useImperativeHandle(ref, () => {\n return { onRefresh: onInitRequest };\n });\n\n if (!completeResult.complete) {\n if (hiddenRequiredErrorRenderRef.current || !showRequiredError) {\n return <Fragment />;\n }\n return (\n <LocalLoadingCtxProvider value={{ onRequest: onInitRequest }}>\n <div className={classNames('local-loading-error', props.className)}>\n <div className=\"local-loading-area\"></div>\n <Result status=\"error\" subTitle={completeResult.message} />\n </div>\n </LocalLoadingCtxProvider>\n );\n }\n\n if (status === 'error') {\n if (errorRender) {\n return errorRender({ message: errorRef.current });\n }\n return (\n <LocalLoadingCtxProvider value={{ onRequest: onInitRequest }}>\n <div className={classNames('local-loading-error', props.className)}>\n <div className=\"local-loading-area\"></div>\n <Result\n status=\"error\"\n subTitle={errorRef.current || '数据处理异常'}\n extra={[\n <Button\n type=\"primary\"\n ghost\n key=\"console\"\n size=\"small\"\n onClick={() => {\n setStatus('init');\n void onInitRequest();\n }}\n >\n 重新获取\n </Button>,\n ]}\n />\n </div>\n </LocalLoadingCtxProvider>\n );\n }\n\n if (status !== 'success' && !isAsync) {\n return (\n <div\n className={classNames('fba-local-loading-process', props.className)}\n style={{\n height: loadingHeight,\n display: 'flex',\n justifyContent: 'center',\n position: 'relative',\n backgroundColor: 'var(--block-bg-color)',\n }}\n >\n <Spin\n spinning={loading}\n tip={loadingSpinTip}\n wrapperClassName=\"local-loading-spin-wrapper\"\n className=\"local-loading-spin\"\n style={\n {\n '--local-loading-spin-bgColor': loadingSpinBgColor,\n } as CSSProperties\n }\n >\n {loadingSpinContent}\n </Spin>\n </div>\n );\n }\n\n const className = classNames(\n 'fba-local-loading',\n { 'fll-content-scroll': contentScroll },\n props.className\n );\n\n const rootStyle = { height, ...props.style };\n\n return (\n <LocalLoadingCtxProvider value={{ onRequest: onInitRequest }}>\n <div className={className} style={rootStyle}>\n {loading ? (\n <Spin\n spinning={loading}\n tip={loadingSpinTip}\n wrapperClassName=\"local-loading-spin-wrapper\"\n className=\"local-loading-spin\"\n style={\n {\n '--local-loading-spin-bgColor': loadingSpinBgColor,\n } as CSSProperties\n }\n >\n {loadingSpinContent}\n </Spin>\n ) : null}\n <div className=\"local-loading-content\" style={contentStyle}>\n {children(respData)}\n </div>\n </div>\n </LocalLoadingCtxProvider>\n );\n});\n","import type { TPlainObject } from '@flatbiz/utils';\nimport { fbaUtils } from '../fba-utils/fba-utils.js';\nimport { useLocalLoadingCtx } from './context.js';\nimport { LocalLoadingInner } from './local-loading.jsx';\n\n/**\n * 局部加载,包含接口数据处理逻辑\n * ```\n * 包括\n * 1. loading显示效果、error显示效果、获取服务数据\n * 2. 当 serviceConfig.params 值与上一次值不相等时,会主动发起服务调用\n * 3. 通过 serviceConfig.requiredParamsKeys 设置服务调用必填字段\n * 4. 通过 ref.onRequest 可主动发起服务调用\n * 5. 子组件通过下面方式主动发起服务调用\n * const localLoadingApi = LocalLoading.useLocalLoading();\n * localLoadingApi.onRequest();\n * 6. 如果内部需要滚动条,可设置 contentScroll = true (外部有高度或者设置style.height 才能生效)\n * ```\n */\nexport const LocalLoading = fbaUtils.attachPropertiesToComponent(\n LocalLoadingInner,\n {\n useLocalLoading: () => {\n const ctx = useLocalLoadingCtx();\n return {\n onRequest: (params?: TPlainObject) => {\n ctx.onRequest(params);\n },\n };\n },\n }\n);\n"],"names":["_createCtx","_createCtx3","_createCtx2","_slicedToArray","useLocalLoadingCtx","LocalLoadingCtxProvider","LocalLoadingInner","forwardRef","props","ref","serviceConfig","isAsync","children","errorRender","loadingSpinProps","textConfigs","showRequiredError","contentScroll","contentStyle","height","_useState","useState","_useState2","status","setStatus","_useState3","_useState4","respData","setRespData","loadingHeight","undefined","_useState5","_useState6","loading","setLoading","errorRef","useRef","hiddenRequiredErrorRenderRef","prevParams","fbaHooks","usePrevious","params","loadingSpinContent","getValueOrDefault","content","_jsx","loadingSpinBgColor","bgColor","loadingSpinTip","tip","requiredErrorText","serviceParams","useMemo","_serviceConfig$invali","toArray","invalidParamKey","length","newParams","_objectSpread","forEach","key","validateRequiredParamsComplete","_hooks","useCallbackRef","keys","requiredParamsKeys","target","find","item","isUndefinedOrNull","complete","message","concat","join","completeResult","onInitRequest","Promise","$return","$error","$Try_1_Finally","$Try_1_Exit","$Try_1_Value","call","$boundEx","bind","mergeProps","_respData","$Try_1_Post","$Try_1_Catch","error","console","current","resolve","onRequest","then","$await_3","useEffectCustomAsync","$await_4","$If_2","useEffectCustom","_isDeepEqual","useImperativeHandle","onRefresh","Fragment","value","_jsxs","className","_classNames","Result","subTitle","extra","Button","type","ghost","size","onClick","style","display","justifyContent","position","backgroundColor","Spin","spinning","wrapperClassName","rootStyle","LocalLoading","fbaUtils","attachPropertiesToComponent","useLocalLoading","ctx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/local-loading/context.ts","@flatbiz/antd/src/local-loading/local-loading.tsx","@flatbiz/antd/src/local-loading/index.ts"],"sourcesContent":["import type { TPlainObject } from '@flatbiz/utils';\nimport { createCtx } from '@wove/react';\n\nexport const [useLocalLoadingCtx, LocalLoadingCtxProvider] = createCtx<{\n onRequest: (params?: TPlainObject) => void;\n}>();\n","import type { CSSProperties, ReactElement } from 'react';\nimport {\n forwardRef,\n Fragment,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { Button, Result, Spin } from 'antd';\nimport { isDeepEqual } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport type { TAny, TPlainObject } from '@flatbiz/utils';\nimport { getValueOrDefault, isUndefinedOrNull, toArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { LocalLoadingCtxProvider } from './context.js';\nimport './style.less';\n\nexport type LocalLoadingServiceConfig = {\n onRequest: (params?: TAny) => Promise<TAny>;\n params?: TPlainObject;\n /** 标记serviceConfig.params中无效参数,被设置的params key 不传入服务接口入参 */\n invalidParamKey?: string[];\n /** 必填字段设置 */\n requiredParamsKeys?: string[];\n};\n\nexport interface LocalLoadingProps {\n className?: string;\n style?: CSSProperties;\n contentStyle?: CSSProperties;\n /** 接口数据配置 */\n serviceConfig: LocalLoadingServiceConfig;\n /** children 为函数,参数【respData】为接口返回数据 */\n children: (respData?: TAny) => ReactElement;\n /**\n * 是否异步,默认:false\n * ```\n * true(异步):onRequest、react dom渲染同步执行\n * false(同步):onRequest有结果了才渲染 react dom\n * ```\n */\n isAsync?: boolean;\n /** loading高度,默认值:100;isAsync = true 无效 */\n loadingHeight?: number | string;\n /** loading spin 属性设置 */\n loadingSpinProps?: {\n /** loading tip,默认值:Loading */\n tip?: string;\n /** loading 内容 */\n content?: ReactElement;\n /** 背景色,默认值:rgba(0,0,0,0.01) */\n bgColor?: string;\n };\n textConfigs?: {\n /** 必填异常文本 */\n requiredErrorText?: string;\n };\n /** 是否显示必填异常 */\n showRequiredError?: boolean;\n /** 自定义异常渲染处理 */\n errorRender?: (error?: TAny) => ReactElement;\n /** 设置内部滚动,需要设置 style.height 才能生效,@5.0.16 */\n contentScroll?: boolean;\n /** 设置高度 */\n height?: number | string;\n}\n\nexport type LocalLoadingRefApi = {\n onRefresh: (params?: TPlainObject) => void;\n};\n\n/**\n * 局部加载,包含接口数据处理逻辑\n * ```\n * 包括\n * 1. loading显示效果、error显示效果、获取服务数据\n * 2. 当 serviceConfig.params 值与上一次值不相等时,会主动发起服务调用\n * 3. 通过 serviceConfig.requiredParamsKeys 设置服务调用必填字段\n * 4. 通过 ref.onRequest 可主动发起服务调用\n * 5. 子组件通过下面方式主动发起服务调用\n * const localLoadingApi = LocalLoading.useLocalLoading();\n * localLoadingApi.onRequest();\n * 6. 如果内部需要滚动条,可设置 contentScroll = true (外部有高度或者设置style.height 才能生效)\n * ```\n */\nexport const LocalLoadingInner = forwardRef<\n LocalLoadingRefApi,\n LocalLoadingProps\n>((props, ref) => {\n const {\n serviceConfig,\n isAsync,\n children,\n errorRender,\n loadingSpinProps,\n textConfigs,\n showRequiredError,\n contentScroll,\n contentStyle,\n height,\n } = props;\n const [status, setStatus] = useState<\n 'success' | 'error' | 'required_error' | 'init'\n >('init');\n const [respData, setRespData] = useState<TAny>();\n const loadingHeight =\n props.loadingHeight === undefined ? 100 : props.loadingHeight;\n const [loading, setLoading] = useState<boolean>(false);\n const errorRef = useRef<string>();\n\n const prevParams = fbaHooks.usePrevious(serviceConfig.params);\n\n const loadingSpinContent = getValueOrDefault(\n loadingSpinProps?.content,\n <span />\n );\n const loadingSpinBgColor = getValueOrDefault(\n loadingSpinProps?.bgColor,\n 'rgba(0,0,0,0.01)'\n );\n const loadingSpinTip = getValueOrDefault(loadingSpinProps?.tip, 'Loading');\n\n const requiredErrorText = textConfigs?.requiredErrorText;\n\n // 用于直接发起接口调用,不能用于比较\n const serviceParams = useMemo(() => {\n if (\n !serviceConfig.params ||\n toArray(serviceConfig.invalidParamKey).length === 0\n ) {\n return serviceConfig.params;\n }\n const newParams = { ...serviceConfig.params };\n serviceConfig.invalidParamKey?.forEach((key) => {\n newParams[key] = undefined;\n });\n return newParams;\n }, [serviceConfig]);\n\n // 判断必要参数是否完整\n const validateRequiredParamsComplete = hooks.useCallbackRef(\n (params?: TPlainObject) => {\n const keys = serviceConfig?.requiredParamsKeys;\n if (keys?.length) {\n const target = keys.find((item) => {\n return isUndefinedOrNull(params?.[item]);\n });\n if (target) {\n return {\n complete: false,\n message:\n requiredErrorText ||\n `LocalLoading渲染缺少必填参数:${keys.join('、')}`,\n };\n }\n }\n return { complete: true };\n }\n );\n\n const completeResult = useMemo(() => {\n return validateRequiredParamsComplete(serviceConfig.params);\n }, [validateRequiredParamsComplete, serviceConfig.params]);\n\n const onInitRequest = async (params?: TPlainObject) => {\n try {\n const mergeProps = { ...serviceParams, ...params };\n setLoading(true);\n const respData = await serviceConfig.onRequest(mergeProps);\n setStatus('success');\n setRespData(respData);\n } catch (error: TAny) {\n console.error(error);\n setStatus('error');\n errorRef.current = error.message;\n } finally {\n setLoading(false);\n }\n };\n\n fbaHooks.useEffectCustomAsync(async () => {\n if (completeResult.complete) {\n await onInitRequest();\n }\n }, []);\n\n fbaHooks.useEffectCustom(() => {\n if (completeResult.complete) {\n if (prevParams) {\n if (!isDeepEqual(serviceConfig.params, prevParams)) {\n if (status === 'error') {\n setStatus('init');\n }\n void onInitRequest();\n }\n }\n }\n }, [prevParams, serviceConfig.params]);\n\n useImperativeHandle(ref, () => {\n return { onRefresh: onInitRequest };\n });\n\n if (!completeResult.complete) {\n if (!showRequiredError) {\n return <Fragment />;\n }\n return (\n <LocalLoadingCtxProvider value={{ onRequest: onInitRequest }}>\n <div className={classNames('local-loading-error', props.className)}>\n <div className=\"local-loading-area\"></div>\n <Result status=\"error\" subTitle={completeResult.message} />\n </div>\n </LocalLoadingCtxProvider>\n );\n }\n\n if (status === 'error') {\n if (errorRender) {\n return errorRender({ message: errorRef.current });\n }\n return (\n <LocalLoadingCtxProvider value={{ onRequest: onInitRequest }}>\n <div className={classNames('local-loading-error', props.className)}>\n <div className=\"local-loading-area\"></div>\n <Result\n status=\"error\"\n subTitle={errorRef.current || '数据处理异常'}\n extra={[\n <Button\n type=\"primary\"\n ghost\n key=\"console\"\n size=\"small\"\n onClick={() => {\n setStatus('init');\n void onInitRequest();\n }}\n >\n 重新获取\n </Button>,\n ]}\n />\n </div>\n </LocalLoadingCtxProvider>\n );\n }\n\n if (status !== 'success' && !isAsync) {\n return (\n <div\n className={classNames('fba-local-loading-process', props.className)}\n style={{\n height: loadingHeight,\n display: 'flex',\n justifyContent: 'center',\n position: 'relative',\n backgroundColor: 'var(--block-bg-color)',\n }}\n >\n <Spin\n spinning={loading}\n tip={loadingSpinTip}\n wrapperClassName=\"local-loading-spin-wrapper\"\n className=\"local-loading-spin\"\n style={\n {\n '--local-loading-spin-bgColor': loadingSpinBgColor,\n } as CSSProperties\n }\n >\n {loadingSpinContent}\n </Spin>\n </div>\n );\n }\n\n const className = classNames(\n 'fba-local-loading',\n { 'fll-content-scroll': contentScroll },\n props.className\n );\n\n const rootStyle = { height, ...props.style };\n\n return (\n <LocalLoadingCtxProvider value={{ onRequest: onInitRequest }}>\n <div className={className} style={rootStyle}>\n {loading ? (\n <Spin\n spinning={loading}\n tip={loadingSpinTip}\n wrapperClassName=\"local-loading-spin-wrapper\"\n className=\"local-loading-spin\"\n style={\n {\n '--local-loading-spin-bgColor': loadingSpinBgColor,\n } as CSSProperties\n }\n >\n {loadingSpinContent}\n </Spin>\n ) : null}\n <div className=\"local-loading-content\" style={contentStyle}>\n {children(respData)}\n </div>\n </div>\n </LocalLoadingCtxProvider>\n );\n});\n","import type { TPlainObject } from '@flatbiz/utils';\nimport { fbaUtils } from '../fba-utils/fba-utils.js';\nimport { useLocalLoadingCtx } from './context.js';\nimport { LocalLoadingInner } from './local-loading.jsx';\n\n/**\n * 局部加载,包含接口数据处理逻辑\n * ```\n * 包括\n * 1. loading显示效果、error显示效果、获取服务数据\n * 2. 当 serviceConfig.params 值与上一次值不相等时,会主动发起服务调用\n * 3. 通过 serviceConfig.requiredParamsKeys 设置服务调用必填字段\n * 4. 通过 ref.onRequest 可主动发起服务调用\n * 5. 子组件通过下面方式主动发起服务调用\n * const localLoadingApi = LocalLoading.useLocalLoading();\n * localLoadingApi.onRequest();\n * 6. 如果内部需要滚动条,可设置 contentScroll = true (外部有高度或者设置style.height 才能生效)\n * ```\n */\nexport const LocalLoading = fbaUtils.attachPropertiesToComponent(\n LocalLoadingInner,\n {\n useLocalLoading: () => {\n const ctx = useLocalLoadingCtx();\n return {\n onRequest: (params?: TPlainObject) => {\n ctx.onRequest(params);\n },\n };\n },\n }\n);\n"],"names":["_createCtx","_createCtx3","_createCtx2","_slicedToArray","useLocalLoadingCtx","LocalLoadingCtxProvider","LocalLoadingInner","forwardRef","props","ref","serviceConfig","isAsync","children","errorRender","loadingSpinProps","textConfigs","showRequiredError","contentScroll","contentStyle","height","_useState","useState","_useState2","status","setStatus","_useState3","_useState4","respData","setRespData","loadingHeight","undefined","_useState5","_useState6","loading","setLoading","errorRef","useRef","prevParams","fbaHooks","usePrevious","params","loadingSpinContent","getValueOrDefault","content","_jsx","loadingSpinBgColor","bgColor","loadingSpinTip","tip","requiredErrorText","serviceParams","useMemo","_serviceConfig$invali","toArray","invalidParamKey","length","newParams","_objectSpread","forEach","key","validateRequiredParamsComplete","_hooks","useCallbackRef","keys","requiredParamsKeys","target","find","item","isUndefinedOrNull","complete","message","concat","join","completeResult","onInitRequest","Promise","$return","$error","$Try_1_Finally","$Try_1_Exit","$Try_1_Value","call","$boundEx","bind","mergeProps","_respData","$Try_1_Post","$Try_1_Catch","error","console","current","resolve","onRequest","then","$await_3","useEffectCustomAsync","$await_4","$If_2","useEffectCustom","_isDeepEqual","useImperativeHandle","onRefresh","Fragment","value","_jsxs","className","_classNames","Result","subTitle","extra","Button","type","ghost","size","onClick","style","display","justifyContent","position","backgroundColor","Spin","spinning","wrapperClassName","rootStyle","LocalLoading","fbaUtils","attachPropertiesToComponent","useLocalLoading","ctx"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ import './../roll-location-center/index.css';
|
|
|
5
5
|
import './index.css';
|
|
6
6
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
7
7
|
|
|
8
|
-
export { S as SearchMenu } from '../search-menu-
|
|
8
|
+
export { S as SearchMenu } from '../search-menu-BEAe3rD_.js';
|
|
9
9
|
import '@dimjs/utils/class-names/class-names';
|
|
10
10
|
import '@wove/react/hooks';
|
|
11
11
|
import '../_rollupPluginBabelHelpers-BspM60Sw.js';
|
|
@@ -69,6 +69,7 @@ function SearchMenu(props) {
|
|
|
69
69
|
searchStyle = props.searchStyle,
|
|
70
70
|
emptyView = props.emptyView,
|
|
71
71
|
showSearch = props.showSearch,
|
|
72
|
+
searchAutoFocus = props.searchAutoFocus,
|
|
72
73
|
size = props.size;
|
|
73
74
|
var _useState = useState([]),
|
|
74
75
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -152,7 +153,8 @@ function SearchMenu(props) {
|
|
|
152
153
|
onSearch: lazySearch ? handleSearch : undefined,
|
|
153
154
|
onChange: !lazySearch ? handleWordChange : undefined,
|
|
154
155
|
placeholder: placeholder || '请输入搜索关键词',
|
|
155
|
-
allowClear: true
|
|
156
|
+
allowClear: true,
|
|
157
|
+
autoFocus: searchAutoFocus
|
|
156
158
|
}), !!props.searchExtraElement && /*#__PURE__*/jsx("div", {
|
|
157
159
|
className: "v-search-menu-search-extra",
|
|
158
160
|
children: props.searchExtraElement
|
|
@@ -168,4 +170,4 @@ function SearchMenu(props) {
|
|
|
168
170
|
}
|
|
169
171
|
|
|
170
172
|
export { SearchMenu as S };
|
|
171
|
-
//# sourceMappingURL=search-menu-
|
|
173
|
+
//# sourceMappingURL=search-menu-BEAe3rD_.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-menu-BEAe3rD_.js","sources":["@flatbiz/antd/src/search-menu/list-view/index.tsx","@flatbiz/antd/src/search-menu/search-menu.tsx"],"sourcesContent":["import { type CSSProperties, type FC, type ReactElement } from 'react';\nimport { Empty } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { RollLocationCenter } from '../../roll-location-center/index.js';\nimport { type IListViewItem } from '../type.js';\nimport './style.less';\n\nexport interface IListViewProps {\n dataList: IListViewItem[];\n value?: string;\n onChange?: (key: string, item: IListViewItem) => void;\n style?: CSSProperties;\n /** 自定义空数据提示 */\n emptyView?: ReactElement;\n}\n\n/**\n * 搜索列表\n * @param props\n * @returns search menu list view\n */\nexport const ListView: FC<IListViewProps> = (props) => {\n const { value, dataList, onChange, style, emptyView } = props;\n // 数据判空提示\n if (!dataList?.length) {\n return emptyView ? (\n <>{emptyView}</>\n ) : (\n <Empty\n style={{\n marginTop: '40px',\n }}\n description=\"暂无数据\"\n />\n );\n }\n\n return (\n <ul className=\"v-search-menu-list-view\" style={style}>\n <RollLocationCenter\n activeKey={props.value}\n renderList={dataList.map((item) => {\n return {\n activeKey: item.key,\n render: (\n <li\n className={classNames('v-search-menu-list-view-item', {\n 'v-search-menu-list-view-item-active': value == item.key,\n })}\n key={item.key}\n onClick={onChange?.bind(null, item.key, item)}\n >\n {item.label}\n </li>\n ),\n };\n })}\n />\n </ul>\n );\n};\n","import { useMemo, useState } from 'react';\nimport { classNames } from '@dimjs/utils';\nimport { type TPlainObject, valueIsEqual } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { InputSearchWrapper } from '../input-search-wrapper/index.js';\nimport { type IListViewProps, ListView } from './list-view/index.jsx';\nimport { type ISearchMenuProps } from './type.js';\nimport './style.less';\n\n/**\n * 列表搜索\n * @param props\n * @returns\n */\nexport function SearchMenu(\n props: ISearchMenuProps & Pick<IListViewProps, 'emptyView'>\n) {\n const {\n value,\n onChange,\n dataSource,\n searchKeyList,\n wrapStyle,\n style,\n placeholder,\n fieldNames,\n renderItem,\n lazySearch,\n className,\n searchStyle,\n emptyView,\n showSearch,\n searchAutoFocus,\n size,\n } = props;\n const [listFilter, setListFilter] = useState<TPlainObject[]>([]);\n\n /** 格式化对象 */\n const mergeFormatOption = useMemo(() => {\n return {\n label: 'label',\n key: 'key',\n ...fieldNames,\n };\n }, [fieldNames]);\n\n /** 可搜索的字段值 */\n const targetSearchKeyList = searchKeyList?.length\n ? searchKeyList\n : [mergeFormatOption.label];\n\n /** 生成菜单列表 */\n const listViewData = useMemo(() => {\n const { label, key } = mergeFormatOption;\n return listFilter?.map((item) => {\n return {\n ...item,\n label: renderItem ? renderItem(item) : item?.[label],\n key: item?.[key],\n };\n });\n }, [listFilter, mergeFormatOption, renderItem]);\n\n /**\n * 数据格式化\n */\n fbaHooks.useEffectCustom(() => {\n handleSearch('');\n }, [dataSource]);\n\n /** 搜索 */\n const handleSearch = (searchWord: string) => {\n if (!searchWord) {\n // 还原列表\n setListFilter(dataSource);\n return;\n }\n // 根据搜索次过滤\n const resList = dataSource.filter((item) => {\n return !!targetSearchKeyList?.find((key) => {\n return item[key]?.includes(searchWord);\n });\n });\n setListFilter(resList);\n };\n\n /**\n * 搜索词变换\n * @param e\n */\n const handleWordChange = (e) => {\n handleSearch(e.target.value);\n };\n\n /**\n * 点击条目\n */\n const onClick = hooks.useCallbackRef((key) => {\n const targetItem = dataSource.find((item) =>\n valueIsEqual(key, item[mergeFormatOption.key])\n );\n onChange?.(key, targetItem);\n });\n\n const cname = classNames(className, 'v-search-menu', {\n 'v-search-menu-small': size === 'small',\n });\n\n return (\n <div style={wrapStyle} className={cname}>\n {showSearch !== false ? (\n <div className=\"v-search-menu-search-area\" style={searchStyle}>\n <InputSearchWrapper\n onSearch={lazySearch ? handleSearch : undefined}\n onChange={!lazySearch ? handleWordChange : undefined}\n placeholder={placeholder || '请输入搜索关键词'}\n allowClear\n autoFocus={searchAutoFocus}\n />\n {!!props.searchExtraElement && (\n <div className=\"v-search-menu-search-extra\">\n {props.searchExtraElement}\n </div>\n )}\n </div>\n ) : null}\n <ListView\n style={style}\n value={value}\n dataList={listViewData}\n onChange={onClick}\n emptyView={emptyView}\n />\n </div>\n );\n}\n"],"names":["ListView","props","value","dataList","onChange","style","emptyView","length","_jsx","_Fragment","children","Empty","marginTop","description","className","RollLocationCenter","activeKey","renderList","map","item","key","render","_classNames","onClick","bind","label","SearchMenu","dataSource","searchKeyList","wrapStyle","placeholder","fieldNames","renderItem","lazySearch","searchStyle","showSearch","searchAutoFocus","size","_useState","useState","_useState2","_slicedToArray","listFilter","setListFilter","mergeFormatOption","useMemo","_objectSpread","targetSearchKeyList","listViewData","fbaHooks","useEffectCustom","handleSearch","searchWord","resList","filter","find","_item$key","includes","handleWordChange","e","target","_hooks","useCallbackRef","targetItem","valueIsEqual","cname","_jsxs","InputSearchWrapper","onSearch","undefined","allowClear","autoFocus","searchExtraElement"],"mappings":";;;;;;;;;;;;;AAgBA;AACA;AACA;AACA;AACA;AACO,IAAMA,QAA4B,GAAG,SAA/BA,QAA4BA,CAAIC,KAAK,EAAK;AACrD,EAAA,IAAQC,KAAK,GAA2CD,KAAK,CAArDC,KAAK;IAAEC,QAAQ,GAAiCF,KAAK,CAA9CE,QAAQ;IAAEC,QAAQ,GAAuBH,KAAK,CAApCG,QAAQ;IAAEC,KAAK,GAAgBJ,KAAK,CAA1BI,KAAK;IAAEC,SAAS,GAAKL,KAAK,CAAnBK,SAAS;AACnD;EACA,IAAI,EAACH,QAAQ,KAAA,IAAA,IAARA,QAAQ,eAARA,QAAQ,CAAEI,MAAM,CAAA,EAAE;AACrB,IAAA,OAAOD,SAAS,gBACdE,GAAA,CAAAC,QAAA,EAAA;AAAAC,MAAAA,QAAA,EAAGJ;AAAS,KAAG,CAAC,gBAEhBE,GAAA,CAACG,KAAK,EAAA;AACJN,MAAAA,KAAK,EAAE;AACLO,QAAAA,SAAS,EAAE;OACX;AACFC,MAAAA,WAAW,EAAC;AAAM,KACnB,CACF;AACH,EAAA;AAEA,EAAA,oBACEL,GAAA,CAAA,IAAA,EAAA;AAAIM,IAAAA,SAAS,EAAC,yBAAyB;AAACT,IAAAA,KAAK,EAAEA,KAAM;IAAAK,QAAA,eACnDF,GAAA,CAACO,kBAAkB,EAAA;MACjBC,SAAS,EAAEf,KAAK,CAACC,KAAM;AACvBe,MAAAA,UAAU,EAAEd,QAAQ,CAACe,GAAG,CAAC,UAACC,IAAI,EAAK;QACjC,OAAO;UACLH,SAAS,EAAEG,IAAI,CAACC,GAAG;AACnBC,UAAAA,MAAM,eACJb,GAAA,CAAA,IAAA,EAAA;AACEM,YAAAA,SAAS,EAAEQ,UAAA,CAAW,8BAA8B,EAAE;AACpD,cAAA,qCAAqC,EAAEpB,KAAK,IAAIiB,IAAI,CAACC;AACvD,aAAC,CAAE;AAEHG,YAAAA,OAAO,EAAEnB,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,MAAA,GAAA,MAAA,GAARA,QAAQ,CAAEoB,IAAI,CAAC,IAAI,EAAEL,IAAI,CAACC,GAAG,EAAED,IAAI,CAAE;YAAAT,QAAA,EAE7CS,IAAI,CAACM;WAAK,EAHNN,IAAI,CAACC,GAIR;SAEP;MACH,CAAC;KACF;AAAC,GACA,CAAC;AAET,CAAC;;AC7CM,SAASM,UAAUA,CACxBzB,KAA2D,EAC3D;AACA,EAAA,IACEC,KAAK,GAgBHD,KAAK,CAhBPC,KAAK;IACLE,QAAQ,GAeNH,KAAK,CAfPG,QAAQ;IACRuB,UAAU,GAcR1B,KAAK,CAdP0B,UAAU;IACVC,aAAa,GAaX3B,KAAK,CAbP2B,aAAa;IACbC,SAAS,GAYP5B,KAAK,CAZP4B,SAAS;IACTxB,KAAK,GAWHJ,KAAK,CAXPI,KAAK;IACLyB,WAAW,GAUT7B,KAAK,CAVP6B,WAAW;IACXC,UAAU,GASR9B,KAAK,CATP8B,UAAU;IACVC,UAAU,GAQR/B,KAAK,CARP+B,UAAU;IACVC,UAAU,GAORhC,KAAK,CAPPgC,UAAU;IACVnB,SAAS,GAMPb,KAAK,CANPa,SAAS;IACToB,WAAW,GAKTjC,KAAK,CALPiC,WAAW;IACX5B,SAAS,GAIPL,KAAK,CAJPK,SAAS;IACT6B,UAAU,GAGRlC,KAAK,CAHPkC,UAAU;IACVC,eAAe,GAEbnC,KAAK,CAFPmC,eAAe;IACfC,IAAI,GACFpC,KAAK,CADPoC,IAAI;AAEN,EAAA,IAAAC,SAAA,GAAoCC,QAAQ,CAAiB,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAzDI,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,aAAa,GAAAH,UAAA,CAAA,CAAA,CAAA;;AAEhC;AACA,EAAA,IAAMI,iBAAiB,GAAGC,OAAO,CAAC,YAAM;AACtC,IAAA,OAAAC,cAAA,CAAA;AACErB,MAAAA,KAAK,EAAE,OAAO;AACdL,MAAAA,GAAG,EAAE;AAAK,KAAA,EACPW,UAAU,CAAA;AAEjB,EAAA,CAAC,EAAE,CAACA,UAAU,CAAC,CAAC;;AAEhB;AACA,EAAA,IAAMgB,mBAAmB,GAAGnB,aAAa,KAAA,IAAA,IAAbA,aAAa,eAAbA,aAAa,CAAErB,MAAM,GAC7CqB,aAAa,GACb,CAACgB,iBAAiB,CAACnB,KAAK,CAAC;;AAE7B;AACA,EAAA,IAAMuB,YAAY,GAAGH,OAAO,CAAC,YAAM;AACjC,IAAA,IAAQpB,KAAK,GAAUmB,iBAAiB,CAAhCnB,KAAK;MAAEL,GAAG,GAAKwB,iBAAiB,CAAzBxB,GAAG;IAClB,OAAOsB,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAA,MAAA,GAAA,MAAA,GAAVA,UAAU,CAAExB,GAAG,CAAC,UAACC,IAAI,EAAK;AAC/B,MAAA,OAAA2B,cAAA,CAAAA,cAAA,CAAA,EAAA,EACK3B,IAAI,CAAA,EAAA,EAAA,EAAA;AACPM,QAAAA,KAAK,EAAEO,UAAU,GAAGA,UAAU,CAACb,IAAI,CAAC,GAAGA,IAAI,aAAJA,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJA,IAAI,CAAGM,KAAK,CAAC;AACpDL,QAAAA,GAAG,EAAED,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJA,IAAI,CAAGC,GAAG;AAAC,OAAA,CAAA;AAEpB,IAAA,CAAC,CAAC;EACJ,CAAC,EAAE,CAACsB,UAAU,EAAEE,iBAAiB,EAAEZ,UAAU,CAAC,CAAC;;AAE/C;AACF;AACA;EACEiB,QAAQ,CAACC,eAAe,CAAC,YAAM;IAC7BC,YAAY,CAAC,EAAE,CAAC;AAClB,EAAA,CAAC,EAAE,CAACxB,UAAU,CAAC,CAAC;;AAEhB;AACA,EAAA,IAAMwB,YAAY,GAAG,SAAfA,YAAYA,CAAIC,UAAkB,EAAK;IAC3C,IAAI,CAACA,UAAU,EAAE;AACf;MACAT,aAAa,CAAChB,UAAU,CAAC;AACzB,MAAA;AACF,IAAA;AACA;IACA,IAAM0B,OAAO,GAAG1B,UAAU,CAAC2B,MAAM,CAAC,UAACnC,IAAI,EAAK;AAC1C,MAAA,OAAO,CAAC,EAAC4B,mBAAmB,KAAA,IAAA,IAAnBA,mBAAmB,KAAA,MAAA,IAAnBA,mBAAmB,CAAEQ,IAAI,CAAC,UAACnC,GAAG,EAAK;AAAA,QAAA,IAAAoC,SAAA;AAC1C,QAAA,OAAA,CAAAA,SAAA,GAAOrC,IAAI,CAACC,GAAG,CAAC,MAAA,IAAA,IAAAoC,SAAA,KAAA,MAAA,GAAA,MAAA,GAATA,SAAA,CAAWC,QAAQ,CAACL,UAAU,CAAC;AACxC,MAAA,CAAC,CAAC,CAAA;AACJ,IAAA,CAAC,CAAC;IACFT,aAAa,CAACU,OAAO,CAAC;EACxB,CAAC;;AAED;AACF;AACA;AACA;AACE,EAAA,IAAMK,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,CAAC,EAAK;AAC9BR,IAAAA,YAAY,CAACQ,CAAC,CAACC,MAAM,CAAC1D,KAAK,CAAC;EAC9B,CAAC;;AAED;AACF;AACA;EACE,IAAMqB,OAAO,GAAGsC,KAAA,CAAMC,cAAc,CAAC,UAAC1C,GAAG,EAAK;AAC5C,IAAA,IAAM2C,UAAU,GAAGpC,UAAU,CAAC4B,IAAI,CAAC,UAACpC,IAAI,EAAA;MAAA,OACtC6C,YAAY,CAAC5C,GAAG,EAAED,IAAI,CAACyB,iBAAiB,CAACxB,GAAG,CAAC,CAAC;AAAA,IAAA,CAChD,CAAC;IACDhB,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,MAAA,IAARA,QAAQ,CAAGgB,GAAG,EAAE2C,UAAU,CAAC;AAC7B,EAAA,CAAC,CAAC;AAEF,EAAA,IAAME,KAAK,GAAG3C,UAAA,CAAWR,SAAS,EAAE,eAAe,EAAE;IACnD,qBAAqB,EAAEuB,IAAI,KAAK;AAClC,GAAC,CAAC;AAEF,EAAA,oBACE6B,IAAA,CAAA,KAAA,EAAA;AAAK7D,IAAAA,KAAK,EAAEwB,SAAU;AAACf,IAAAA,SAAS,EAAEmD,KAAM;AAAAvD,IAAAA,QAAA,EAAA,CACrCyB,UAAU,KAAK,KAAK,gBACnB+B,IAAA,CAAA,KAAA,EAAA;AAAKpD,MAAAA,SAAS,EAAC,2BAA2B;AAACT,MAAAA,KAAK,EAAE6B,WAAY;MAAAxB,QAAA,EAAA,cAC5DF,GAAA,CAAC2D,kBAAkB,EAAA;AACjBC,QAAAA,QAAQ,EAAEnC,UAAU,GAAGkB,YAAY,GAAGkB,SAAU;AAChDjE,QAAAA,QAAQ,EAAE,CAAC6B,UAAU,GAAGyB,gBAAgB,GAAGW,SAAU;QACrDvC,WAAW,EAAEA,WAAW,IAAI,UAAW;QACvCwC,UAAU,EAAA,IAAA;AACVC,QAAAA,SAAS,EAAEnC;OACZ,CAAC,EACD,CAAC,CAACnC,KAAK,CAACuE,kBAAkB,iBACzBhE,GAAA,CAAA,KAAA,EAAA;AAAKM,QAAAA,SAAS,EAAC,4BAA4B;QAAAJ,QAAA,EACxCT,KAAK,CAACuE;AAAkB,OACtB,CACN;AAAA,KACE,CAAC,GACJ,IAAI,eACRhE,GAAA,CAACR,QAAQ,EAAA;AACPK,MAAAA,KAAK,EAAEA,KAAM;AACbH,MAAAA,KAAK,EAAEA,KAAM;AACbC,MAAAA,QAAQ,EAAE6C,YAAa;AACvB5C,MAAAA,QAAQ,EAAEmB,OAAQ;AAClBjB,MAAAA,SAAS,EAAEA;AAAU,KACtB,CAAC;AAAA,GACC,CAAC;AAEV;;;;"}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"code-D9xbvmEX.js","sources":["@flatbiz/antd/src/code-render/code.tsx"],"sourcesContent":["import type { CSSProperties } from 'react';\nimport classNames from 'classnames';\nimport './style.less';\n\nexport type CodeRenderProps = {\n code?: string;\n className?: string;\n style?: CSSProperties;\n};\n\n/**\n * 代码、json格式化渲染\n * ```\n * 例如:\n * // json数据渲染\n * <CodeWrapper code={JSON.stringify(data, null, 2)}/>\n * \n * // 代码渲染\n * <CodeWrapper code={`def results=[];\ndef datas=表单字段.dataList;\nfor index,data in datas do\n def item = [\n 'a':data.DomainName,\n 'b':data.Owner,\n 'userName': 流程参数.发起人账号\n ];\n results = results+item;\nend\nreturn results;\n` \n}/>\n *\n * ```\n *\n */\nexport const CodeRender = (props: CodeRenderProps) => {\n const { code, className, style } = props;\n return (\n <pre className={classNames('code-render', className)} style={style}>\n <code>{code}</code>\n </pre>\n );\n};\n"],"names":["CodeRender","props","code","className","style","_jsx","classNames","children"],"mappings":";;;;;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,KAAsB,EAAK;AACpD,EAAA,IAAQC,IAAI,GAAuBD,KAAK,CAAhCC,IAAI;IAAEC,SAAS,GAAYF,KAAK,CAA1BE,SAAS;IAAEC,KAAK,GAAKH,KAAK,CAAfG,KAAK;AAC9B,EAAA,oBACEC,GAAA,CAAA,KAAA,EAAA;AAAKF,IAAAA,SAAS,EAAEG,UAAU,CAAC,aAAa,EAAEH,SAAS,CAAE;AAACC,IAAAA,KAAK,EAAEA,KAAM;AAAAG,IAAAA,QAAA,eACjEF,GAAA,CAAA,MAAA,EAAA;AAAAE,MAAAA,QAAA,EAAOL;KAAW;AAAC,GAChB,CAAC;AAEV;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"search-menu-N7nz0XoH.js","sources":["@flatbiz/antd/src/search-menu/list-view/index.tsx","@flatbiz/antd/src/search-menu/search-menu.tsx"],"sourcesContent":["import { type CSSProperties, type FC, type ReactElement } from 'react';\nimport { Empty } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { RollLocationCenter } from '../../roll-location-center/index.js';\nimport { type IListViewItem } from '../type.js';\nimport './style.less';\n\nexport interface IListViewProps {\n dataList: IListViewItem[];\n value?: string;\n onChange?: (key: string, item: IListViewItem) => void;\n style?: CSSProperties;\n /** 自定义空数据提示 */\n emptyView?: ReactElement;\n}\n\n/**\n * 搜索列表\n * @param props\n * @returns search menu list view\n */\nexport const ListView: FC<IListViewProps> = (props) => {\n const { value, dataList, onChange, style, emptyView } = props;\n // 数据判空提示\n if (!dataList?.length) {\n return emptyView ? (\n <>{emptyView}</>\n ) : (\n <Empty\n style={{\n marginTop: '40px',\n }}\n description=\"暂无数据\"\n />\n );\n }\n\n return (\n <ul className=\"v-search-menu-list-view\" style={style}>\n <RollLocationCenter\n activeKey={props.value}\n renderList={dataList.map((item) => {\n return {\n activeKey: item.key,\n render: (\n <li\n className={classNames('v-search-menu-list-view-item', {\n 'v-search-menu-list-view-item-active': value == item.key,\n })}\n key={item.key}\n onClick={onChange?.bind(null, item.key, item)}\n >\n {item.label}\n </li>\n ),\n };\n })}\n />\n </ul>\n );\n};\n","import { useMemo, useState } from 'react';\nimport { classNames } from '@dimjs/utils';\nimport { type TPlainObject, valueIsEqual } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { InputSearchWrapper } from '../input-search-wrapper/index.js';\nimport { type IListViewProps, ListView } from './list-view/index.jsx';\nimport { type ISearchMenuProps } from './type.js';\nimport './style.less';\n\n/**\n * 列表搜索\n * @param props\n * @returns\n */\nexport function SearchMenu(\n props: ISearchMenuProps & Pick<IListViewProps, 'emptyView'>\n) {\n const {\n value,\n onChange,\n dataSource,\n searchKeyList,\n wrapStyle,\n style,\n placeholder,\n fieldNames,\n renderItem,\n lazySearch,\n className,\n searchStyle,\n emptyView,\n showSearch,\n size,\n } = props;\n const [listFilter, setListFilter] = useState<TPlainObject[]>([]);\n\n /** 格式化对象 */\n const mergeFormatOption = useMemo(() => {\n return {\n label: 'label',\n key: 'key',\n ...fieldNames,\n };\n }, [fieldNames]);\n\n /** 可搜索的字段值 */\n const targetSearchKeyList = searchKeyList?.length\n ? searchKeyList\n : [mergeFormatOption.label];\n\n /** 生成菜单列表 */\n const listViewData = useMemo(() => {\n const { label, key } = mergeFormatOption;\n return listFilter?.map((item) => {\n return {\n ...item,\n label: renderItem ? renderItem(item) : item?.[label],\n key: item?.[key],\n };\n });\n }, [listFilter, mergeFormatOption, renderItem]);\n\n /**\n * 数据格式化\n */\n fbaHooks.useEffectCustom(() => {\n handleSearch('');\n }, [dataSource]);\n\n /** 搜索 */\n const handleSearch = (searchWord: string) => {\n if (!searchWord) {\n // 还原列表\n setListFilter(dataSource);\n return;\n }\n // 根据搜索次过滤\n const resList = dataSource.filter((item) => {\n return !!targetSearchKeyList?.find((key) => {\n return item[key]?.includes(searchWord);\n });\n });\n setListFilter(resList);\n };\n\n /**\n * 搜索词变换\n * @param e\n */\n const handleWordChange = (e) => {\n handleSearch(e.target.value);\n };\n\n /**\n * 点击条目\n */\n const onClick = hooks.useCallbackRef((key) => {\n const targetItem = dataSource.find((item) =>\n valueIsEqual(key, item[mergeFormatOption.key])\n );\n onChange?.(key, targetItem);\n });\n\n const cname = classNames(className, 'v-search-menu', {\n 'v-search-menu-small': size === 'small',\n });\n\n return (\n <div style={wrapStyle} className={cname}>\n {showSearch !== false ? (\n <div className=\"v-search-menu-search-area\" style={searchStyle}>\n <InputSearchWrapper\n onSearch={lazySearch ? handleSearch : undefined}\n onChange={!lazySearch ? handleWordChange : undefined}\n placeholder={placeholder || '请输入搜索关键词'}\n allowClear\n />\n {!!props.searchExtraElement && (\n <div className=\"v-search-menu-search-extra\">\n {props.searchExtraElement}\n </div>\n )}\n </div>\n ) : null}\n <ListView\n style={style}\n value={value}\n dataList={listViewData}\n onChange={onClick}\n emptyView={emptyView}\n />\n </div>\n );\n}\n"],"names":["ListView","props","value","dataList","onChange","style","emptyView","length","_jsx","_Fragment","children","Empty","marginTop","description","className","RollLocationCenter","activeKey","renderList","map","item","key","render","_classNames","onClick","bind","label","SearchMenu","dataSource","searchKeyList","wrapStyle","placeholder","fieldNames","renderItem","lazySearch","searchStyle","showSearch","size","_useState","useState","_useState2","_slicedToArray","listFilter","setListFilter","mergeFormatOption","useMemo","_objectSpread","targetSearchKeyList","listViewData","fbaHooks","useEffectCustom","handleSearch","searchWord","resList","filter","find","_item$key","includes","handleWordChange","e","target","_hooks","useCallbackRef","targetItem","valueIsEqual","cname","_jsxs","InputSearchWrapper","onSearch","undefined","allowClear","searchExtraElement"],"mappings":"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"}
|