@flatbiz/antd 4.2.95 → 4.2.96

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.
@@ -1 +1 @@
1
- .form-item-text-content{color:rgba(0,0,0,.88);display:inline-flex;font-size:14px;padding:4px 11px;width:100%}.form-item-text{overflow:hidden}.form-item-text .ant-input{border:none}.fitc-loading .ant-spin-dot{margin-left:0!important}
1
+ .form-item-text-content{color:rgba(0,0,0,.88);display:inline-flex;font-size:14px;padding:4px 0;width:100%}.form-item-text{overflow:hidden}.fitc-loading .ant-spin-dot{margin-left:0!important}
@@ -5,5 +5,5 @@ import './../form-item-wrapper/index.css';
5
5
  import './../form-item-hidden/index.css';
6
6
  import './index.css';
7
7
  /*! @flatjs/forge MIT @flatbiz/antd */
8
- import{classNames as e}from"@dimjs/utils/cjs/class-names";import{_ as r,a as n}from"../_rollupPluginBabelHelpers-a0769acd.js";import{useState as a,useMemo as i,Fragment as t}from"react";import{isUndefinedOrNull as l,toArray as o}from"@flatbiz/utils";import{Spin as s,Form as u,message as m}from"antd";import{TextCssEllipsis as d}from"../text-css-ellipsis/index.js";import{jsx as c,jsxs as f}from"react/jsx-runtime";import{FormItemWrapper as v}from"../form-item-wrapper/index.js";import{isDeepEqual as p}from"@dimjs/lang/cjs/is-deep-equal";import{fbaHooks as h}from"../fba-hooks/index.js";import{FormItemHidden as g}from"../form-item-hidden/index.js";import"ahooks";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";var y=function e(r){var n=function(){if(l(r.value))return r.placeholderValue;return typeof r.value==="string"?r.value:JSON.stringify(r.value)}();var a=r.wrap?n:c(d,{text:n||""});if(r.loading){return c("span",{className:"form-item-text-content fitc-loading",style:r.style,children:c(s,{spinning:r.loading,size:"small",children:c("span",{style:{textIndent:"-9999px",display:"inline-block"},children:"Loading"})})})}return c("span",{className:"form-item-text-content",style:r.style,children:r.render?r.render(r.value):a})};var j=function e(n){var t=n.serviceConfig;var s=a(false),d=s[0],c=s[1];var f=a(),v=f[0],g=f[1];var y=h.usePrevious(t==null?void 0:t.params);var j=a("init"),x=j[0],w=j[1];var P=u.useFormInstance();var V=i((function(){var e;if(!(t!=null&&t.params)||o(t==null?void 0:t.invalidParamKey).length===0){return t==null?void 0:t.params}var n=r({},t==null?void 0:t.params);t==null||(e=t.invalidParamKey)==null?void 0:e.forEach((function(e){n[e]=undefined}));return n}),[t==null?void 0:t.invalidParamKey,t==null?void 0:t.params]);var N=function e(a){return new Promise((function(e,i){var o=function(e){return function(r){try{c(false);return e&&e.call(this,r)}catch(e){return i(e)}}.bind(this)}.bind(this);var s,u,f,v,p,h;if(!t)return e();u=r({},V,a);if(t!=null&&(s=t.requiredParamsKeys)!=null&&s.length){f=t==null?void 0:t.requiredParamsKeys.find((function(e){return l(u[e])}));if(f){console.warn("FormItemText组件:参数:"+(t==null?void 0:t.requiredParamsKeys.join("、"))+"不能为空");return e()}}var y=function(){try{return e()}catch(e){return i(e)}};var j=function(e){try{console.error(e);w("error");void m.error((e==null?void 0:e.message)||"接口调用异常");return o(y)()}catch(e){return o(i)(e)}};try{if(!d)c(true);return Promise.resolve(t.onRequest(u)).then((function(e){try{v=e;p=n.name?P.getFieldValue(n.name):undefined;h=t.onResponseAdapter?t.onResponseAdapter(v,p):v;g(h);w("success");return o(y)()}catch(e){return j(e)}}),j)}catch(e){j(e)}}))};h.useEffectCustomAsync(N,[]);h.useEffectCustom((function(){if(!t)return;if(y){if(!p(t.params,y)){void N()}}}),[y,t==null?void 0:t.params]);if(!t){return undefined}return{loading:d,status:x,viewValue:v}};var x=["wrap","render","placeholderValue"];var w=function a(i){var t=i.wrap,l=i.render,o=i.placeholderValue,s=n(i,x);var u=j({serviceConfig:i.serviceConfig,name:i.name});return c(v,r({},s,{name:undefined,className:e("form-item-text",i.className),children:c(y,{loading:u==null?void 0:u.loading,wrap:t,render:l,placeholderValue:o,value:u==null?void 0:u.viewValue})}))};var P=["wrap","render","placeholderValue"];var V=function a(i){var l=i.wrap,o=i.render,s=i.placeholderValue,u=n(i,P);if(i.serviceConfig){return f(t,{children:[c(g,{name:i.name}),c(w,r({},i))]})}return c(v,r({},u,{className:e("form-item-text",i.className),children:c(y,{wrap:l,render:o,placeholderValue:s})}))};export{V as FormItemText};
8
+ import{classNames as e}from"@dimjs/utils/cjs/class-names";import{_ as r,a as n}from"../_rollupPluginBabelHelpers-a0769acd.js";import{useState as a,useMemo as i,Fragment as t}from"react";import{isUndefinedOrNull as l,toArray as o}from"@flatbiz/utils";import{Spin as s,Form as u,message as m}from"antd";import{TextCssEllipsis as d}from"../text-css-ellipsis/index.js";import{jsx as c,jsxs as f}from"react/jsx-runtime";import{FormItemWrapper as v}from"../form-item-wrapper/index.js";import{isDeepEqual as p}from"@dimjs/lang/cjs/is-deep-equal";import{fbaHooks as h}from"../fba-hooks/index.js";import{FormItemHidden as g}from"../form-item-hidden/index.js";import"ahooks";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";var y=function e(r){var n=function(){if(l(r.value))return r.placeholderValue;return typeof r.value==="string"?r.value:JSON.stringify(r.value)}();var a=r.wrap?n:c(d,{text:n||""});if(r.loading){return c("span",{className:"form-item-text-content fitc-loading",style:r.style,children:c(s,{spinning:r.loading,size:"small",children:c("span",{style:{textIndent:"-9999px",display:"inline-block"},children:"Loading"})})})}return c("span",{className:"form-item-text-content",style:r.style,children:r.render?r.render(r.value):a})};var j=function e(n){var t=n.serviceConfig;var s=a(false),d=s[0],c=s[1];var f=a(),v=f[0],g=f[1];var y=h.usePrevious(t==null?void 0:t.params);var j=a("init"),x=j[0],w=j[1];var P=u.useFormInstance();var V=i((function(){var e;if(!(t!=null&&t.params)||o(t==null?void 0:t.invalidParamKey).length===0){return t==null?void 0:t.params}var n=r({},t==null?void 0:t.params);t==null||(e=t.invalidParamKey)==null?void 0:e.forEach((function(e){n[e]=undefined}));return n}),[t==null?void 0:t.invalidParamKey,t==null?void 0:t.params]);var C=function e(a){return new Promise((function(e,i){var o=function(e){return function(r){try{c(false);return e&&e.call(this,r)}catch(e){return i(e)}}.bind(this)}.bind(this);var s,u,f,v,p,h;if(!t)return e();u=r({},V,a);if(t!=null&&(s=t.requiredParamsKeys)!=null&&s.length){f=t==null?void 0:t.requiredParamsKeys.find((function(e){return l(u[e])}));if(f){console.warn("FormItemText组件:参数:"+(t==null?void 0:t.requiredParamsKeys.join("、"))+"不能为空");return e()}}var y=function(){try{return e()}catch(e){return i(e)}};var j=function(e){try{console.error(e);w("error");void m.error((e==null?void 0:e.message)||"接口调用异常");return o(y)()}catch(e){return o(i)(e)}};try{if(!d)c(true);return Promise.resolve(t.onRequest(u)).then((function(e){try{v=e;p=n.name?P.getFieldValue(n.name):undefined;h=t.onResponseAdapter?t.onResponseAdapter(v,p):v;g(h);w("success");return o(y)()}catch(e){return j(e)}}),j)}catch(e){j(e)}}))};h.useEffectCustomAsync(C,[]);h.useEffectCustom((function(){if(!t)return;if(y){if(!p(t.params,y)){void C()}}}),[y,t==null?void 0:t.params]);if(!t){return undefined}return{loading:d,status:x,viewValue:v}};var x=["wrap","render","placeholderValue","serviceConfig"];var w=function a(i){var t=i.wrap,l=i.render,o=i.placeholderValue,s=i.serviceConfig,u=n(i,x);var m=j({serviceConfig:s,name:i.name});return c(v,r({},u,{name:undefined,className:e("form-item-text",i.className),children:c(y,{loading:m==null?void 0:m.loading,wrap:t,render:l,placeholderValue:o,value:m==null?void 0:m.viewValue})}))};var P=["wrap","render","placeholderValue"];var V=function a(i){var l=i.wrap,o=i.render,s=i.placeholderValue,u=n(i,P);if(i.serviceConfig){return f(t,{children:[c(g,{name:i.name}),c(w,r({},i))]})}return c(v,r({},u,{className:e("form-item-text",i.className),children:c(y,{wrap:l,render:o,placeholderValue:s})}))};export{V as FormItemText};
9
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/form-item-text/content.tsx","@flatbiz/antd/src/form-item-text/use-request.tsx","@flatbiz/antd/src/form-item-text/request-text.tsx","@flatbiz/antd/src/form-item-text/form-item-text.tsx"],"sourcesContent":["import { isUndefinedOrNull } from '@flatbiz/utils';\nimport { Spin } from 'antd';\nimport { type CSSProperties } from 'react';\nimport { TextCssEllipsis } from '../text-css-ellipsis';\nimport { type FormItemTextProps } from './types';\n\nexport const FormItemTextContent = (\n props: Pick<FormItemTextProps, 'render' | 'wrap' | 'placeholderValue'> & {\n value?: string;\n style?: CSSProperties;\n loading?: boolean;\n },\n) => {\n const originalValue = (function () {\n if (isUndefinedOrNull(props.value)) return props.placeholderValue;\n return typeof props.value === 'string' ? props.value : JSON.stringify(props.value);\n })();\n const valueFt = props.wrap ? originalValue : <TextCssEllipsis text={originalValue || ''} />;\n if (props.loading) {\n return (\n <span className=\"form-item-text-content fitc-loading\" style={props.style}>\n <Spin spinning={props.loading} size=\"small\">\n <span style={{ textIndent: '-9999px', display: 'inline-block' }}>Loading</span>\n </Spin>\n </span>\n );\n }\n return (\n <span className=\"form-item-text-content\" style={props.style}>\n {props.render ? props.render(props.value) : valueFt}\n </span>\n );\n};\n","import { isDeepEqual } from '@dimjs/lang';\nimport { isUndefinedOrNull, toArray, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { Form, message } from 'antd';\nimport { useMemo, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { FormItemWrapperProps } from '../form-item-wrapper';\nimport { type FormItemTextServiceConfig } from './types';\n\nexport const useRequestFormItemText = (props: {\n serviceConfig?: FormItemTextServiceConfig;\n name?: FormItemWrapperProps['name'];\n}) => {\n const serviceConfig = props.serviceConfig;\n const [loading, setLoading] = useState(false);\n const [respData, setRespData] = useState<TAny>();\n const prevParams = fbaHooks.usePrevious(serviceConfig?.params);\n const [status, setStatus] = useState<'success' | 'error' | 'init'>('init');\n const form = Form.useFormInstance();\n\n // 用于直接发起接口调用,不能用于比较\n const serviceParams = useMemo(() => {\n if (!serviceConfig?.params || toArray(serviceConfig?.invalidParamKey).length === 0) {\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?.invalidParamKey, serviceConfig?.params]);\n\n const onInnerRequest = async (params?: TPlainObject) => {\n if (!serviceConfig) return;\n const mergeProps = { ...serviceParams, ...params };\n if (serviceConfig?.requiredParamsKeys?.length) {\n const target = serviceConfig?.requiredParamsKeys.find((item) => {\n return isUndefinedOrNull(mergeProps[item]);\n });\n if (target) {\n console.warn(`FormItemText组件:参数:${serviceConfig?.requiredParamsKeys.join('、')}不能为空`);\n return;\n }\n }\n try {\n if (!loading) setLoading(true);\n const respData = await serviceConfig.onRequest(mergeProps);\n const value = props.name ? form.getFieldValue(props.name) : undefined;\n const respDataFt = serviceConfig.onResponseAdapter\n ? serviceConfig.onResponseAdapter(respData, value)\n : respData;\n setRespData(respDataFt);\n setStatus('success');\n } catch (error: TAny) {\n console.error(error);\n setStatus('error');\n void message.error(error?.message || '接口调用异常');\n } finally {\n setLoading(false);\n }\n };\n\n fbaHooks.useEffectCustomAsync(onInnerRequest, []);\n\n fbaHooks.useEffectCustom(() => {\n if (!serviceConfig) return;\n if (prevParams) {\n if (!isDeepEqual(serviceConfig.params, prevParams)) {\n void onInnerRequest();\n }\n }\n }, [prevParams, serviceConfig?.params]);\n\n if (!serviceConfig) {\n return undefined;\n }\n\n return { loading, status, viewValue: respData };\n};\n","import { classNames } from '@dimjs/utils';\n\nimport { FormItemWrapper } from '../form-item-wrapper';\nimport { FormItemTextContent } from './content';\nimport { type FormItemTextProps } from './types';\nimport { useRequestFormItemText } from './use-request';\n\n/**\n * FormItem 文本显示,默认不换行,超出省略(鼠标悬浮可显示)\n * @param props\n * @returns\n */\nexport const RequestText = (props: FormItemTextProps) => {\n const { wrap, render, placeholderValue, ...otherProps } = props;\n\n const requestResult = useRequestFormItemText({\n serviceConfig: props.serviceConfig,\n name: props.name,\n });\n\n return (\n <FormItemWrapper\n {...otherProps}\n name={undefined}\n className={classNames('form-item-text', props.className)}\n >\n <FormItemTextContent\n loading={requestResult?.loading}\n wrap={wrap}\n render={render}\n placeholderValue={placeholderValue}\n value={requestResult?.viewValue}\n />\n </FormItemWrapper>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Fragment } from 'react';\n\nimport { FormItemTextContent } from './content';\nimport { RequestText } from './request-text';\nimport { type FormItemTextProps } from './types';\n\nimport { FormItemHidden } from '../form-item-hidden';\nimport { FormItemWrapper } from '../form-item-wrapper';\nimport './style.less';\n/**\n * FormItem 文本显示,默认不换行,超出省略(鼠标悬浮可显示)\n * ```\n * 可通过配置 serviceConfig 通过接口获取数据,一般用于 Select 数据显示\n *\n * 例如:\n * 1. 基本数据渲染\n * <FormItemText name=\"xxx\" label=\"xxx\" />\n * 2. 对象数据渲染\n * <FormItemText\n * name=\"xxx\"\n * label=\"xxx\"\n * render={(value) => {\n * const target = [].find(\n * (item) => item.value === value,\n * );\n * return target ? (\n * <Tag color={target['color']}>{target.label}</Tag>\n * ) : null;\n * }}\n * />\n * 3. 接口数据渲染\n * <FormItemText\n * name=\"xxx\"\n * label=\"xxx\"\n * serviceConfig={{\n * onRequest: () => {\n * return serviceHandle.request('/random/api9468', {}, 'post');\n * },\n * onResponseAdapter: (dataList: TPlainObject[], value) => {\n * return dataList?.find((item) => item.value === value);\n * },\n * }}\n * render={(dataItem) => {\n * return dataItem ? (\n * <Tag style={{ margin: 0 }} color={dataItem['color']}>\n * {dataItem.label}\n * </Tag>\n * ) : null;\n * }}\n * />\n * ```\n */\nexport const FormItemText = (props: FormItemTextProps) => {\n const { wrap, render, placeholderValue, ...otherProps } = props;\n\n if (props.serviceConfig) {\n return (\n <Fragment>\n <FormItemHidden name={props.name} />\n <RequestText {...props} />\n </Fragment>\n );\n }\n\n return (\n <FormItemWrapper {...otherProps} className={classNames('form-item-text', props.className)}>\n <FormItemTextContent wrap={wrap} render={render} placeholderValue={placeholderValue} />\n </FormItemWrapper>\n );\n};\n"],"names":["FormItemTextContent","props","originalValue","isUndefinedOrNull","value","placeholderValue","JSON","stringify","valueFt","wrap","_jsx","TextCssEllipsis","text","loading","className","style","children","Spin","spinning","size","textIndent","display","render","useRequestFormItemText","serviceConfig","_useState","useState","setLoading","_useState2","respData","setRespData","prevParams","fbaHooks","usePrevious","params","_useState3","status","setStatus","form","Form","useFormInstance","serviceParams","useMemo","_serviceConfig$invali","toArray","invalidParamKey","length","newParams","_extends","forEach","key","undefined","onInnerRequest","Promise","$return","$error","$Try_1_Finally","$Try_1_Exit","$Try_1_Value","call","this","$boundEx","bind","_serviceConfig$requir","mergeProps","target","_respData","respDataFt","requiredParamsKeys","find","item","console","warn","join","$Try_1_Post","$Try_1_Catch","error","message","resolve","onRequest","then","$await_2","name","getFieldValue","onResponseAdapter","useEffectCustomAsync","useEffectCustom","_isDeepEqual","viewValue","RequestText","otherProps","_objectWithoutPropertiesLoose","_excluded","requestResult","FormItemWrapper","_classNames","FormItemText","_jsxs","Fragment","FormItemHidden"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/form-item-text/content.tsx","@flatbiz/antd/src/form-item-text/use-request.tsx","@flatbiz/antd/src/form-item-text/request-text.tsx","@flatbiz/antd/src/form-item-text/form-item-text.tsx"],"sourcesContent":["import { isUndefinedOrNull } from '@flatbiz/utils';\nimport { Spin } from 'antd';\nimport { type CSSProperties } from 'react';\nimport { TextCssEllipsis } from '../text-css-ellipsis';\nimport { type FormItemTextProps } from './types';\n\nexport const FormItemTextContent = (\n props: Pick<FormItemTextProps, 'render' | 'wrap' | 'placeholderValue'> & {\n value?: string;\n style?: CSSProperties;\n loading?: boolean;\n },\n) => {\n const originalValue = (function () {\n if (isUndefinedOrNull(props.value)) return props.placeholderValue;\n return typeof props.value === 'string' ? props.value : JSON.stringify(props.value);\n })();\n const valueFt = props.wrap ? originalValue : <TextCssEllipsis text={originalValue || ''} />;\n if (props.loading) {\n return (\n <span className=\"form-item-text-content fitc-loading\" style={props.style}>\n <Spin spinning={props.loading} size=\"small\">\n <span style={{ textIndent: '-9999px', display: 'inline-block' }}>Loading</span>\n </Spin>\n </span>\n );\n }\n return (\n <span className=\"form-item-text-content\" style={props.style}>\n {props.render ? props.render(props.value) : valueFt}\n </span>\n );\n};\n","import { isDeepEqual } from '@dimjs/lang';\nimport { isUndefinedOrNull, toArray, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { Form, message } from 'antd';\nimport { useMemo, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { FormItemWrapperProps } from '../form-item-wrapper';\nimport { type FormItemTextServiceConfig } from './types';\n\nexport const useRequestFormItemText = (props: {\n serviceConfig?: FormItemTextServiceConfig;\n name?: FormItemWrapperProps['name'];\n}) => {\n const serviceConfig = props.serviceConfig;\n const [loading, setLoading] = useState(false);\n const [respData, setRespData] = useState<TAny>();\n const prevParams = fbaHooks.usePrevious(serviceConfig?.params);\n const [status, setStatus] = useState<'success' | 'error' | 'init'>('init');\n const form = Form.useFormInstance();\n\n // 用于直接发起接口调用,不能用于比较\n const serviceParams = useMemo(() => {\n if (!serviceConfig?.params || toArray(serviceConfig?.invalidParamKey).length === 0) {\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?.invalidParamKey, serviceConfig?.params]);\n\n const onInnerRequest = async (params?: TPlainObject) => {\n if (!serviceConfig) return;\n const mergeProps = { ...serviceParams, ...params };\n if (serviceConfig?.requiredParamsKeys?.length) {\n const target = serviceConfig?.requiredParamsKeys.find((item) => {\n return isUndefinedOrNull(mergeProps[item]);\n });\n if (target) {\n console.warn(`FormItemText组件:参数:${serviceConfig?.requiredParamsKeys.join('、')}不能为空`);\n return;\n }\n }\n try {\n if (!loading) setLoading(true);\n const respData = await serviceConfig.onRequest(mergeProps);\n const value = props.name ? form.getFieldValue(props.name) : undefined;\n const respDataFt = serviceConfig.onResponseAdapter\n ? serviceConfig.onResponseAdapter(respData, value)\n : respData;\n setRespData(respDataFt);\n setStatus('success');\n } catch (error: TAny) {\n console.error(error);\n setStatus('error');\n void message.error(error?.message || '接口调用异常');\n } finally {\n setLoading(false);\n }\n };\n\n fbaHooks.useEffectCustomAsync(onInnerRequest, []);\n\n fbaHooks.useEffectCustom(() => {\n if (!serviceConfig) return;\n if (prevParams) {\n if (!isDeepEqual(serviceConfig.params, prevParams)) {\n void onInnerRequest();\n }\n }\n }, [prevParams, serviceConfig?.params]);\n\n if (!serviceConfig) {\n return undefined;\n }\n\n return { loading, status, viewValue: respData };\n};\n","import { classNames } from '@dimjs/utils';\n\nimport { FormItemWrapper } from '../form-item-wrapper';\nimport { FormItemTextContent } from './content';\nimport { type FormItemTextProps } from './types';\nimport { useRequestFormItemText } from './use-request';\n\n/**\n * FormItem 文本显示,默认不换行,超出省略(鼠标悬浮可显示)\n * @param props\n * @returns\n */\nexport const RequestText = (props: FormItemTextProps) => {\n const { wrap, render, placeholderValue, serviceConfig, ...otherProps } = props;\n\n const requestResult = useRequestFormItemText({\n serviceConfig,\n name: props.name,\n });\n\n return (\n <FormItemWrapper\n {...otherProps}\n name={undefined}\n className={classNames('form-item-text', props.className)}\n >\n <FormItemTextContent\n loading={requestResult?.loading}\n wrap={wrap}\n render={render}\n placeholderValue={placeholderValue}\n value={requestResult?.viewValue}\n />\n </FormItemWrapper>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Fragment } from 'react';\n\nimport { FormItemTextContent } from './content';\nimport { RequestText } from './request-text';\nimport { type FormItemTextProps } from './types';\n\nimport { FormItemHidden } from '../form-item-hidden';\nimport { FormItemWrapper } from '../form-item-wrapper';\nimport './style.less';\n/**\n * FormItem 文本显示,默认不换行,超出省略(鼠标悬浮可显示)\n * ```\n * 可通过配置 serviceConfig 通过接口获取数据,一般用于 Select 数据显示\n *\n * 例如:\n * 1. 基本数据渲染\n * <FormItemText name=\"xxx\" label=\"xxx\" />\n * 2. 对象数据渲染\n * <FormItemText\n * name=\"xxx\"\n * label=\"xxx\"\n * render={(value) => {\n * const target = [].find(\n * (item) => item.value === value,\n * );\n * return target ? (\n * <Tag color={target['color']}>{target.label}</Tag>\n * ) : null;\n * }}\n * />\n * 3. 接口数据渲染\n * <FormItemText\n * name=\"xxx\"\n * label=\"xxx\"\n * serviceConfig={{\n * onRequest: () => {\n * return serviceHandle.request('/random/api9468', {}, 'post');\n * },\n * onResponseAdapter: (dataList: TPlainObject[], value) => {\n * return dataList?.find((item) => item.value === value);\n * },\n * }}\n * render={(dataItem) => {\n * return dataItem ? (\n * <Tag style={{ margin: 0 }} color={dataItem['color']}>\n * {dataItem.label}\n * </Tag>\n * ) : null;\n * }}\n * />\n * ```\n */\nexport const FormItemText = (props: FormItemTextProps) => {\n const { wrap, render, placeholderValue, ...otherProps } = props;\n\n if (props.serviceConfig) {\n return (\n <Fragment>\n <FormItemHidden name={props.name} />\n <RequestText {...props} />\n </Fragment>\n );\n }\n\n return (\n <FormItemWrapper {...otherProps} className={classNames('form-item-text', props.className)}>\n <FormItemTextContent wrap={wrap} render={render} placeholderValue={placeholderValue} />\n </FormItemWrapper>\n );\n};\n"],"names":["FormItemTextContent","props","originalValue","isUndefinedOrNull","value","placeholderValue","JSON","stringify","valueFt","wrap","_jsx","TextCssEllipsis","text","loading","className","style","children","Spin","spinning","size","textIndent","display","render","useRequestFormItemText","serviceConfig","_useState","useState","setLoading","_useState2","respData","setRespData","prevParams","fbaHooks","usePrevious","params","_useState3","status","setStatus","form","Form","useFormInstance","serviceParams","useMemo","_serviceConfig$invali","toArray","invalidParamKey","length","newParams","_extends","forEach","key","undefined","onInnerRequest","Promise","$return","$error","$Try_1_Finally","$Try_1_Exit","$Try_1_Value","call","this","$boundEx","bind","_serviceConfig$requir","mergeProps","target","_respData","respDataFt","requiredParamsKeys","find","item","console","warn","join","$Try_1_Post","$Try_1_Catch","error","message","resolve","onRequest","then","$await_2","name","getFieldValue","onResponseAdapter","useEffectCustomAsync","useEffectCustom","_isDeepEqual","viewValue","RequestText","otherProps","_objectWithoutPropertiesLoose","_excluded","requestResult","FormItemWrapper","_classNames","FormItemText","_jsxs","Fragment","FormItemHidden"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flatbiz/antd",
3
- "version": "4.2.95",
3
+ "version": "4.2.96",
4
4
  "description": "flat-biz ui components",
5
5
  "main": "index.js",
6
6
  "typings": "index.d.ts",
@@ -63,7 +63,8 @@
63
63
  "@dnd-kit/modifiers": "^6.0.1",
64
64
  "@dnd-kit/sortable": "^7.0.2",
65
65
  "@dnd-kit/utilities": "^3.2.1",
66
- "use-intl": "3.0.0-rc.6"
66
+ "use-intl": "3.0.0-rc.6",
67
+ "react-split": "2.0.14"
67
68
  },
68
69
  "gitHead": "4378d433b73ee28fd7cb4c64bed8571f993eb5a9"
69
70
  }